Configuration API v1

Manage configuration with the StarlingX system and service configuration. This includes DNS, NTP, Storage Clusters, Service Parameters, Networks, Address Pools, Certificates, and so forth.

The typical port used for the Configuration REST API is 6385. However, proper technique would be to look up the sysinv service endpoint in Keystone.

API versions

GET
/

Lists information about all StarlingX Configuration API versions

Normal response codes

200, 300

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

{
   "default_version":{
      "id":"v1",
      "links":[
         {
            "href":"http://128.224.150.54:6385/v1/",
            "rel":"self"
         }
      ]
   },
   "versions":[
      {
         "id":"v1",
         "links":[
            {
               "href":"http://128.224.150.54:6385/v1/",
               "rel":"self"
            }
         ]
      }
   ],
   "description":"StarlingX Cloud System API allows for the management of physical servers.  This includes inventory collection and configuration of hosts, ports, interfaces, CPUs, disk, memory, and system configuration.  The API also supports the configuration of the cloud's SNMP interface. ",
   "name":"StarlingX SysInv API"
}

This operation does not accept a request body.

GET
/v1

Shows details for Configuration API v1

Normal response codes

200, 203

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

{
   "restore": [
      {
            "href": "http://10.10.10.3:6385/v1/restore/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/restore/",
            "rel": "bookmark"
      }
   ],
   "addresses": [
      {
            "href": "http://10.10.10.3:6385/v1/addresses/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/addresses/",
            "rel": "bookmark"
      }
   ],
   "links": [
      {
            "href": "http://10.10.10.3:6385/v1/",
            "rel": "self"
      },
      {
            "href": "http://www.windriver.com/developer/sysinv/dev/api-spec-v1.html",
            "type": "text/html",
            "rel": "describedby"
      }
   ],
   "storage_ceph_rook": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_ceph_rook/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_ceph_rook/",
            "rel": "bookmark"
      }
   ],
   "registry_image": [
      {
            "href": "http://10.10.10.3:6385/v1/registry_image/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/registry_image/",
            "rel": "bookmark"
      }
   ],
   "device_image_state": [
      {
            "href": "http://10.10.10.3:6385/v1/device_image_state/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/device_image_state/",
            "rel": "bookmark"
      }
   ],
   "ceph_mon": [
      {
            "href": "http://10.10.10.3:6385/v1/ceph_mon/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/ceph_mon/",
            "rel": "bookmark"
      }
   ],
   "lldp_neighbours": [
      {
            "href": "http://10.10.10.3:6385/v1/lldp_neighbours/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/lldp_neighbours/",
            "rel": "bookmark"
      }
   ],
   "remotelogging": [
      {
            "href": "http://10.10.10.3:6385/v1/remotelogging/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/remotelogging/",
            "rel": "bookmark"
      }
   ],
   "iextoam": [
      {
            "href": "http://10.10.10.3:6385/v1/iextoam/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/iextoam/",
            "rel": "bookmark"
      }
   ],
   "intp": [
      {
            "href": "http://10.10.10.3:6385/v1/intp/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/intp/",
            "rel": "bookmark"
      }
   ],
   "storage_file": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_file/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_file/",
            "rel": "bookmark"
      }
   ],
   "device_labels": [
      {
            "href": "http://10.10.10.3:6385/v1/device_labels/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/device_labels/",
            "rel": "bookmark"
      }
   ],
   "storage_lvm": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_lvm/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_lvm/",
            "rel": "bookmark"
      }
   ],
   "interface_networks": [
      {
            "href": "http://10.10.10.3:6385/v1/interface_networks/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/interface_networks/",
            "rel": "bookmark"
      }
   ],
   "inode": [
      {
            "href": "http://10.10.10.3:6385/v1/inode/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/inode/",
            "rel": "bookmark"
      }
   ],
   "id": "v1",
   "ptp": [
      {
            "href": "http://10.10.10.3:6385/v1/ptp/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/ptp/",
            "rel": "bookmark"
      }
   ],
   "media_types": [
      {
            "base": "application/json",
            "type": "application/vnd.openstack.sysinv.v1+json"
      }
   ],
   "servicegroup": [
      {
            "href": "http://10.10.10.3:6385/v1/servicegroup/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/servicegroup/",
            "rel": "bookmark"
      }
   ],
   "datanetworks": [
      {
            "href": "http://10.10.10.3:6385/v1/datanetworks/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/datanetworks/",
            "rel": "bookmark"
      }
   ],
   "imemory": [
      {
            "href": "http://10.10.10.3:6385/v1/imemory/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/imemory/",
            "rel": "bookmark"
      }
   ],
   "apps": [
      {
            "href": "http://10.10.10.3:6385/v1/apps/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/apps/",
            "rel": "bookmark"
      }
   ],
   "host_fs": [
      {
            "href": "http://10.10.10.3:6385/v1/host_fs/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/host_fs/",
            "rel": "bookmark"
      }
   ],
   "kube_host_upgrades": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_host_upgrades/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_host_upgrades/",
            "rel": "bookmark"
      }
   ],
   "networks": [
      {
            "href": "http://10.10.10.3:6385/v1/networks/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/networks/",
            "rel": "bookmark"
      }
   ],
   "storage_ceph_external": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_ceph_external/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_ceph_external/",
            "rel": "bookmark"
      }
   ],
   "health": [
      {
            "href": "http://10.10.10.3:6385/v1/health/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/health/",
            "rel": "bookmark"
      }
   ],
   "ptp_parameters": [
      {
            "href": "http://10.10.10.3:6385/v1/ptp_parameters/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/ptp_parameters/",
            "rel": "bookmark"
      }
   ],
   "drbdconfig": [
      {
            "href": "http://10.10.10.3:6385/v1/drbdconfig/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/drbdconfig/",
            "rel": "bookmark"
      }
   ],
   "helm_charts": [
      {
            "href": "http://10.10.10.3:6385/v1/helm_charts/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/helm_charts/",
            "rel": "bookmark"
      }
   ],
   "ihosts": [
      {
            "href": "http://10.10.10.3:6385/v1/ihosts/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/ihosts/",
            "rel": "bookmark"
      }
   ],
   "kube_versions": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_versions/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_versions/",
            "rel": "bookmark"
      }
   ],
   "kube_cmd_versions": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_cmd_versions/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_cmd_versions/",
            "rel": "bookmark"
      }
   ],
   "servicenodes": [
      {
            "href": "http://10.10.10.3:6385/v1/servicenodes/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/servicenodes/",
            "rel": "bookmark"
      }
   ],
   "ptp_instances": [
      {
            "href": "http://10.10.10.3:6385/v1/ptp_instances/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/ptp_instances/",
            "rel": "bookmark"
      }
   ],
   "storage_backend": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_backend/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_backend/",
            "rel": "bookmark"
      }
   ],
   "controller_fs": [
      {
            "href": "http://10.10.10.3:6385/v1/controller_fs/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/controller_fs/",
            "rel": "bookmark"
      }
   ],
   "services": [
      {
            "href": "http://10.10.10.3:6385/v1/services/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/services/",
            "rel": "bookmark"
      }
   ],
   "icpu": [
      {
            "href": "http://10.10.10.3:6385/v1/icpu/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/icpu/",
            "rel": "bookmark"
      }
   ],
   "kube_clusters": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_clusters/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_clusters/",
            "rel": "bookmark"
      }
   ],
   "sdn_controller": [
      {
            "href": "http://10.10.10.3:6385/v1/sdn_controller/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/sdn_controller/",
            "rel": "bookmark"
      }
   ],
   "addrpools": [
      {
            "href": "http://10.10.10.3:6385/v1/addrpools/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/addrpools/",
            "rel": "bookmark"
      }
   ],
   "license": [
      {
            "href": "http://10.10.10.3:6385/v1/license/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/license/",
            "rel": "bookmark"
      }
   ],
   "device_images": [
      {
            "href": "http://10.10.10.3:6385/v1/device_images/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/device_images/",
            "rel": "bookmark"
      }
   ],
   "service_parameter": [
      {
            "href": "http://10.10.10.3:6385/v1/service_parameter/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/service_parameter/",
            "rel": "bookmark"
      }
   ],
   "kube_rootca_update": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_rootca_update/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_rootca_update/",
            "rel": "bookmark"
      }
   ],
   "storage_ceph": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_ceph/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_ceph/",
            "rel": "bookmark"
      }
   ],
   "interface_datanetworks": [
      {
            "href": "http://10.10.10.3:6385/v1/interface_datanetworks/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/interface_datanetworks/",
            "rel": "bookmark"
      }
   ],
   "idns": [
      {
            "href": "http://10.10.10.3:6385/v1/idns/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/idns/",
            "rel": "bookmark"
      }
   ],
   "ptp_interfaces": [
      {
            "href": "http://10.10.10.3:6385/v1/ptp_interfaces/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/ptp_interfaces/",
            "rel": "bookmark"
      }
   ],
   "fernet_repo": [
      {
            "href": "http://10.10.10.3:6385/v1/fernet_repo/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/fernet_repo/",
            "rel": "bookmark"
      }
   ],
   "clusters": [
      {
            "href": "http://10.10.10.3:6385/v1/clusters/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/clusters/",
            "rel": "bookmark"
      }
   ],
   "isystems": [
      {
            "href": "http://10.10.10.3:6385/v1/isystems/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/isystems/",
            "rel": "bookmark"
      }
   ],
   "lldp_agents": [
      {
            "href": "http://10.10.10.3:6385/v1/lldp_agents/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/lldp_agents/",
            "rel": "bookmark"
      }
   ],
   "storage_external": [
      {
            "href": "http://10.10.10.3:6385/v1/storage_external/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/storage_external/",
            "rel": "bookmark"
      }
   ],
   "iuser": [
      {
            "href": "http://10.10.10.3:6385/v1/iuser/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/iuser/",
            "rel": "bookmark"
      }
   ],
   "kube_upgrade": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_upgrade/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_upgrade/",
            "rel": "bookmark"
      }
   ],
   "kube_config_kubelet": [
      {
            "href": "http://10.10.10.3:6385/v1/kube_config_kubelet/",
            "rel": "self"
      },
      {
            "href": "http://10.10.10.3:6385/kube_config_kubelet/",
            "rel": "bookmark"
      }
   ]
}

This operation does not accept a request body.

System

The cloud server cluster is represented internally by a unique object referred to as the system.

GET
/v1/isystems

Shows attributes of the System object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

A user-specified name of the cloud system. The default value is the system UUID.

system_type (Optional)

plain

xsd:string

A installed system type of the cloud system.

system_mode (Optional)

plain

xsd:string

The system mode of the cloud system.

timezone (Optional)

plain

xsd:string

The timezone of the cloud system.

description (Optional)

plain

xsd:string

A user-specified description of the cloud system.

location (Optional)

plain

xsd:string

The user-specified location of the cloud system.

latitude (Optional)

plain

xsd:string

The user-specified latitude GPS coordinate of the cloud system.

longitude (Optional)

plain

xsd:string

The user-specified longitude GPS coordinate of the cloud system.

capabilities (Optional)

plain

xsd:dictionary

System capabilities. <ul><li>sdn_enabled : (Boolean) Software Defined Networking enabled. </li><li>region_config : (Boolean) region selection: <ul><li>true : Secondary region. </li><li>false : Primary region. </li></ul></li><li>shared_services : Services provided by Primary region. </li><li>bm_region : Board Management controller network selection: <ul><li>External : OAM network. </li><li>Internal : Management network. </li></ul></li><li>cinder_backend : backend selection for Cinder. </li><li>vswitch_type : vSwitch selection. </li><li>security_feature : Selection of Spectre and Meltdown mitigation options. </li><li>https_enabled : (Boolean) selection of https mode for public URLs. </li></ul>

contact (Optional)

plain

xsd:string

The user-specified contact for the cloud system.

software_version (Optional)

plain

xsd:string

Contains the Cloud Server Software Version and the Software Version of the underlying Linux Kernel.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
  "isystems": [
    {
      "uuid": "67e5fca6-3580-4b06-acc8-3200dce794a4",
      "software_version": "Golden Gate 14.08 3.4.103-ovp-ga2-rt120-WR5.0.1.17_standard ",
      "name": "OTTAWA_LAB",
      "links": [
        {
          "href": "http://192.168.204.2:6385/v1/isystems/67e5fca6-3580-4b06-acc8-3200dce794a4",
          "rel": "self"
        },
        {
          "href": "http://192.168.204.2:6385/isystems/67e5fca6-3580-4b06-acc8-3200dce794a4",
          "rel": "bookmark"
        }
      ],
      "created_at": "2014-09-17T19:08:11.325946+00:00",
      "updated_at": "2014-09-24T14:35:38.091392+00:00",
      "contact": null,
      "location": null,
      "latitude": null,
      "longitude": null,
      "description": "The Ottawa Cloud Test Lab.",
      "system_type": "Standard",
      "system_mode": "duplex",
      "timezone": "UTC",
      "capabilities": {
        "sdn_enabled": false,
        "shared_services": "[]",
        "bm_region": "External",
        "cinder_backend": "lvm",
        "https_enabled": false,
        "region_config": false
      },
    }
  ]
}

This operation does not accept a request body.

PATCH
/v1/isystems

Modifies attributes of the System object

The attributes of the System object that are modifiable are:

  • name,

  • system_mode,

  • timezone,

  • description,

  • location,

  • latitude,

  • longitude,

  • sdn_enabled,

  • contact.

Normal response codes

200

Error response codes

badMediaType (415)

Response parameters

Parameter

Style

Type

Description

ihosts (Optional)

plain

xsd:list

Links for retreiving the list of hosts for this system.

name (Optional)

plain

xsd:string

A user-specified name of the cloud system. The default value is the system UUID.

system_type (Optional)

plain

xsd:string

A installed system type of the cloud system.

system_mode (Optional)

plain

xsd:string

The system mode of the cloud system.

timezone (Optional)

plain

xsd:string

The timezone of the cloud system.

description (Optional)

plain

xsd:string

A user-specified description of the cloud system.

location (Optional)

plain

xsd:string

The user-specified location of the cloud system.

latitude (Optional)

plain

xsd:string

The user-specified latitude GPS coordinate of the cloud system.

longitude (Optional)

plain

xsd:string

The user-specified longitude GPS coordinate of the cloud system.

capabilities (Optional)

plain

xsd:dictionary

System capabilities. <ul><li>sdn_enabled : (Boolean) Software Defined Networking enabled. </li><li>region_config : (Boolean) region selection: <ul><li>true : Secondary region. </li><li>false : Primary region. </li></ul></li><li>shared_services : Services provided by Primary region. </li><li>bm_region : Board Management controller network selection: <ul><li>External : OAM network. </li><li>Internal : Management network. </li></ul></li><li>cinder_backend : backend selection for Cinder. </li><li>vswitch_type : vSwitch selection. </li><li>security_feature : Selection of Spectre and Meltdown mitigation options. </li><li>https_enabled : (Boolean) selection of https mode for public URLs. </li></ul>

contact (Optional)

plain

xsd:string

The user-specified contact for the cloud system.

software_version (Optional)

plain

xsd:string

Contains the Cloud Server Software Version and the Software Version of the underlying Linux Kernel.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
  {
    "path": "/name",
    "value": "OTTAWA_LAB_WEST",
    "op": "replace"
  }
  {
    "path": "/description",
    "value": "The Ottawa Cloud Test Lab - West Wing.",
    "op": "replace"
  }
  {
    "path": "/location",
    "value": "350 Terry Fox Dr, Kanata, Ontario, Canada",
    "op": "replace"
  }
  {
    "path": "/latitude",
    "value": "45.35189954974955",
    "op": "replace"
  }
  {
    "path": "/longitude",
    "value": "-75.91866628453701",
    "op": "replace"
  }
  {
    "path": "/contact",
    "value": "support@windriver.com",
    "op": "replace"
  }
  {
    "path": "/system_mode",
    "value": "duplex-direct",
    "op": "replace"
  }
  {
    "path": "/timezone",
    "value": "UTC",
    "op": "replace"
  }
  {
    "path": "/sdn_enabled",
    "value": "true",
    "op": "replace"
  }
]
{
  "isystems": [
    {
      "links": [
        {
          "href": "http://192.168.204.2:6385/v1/isystems/5ce48a37-f6f5-4f14-8fbd-ac6393464b19",
          "rel": "self"
        },
        {
          "href": "http://192.168.204.2:6385/isystems/5ce48a37-f6f5-4f14-8fbd-ac6393464b19",
          "rel": "bookmark"
        }
      ],
      "description": "The Ottawa Cloud Test Lab - West Wing.",
      "software_version": "18.03",
      "updated_at": "2017-07-31T17:44:06.051441+00:00",
      "created_at": "2017-07-31T17:35:46.836024+00:00",
      "location": "350 Terry Fox Dr, Kanata, Ontario, Canada",
      "latitude": "45.35189954974955",
      "longitude": "-75.91866628453701",
      "capabilities": {
        "sdn_enabled": true,
        "shared_services": "[]",
        "bm_region": "External",
        "cinder_backend": "lvm",
        "https_enabled": true,
        "region_config": false
      },
      "name": "OTTAWA_LAB_WEST",
      "contact": "support@windriver.com",
      "system_type": "Standard",
      "system_mode": "duplex",
      "timezone": "UTC",
      "uuid": "5ce48a37-f6f5-4f14-8fbd-ac6393464b19"
    }
  ]
}

Clusters

A cluster within the cloud server is represented internally by a unique object referred to as the cluster.

GET
/v1/clusters

Lists all cluster entities

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

clusters (Optional)

plain

xsd:list

The list of cluster entities.

name (Optional)

plain

xsd:string

A name of the cloud cluster.

type (Optional)

plain

xsd:string

An installed cluster type of the cloud system.

deployment_model (Optional)

plain

xsd:string

Ceph storage deployment model.

uuid (Optional)

plain

csapi:UUID

A system generated unique identifier for this cluster in the cloud system.

cluster_uuid (Optional)

plain

csapi:UUID

The unique identifier of the underlying cluster instance represented by this cluster.

{
    "clusters": [
        {
            "cluster_uuid": null,
            "type": "ceph",
            "deployment_model": "aio-sx",
            "uuid": "ba42aa45-7094-4bcd-b094-2848816441a3",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/clusters/ba42aa45-7094-4bcd-b094-2848816441a3",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/clusters/ba42aa45-7094-4bcd-b094-2848816441a3",
                    "rel": "bookmark"
                }
            ],
            "name": "ceph_cluster"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/clusters/​{uuid}

Shows detailed information about a specific cluster

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

uuid

URI

csapi:UUID

The system generated unique identifier of a cluster.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

A name of the cloud cluster.

type (Optional)

plain

xsd:string

An installed cluster type of the cloud system.

deployment_model (Optional)

plain

xsd:string

Ceph storage deployment model.

uuid (Optional)

plain

csapi:UUID

A system generated unique identifier for this cluster in the cloud system.

cluster_uuid (Optional)

plain

csapi:UUID

The unique identifier of the underlying cluster instance represented by this cluster.

peers (Optional)

plain

xsd:list

A list of dictionaries for each replication group of storage host peers.

tiers (Optional)

plain

xsd:list

A list of dictionaries for each storage tier in the cluster

{
    "peers": [
        {
            "status": "provisioned",
            "hosts": [
                "storage-0"
            ],
            "name": "group-0",
            "uuid": "779145f1-f0ba-42a9-b371-c2ddbd2c3617"
        }
    ],
    "name": "ceph_cluster",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/clusters/ba42aa45-7094-4bcd-b094-2848816441a3",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/clusters/ba42aa45-7094-4bcd-b094-2848816441a3",
            "rel": "bookmark"
        }
    ],
    "storage_tiers": [
        {
            "href": "http://10.10.10.2:6385/v1/clusters/ba42aa45-7094-4bcd-b094-2848816441a3/storage_tiers",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/clusters/ba42aa45-7094-4bcd-b094-2848816441a3/storage_tiers",
            "rel": "bookmark"
        }
    ],
    "created_at": "2018-02-07T04:34:26.738705+00:00",
    "tiers": [
        {
            "status": "in-use",
            "name": "storage",
            "uuid": "70184946-7b3e-4833-a4f8-e46edf006e37"
        }
    ],
    "updated_at": null,
    "cluster_uuid": null,
    "type": "ceph",
    "id": 1,
    "deployment_model": "aio-sx",
    "uuid": "ba42aa45-7094-4bcd-b094-2848816441a3"
}

This operation does not accept a request body.

Partitions

GET
/v1/ihosts/​{host_id}​/partitions

Lists all disk partitions of a host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

partitions (Optional)

plain

xsd:list

The list of disk partition entities.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the partition.

device_node (Optional)

plain

xsd:string

The device node of the partition.

device_path (Optional)

plain

xsd:string

The device path of the partition.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the partition belongs to.

idisk_uuid (Optional)

plain

csapi:UUID

The disk UUID that this partition belongs to.

ipv_uuid (Optional)

plain

csapi:UUID

The LVM physical volume that this partition belongs to.

status (Optional)

plain

xsd:integer

The status of the partition.

type_guid (Optional)

plain

csapi:UUID

The GUID for the partition type.

type_name (Optional)

plain

xsd:string

The name for the partition type.

size_mib (Optional)

plain

xsd:integer

The size of the partition in MiBytes.

start_mib (Optional)

plain

xsd:integer

The start of the partition MiBytes.

end_mib (Optional)

plain

xsd:integer

The end of the partition in MiBytes.

{
    "partitions": [
        {
            "capabilities": {},
            "created_at": "2017-08-30T21:10:53.160862+00:00",
            "device_node": "/dev/sdb2",
            "device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part2",
            "end_mib": 19968,
            "idisk_uuid": "9483349f-7612-4176-8ab7-957d840abf08",
            "ihost_uuid": "33178c5b-8b2b-45b4-b438-236a6eb4d0fd",
            "ipv_uuid": null,
            "links": [
                {
                    "href": "http://192.168.204.2:6385/v1/partitions/209da106-ca41-4910-bb6a-8b498d5ac953",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.204.2:6385/partitions/209da106-ca41-4910-bb6a-8b498d5ac953",
                    "rel": "bookmark"
                }
            ],
            "size_mib": 512,
            "start_mib": 512,
            "status": 0,
            "type_guid": "ba5eba11-0000-1111-2222-000000000001",
            "type_name": "LVM Physical Volume",
            "updated_at": "2017-08-30T21:11:24.107207+00:00",
            "uuid": "209da106-ca41-4910-bb6a-8b498d5ac953"
        },
        {
            "capabilities": {},
            "created_at": "2017-08-30T22:10:39.796884+00:00",
            "device_node": "/dev/sdb3",
            "device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part3",
            "end_mib": 20225,
            "idisk_uuid": "9483349f-7612-4176-8ab7-957d840abf08",
            "ihost_uuid": "33178c5b-8b2b-45b4-b438-236a6eb4d0fd",
            "ipv_uuid": null,
            "links": [
                {
                    "href": "http://192.168.204.2:6385/v1/partitions/eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.204.2:6385/partitions/eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
                    "rel": "bookmark"
                }
            ],
            "size_mib": 258,
            "start_mib": 258,
            "status": 0,
            "type_guid": "ba5eba11-0000-1111-2222-000000000001",
            "type_name": "LVM Physical Volume",
            "updated_at": "2017-08-30T22:26:25.464595+00:00",
            "uuid": "eed80f15-0a31-43c3-a46c-a62cf4cecb7d"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/partitions/​{partition_id}

Shows detailed information about a specific disk partition

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

partition_id

URI

csapi:UUID

The unique identifier of a physical partition.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the partition.

device_node (Optional)

plain

xsd:string

The device node of the partition.

device_path (Optional)

plain

xsd:string

The device path of the partition.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the partition belongs to.

idisk_uuid (Optional)

plain

csapi:UUID

The disk UUID that this partition belongs to.

ipv_uuid (Optional)

plain

csapi:UUID

The LVM physical volume that this partition belongs to.

status (Optional)

plain

xsd:integer

The status of the partition.

type_guid (Optional)

plain

csapi:UUID

The GUID for the partition type.

type_name (Optional)

plain

xsd:string

The name for the partition type.

size_mib (Optional)

plain

xsd:integer

The size of the partition in MiBytes.

start_mib (Optional)

plain

xsd:integer

The start of the partition MiBytes.

end_mib (Optional)

plain

xsd:integer

The end of the partition in MiBytes.

{
    "capabilities": {},
    "created_at": "2017-08-30T21:10:53.160862+00:00",
    "device_node": "/dev/sdb2",
    "device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part2",
    "end_mib": 19968,
    "idisk_uuid": "9483349f-7612-4176-8ab7-957d840abf08",
    "ihost_uuid": "33178c5b-8b2b-45b4-b438-236a6eb4d0fd",
    "ipv_uuid": null,
    "links": [
        {
            "href": "http://10.10.2.2:6385/v1/partitions/209da106-ca41-4910-bb6a-8b498d5ac953",
            "rel": "self"
        },
        {
            "href": "http://10.10.2.2:6385/partitions/209da106-ca41-4910-bb6a-8b498d5ac953",
            "rel": "bookmark"
        }
    ],
    "size_mib": 512,
    "start_mib": 512,
    "status": 0,
    "type_guid": "ba5eba11-0000-1111-2222-000000000001",
    "type_name": "LVM Physical Volume",
    "updated_at": "2017-08-30T21:11:24.107207+00:00",
    "uuid": "209da106-ca41-4910-bb6a-8b498d5ac953"
}

This operation does not accept a request body.

POST
/v1/partitions

Creates a partition on a specific disk of a host

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

ihost_uuid (Optional)

plain

csapi:UUID

This parameter specifies the partition host uuid.

forihostid (Optional)

plain

xsd:string

The ID of the host of this interface.

type_guid (Optional)

plain

csapi:UUID

This parameter specifies the partition type guid.

idisk_uuid (Optional)

plain

csapi:UUID

This parameter specifies the partition disk uuid.

size_mib (Optional)

plain

xsd:integer

This parameter specifies the size of the partition.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the partition.

device_node (Optional)

plain

xsd:string

The device node of the partition.

device_path (Optional)

plain

xsd:string

The device path of the partition.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the partition belongs to.

idisk_uuid (Optional)

plain

csapi:UUID

The disk UUID that this partition belongs to.

ipv_uuid (Optional)

plain

csapi:UUID

The LVM physical volume that this partition belongs to.

status (Optional)

plain

xsd:integer

The status of the partition.

type_guid (Optional)

plain

csapi:UUID

The GUID for the partition type.

type_name (Optional)

plain

xsd:string

The name for the partition type.

size_mib (Optional)

plain

xsd:integer

The size of the partition in MiBytes.

start_mib (Optional)

plain

xsd:integer

The start of the partition MiBytes.

end_mib (Optional)

plain

xsd:integer

The end of the partition in MiBytes.

{
    "ihost_uuid": "33178c5b-8b2b-45b4-b438-236a6eb4d0fd",
    "size_mib": 256,
    "type_guid": "ba5eba11-0000-1111-2222-000000000001",
    "idisk_uuid": "9483349f-7612-4176-8ab7-957d840abf08"},
}
{
    "status": 2,
    "device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part3",
    "start_mib": null,
    "uuid": "eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/partitions/eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/partitions/eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
            "rel": "bookmark"
        }
    ],
    "capabilities": {},
    "created_at": "2017-08-30T22:10:39.796884+00:00",
    "type_name": null,
    "updated_at": null,
    "device_node": "/dev/sdb3",
    "ihost_uuid": "33178c5b-8b2b-45b4-b438-236a6eb4d0fd",
    "ipv_uuid": null,
    "end_mib": null,
    "idisk_uuid": "9483349f-7612-4176-8ab7-957d840abf08",
    "type_guid": "ba5eba11-0000-1111-2222-000000000001",
    "size_mib": 256
}
PATCH
/v1/partitions/​{partition_id}

Modifies a specific disk partition

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

partition_id

URI

csapi:UUID

The unique identifier of a physical partition.

size_mib (Optional)

plain

xsd:integer

This parameter specifies a new size for the disk partition.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the partition.

device_node (Optional)

plain

xsd:string

The device node of the partition.

device_path (Optional)

plain

xsd:string

The device path of the partition.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the partition belongs to.

idisk_uuid (Optional)

plain

csapi:UUID

The disk UUID that this partition belongs to.

ipv_uuid (Optional)

plain

csapi:UUID

The LVM physical volume that this partition belongs to.

status (Optional)

plain

xsd:integer

The status of the partition.

type_guid (Optional)

plain

csapi:UUID

The GUID for the partition type.

type_name (Optional)

plain

xsd:string

The name for the partition type.

size_mib (Optional)

plain

xsd:integer

The size of the partition in MiBytes.

start_mib (Optional)

plain

xsd:integer

The start of the partition MiBytes.

end_mib (Optional)

plain

xsd:integer

The end of the partition in MiBytes.

{
    "size_mib": "512"
}
{
    "status": 2,
    "device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part3",
    "start_mib": null,
    "uuid": "eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/partitions/eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/partitions/eed80f15-0a31-43c3-a46c-a62cf4cecb7d",
            "rel": "bookmark"
        }
    ],
    "capabilities": {},
    "created_at": "2017-08-30T22:10:39.796884+00:00",
    "type_name": null,
    "updated_at": null,
    "device_node": "/dev/sdb3",
    "ihost_uuid": "33178c5b-8b2b-45b4-b438-236a6eb4d0fd",
    "ipv_uuid": null,
    "end_mib": null,
    "idisk_uuid": "9483349f-7612-4176-8ab7-957d840abf08",
    "type_guid": "ba5eba11-0000-1111-2222-000000000001",
    "size_mib": 512
}
DELETE
/v1/partitions/​{partition_id}

Deletes a specific disk partition

This is supported just for user created, LVM Physical Volume, partition. In order to delete a partition, it must be the last partition on the disk.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

partition_id

URI

csapi:UUID

The unique identifier of a physical partition.

This operation does not accept a request body.

Volume Groups

These APIs allow the creation, deletion, and displaying of LVM volume groups.

GET
/v1/ihosts/​{host_id}​/ilvgs

Lists all LVM volume groups of a host

This will list all the LVM volume groups for a given host.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

ilvgs (Optional)

plain

xsd:list

The list of volume group entities.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

vg_state (Optional)

plain

xsd:string

This is the state of the volume group which is one of the following: unprovisioned, adding, provisioned, or removing.

lvm_vg_name (Optional)

plain

xsd:string

This is the LVM volume group name as retrieved from the vgdisplay command on the host.

lvm_vg_uuid (Optional)

plain

csapi:UUID

This is the LVM generated volume group UUID as retrieved from the vgdisplay command on the host.

lvm_vg_access (Optional)

plain

xsd:string

This is the LVM generated volume group access status as retrieved from the vgdisplay command on the host.

lvm_max_lv (Optional)

plain

xsd:integer

This is the LVM generated max number of logical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_lv (Optional)

plain

xsd:integer

This is the LVM generated current number of logical volumes as retrieved from the vgdisplay command on the host.

lvm_max_pv (Optional)

plain

xsd:integer

This is the LVM generated max number of physical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_pv (Optional)

plain

xsd:integer

This is the LVM generated current number of physical volumes as retrieved from the vgdisplay command on the host.

lvm_vg_size (Optional)

plain

xsd:integer

This is the LVM generated volume group size in bytes as retrieved from the vgdisplay command on the host.

lvm_vg_total_pe (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents within the volume group as retrieved from the vgdisplay command on the host.

lvm_vg_free_pe (Optional)

plain

xsd:integer

This is the LVM generated number of physical extents not allocated within the volume group as retrieved from the vgdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "ilvgs": [
        {
            "lvm_vg_access": "wz--n-",
            "lvm_vg_size": 7310671872,
            "lvm_max_lv": 0,
            "lvm_vg_free_pe": 1743,
            "uuid": "039de9ef-b1db-4c31-9072-add0f888b8b9",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/ilvgs/039de9ef-b1db-4c31-9072-add0f888b8b9",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/ilvgs/039de9ef-b1db-4c31-9072-add0f888b8b9",
                    "rel": "bookmark"
                }
            ],
            "lvm_cur_lv": 0,
            "created_at": "2015-03-11T02:46:55.730611+00:00",
            "lvm_max_pv": 0,
            "updated_at": "2015-03-11T02:50:57.361006+00:00",
            "capabilities": {},
            "vg_state": "provisioned",
            "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
            "lvm_cur_pv": 1,
            "lvm_vg_uuid": "u7NzxA-1LeR-G88h-3lMk-eFvo-YnL8-HT9SEP",
            "lvm_vg_total_pe": 1743,
            "lvm_vg_name": "nova-local"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/ilvgs/​{volumegroup_id}

Shows detailed information about a specific LVM volume group

This will show detailed information about a specific LVM volume group.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

volumegroup_id

URI

csapi:UUID

The unique identifier of an existing LVM volume group.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

vg_state (Optional)

plain

xsd:string

This is the state of the volume group which is one of the following: unprovisioned, adding, provisioned, or removing.

lvm_vg_name (Optional)

plain

xsd:string

This is the LVM volume group name as retrieved from the vgdisplay command on the host.

lvm_vg_uuid (Optional)

plain

csapi:UUID

This is the LVM generated volume group UUID as retrieved from the vgdisplay command on the host.

lvm_vg_access (Optional)

plain

xsd:string

This is the LVM generated volume group access status as retrieved from the vgdisplay command on the host.

lvm_max_lv (Optional)

plain

xsd:integer

This is the LVM generated max number of logical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_lv (Optional)

plain

xsd:integer

This is the LVM generated current number of logical volumes as retrieved from the vgdisplay command on the host.

lvm_max_pv (Optional)

plain

xsd:integer

This is the LVM generated max number of physical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_pv (Optional)

plain

xsd:integer

This is the LVM generated current number of physical volumes as retrieved from the vgdisplay command on the host.

lvm_vg_size (Optional)

plain

xsd:integer

This is the LVM generated volume group size in bytes as retrieved from the vgdisplay command on the host.

lvm_vg_total_pe (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents within the volume group as retrieved from the vgdisplay command on the host.

lvm_vg_free_pe (Optional)

plain

xsd:integer

This is the LVM generated number of physical extents not allocated within the volume group as retrieved from the vgdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

ipvs (Optional)

plain

xsd:list

Links to associated physical volumes.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "lvm_vg_access": "wz--n-",
    "lvm_vg_size": 7310671872,
    "lvm_max_lv": 0,
    "lvm_vg_free_pe": 1743,
    "uuid": "039de9ef-b1db-4c31-9072-add0f888b8b9",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/ilvgs/039de9ef-b1db-4c31-9072-add0f888b8b9",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/ilvgs/039de9ef-b1db-4c31-9072-add0f888b8b9",
            "rel": "bookmark"
        }
    ],
    "lvm_cur_lv": 0,
    "created_at": "2015-03-11T02:46:55.730611+00:00",
    "lvm_max_pv": 0,
    "updated_at": "2015-03-11T02:50:57.361006+00:00",
    "capabilities": {},
    "vg_state": "provisioned",
    "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
    "ipvs": [
        {
            "href": "http://10.10.10.2:6385/v1/ilvgs/039de9ef-b1db-4c31-9072-add0f888b8b9/ipvs",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/ilvgs/039de9ef-b1db-4c31-9072-add0f888b8b9/ipvs",
            "rel": "bookmark"
        }
    ],
    "lvm_cur_pv": 1,
    "lvm_vg_uuid": "u7NzxA-1LeR-G88h-3lMk-eFvo-YnL8-HT9SEP",
    "lvm_vg_total_pe": 1743,
    "lvm_vg_name": "nova-local"
}

This operation does not accept a request body.

POST
/v1/ilvgs

Creates an LVM volume group on a specific host

This will create an LVM volume group on the specified host. This functionality is not available on storage hosts. In addition, the volume group name is limited to “nova-local” or “cinder-volumes”.

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

lvm_vg_name

plain

xsd:string

This parameter specifies the volume group name. Valid values are (is): nova-local

ihost_uuid

plain

csapi:UUID

This parameter specifies the worker host uuid.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

vg_state (Optional)

plain

xsd:string

This is the state of the volume group which is one of the following: unprovisioned, adding, provisioned, or removing.

lvm_vg_name (Optional)

plain

xsd:string

This is the LVM volume group name as retrieved from the vgdisplay command on the host.

lvm_vg_uuid (Optional)

plain

csapi:UUID

This is the LVM generated volume group UUID as retrieved from the vgdisplay command on the host.

lvm_vg_access (Optional)

plain

xsd:string

This is the LVM generated volume group access status as retrieved from the vgdisplay command on the host.

lvm_max_lv (Optional)

plain

xsd:integer

This is the LVM generated max number of logical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_lv (Optional)

plain

xsd:integer

This is the LVM generated current number of logical volumes as retrieved from the vgdisplay command on the host.

lvm_max_pv (Optional)

plain

xsd:integer

This is the LVM generated max number of physical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_pv (Optional)

plain

xsd:integer

This is the LVM generated current number of physical volumes as retrieved from the vgdisplay command on the host.

lvm_vg_size (Optional)

plain

xsd:integer

This is the LVM generated volume group size in bytes as retrieved from the vgdisplay command on the host.

lvm_vg_total_pe (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents within the volume group as retrieved from the vgdisplay command on the host.

lvm_vg_free_pe (Optional)

plain

xsd:integer

This is the LVM generated number of physical extents not allocated within the volume group as retrieved from the vgdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "lvm_vg_name":"nova-local",
    "ihost_uuid":"a0f0a6d5-75ad-4769-8e0e-3a7c7c0ce783"
}
{
    "lvm_vg_access": null,
    "lvm_vg_size": 0,
    "lvm_max_lv": 0,
    "lvm_vg_free_pe": 0,
    "uuid": "11ac6dfc-a5ea-4cc9-a0c9-50afb13f7b24",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/ilvgs/11ac6dfc-a5ea-4cc9-a0c9-50afb13f7b24",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/ilvgs/11ac6dfc-a5ea-4cc9-a0c9-50afb13f7b24",
            "rel": "bookmark"
        }
    ],
    "lvm_cur_lv": 0,
    "created_at": "2015-03-11T04:52:32.007904+00:00",
    "lvm_max_pv": 0,
    "updated_at": null,
    "capabilities": {},
    "vg_state": "adding",
    "ihost_uuid": "a0f0a6d5-75ad-4769-8e0e-3a7c7c0ce783",
    "ipvs": [
        {
            "href": "http://10.10.10.2:6385/v1/ilvgs/11ac6dfc-a5ea-4cc9-a0c9-50afb13f7b24/ipvs",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/ilvgs/11ac6dfc-a5ea-4cc9-a0c9-50afb13f7b24/ipvs",
            "rel": "bookmark"
        }
    ],
    "lvm_cur_pv": 0,
    "lvm_vg_uuid": null,
    "lvm_vg_total_pe": 0,
    "lvm_vg_name": "nova-local"
}
PATCH
/v1/ilvgs/​{volumegroup_id}

Modifies a specific volume group capability

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

volumegroup_id

URI

csapi:UUID

The unique identifier of an existing LVM volume group.

capabilities (Optional)

plain

xsd:string

A dictionary of key-value pairs prepresenting volume group parameters and values. Valid cinder-volumes parameters are: lvm_type

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

vg_state (Optional)

plain

xsd:string

This is the state of the volume group which is one of the following: unprovisioned, adding, provisioned, or removing.

lvm_vg_name (Optional)

plain

xsd:string

This is the LVM volume group name as retrieved from the vgdisplay command on the host.

lvm_vg_uuid (Optional)

plain

csapi:UUID

This is the LVM generated volume group UUID as retrieved from the vgdisplay command on the host.

lvm_vg_access (Optional)

plain

xsd:string

This is the LVM generated volume group access status as retrieved from the vgdisplay command on the host.

lvm_max_lv (Optional)

plain

xsd:integer

This is the LVM generated max number of logical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_lv (Optional)

plain

xsd:integer

This is the LVM generated current number of logical volumes as retrieved from the vgdisplay command on the host.

lvm_max_pv (Optional)

plain

xsd:integer

This is the LVM generated max number of physical volumes allowed as retrieved from the vgdisplay command on the host.

lvm_cur_pv (Optional)

plain

xsd:integer

This is the LVM generated current number of physical volumes as retrieved from the vgdisplay command on the host.

lvm_vg_size (Optional)

plain

xsd:integer

This is the LVM generated volume group size in bytes as retrieved from the vgdisplay command on the host.

lvm_vg_total_pe (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents within the volume group as retrieved from the vgdisplay command on the host.

lvm_vg_free_pe (Optional)

plain

xsd:integer

This is the LVM generated number of physical extents not allocated within the volume group as retrieved from the vgdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
   {
      "path": "/capabilities",
      "value": "{}",
      "op": "replace"
   }
]
{
   "lvm_vg_access": null,
   "lvm_vg_size": 0,
   "lvm_max_lv": 0,
   "lvm_vg_free_pe": 0,
   "uuid": "79926a38-f60c-4ede-8201-da8b009a07ee",
   "links": [
      {
         "href": "http://192.168.204.2:6385/v1/ilvgs/79926a38-f60c-4ede-8201-da8b009a07ee",
         "rel": "self"
      },
      {
         "href": "http://192.168.204.2:6385/ilvgs/79926a38-f60c-4ede-8201-da8b009a07ee",
         "rel": "bookmark"
      }
   ],
   "lvm_cur_lv": 0,
   "created_at": "2015-09-29T07:36:24.251731+00:00",
   "lvm_max_pv": 0,
   "updated_at": null,
   "capabilities": {
   },
   "vg_state": "adding",
   "ihost_uuid": "6b55a4c8-4194-4e3b-8d32-ca658473314e",
   "ipvs": [
      {
         "href": "http://192.168.204.2:6385/v1/ilvgs/79926a38-f60c-4ede-8201-da8b009a07ee/ipvs",
         "rel": "self"
      },
      {
         "href": "http://192.168.204.2:6385/ilvgs/79926a38-f60c-4ede-8201-da8b009a07ee/ipvs",
         "rel": "bookmark"
      }
   ],
   "lvm_cur_pv": 0,
   "lvm_vg_uuid": null,
   "lvm_vg_total_pe": 0,
   "lvm_vg_name": "nova-local"
}
DELETE
/v1/ilvgs/​{volumegroup_id}

Deletes a specific LVM volume group

In order to delete an LVM volume group, the host must be locked. All physical volumes assigned to the volume group will also be deleted.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

volumegroup_id

URI

csapi:UUID

The unique identifier of an existing LVM volume group.

This operation does not accept a request body.

Physical Volumes

These APIs allow the creation, deletion, and displaying of LVM physical volumes.

GET
/v1/ihosts/​{host_id}​/ipvs

Lists all LVM physical volumes of a host

This will list all the LVM physical volumes defined on the given host. A physical volume can be a pre-defined disk partition or an entire extra disk as supported by the Volume Group.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

ivolumes (Optional)

plain

xsd:list

The list of physical volume entities.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

pv_state (Optional)

plain

xsd:string

This is the state of the physical volume. It has one of the following values: unprovisioned, adding, provisioned, or removing.

pv_type (Optional)

plain

xsd:string

This is the type of physical volume that is allocated. This will have the value of disk or partition.

disk_or_part_uuid (Optional)

plain

csapi:UUID

This is the UUID of the device that is associated with this physical volume.

disk_or_part_device_node (Optional)

plain

xsd:string

This is the device node name associated with the physical volume.

disk_or_part_device_path (Optional)

plain

xsd:string

This is the device path associated with the physical partition.

lvm_pv_name (Optional)

plain

xsd:string

This is the physical volume name as retrieved from the pvdisplay command on the host.

lvm_vg_name (Optional)

plain

xsd:string

This is the name of the volume group that this physical volume belongs as retrieved from the pvdisplay command on the host.

lvm_pv_uuid (Optional)

plain

csapi:UUID

This is the LVM generated UUID for the physical volume as retrieved from the pvdisplay command on the host.

lvm_pv_size (Optional)

plain

xsd:integer

This is the LVM generated size in bytes of the physical volume as retrieved from the pvdisplay command on the host.

lvm_pe_total (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents associated with the physical volume as retrieved from the pvdisplay command on the host.

lvm_pe_alloced (Optional)

plain

xsd:integer

This is the LVM generated number of allocated physical extents associated with the physical volume as retrieved from the pvdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

ilvg_uuid (Optional)

plain

csapi:UUID

The UUID of the volume group containing the physical volume.

forilvgid (Optional)

plain

xsd:integer

The ID of the volume group containing the physical volume.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "ipvs": [
        {
            "capabilities": {},
            "created_at": "2018-01-03T13:06:36.888057+00:00",
            "disk_or_part_device_node": "/dev/sda4",
            "disk_or_part_device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-1.0-part4",
            "disk_or_part_uuid": "38c24bde-0488-4b50-9576-cfb555179698",
            "forilvgid": 1,
            "ihost_uuid": "28d70ad2-d722-458c-b361-8cf956e096ed",
            "ilvg_uuid": "55786da6-0534-4f4c-b9d1-36a53b0ac510",
            "links": [
                {
                    "href": "http://10.10.12.2:6385/v1/ipvs/a8f13d11-0d55-45ff-a964-98d6e75717ba",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.12.2:6385/ipvs/a8f13d11-0d55-45ff-a964-98d6e75717ba",
                    "rel": "bookmark"
                }
            ],
            "lvm_pe_alloced": 1658,
            "lvm_pe_total": 3199,
            "lvm_pv_name": "/dev/sda4",
            "lvm_pv_size": 107340627968,
            "lvm_pv_uuid": "M1k6bc-sP7j-kpe2-YWWV-ckZy-zLRh-F6hzff",
            "lvm_vg_name": "cgts-vg",
            "pv_state": "provisioned",
            "pv_type": "partition",
            "updated_at": "2018-01-04T09:24:56.071039+00:00",
            "uuid": "a8f13d11-0d55-45ff-a964-98d6e75717ba"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/ipvs/​{physicalvolume_id}

Shows detailed information about a specific LVM physical volume

This will show detailed information about a specific LVM physical volume.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

physicalvolume_id

URI

csapi:UUID

The unique identifier of an existing LVM physical volume.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

pv_state (Optional)

plain

xsd:string

This is the state of the physical volume. It has one of the following values: unprovisioned, adding, provisioned, or removing.

pv_type (Optional)

plain

xsd:string

This is the type of physical volume that is allocated. This will have the value of disk or partition.

disk_or_part_uuid (Optional)

plain

csapi:UUID

This is the UUID of the device that is associated with this physical volume.

disk_or_part_device_node (Optional)

plain

xsd:string

This is the device node name associated with the physical volume.

disk_or_part_device_path (Optional)

plain

xsd:string

This is the device path associated with the physical partition.

lvm_pv_name (Optional)

plain

xsd:string

This is the physical volume name as retrieved from the pvdisplay command on the host.

lvm_vg_name (Optional)

plain

xsd:string

This is the name of the volume group that this physical volume belongs as retrieved from the pvdisplay command on the host.

lvm_pv_uuid (Optional)

plain

csapi:UUID

This is the LVM generated UUID for the physical volume as retrieved from the pvdisplay command on the host.

lvm_pv_size (Optional)

plain

xsd:integer

This is the LVM generated size in bytes of the physical volume as retrieved from the pvdisplay command on the host.

lvm_pe_total (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents associated with the physical volume as retrieved from the pvdisplay command on the host.

lvm_pe_alloced (Optional)

plain

xsd:integer

This is the LVM generated number of allocated physical extents associated with the physical volume as retrieved from the pvdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

ilvg_uuid (Optional)

plain

csapi:UUID

The UUID of the volume group containing the physical volume.

forilvgid (Optional)

plain

xsd:integer

The ID of the volume group containing the physical volume.

idisks (Optional)

plain

xsd:list

Links to associated disks.

partitions (Optional)

plain

xsd:list

Links to associated partitions.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "capabilities": {},
    "created_at": "2018-01-03T13:32:50.025647+00:00",
    "disk_or_part_device_node": "/dev/sdb1",
    "disk_or_part_device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part1",
    "disk_or_part_uuid": "ab8852dd-6c2e-421e-b6b6-abebeee6b790",
    "forilvgid": 2,
    "idisks": [
        {
            "href": "http://10.10.12.2:6385/v1/ipvs/2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd/idisks",
            "rel": "self"
        },
        {
            "href": "http://10.10.12.2:6385/ipvs/2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd/idisks",
            "rel": "bookmark"
        }
    ],
    "ihost_uuid": "28d70ad2-d722-458c-b361-8cf956e096ed",
    "ilvg_uuid": "cf6094c9-380f-407e-91d2-4b3583702a96",
    "links": [
        {
            "href": "http://10.10.12.2:6385/v1/ipvs/2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd",
            "rel": "self"
        },
        {
            "href": "http://10.10.12.2:6385/ipvs/2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd",
            "rel": "bookmark"
        }
    ],
    "lvm_pe_alloced": 1236,
    "lvm_pe_total": 1249,
    "lvm_pv_name": "/dev/drbd4",
    "lvm_pv_size": 5238685696,
    "lvm_pv_uuid": "8i5nt3-gyS0-QTwy-aPIr-YRwL-i4vc-rBTLtK",
    "lvm_vg_name": "cinder-volumes",
    "partitions": [
        {
            "href": "http://10.10.12.2:6385/v1/ipvs/2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd/partitions",
            "rel": "self"
        },
        {
            "href": "http://10.10.12.2:6385/ipvs/2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd/partitions",
            "rel": "bookmark"
        }
    ],
    "pv_state": "provisioned",
    "pv_type": "partition",
    "updated_at": "2018-01-04T12:59:48.788114+00:00",
    "uuid": "2182ecc6-aab0-40f8-8e0e-d1ad9a9ccbdd"
}

This operation does not accept a request body.

POST
/v1/ipvs

Creates an LVM physical volume on a specific host

This will create an LVM physical volume on the specified host. This functionality is disabled on storage nodes. A physical volume can be a pre-defined disk partition or an entire extra disk as supported by the Volume Group. In addition, the volume group name is limited to “nova-local” or “cinder-volumes”.

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

ilvg_uuid

plain

csapi:UUID

This parameter specifies the volume group uuid.

ihost_uuid

plain

csapi:UUID

This parameter specifies the compute host uuid.

disk_or_part_uuid

plain

csapi:UUID

This parameter specifies the storage disk or partition uuid.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the volume group.

pv_state (Optional)

plain

xsd:string

This is the state of the physical volume. It has one of the following values: unprovisioned, adding, provisioned, or removing.

pv_type (Optional)

plain

xsd:string

This is the type of physical volume that is allocated. This will have the value of disk or partition.

disk_or_part_uuid (Optional)

plain

csapi:UUID

This is the UUID of the device that is associated with this physical volume.

disk_or_part_device_node (Optional)

plain

xsd:string

This is the device node name associated with the physical volume.

disk_or_part_device_path (Optional)

plain

xsd:string

This is the device path associated with the physical partition.

lvm_pv_name (Optional)

plain

xsd:string

This is the physical volume name as retrieved from the pvdisplay command on the host.

lvm_vg_name (Optional)

plain

xsd:string

This is the name of the volume group that this physical volume belongs as retrieved from the pvdisplay command on the host.

lvm_pv_uuid (Optional)

plain

csapi:UUID

This is the LVM generated UUID for the physical volume as retrieved from the pvdisplay command on the host.

lvm_pv_size (Optional)

plain

xsd:integer

This is the LVM generated size in bytes of the physical volume as retrieved from the pvdisplay command on the host.

lvm_pe_total (Optional)

plain

xsd:integer

This is the LVM generated total number of physical extents associated with the physical volume as retrieved from the pvdisplay command on the host.

lvm_pe_alloced (Optional)

plain

xsd:integer

This is the LVM generated number of allocated physical extents associated with the physical volume as retrieved from the pvdisplay command on the host.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

ilvg_uuid (Optional)

plain

csapi:UUID

The UUID of the volume group containing the physical volume.

forilvgid (Optional)

plain

xsd:integer

The ID of the volume group containing the physical volume.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "ilvg_uuid":"11ac6dfc-a5ea-4cc9-a0c9-50afb13f7b24",
    "ihost_uuid":"a0f0a6d5-75ad-4769-8e0e-3a7c7c0ce783",
    "idisk_uuid":"0e2e3ca6-841e-4315-ba1c-ad624415da2f"
}
{
    "lvm_pe_alloced": 0,
    "lvm_pe_total": 0,
    "ilvg_uuid": "a0f0a6d5-75ad-4769-8e0e-3a7c7c0ce783",
    "uuid": "4f504017-b0e8-4563-bb74-fc4d521c59f6",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/ipvs/4f504017-b0e8-4563-bb74-fc4d521c59f6",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/ipvs/4f504017-b0e8-4563-bb74-fc4d521c59f6",
            "rel": "bookmark"
        }
    ],
    "idisks": [
        {
            "href": "http://10.10.10.2:6385/v1/ipvs/4f504017-b0e8-4563-bb74-fc4d521c59f6/idisks",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/ipvs/4f504017-b0e8-4563-bb74-fc4d521c59f6/idisks",
            "rel": "bookmark"
        }
    ],
    "lvm_pv_name": "/dev/sda7",
    "created_at": "2015-03-11T05:03:31.649520+00:00",
    "forilvgid": 2,
    "idisk_uuid": "0e2e3ca6-841e-4315-ba1c-ad624415da2f",
    "updated_at": null,
    "pv_state": "adding",
    "ihost_uuid": "a0f0a6d5-75ad-4769-8e0e-3a7c7c0ce783",
    "pv_type": "partition",
    "capabilities": {},
    "idisk_device_node": "/dev/sda",
    "idisk_device_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0",
    "lvm_vg_name": "nova-local",
    "lvm_pv_uuid": null,
    "lvm_pv_size": 0
}
DELETE
/v1/ipvs/​{physicalvolume_id}

Deletes a specific LVM physical volume

In order to delete an LVM physical volume, the host must be locked.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

physicalvolume_id

URI

csapi:UUID

The unique identifier of an existing LVM physical volume.

This operation does not accept a request body.

Ceph Storage Functions

GET
/v1/ihosts/​{host_id}​/istors

Lists all Ceph storage functions of a host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

stors (Optional)

plain

xsd:list

The list of Ceph storage function entities.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the storage function.

function (Optional)

plain

xsd:string

The storage function e.g. “osd” (object storage daemon) or “journal” (backing stor for journals) for ceph.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the storage belongs to.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage belongs to.

osdid (Optional)

plain

xsd:integer

The object storage daemon identifier of the storage function.

journal_location (Optional)

plain

csapi:UUID

The journal stor on which the journal is kept.

journal_size_mib (Optional)

plain

xsd:integer

The size of the journal.

journal_path (Optional)

plain

xsd:string

The device path of the journal.

journal_node (Optional)

plain

xsd:string

The device node of the journal.

state (Optional)

plain

xsd:string

The state info of the storage function.

tier_name (Optional)

plain

xsd:string

The name of the storage tier that is using this storage function.

tier_uuid (Optional)

plain

xsd:string

The UUID of the storage tier that is using this storage function.

{
   "istors":[
      {
         "function":"osd",
         "uuid":"31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
         "journal_location":"0929aa31-ee1a-406d-82b1-308be72b300a",
         "journal_size_mib":2500,
         "links":[
            {
               "href":"http://192.168.204.2:6385/v1/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.2:6385/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
               "rel":"bookmark"
            }
         ],
         "created_at":"2014-10-01T21:41:23.973344+00:00",
         "updated_at":"2014-10-01T21:41:24.129134+00:00",
         "capabilities":{

         },
         "ihost_uuid":"42d72247-e0e3-4a5a-8cb1-40bbee52c8db",
         "state":"configured",
         "osdid":2
      }
   ]
}

This operation does not accept a request body.

GET
/v1/istors/​{stor_id}

Shows detailed information about a specific Ceph storage function

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

stor_id

URI

csapi:UUID

The unique identifier of an existing Ceph storage function.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the storage function.

function (Optional)

plain

xsd:string

The storage function e.g. “osd” (object storage daemon) or “journal” (backing stor for journals) for ceph.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the storage belongs to.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage belongs to.

osdid (Optional)

plain

xsd:integer

The object storage daemon identifier of the storage function.

journal_location (Optional)

plain

csapi:UUID

The journal stor on which the journal is kept.

journal_size_mib (Optional)

plain

xsd:integer

The size of the journal.

journal_path (Optional)

plain

xsd:string

The device path of the journal.

journal_node (Optional)

plain

xsd:string

The device node of the journal.

state (Optional)

plain

xsd:string

The state info of the storage function.

tier_name (Optional)

plain

xsd:string

The name of the storage tier that is using this storage function.

tier_uuid (Optional)

plain

xsd:string

The UUID of the storage tier that is using this storage function.

{
   "istors":[
      {
         "function":"osd",
         "uuid":"31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
         "journal_location":"0929aa31-ee1a-406d-82b1-308be72b300a",
         "journal_size":1024,
         "links":[
            {
               "href":"http://192.168.204.2:6385/v1/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.2:6385/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
               "rel":"bookmark"
            }
         ],
         "created_at":"2014-10-01T21:41:23.973344+00:00",
         "updated_at":"2014-10-01T21:41:24.129134+00:00",
         "capabilities":{

         },
         "ihost_uuid":"42d72247-e0e3-4a5a-8cb1-40bbee52c8db",
         "state":"configured",
         "osdid":2
      }
   ]
}

This operation does not accept a request body.

POST
/v1/istors

Creates a Ceph storage function on a specific host

PREREQUISITES: A ‘ceph’ storage backend must be configured in the system. If multiple storage tiers are defined then a tier_uuid must be specified.

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

function

plain

xsd:string

This parameter specifies the Ceph storage function. Valid values are (is): osd or journal.

ihost_uuid

plain

csapi:UUID

This parameter specifies the storage host uuid.

idisk_uuid

plain

csapi:UUID

This parameter specifies the storage disk uuid.

journal_location (Optional)

plain

csapi:UUID

This parameter specifies the uuid of the journal stor on which the stor’s journal will reside. Needed only for “osd” functions.

journal_size_mib (Optional)

plain

xsd:integer

This parameter specifies the size of the journal. Needed only for “osd” functions.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the storage function.

function (Optional)

plain

xsd:string

The storage function e.g. “osd” (object storage daemon) or “journal” (backing stor for journals) for ceph.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the storage belongs to.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage belongs to.

osdid (Optional)

plain

xsd:integer

The object storage daemon identifier of the storage function.

journal_location (Optional)

plain

csapi:UUID

The journal stor on which the journal is kept.

journal_size_mib (Optional)

plain

xsd:integer

The size of the journal.

journal_path (Optional)

plain

xsd:string

The device path of the journal.

journal_node (Optional)

plain

xsd:string

The device node of the journal.

state (Optional)

plain

xsd:string

The state info of the storage function.

tier_name (Optional)

plain

xsd:string

The name of the storage tier that is using this storage function.

tier_uuid (Optional)

plain

xsd:string

The UUID of the storage tier that is using this storage function.

{
   "function":"osd",
   "ihost_uuid":"42d72247-e0e3-4a5a-8cb1-40bbee52c8db",
   "idisk_uuid":"4da10410-2959-46df-b571-04e954c0e115",
   "journal_location":"0929aa31-ee1a-406d-82b1-308be72b300a",
   "journal_size":1024,
}
{
   "function":"osd",
   "uuid":"31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
   "journal_location":"0929aa31-ee1a-406d-82b1-308be72b300a",
   "journal_size_mib":1024,
   "journal_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-2.0-part2",
   "journal_node": "/dev/sdb2",
   "tier_name": "storage",
   "tier_uuid": "dcb41fcc-307a-4d0b-b5dd-af8c6a48a3c5",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
         "rel":"bookmark"
      }
   ],
   "idisks":[
      {
         "href":"http://192.168.204.2:6385/v1/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0/idisks",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0/idisks",
         "rel":"bookmark"
      }
   ],
   "created_at":"2014-10-01T21:41:23+00:00",
   "updated_at":null,
   "idisk_uuid":"4da10410-2959-46df-b571-04e954c0e115",
   "ihost_uuid":"42d72247-e0e3-4a5a-8cb1-40bbee52c8db",
   "state":"configured",
   "capabilities":{

   },
   "osdid":2
}
PATCH
/v1/istors/​{stor_id}

Modifies a specific Ceph storage function

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

stor_id

URI

csapi:UUID

The unique identifier of an existing Ceph storage function.

journal_location (Optional)

plain

csapi:UUID

This parameter specifies a new location for the stor’s journal. Needed only for “osd” functions.

journal_size_mib (Optional)

plain

xsd:integer

This parameter specifies a new size for the stor’s journal. Needed only for “osd” functions.

Response parameters

Parameter

Style

Type

Description

capabilities (Optional)

plain

xsd:string

Additional capabilities info about the storage function.

function (Optional)

plain

xsd:string

The storage function e.g. “osd” (object storage daemon) or “journal” (backing stor for journals) for ceph.

ihost_uuid (Optional)

plain

csapi:UUID

The host UUID that the storage belongs to.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage belongs to.

osdid (Optional)

plain

xsd:integer

The object storage daemon identifier of the storage function.

journal_location (Optional)

plain

csapi:UUID

The journal stor on which the journal is kept.

journal_size_mib (Optional)

plain

xsd:integer

The size of the journal.

journal_path (Optional)

plain

xsd:string

The device path of the journal.

journal_node (Optional)

plain

xsd:string

The device node of the journal.

state (Optional)

plain

xsd:string

The state info of the storage function.

tier_name (Optional)

plain

xsd:string

The name of the storage tier that is using this storage function.

tier_uuid (Optional)

plain

xsd:string

The UUID of the storage tier that is using this storage function.

{
   "journal_location":"e0f12323-f9b9-4ca0-a79b-bc9e7a6d7084",
   "journal_size_mib":2500,
}
{
   "function":"osd",
   "uuid":"31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
   "journal_location":"e0f12323-f9b9-4ca0-a79b-bc9e7a6d7084",
   "journal_size_mib":2500,
   "journal_path": "/dev/disk/by-path/pci-0000:00:0d.0-ata-3.0-part1",
   "journal_node": "/dev/sdc1",
   "tier_name": "storage",
   "tier_uuid": "dcb41fcc-307a-4d0b-b5dd-af8c6a48a3c5",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0",
         "rel":"bookmark"
      }
   ],
   "idisks":[
      {
         "href":"http://192.168.204.2:6385/v1/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0/idisks",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/istors/31c7a5a3-9154-462a-9ea3-ab5c5e0d06e0/idisks",
         "rel":"bookmark"
      }
   ],
   "created_at":"2014-10-01T21:41:23+00:00",
   "updated_at":null,
   "idisk_uuid":"4da10410-2959-46df-b571-04e954c0e115",
   "ihost_uuid":"42d72247-e0e3-4a5a-8cb1-40bbee52c8db",
   "state":"configured",
   "capabilities":{

   },
   "osdid":2
}
DELETE
/v1/istors/​{stor_id}

Deletes a specific Ceph storage function

This is supported just for journal type stors. The host must be locked. In order to delete an osd stor, the host must be locked and deleted.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

stor_id

URI

csapi:UUID

The unique identifier of an existing Ceph storage function.

This operation does not accept a request body.

Interfaces

These APIs allow the create, display, modify and delete of the L2 interfaces of a host.

GET
/v1/ihosts/{host_id}/iinterfaces

List the L2 interfaces of a specific host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

iinterfaces (Optional)

plain

xsd:list

The list of L2 interfaces for a specific host.

ifname (Optional)

plain

xsd:string

The user-specified name of the interface.

ifclass (Optional)

plain

xsd:string

The class of the interface: platform, data, pci-passthrough or pci-sriov.

iftype (Optional)

plain

xsd:string

Indicates the type of L2 interface; ethernet or ae (aggregated ethernet or link aggregation (LAG)) or vlan (virtual lan) or vf (sriov vf).

aemode (Optional)

plain

xsd:string

Only applicable if iftype : ae, this attribute indicates the basic mode of operation for the AE/LAG interface. Supported modes are: balanced round robin, active-backup, balanced xor, broadcast, 802.3ad, balance-tlb, balance-alb. NOTE only balanced xor and active-standby modes are supported by interfaces of ifclass=data.

txhashpolicy (Optional)

plain

xsd:string

Only applicable if iftype : ae and aemode : balanced, this attribute indicates what packet headers the AE/LAG is using to distribute packets across the different links/ports of the AE/LAG group; layer2, layer2+3 or layer3+4.

primary_reselect (Optional)

plain

xsd:string

The reselection policy for the primary slave of the AE/LAG interface: always (default), better``or ``failure. Only applicable if iftype : ae and aemode : active_standby and ifclass :platform.

vlan_id (Optional)

plain

xsd:integer

Only applicable if iftype : vlan, this attribute indicates that the vlan interface id. A vlan id between 1 and 4094 (inclusive) must be selected. NOTE The vlan id must be unique for the host interface.

imac (Optional)

plain

xsd:string

The MAC Address being used by the interface. In the case of AE/LAG, the MAC address of one of the physical ports of the AE/LAG group is used.

imtu (Optional)

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the interface, in bytes.

sriov_numvfs (Optional)

plain

xsd:integer

The number of VFs configured on the interfaces port; only applicable if ifclass : pci-sriov where only a single port is associated with the interface.

schedpolicy (Optional)

plain

xsd:string

Currently not supported.

forihostId (Optional)

plain

xsd:string

The ID of the host of this interface.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host of this interface.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

uses (Optional)

plain

xsd:list

Interfaces which the current interface uses.

used_by (Optional)

plain

xsd:list

Interfaces which use the current interface.

max_tx_rate (Optional)

plain

xsd:integer

The Maximum Transmission Rate of the interface, in Mbps. Only applicable if ifclass : pci-sriov and iftype : vf

{
  "iinterfaces": [
    {
      "forihostid": 2,
      "iftype": "ethernet",
      "uuid": "1425e76f-eb40-41bd-825f-f692a3064043",
      "links": [
        {
          "href": "http://192.168.204.2:6385/v1/iinterfaces/1425e76f-eb40-41bd-825f-f692a3064043",
          "rel": "self"
        },
        {
          "href": "http://192.168.204.2:6385/iinterfaces/1425e76f-eb40-41bd-825f-f692a3064043",
          "rel": "bookmark"
        }
      ],
      "txhashpolicy": null,
      "primary_reselect": null,
      "schedpolicy": null,
      "imac": "08:00:27:80:aa:6e",
      "sriov_numvfs": 0,
      "ihost_uuid": "ff453a51-1d3b-437f-a65e-b2d163f79f85",
      "vlan_id": null,
      "imtu": 1500,
      "aemode": null,
      "ifclass": "platform"
      "ifname": "eth1"
    },
    {
      "forihostid": 2,
      "iftype": "ae",
      "uuid": "92dec2e1-a793-4c63-a408-affc492b7856",
      "links": [
        {
          "href": "http://192.168.204.2:6385/v1/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856",
          "rel": "self"
        },
        {
          "href": "http://192.168.204.2:6385/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856",
          "rel": "bookmark"
        }
      ],
      "txhashpolicy": "layer2",
      "primary_reselect": null,
      "schedpolicy": null,
      "imac": null,
      "sriov_numvfs": 0,
      "ihost_uuid": "ff453a51-1d3b-437f-a65e-b2d163f79f85",
      "imtu": 1500,
      "uses": [
        "eth2",
        "eth3"
      ],
      "used_by": [

      ],
      "aemode": "balanced",
      "ifclass": "data"
      "ifname": "data1"
    }
  ]
}

This operation does not accept a request body.

GET
/v1/iinterfaces/{interface_id}

Shows information about a specific L2 interface

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

interface_id

URI

csapi:UUID

The unique identifier of an existing interface.

Response parameters

Parameter

Style

Type

Description

ifname (Optional)

plain

xsd:string

The user-specified name of the interface.

ifclass (Optional)

plain

xsd:string

The class of the interface: platform, data, pci-passthrough or pci-sriov.

iftype (Optional)

plain

xsd:string

Indicates the type of L2 interface; ethernet or ae (aggregated ethernet or link aggregation (LAG)) or vlan (virtual lan).

aemode (Optional)

plain

xsd:string

Only applicable if iftype : ae, this attribute indicates the basic mode of operation for the AE/LAG interface. Supported modes are: balanced round robin, active-backup, balanced xor, broadcast, 802.3ad, balance-tlb, balance-alb. NOTE only balanced xor and active-standby modes are supported by interfaces of ifclass=data.

txhashpolicy (Optional)

plain

xsd:string

Only applicable if iftype : ae and aemode : balanced, this attribute indicates what packet headers the AE/LAG is using to distribute packets across the different links/ports of the AE/LAG group; layer2, layer2+3 or layer3+4.

primary_reselect (Optional)

plain

xsd:string

The reselection policy for the primary slave of the AE/LAG interface: always (default), better``or ``failure. Only applicable if iftype : ae and aemode : active_standby and ifclass :platform.

vlan_id (Optional)

plain

xsd:integer

Only applicable if iftype : vlan, this attribute indicates that the vlan interface id. A vlan id between 1 and 4094 (inclusive) must be selected. NOTE The vlan id must be unique for the host interface.

imac (Optional)

plain

xsd:string

The MAC Address being used by the interface. In the case of AE/LAG, the MAC address of one of the physical ports of the AE/LAG group is used.

imtu (Optional)

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the interface, in bytes.

sriov_numvfs (Optional)

plain

xsd:integer

The number of VFs configured on the interfaces port; only applicable if ifclass : pci-sriov where only a single port is associated with the interface.

schedpolicy (Optional)

plain

xsd:string

Currently not supported.

forihostId (Optional)

plain

xsd:string

The ID of the host of this interface.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host of this interface.

ifcapabilities (Optional)

plain

xsd:list

Currently not supported.

ports (Optional)

plain

xsd:list

URIs to the physical ports of this interface.

uses (Optional)

plain

xsd:list

Interfaces which the current interface uses.

used_by (Optional)

plain

xsd:list

Interfaces which use the current interface.

max_tx_rate (Optional)

plain

xsd:integer

The Maximum Transmission Rate of the interface, in Mbps. Only applicable if ifclass : pci-sriov and iftype : vf

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "ports" : [
      {
         "rel" : "self",
         "href" : "http://10.10.10.2:6385/v1/iinterfaces/740a5bec-b7a8-4645-93ed-aea0d4cfbf86/ports"
      },
      {
         "rel" : "bookmark",
         "href" : "http://10.10.10.2:6385/iinterfaces/740a5bec-b7a8-4645-93ed-aea0d4cfbf86/ports"
      }
   ],
   "txhashpolicy" : "layer2",
   "primary_reselect": null,
   "schedpolicy" : null,
   "uuid" : "740a5bec-b7a8-4645-93ed-aea0d4cfbf86",
   "ihost_uuid" : "ff453a51-1d3b-437f-a65e-b2d163f79f85",
   "vlan_id": null,
   "created_at" : "2014-09-29T11:12:42.556372+00:00",
   "ifcapabilities" : {},
   "iftype" : "ae",
   "links" : [
      {
         "rel" : "self",
         "href" : "http://10.10.10.2:6385/v1/iinterfaces/740a5bec-b7a8-4645-93ed-aea0d4cfbf86"
      },
      {
         "rel" : "bookmark",
         "href" : "http://10.10.10.2:6385/iinterfaces/740a5bec-b7a8-4645-93ed-aea0d4cfbf86"
      }
   ],
   "imac" : null,
   "sriov_numvfs": 0,
   "aemode" : "balanced",
   "ifclass": "data",
   "ifname" : "data1",
   "ports" : null,
   "uses": [

   ],
   "used_by": [

   ],
   "forihostid" : 2,
   "updated_at" : null,
   "imtu" : 1500
}

This operation does not accept a request body.

POST
/v1/iinterfaces

Creates an L2 interface on a specific host

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

ifname (Optional)

plain

xsd:string

The name for the interface.

ifclass (Optional)

plain

xsd:string

The class of the interface: platform, data, pci-passthrough or pci-sriov.

iftype (Optional)

plain

xsd:string

The type of interface; i.e. ae or vlan or ethernet.

aemode (Optional)

plain

xsd:string

Only applicable if iftype : ae, this attribute specifies whether the AE/LAG should operate as balanced or active_standby or 802.3ad across its links. The balanced and active_standby are the only modes supported by data type interface. For mgmt type interface the 802.3ad and active_standby options are supported.

txhashpolicy (Optional)

plain

xsd:string

Only applicable if iftype : ae and aemode : balanced, this attribute specifies what packet headers the AE/LAG should use to distribute packets across the different links/ports of the AE/LAG group; layer2, layer2+3 or layer3+4.

primary_reselect (Optional)

plain

xsd:string

The reselection policy for the primary slave of the AE/LAG interface: always (default), better``or ``failure. Only applicable if iftype : ae and aemode : active_standby and ifclass :platform.

vlan_id (Optional)

plain

xsd:integer

Only applicable if iftype : vlan, this attribute specifies a virtual lan id for a vlan interface type.

ports (Optional)

plain

xsd:list

This attribute specifies a comma-separated list of ports that this interface contains. If iftype : ethernet then only one port is allowed.

uses (Optional)

plain

xsd:list

Only applicable if iftype : ae or iftype: vlan or iftype: ethernet, this attribute specifies a comma-separated list of interfaces that this interface uses.

used_by (Optional)

plain

xsd:list

This attribute specifies a comma-separated list of interfaces that use this interface.

imtu (Optional)

plain

xsd:integer

This attribute specifies the interface’s Maximum Transmit Unit.

sriov_numvfs (Optional)

plain

xsd:integer

The number of VFs to configure on the interface’s port; only applicable if ifclass : pci-sriov where only a single port is associated with the interface.

max_tx_rate (Optional)

plain

xsd:integer

The Maximum Transmission Rate of the interface, in Mbps. Only applicable if ifclass : pci-sriov and iftype : vf

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host to create the interface on.

Response parameters

Parameter

Style

Type

Description

ifname (Optional)

plain

xsd:string

The user-specified name of the interface.

ifclass (Optional)

plain

xsd:string”

The class of the interface: platform, data, pci-passthrough or pci-sriov.

iftype (Optional)

plain

xsd:string

Indicates the type of L2 interface; ethernet or ae (aggregated ethernet or link aggregation (LAG)) or vlan (virtual lan).

aemode (Optional)

plain

xsd:string

Only applicable if iftype : ae, this attribute indicates the basic mode of operation for the AE/LAG interface. Supported modes are: balanced round robin, active-backup, balanced xor, broadcast, 802.3ad, balance-tlb, balance-alb. NOTE only balanced xor and active-standby modes are supported by interfaces of ifclass=data.

txhashpolicy (Optional)

plain

xsd:string

Only applicable if iftype : ae and aemode : balanced, this attribute indicates what packet headers the AE/LAG is using to distribute packets across the different links/ports of the AE/LAG group; layer2, layer2+3 or layer3+4.

primary_reselect (Optional)

plain

xsd:string

The reselection policy for the primary slave of the AE/LAG interface: always (default), better``or ``failure. Only applicable if iftype : ae and aemode : active_standby and ifclass :platform.

vlan_id (Optional)

plain

xsd:integer

Only applicable if iftype : vlan, this attribute indicates that the vlan interface id. A vlan id between 1 and 4094 (inclusive) must be selected. NOTE The vlan id must be unique for the host interface.

imac (Optional)

plain

xsd:string

The MAC Address being used by the interface. In the case of AE/LAG, the MAC address of one of the physical ports of the AE/LAG group is used.

imtu (Optional)

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the interface, in bytes.

sriov_numvfs (Optional)

plain

xsd:integer

The number of VFs configured on the interfaces port; only applicable if ifclass : pci-sriov where only a single port is associated with the interface.

schedpolicy (Optional)

plain

xsd:string

Currently not supported.

forihostId (Optional)

plain

xsd:string

The ID of the host of this interface.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host of this interface.

ifcapabilities (Optional)

plain

xsd:list

Currently not supported.

ports (Optional)

plain

xsd:list

URIs to the physical ports of this interface.

uses (Optional)

plain

xsd:list

Interfaces which the current interface uses.

used_by (Optional)

plain

xsd:list

Interfaces which use the current interface.

max_tx_rate (Optional)

plain

xsd:integer

The Maximum Transmission Rate of the interface, in Mbps. Only applicable if ifclass : pci-sriov and iftype : vf

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
  "iftype": "ae",
  "txhashpolicy": "layer2",
  "primary_reselect": null,
  "ihost_uuid": "ff453a51-1d3b-437f-a65e-b2d163f79f85",
  "imtu": "1500",
  "ifclass": "data",
  "ifname": "data1",
  "uses": ['eth2','eth3'],
  "aemode": "balanced",
  "sriov_numvfs": 0
}
{
  "ports": [
    {
      "href": "http://192.168.204.2:6385/v1/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856/ports",
      "rel": "self"
    },
    {
      "href": "http://192.168.204.2:6385/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856/ports",
      "rel": "bookmark"
    }
  ],
  "forihostid": 2,
  "iftype": "ae",
  "uuid": "92dec2e1-a793-4c63-a408-affc492b7856",
  "links": [
    {
      "href": "http://192.168.204.2:6385/v1/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856",
      "rel": "self"
    },
    {
      "href": "http://192.168.204.2:6385/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856",
      "rel": "bookmark"
    }
  ],
  "ihost_uuid": "ff453a51-1d3b-437f-a65e-b2d163f79f85",
  "vlan_id": null,
  "txhashpolicy": "layer2",
  "primary_reselect": null,
  "created_at": "2014-09-29T10:55:20.515705+00:00",
  "schedpolicy": null,
  "imac": null,
  "updated_at": null,
  "ifcapabilities": {

  },
  "imtu": 1500,
  "uses": [
    "eth2",
    "eth3"
  ],
  "used_by": [

  ],
  "aemode": "balanced",
  "sriov_numvfs": 0,
  "ifclass": "data",
  "ifname": "data1",
  "ports": null,
}
PATCH
/v1/iinterfaces/{interface_id}

Modifies a specific L2 interface

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

interface_id

URI

csapi:UUID

The unique identifier of an existing interface.

ifname (Optional)

plain

xsd:string

The name for the interface.

ifclass (Optional)

plain

xsd:string

The class of the interface: platform, data, pci-passthrough or pci-sriov.

iftype (Optional)

plain

xsd:string

The type of interface; i.e. ethernet or ae or vlan.

aemode (Optional)

plain

xsd:string

Only applicable if iftype : ae, this attribute specifies whether the AE/LAG should operate as balanced or active_standby across its links. These are the only modes supported by data type interface.

txhashpolicy (Optional)

plain

xsd:string

Only applicable if iftype : ae and aemode : balanced, this attribute specifies what packet headers the AE/LAG should use to distribute packets across the different links/ports of the AE/LAG group; layer2, layer2+3 or layer3+4.

primary_reselect (Optional)

plain

xsd:string

The reselection policy for the primary slave of the AE/LAG interface: always (default), better``or ``failure. Only applicable if iftype : ae and aemode : active_standby and ifclass :platform.

vlan_id (Optional)

plain

xsd:integer

Only applicable if iftype : vlan, this attribute specifies a virtual lan id for a vlan interface type.

ports (Optional)

plain

xsd:list

This attribute specifies a comma-separated list of ports that this interface contains. If iftype : ethernet then only one port is allowed.

uses (Optional)

plain

xsd:list

Only applicable if iftype : ae or iftype: vlan or iftype: ethernet, this attribute specifies a comma-separated list of interfaces that this interface uses.

used_by (Optional)

plain

xsd:list

This attribute specifies a comma-separated list of interfaces that use this interface.

imtu (Optional)

plain

xsd:integer

This attribute specifies the interface’s Maximum Transmit Unit.

sriov_numvfs (Optional)

plain

xsd:integer

The number of VFs to configure on the interface’s port; only applicable if ifclass : pci-sriov where only a single port is associated with the interface.

max_tx_rate (Optional)

plain

xsd:integer

The Maximum Transmission Rate of the interface, in Mbps. Only applicable if ifclass : pci-sriov and iftype : vf

Response parameters

Parameter

Style

Type

Description

ifname (Optional)

plain

xsd:string

The user-specified name of the interface.

ifclass (Optional)

plain

xsd:string

The class of the interface: platform, data, pci-passthrough or pci-sriov.

iftype (Optional)

plain

xsd:string

Indicates the type of L2 interface; ethernet or ae (aggregated ethernet or link aggregation (LAG)) or vlan (virtual lan).

aemode (Optional)

plain

xsd:string

Only applicable if iftype : ae, this attribute indicates the basic mode of operation for the AE/LAG interface. Supported modes are: balanced round robin, active-backup, balanced xor, broadcast, 802.3ad, balance-tlb, balance-alb. NOTE only balanced xor and active-standby modes are supported by interfaces of ifclass=data.

txhashpolicy (Optional)

plain

xsd:string

Only applicable if iftype : ae and aemode : balanced, this attribute indicates what packet headers the AE/LAG is using to distribute packets across the different links/ports of the AE/LAG group; layer2, layer2+3 or layer3+4.

primary_reselect (Optional)

plain

xsd:string

The reselection policy for the primary slave of the AE/LAG interface: always (default), better``or ``failure. Only applicable if iftype : ae and aemode : active_standby and ifclass :platform.

vlan_id (Optional)

plain

xsd:integer

Only applicable if iftype : vlan, this attribute indicates that the vlan interface id. A vlan id between 1 and 4094 (inclusive) must be selected. NOTE The vlan id must be unique for the host interface.

imac (Optional)

plain

xsd:string

The MAC Address being used by the interface. In the case of AE/LAG, the MAC address of one of the physical ports of the AE/LAG group is used.

imtu (Optional)

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the interface, in bytes.

sriov_numvfs (Optional)

plain

xsd:integer

The number of VFs configured on the interfaces port; only applicable if ifclass : pci-sriov where only a single port is associated with the interface.

schedpolicy (Optional)

plain

xsd:string

Currently not supported.

forihostId (Optional)

plain

xsd:string

The ID of the host of this interface.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host of this interface.

ifcapabilities (Optional)

plain

xsd:list

Currently not supported.

ports (Optional)

plain

xsd:list

URIs to the physical ports of this interface.

uses (Optional)

plain

xsd:list

Interfaces which the current interface uses.

used_by (Optional)

plain

xsd:list

Interfaces which use the current interface.

max_tx_rate (Optional)

plain

xsd:integer

The Maximum Transmission Rate of the interface, in Mbps. Only applicable if ifclass : pci-sriov and iftype : vf

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
  {
    "path": "/imtu",
    "value": "1500",
    "op": "replace"
  },
  {
    "path": "/txhashpolicy",
    "value": "layer2",
    "op": "replace"
  },
  {
    "path": "/aemode",
    "value": "active_standby",
    "op": "replace"
  },
  {
    "path": "/primary_reselect",
    "value": "better",
    "op": "replace"
  },
  {
    "path": "/uses",
    "value": ['eth2','eth3'],
    "op": "replace"
  }
]
{
  "ports": [
    {
      "href": "http://192.168.204.2:6385/v1/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856/ports",
      "rel": "self"
    },
    {
      "href": "http://192.168.204.2:6385/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856/ports",
      "rel": "bookmark"
    }
  ],
  "forihostid": 2,
  "iftype": "ae",
  "uuid": "92dec2e1-a793-4c63-a408-affc492b7856",
  "links": [
    {
      "href": "http://192.168.204.2:6385/v1/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856",
      "rel": "self"
    },
    {
      "href": "http://192.168.204.2:6385/iinterfaces/92dec2e1-a793-4c63-a408-affc492b7856",
      "rel": "bookmark"
    }
  ],
  "ihost_uuid": "ff453a51-1d3b-437f-a65e-b2d163f79f85",
  "vlan_id": null,
  "txhashpolicy": "layer2",
  "primary_reselect": null,
  "created_at": "2014-09-29T10:55:20.515705+00:00",
  "schedpolicy": null,
  "imac": null,
  "sriov_numvfs": 0,
  "updated_at": "2014-09-29T11:08:21.016145+00:00",
  "ifcapabilities": {

  },
  "imtu": 1500,
  "uses": [
    "eth2",
    "eth3"
  ],
  "used_by": [

  ],
  "aemode": "active_standby",
  "ifclass": "data",
  "ifname": "data1",
  "ports": null
}
DELETE
/v1/iinterfaces/{interface_id}

Deletes a specific L2 interface

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

interface_id

URI

csapi:UUID

The unique identifier of an existing interface.

This operation does not accept a request body.

Interface Networks

These APIs allow the create, display, and delete of the Interface Network.

GET
/v1/ihosts/{host_id}/interface_networks

List the Interface Networks of a specific host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

interface_networks

plain

xsd:list

The list of Interface Networks.

uuid

plain

csapi:UUID

The universally unique identifier for this object.

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

network_uuid

plain

csapi:UUID

The universally unique identifier for the network.

network_name

plain

xsd:string

The name of the network.

ifname

plain

xsd:string

The name of the interface.

{
   "interface_networks":[
     {
         "network_uuid": "783cabc6-6105-4195-b1ff-4453d4e1144e",
         "uuid": "bef00740-0d2b-48a5-8371-8956c0dbe2d8",
         "ifname": "enp0s8",
         "interface_uuid": "b38876cd-a17a-4e60-ba9f-7588531039e0",
         "network_name": "mgmt",
         "id": 1
     },
     {
         "network_uuid": "1514793b-8d01-4156-b051-e4aaf85fe106",
         "uuid": "49827e51-1d9c-4ffb-8ed2-5c82fa044afa",
         "ifname": "enp0s3",
         "interface_uuid": "03276210-f585-45c0-8a5c-15408de05594",
         "network_name": "oam",
         "id": 2
     },
     {
         "network_uuid": "7b1e43d4-4c5c-4166-940c-5b50ef1e522e",
         "uuid": "7b6838da-6f0a-4874-92ff-bf1b10bf9102",
         "ifname": "enp0s8",
         "interface_uuid": "b38876cd-a17a-4e60-ba9f-7588531039e0",
         "network_name": "cluster-host",
         "id": 3
     }
   ]
}

This operation does not accept a request body.

GET
/v1/interface_networks/{interface_network_id}

Shows information about a specific Interface Network

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

interface_network_id

URI

csapi:UUID

The unique identifier of an existing network.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

network_uuid

plain

csapi:UUID

The universally unique identifier for the network.

network_name

plain

xsd:string

The name of the network.

ifname

plain

xsd:string

The name of the interface.

{
   "network_uuid": "1514793b-8d01-4156-b051-e4aaf85fe106",
   "uuid": "49827e51-1d9c-4ffb-8ed2-5c82fa044afa",
   "ifname": "enp0s3",
   "interface_uuid": "03276210-f585-45c0-8a5c-15408de05594",
   "network_name": "oam",
   "id": 2
}

This operation does not accept a request body.

POST
/v1/interface_networks

Creates an Interface Network

This will create an interface network i.e. assign a network to an interface.

Normal response codes

200

Error response codes

Conflict (409)

Request parameters

Parameter

Style

Type

Description

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

network_uuid

plain

csapi:UUID

The universally unique identifier for the network.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

network_uuid

plain

csapi:UUID

The universally unique identifier for the network.

network_name

plain

xsd:string

The name of the network.

ifname

plain

xsd:string

The name of the interface.

{
   "interface_uuid":"2731d293-8124-4963-9d7c-36bdb220b38c"
   "network_uuid":"3a0b7357-eb36-42fb-a800-55ff3549cc3c",
}
{
   "network_uuid": "1514793b-8d01-4156-b051-e4aaf85fe106",
   "uuid": "49827e51-1d9c-4ffb-8ed2-5c82fa044afa",
   "ifname": "enp0s3",
   "interface_uuid": "03276210-f585-45c0-8a5c-15408de05594",
   "network_name": "oam",
   "id": 2
}
DELETE
/v1/interface_networks/{interface_network_id}

Deletes a specific Interface Network

This will remove from the interface the network assigned.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

interface_network_id

URI

csapi:UUID

The unique identifier of an existing interface network.

This operation does not accept a request body.

Data Networks

These APIs allow the create, display, modify and delete of the Data Networks.

GET
/v1/datanetworks

List the Data Networks

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

datanetworks (Optional)

plain

xsd:list

The list of Data Networks.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

network_type (Optional)

plain

xsd:string

Indicates the type of data network ; flat, vlan, vxlan.

name (Optional)

plain

xsd:string

The user-specified name of the data network.

description (Optional)

plain

xsd:string

The user-specified description of the data network.

mtu (Optional)

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the data network, in bytes.

mode (Optional)

plain

xsd:string

Only applicable if network_type : vxlan, the mode of the data network; dynamic, static.

multicast_group (Optional)

plain

xsd:string

Only applicable if network_type : vxlan and network_type : dynamic, this attribute indicates the multicast group address.

port_num (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the port number of the vxlan datanetwork.

ttl (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the time to live. A value between 1 and 255 inclusive is allowed.

{
   "datanetworks":[
      {
         "description":null,
         "port_num":null,
         "uuid":"e1f6786d-df5a-4df8-9e6c-ced71797afe7",
         "mtu":1500,
         "multicast_group":null,
         "mode":null,
         "ttl":null,
         "id":1,
         "network_type":"vlan",
         "name":"group0-data0"
      },
      {
         "description":null,
         "port_num":4789,
         "uuid":"216c59cc-9713-4071-beab-c37dc2b6d153",
         "mtu":1400,
         "multicast_group":"239.0.6.10",
         "mode":"dynamic",
         "ttl":1,
         "id":2,
         "network_type":"vxlan",
         "name":"group0-data1"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/datanetworks/{datanetwork_id}

Shows information about a specific Data Network

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

datanetwork_id

URI

csapi:UUID

The unique identifier of an existing datanetwork.

Response parameters

Parameter

Style

Type

Description

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

network_type (Optional)

plain

xsd:string

Indicates the type of data network ; flat, vlan, vxlan.

name (Optional)

plain

xsd:string

The user-specified name of the data network.

description (Optional)

plain

xsd:string

The user-specified description of the data network.

mtu (Optional)

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the data network, in bytes.

mode (Optional)

plain

xsd:string

Only applicable if network_type : vxlan, the mode of the data network; dynamic, static.

multicast_group (Optional)

plain

xsd:string

Only applicable if network_type : vxlan and network_type : dynamic, this attribute indicates the multicast group address.

port_num (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the port number of the vxlan datanetwork.

ttl (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the time to live.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "description":null,
   "updated_at":null,
   "created_at":"2019-02-02T15:03:29.255937+00:00",
   "port_num":4789,
   "uuid":"216c59cc-9713-4071-beab-c37dc2b6d153",
   "mtu":1400,
   "multicast_group":"239.0.6.10",
   "mode":"dynamic",
   "ttl":1,
   "id":2,
   "network_type":"vxlan",
   "name":"group0-data1"
}

This operation does not accept a request body.

POST
/v1/datanetworks

Creates a Data Network

This will create a data network.

Normal response codes

200

Error response codes

Conflict (409)

Request parameters

Parameter

Style

Type

Description

network_type

plain

xsd:string

Indicates the type of data network ; flat, vlan, vxlan.

name

plain

xsd:string

The user-specified name of the data network.

mtu

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the data network, in bytes.

description (Optional)

plain

xsd:string

The user-specified description of the data network.

mode (Optional)

plain

xsd:string

Only applicable if network_type : vxlan, the mode of the data network; dynamic, static.

multicast_group (Optional)

plain

xsd:string

Only applicable if network_type : vxlan and network_type : dynamic, this attribute indicates the multicast group address.

port_num (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the port number of the vxlan datanetwork.

ttl (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the time to live.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

network_type

plain

xsd:string

Indicates the type of data network ; flat, vlan, vxlan.

name

plain

xsd:string

The user-specified name of the data network.

description (Optional)

plain

xsd:string

The user-specified description of the data network.

mtu

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the data network, in bytes.

mode (Optional)

plain

xsd:string

Only applicable if network_type : vxlan, the mode of the data network; dynamic, static.

multicast_group (Optional)

plain

xsd:string

Only applicable if network_type : vxlan and network_type : dynamic, this attribute indicates the multicast group address.

port_num (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the port number of the vxlan datanetwork.

ttl (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the time to live.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "description":"group2-data2 description",
   "port_num":"4789",
   "mtu":"1400",
   "multicast_group":"239.0.6.10",
   "mode":"dynamic",
   "ttl":"1",
   "network_type":"vxlan",
   "name":"group2-data2"
}
{
   "description":"group2-data2 description",
   "updated_at":null,
   "created_at":"2019-02-03T15:31:39.997833+00:00",
   "port_num":4789,
   "uuid":"3a0b7357-eb36-42fb-a800-55ff3549cc3c",
   "mtu":1400,
   "multicast_group":"239.0.6.10",
   "mode":"dynamic",
   "ttl":1,
   "id":4,
   "network_type":"vxlan",
   "name":"group2-data2"
}
PATCH
/v1/datanetworks/{datanetwork_id}

Modifies a specific Data Network

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

datanetwork_id

URI

csapi:UUID

The unique identifier of an existing datanetwork.

mtu (Optional)

plain

xsd:integer

This attribute specifies the data network’s Maximum Transmit Unit.

description (Optional)

plain

xsd:string

The user-specified description of the data network.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

network_type

plain

xsd:string

Indicates the type of data network ; flat, vlan, vxlan.

name

plain

xsd:string

The user-specified name of the data network.

description (Optional)

plain

xsd:string

The user-specified description of the data network.

mtu

plain

xsd:integer

The Maximum Transmission Unit (MTU) of the data network, in bytes.

mode (Optional)

plain

xsd:string

Only applicable if network_type : vxlan, the mode of the data network; dynamic, static.

multicast_group (Optional)

plain

xsd:string

Only applicable if network_type : vxlan and network_type : dynamic, this attribute indicates the multicast group address.

port_num (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the port number of the vxlan datanetwork.

ttl (Optional)

plain

xsd:integer

Only applicable if network_type : vxlan, this attribute indicates the time to live.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
   {
      "path":"/description",
      "value":"group2-data2 datanetwork description",
      "op":"replace"
   },
   {
      "path":"/mtu",
      "value":"1500",
      "op":"replace"
   }
]
{
   "description":"group2-data2 datanetwork description",
   "updated_at":"2019-02-03T15:49:50.897532+00:00",
   "created_at":"2019-02-03T15:31:39.997833+00:00",
   "port_num":4789,
   "uuid":"3a0b7357-eb36-42fb-a800-55ff3549cc3c",
   "mtu":1500,
   "multicast_group":"239.0.6.10",
   "mode":"dynamic",
   "ttl":1,
   "id":4,
   "network_type":"vxlan",
   "name":"group2-data2"
}
DELETE
/v1/datanetworks/{datanetwork_id}

Deletes a specific Data Network

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

datanetwork_id

URI

csapi:UUID

The unique identifier of an existing datanetwork.

This operation does not accept a request body.

Interface Data Networks

These APIs allow the create, display, and delete of the Interface Data Network.

GET
/v1/ihosts/{host_id}/interface_datanetworks

List the Interface Data Networks of a specific host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

interface_datanetworks

plain

xsd:list

The list of Interface Data Networks.

uuid

plain

csapi:UUID

The universally unique identifier for this object.

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

datanetwork_uuid

plain

csapi:UUID

The universally unique identifier for the datanetwork.

datanetwork_name

plain

xsd:string

The name of the data network.

ifname

plain

xsd:string

The name of the interface.

{
   "interface_datanetworks":[
      {
         "datanetwork_uuid":"1ea7d61d-e988-4457-83bf-3ba37f5f6f8d",
         "datanetwork_id":1,
         "uuid":"e3502084-22c4-4e1d-acd3-0f2594fa7281",
         "datanetwork_name":"group0-data0",
         "ifname":"data0",
         "interface_uuid":"2731d293-8124-4963-9d7c-36bdb220b38c",
         "id":1
      },
      {
         "datanetwork_uuid":"01bafd19-63ea-4a1e-8b3c-35e96b7d3a6c",
         "datanetwork_id":2,
         "uuid":"ffccd4ce-0c47-4bdc-b38d-549b2f2a0d03",
         "datanetwork_name":"group0-data1",
         "ifname":"data1",
         "interface_uuid":"cdd2e58b-abe7-4d27-b4ef-2ff6b5e5e774",
         "id":2
      }
   ]
}

This operation does not accept a request body.

GET
/v1/interface_datanetworks/{interface_datanetwork_id}

Shows information about a specific Interface Data Network

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

interface_datanetwork_id

URI

csapi:UUID

The unique identifier of an existing datanetwork.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

datanetwork_uuid

plain

csapi:UUID

The universally unique identifier for the datanetwork.

datanetwork_name

plain

xsd:string

The name of the data network.

ifname

plain

xsd:string

The name of the interface.

{
   "datanetwork_uuid":"1ea7d61d-e988-4457-83bf-3ba37f5f6f8d",
   "datanetwork_id":1,
   "uuid":"e3502084-22c4-4e1d-acd3-0f2594fa7281",
   "datanetwork_name":"group0-data0",
   "ifname":"data0",
   "interface_uuid":"2731d293-8124-4963-9d7c-36bdb220b38c",
   "id":1
}

This operation does not accept a request body.

POST
/v1/interface_datanetworks

Creates an Interface Data Network

This will create an interface data network i.e. assign a datanetwork to an interface.

Normal response codes

200

Error response codes

Conflict (409)

Request parameters

Parameter

Style

Type

Description

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

datanetwork_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

interface_uuid

plain

csapi:UUID

The universally unique identifier for the interface.

datanetwork_uuid

plain

csapi:UUID

The universally unique identifier for the datanetwork.

datanetwork_name

plain

xsd:string

The name of the data network.

ifname

plain

xsd:string

The name of the interface.

{
   "interface_uuid":"2731d293-8124-4963-9d7c-36bdb220b38c"
   "datanetwork_uuid":"3a0b7357-eb36-42fb-a800-55ff3549cc3c",
}
{
   "datanetwork_uuid":"3a0b7357-eb36-42fb-a800-55ff3549cc3c",
   "datanetwork_id":4,
   "uuid":"0ddd0621-7956-42bc-96ca-03c2ebc61b9b",
   "created_at":"2019-02-04T00:14:50.277991+00:00",
   "updated_at":null,
   "datanetwork_name":"group2-data2",
   "ifname":"data0",
   "interface_uuid":"2731d293-8124-4963-9d7c-36bdb220b38c",
   "id":3
}
DELETE
/v1/interface_datanetworks/{interface_datanetwork_id}

Deletes a specific Interface Data Network

This will remove from the interface the datanetwork assigned.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

interface_datanetwork_id

URI

csapi:UUID

The unique identifier of an existing interface datanetwork.

This operation does not accept a request body.

DNS

The DNS is the Domain Name Server entity for the system.

GET
/v1/idns

Shows attributes of the DNS object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

nameservers (Optional)

plain

xsd:string

The comma-separated list of DNS nameservers.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the DNS belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
  "idnss": [
    {
      "links": [
        {
          "href": "http://192.168.204.2:6385/v1/idnss/fab4ff99-ed44-41d0-9e04-2efb3138cf03",
          "rel": "self"
        },
        {
          "href": "http://192.168.204.2:6385/idnss/fab4ff99-ed44-41d0-9e04-2efb3138cf03",
          "rel": "bookmark"
        }
      ],
      "nameservers": "8.8.8.4,8.8.4.5",
      "created_at": "2014-09-30T14:42:16.676726+00:00",
      "updated_at": "2014-10-01T15:10:42.328364+00:00",
      "isystem_uuid": "ce178041-2b2c-405d-bf87-f19334a35582",
      "uuid": "fab4ff99-ed44-41d0-9e04-2efb3138cf03"
    }
  ]
}

This operation does not accept a request body.

PATCH
/v1/idns/​{dns_id}

Modifies attributes of the DNS object

The attributes of the DNS object that are configurable are:

  • nameservers

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

dns_id

URI

csapi:UUID

The unique identifier of the DNS for this system.

nameservers (Optional)

plain

xsd:string

This parameter specifies the list of Domain Name Servers (DNS). Comma separated list.

Response parameters

Parameter

Style

Type

Description

nameservers (Optional)

plain

xsd:string

The comma-separated list of DNS nameservers.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the DNS belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
  {
    "path": "/nameservers",
    "value": "8.8.8.99,8.8.4.99",
    "op": "replace"
  },
  {
    "path": "/action",
    "value": "apply",
    "op": "replace"
  }
]
{
  "links": [
    {
      "href": "http://192.168.204.2:6385/v1/idnss/fab4ff99-ed44-41d0-9e04-2efb3138cf03",
      "rel": "self"
    },
    {
      "href": "http://192.168.204.2:6385/idnss/fab4ff99-ed44-41d0-9e04-2efb3138cf03",
      "rel": "bookmark"
    }
  ],
  "nameservers": "8.8.8.99,8.8.4.99",
  "created_at": "2014-09-30T14:42:16.676726+00:00",
  "updated_at": "2014-10-01T15:13:42.356658+00:00",
  "isystem_uuid": "ce178041-2b2c-405d-bf87-f19334a35582",
  "action": null,
  "forisystemid": 1,
  "uuid": "fab4ff99-ed44-41d0-9e04-2efb3138cf03"
}

NTP

The NTP is the Network Time Protocol entity for the system.

GET
/v1/intp

Shows attributes of the NTP object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

ntpservers (Optional)

plain

xsd:string

The comma-separated list of NTP ntpservers.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the NTP belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "intps":[
      {
         "links":[
            {
               "href":"http://192.168.204.2:6385/v1/intps/81321749-5092-4faf-94ba-6a6853440725",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.2:6385/intps/81321749-5092-4faf-94ba-6a6853440725",
               "rel":"bookmark"
            }
         ],
         "created_at":"2014-09-30T14:42:16.693209+00:00",
         "updated_at":"2014-10-01T17:33:43.169595+00:00",
         "ntpservers":"0.pool.ntp.org,2.pool.ntp.org,1.pool.ntp.org",
         "isystem_uuid":"ce178041-2b2c-405d-bf87-f19334a35582",
         "uuid":"81321749-5092-4faf-94ba-6a6853440725"
      }
   ]
}

This operation does not accept a request body.

PATCH
/v1/intp/​{ntp_id}

Modifies attributes of the NTP object

The attributes of the NTP object that are configurable are:

  • ntpservers

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

ntp_id

URI

csapi:UUID

The unique identifier of the NTP for this system.

ntpservers (Optional)

plain

xsd:string

This parameter specifies the list of Network Time Protocol (NTP) Servers. Comma separated list.

Response parameters

Parameter

Style

Type

Description

ntpservers (Optional)

plain

xsd:string

The comma-separated list of NTP ntpservers.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the NTP belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
   {
      "path":"/ntpservers",
      "value":"0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org",
      "op":"replace"
   },
   {
      "path":"/action",
      "value":"apply",
      "op":"replace"
   }
]
{
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/intps/81321749-5092-4faf-94ba-6a6853440725",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/intps/81321749-5092-4faf-94ba-6a6853440725",
         "rel":"bookmark"
      }
   ],
   "created_at":"2014-09-30T14:42:16.693209+00:00",
   "updated_at":"2014-10-01T17:35:43.162472+00:00",
   "ntpservers":"0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org",
   "isystem_uuid":"ce178041-2b2c-405d-bf87-f19334a35582",
   "forisystemid":1,
   "uuid":"81321749-5092-4faf-94ba-6a6853440725"
}

PTP Instances

Each PTP (Precision Time Protocol) service running in the system is linked to a PTP instance object. These APIs allow to create, display, modify, associate and delete of PTP instances.

GET
/v1/ptp_instances

List the PTP instances

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403)

Response parameters

Parameter

Style

Type

Description

ptp_instances

plain

xsd:list

The list of PTP instances

uuid

plain

csapi:UUID

The universally unique identifier for this object

service

plain

xsd:string

Indicates the type of PTP service: ptp4l, phc2sys, ts2phc, clock

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP instance

hostnames

plain

xsd:list

List of hosts where this PTP instance is supposed to run

parameters

plain

xsd:list

List of PTP parameters (key=value pairs) of this instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-instance

id

plain

xsd:integer

The internal numeric identifier for this PTP instance

name

plain

xsd:string

The user-specified name for this PTP instance

{
   "ptp_instances": [
      {
            "uuid": "29e7d80d-0934-40d8-a2e5-7e51c4a20c34",
            "service": "phc2sys",
            "created_at": "2022-03-16T14:14:25.673030+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "parameters": [
               "domainNumber=1",
               "uds_address=/var/run/ptp4l-ptp4lsvc0"
            ],
            "type": "ptp-instance",
            "id": 2,
            "name": "phc2syssvc0"
      },
      {
            "uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "service": "ptp4l",
            "created_at": "2022-03-16T11:59:12.238461+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "parameters": [
               "domainNumber=1"
            ],
            "type": "ptp-instance",
            "id": 1,
            "name": "ptp4lsvc0"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/ihosts/{host_id}/ptp_instances

List the PTP instances assigned to host

One host can be running many different PTP instances (services), and same PTP instance (set of PTP parameters) can be assumed by (and run in) different hosts.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of the host

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ptp_instances

plain

xsd:list

The list of PTP instances assigned to the given host

uuid

plain

csapi:UUID

The universally unique identifier for this object

service

plain

xsd:string

Indicates the type of PTP service: ptp4l, phc2sys, ts2phc, clock

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP instance

hostnames

plain

xsd:list

List of hosts where this PTP instance is supposed to run (should contain the given one)

parameters

plain

xsd:list

List of PTP parameters (key=value pairs) of this instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-instance

id

plain

xsd:integer

The internal numeric identifier for this PTP instance

name

plain

xsd:string

The user-specified name for this PTP instance

{
   "ptp_instances": [
      {
            "uuid": "29e7d80d-0934-40d8-a2e5-7e51c4a20c34",
            "service": "phc2sys",
            "created_at": "2022-03-16T14:14:25.673030+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "parameters": [
               "domainNumber=1",
               "uds_address=/var/run/ptp4l-ptp4lsvc0"
            ],
            "type": "ptp-instance",
            "id": 2,
            "name": "phc2syssvc0"
      },
      {
            "uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "service": "ptp4l",
            "created_at": "2022-03-16T11:59:12.238461+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "parameters": [
               "domainNumber=1"
            ],
            "type": "ptp-instance",
            "id": 1,
            "name": "ptp4lsvc0"
      }
   ]
}
GET
/v1/ptp_instances/​{ptp_instance_id}

Shows information about specific PTP instance

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_instance_id

URI

csapi:UUID

The unique identifier of an existing PTP instance

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object

service

plain

xsd:string

Indicates the type of PTP service: ptp4l, phc2sys, ts2phc, clock

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP instance

hostnames

plain

xsd:list

List of hosts where this PTP instance is supposed to run

parameters

plain

xsd:list

List of PTP parameters (key=value pairs) of this instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-instance

id

plain

xsd:integer

The internal numeric identifier for this PTP instance

name

plain

xsd:string

The user-specified name for this PTP instance

{
   "uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
   "service": "ptp4l",
   "created_at": "2022-03-16T11:59:12.238461+00:00",
   "updated_at": null,
   "capabilities": {},
   "hostnames": [
      "controller-0"
   ],
   "parameters": [
      "domainNumber=1"
   ],
   "type": "ptp-instance",
   "id": 1,
   "name": "ptp4lsvc0"
}
POST
/v1/ptp_instances/​

Creates new PTP instance

Creates a PTP instance object, i.e, a new PTP associated service that will run in one or more hosts.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), conflict (409)

Request parameters

Parameter

Style

Type

Description

name

plain

xsd:string

User-defined name of new PTP instance

service

plain

xsd:string

PTP service type. Valid values are (is): ptp4l, phc2sys, ts2phc or clock

{
 "name": "phc2syssvc0",
 "service": "phc2sys"
}

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for the new object

service

plain

xsd:string

Type of PTP service, should match the requested one

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated (should be null)

capabilities

plain

xsd:string

Extra information about the PTP instance (should be empty)

hostnames

plain

xsd:list

List of hosts where this PTP instance is supposed to run (should be empty)

parameters

plain

xsd:list

List of PTP parameters (key=value pairs) of this instance (should be empty)

type

plain

xsd:string

The internal type of this PTP object, should be ptp-instance

id

plain

xsd:integer

The internal numeric identifier for this PTP instance

name

plain

xsd:string

Name of the PTP instance, should match the requested one

{
   "uuid": "29e7d80d-0934-40d8-a2e5-7e51c4a20c34",
   "service": "phc2sys",
   "created_at": "2022-03-16T14:14:25.673030+00:00",
   "updated_at": null,
   "capabilities": {},
   "hostnames": [],
   "parameters": [],
   "type": "ptp-instance",
   "id": 2,
   "name": "phc2syssvc0"
}
PATCH
/v1/ptp_instances/​{ptp_instance_id}

Modifies a PTP instance (add or delete parameters)

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_instance_id

URI

csapi:UUID

The unique identifier of an existing PTP instance

path

URI

xsd:string

/ptp_parameters/- (always)

value

plain

xsd:string

Key-value pair for the PTP instance parameter

op

plain

xsd:string

Type of operation. Valid values are (is): add or remove (the parameter)

[
   {
      "path": "/ptp_parameters/-",
      "value": "domainNumber=1",
      "op": "add"
   },
   {
      "path": "/ptp_parameters/-",
      "value": "uds_address=/var/run/ptp4l-ptp4lsvc0",
      "op": "add"
   }
]

Response parameters

Will reply with updated PTP instance object (see “parameters”):

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object

service

plain

xsd:string

Indicates the type of PTP service: ptp4l, phc2sys, ts2phc, clock

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP instance

hostnames

plain

xsd:list

List of hosts where this PTP instance is supposed to run

parameters

plain

xsd:list

UPDATED list of PTP parameters (key=value pairs) of this instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-instance

id

plain

xsd:integer

The internal numeric identifier for this PTP instance

name

plain

xsd:string

The user-specified name for this PTP instance

{
   "uuid": "29e7d80d-0934-40d8-a2e5-7e51c4a20c34",
   "service": "phc2sys",
   "created_at": "2022-03-16T14:14:25.673030+00:00",
   "updated_at": null,
   "capabilities": {},
   "hostnames": [],
   "parameters": [
      "domainNumber=1",
      "uds_address=/var/run/ptp4l-ptp4lsvc0"
   ],
   "type": "ptp-instance",
   "id": 2,
   "name": "phc2syssvc0"
}
PATCH
/v1/ihosts/​{host_id}

(Un)Assigns PTP instance(s) to a host

This assignment makes the associated PTP service to run at that host, given it is configured with “clock_synchronization=ptp”.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of the host

path

URI

xsd:string

/ptp_instances/- (always)

value

plain

xsd:integer

The internal numeric identifier of the PTP instance

op

plain

xsd:string

Type of operation. Valid values are (is): add or remove (the instance)

[
   {
      "path": "/ptp_instances/-",
      "value": 2,
      "op": "add"
   }
]

Response parameters

Parameters of the (dis)associated host. Notice the PTP instance is NOT included in that list, since this is a bridged association.

DELETE
/v1/ptp_instances/​{ptp_instance_id}

Destroys a PTP instance

This operation removes PTP instance/service from the system. It requires all the parameters must have been already deleted, associated host been already unassigned (see operations above) and linked PTP interfaces been destroyed (see PTP interface API below).

Normal response codes

204

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_instance_id

URI

csapi:UUID

The unique identifier of the PTP instance

This operation does not accept a request body.

POST
/v1/ptp_instances/apply

Applies the PTP configuration

Normal response codes

204

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401)

PTP Interfaces

Each network interface with PTP (Precision Time Protocol) traffic is linked to a PTP interface object, and from that to the corresponding PTP service (instance). These APIs allow to create, display, modify, associate and delete of PTP interfaces.

GET
/v1/ptp_interfaces

List the PTP interfaces

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403)

Response parameters

Parameter

Style

Type

Description

ptp_interfaces

plain

xsd:list

The list of PTP interfaces

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier for the linked PTP instance

interface_names

plain

xsd:list

List of interfaces (and their hosts) associated to this PTP interface (and the linked PTP instance)

ptp_instance_id

plain

xsd:integer

The internal numeric identifier of the linked PTP instance

uuid

plain

csapi:UUID

The universally unique identifier for this object

parameters

plain

xsd:list

List of parameters (key=value pairs) of this PTP interface

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP interface

hostnames

plain

xsd:list

List of hosts whose interfaces are associated to this PTP interface

ptp_instance_name

plain

xsd:string

The user-specified name for the linked PTP instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-interface

id

plain

xsd:integer

The internal numeric identifier for this PTP interface

name

plain

xsd:string

The user-specified name for this PTP interface

{
   "ptp_interfaces": [
      {
            "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "interface_names": [
               "controller-0/data0"
            ],
            "ptp_instance_id": 1,
            "uuid": "8b64219d-2639-4599-b3d8-77d174cfafbf",
            "parameters": [
               "delay_mechanism=P2P"
            ],
            "created_at": "2022-03-17T10:06:32.161067+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "ptp_instance_name": "ptp4lsvc0",
            "type": "ptp-interface",
            "id": 3,
            "name": "ptpif0"
      },
      {
            "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "interface_names": [
               "controller-0/data1"
            ],
            "ptp_instance_id": 1,
            "uuid": "bc069b30-1087-4b9d-8e1c-761f60646318",
            "parameters": [
               "delay_mechanism=P2P",
               "network_transport=L2"
            ],
            "created_at": "2022-03-17T11:09:03.907320+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "ptp_instance_name": "ptp4lsvc0",
            "type": "ptp-interface",
            "id": 4,
            "name": "ptpif1"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/ihosts/{host_id}/ptp_interfaces

List the PTP interfaces assigned to some interface at specific host

One host can have many network interfaces associated to PTP interfaces and from them to the linked PTP instances (services).

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of the host

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ptp_interfaces

plain

xsd:list

The list of PTP interfaces assigned to some interface at given host

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier for the linked PTP instance

interface_names

plain

xsd:list

List of interfaces (and their hosts) associated to this PTP interface (and the linked PTP instance)

ptp_instance_id

plain

xsd:integer

The internal numeric identifier of the linked PTP instance

uuid

plain

csapi:UUID

The universally unique identifier for this object

parameters

plain

xsd:list

List of parameters (key=value pairs) of this PTP interface

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP interface

hostnames

plain

xsd:list

List of hosts whose interfaces are associated to this PTP interface (should contain the given one)

ptp_instance_name

plain

xsd:string

The user-specified name for the linked PTP instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-interface

id

plain

xsd:integer

The internal numeric identifier for this PTP interface

name

plain

xsd:string

The user-specified name for this PTP interface

{
   "ptp_interfaces": [
      {
            "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "interface_names": [
               "controller-0/data0"
            ],
            "ptp_instance_id": 1,
            "uuid": "8b64219d-2639-4599-b3d8-77d174cfafbf",
            "parameters": [
               "delay_mechanism=P2P"
            ],
            "created_at": "2022-03-17T10:06:32.161067+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "ptp_instance_name": "ptp4lsvc0",
            "type": "ptp-interface",
            "id": 3,
            "name": "ptpif0"
      },
      {
            "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "interface_names": [
               "controller-0/data1"
            ],
            "ptp_instance_id": 1,
            "uuid": "bc069b30-1087-4b9d-8e1c-761f60646318",
            "parameters": [
               "delay_mechanism=P2P",
               "network_transport=L2"
            ],
            "created_at": "2022-03-17T11:09:03.907320+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "ptp_instance_name": "ptp4lsvc0",
            "type": "ptp-interface",
            "id": 4,
            "name": "ptpif1"
      }
   ]
}
GET
/v1/iinterfaces/{interface_id}/ptp_interfaces

List the PTP interfaces assigned to specific interface

One network interface can be serving to many PTP services (instances) through the linked PTP interfaces.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

interface_id

URI

csapi:UUID

The unique identifier of the interface

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ptp_interfaces

plain

xsd:list

The list of PTP interfaces assigned to given interface

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier for the linked PTP instance

interface_names

plain

xsd:list

List of interfaces (and their hosts) associated to this PTP interface (should contain the given one)

ptp_instance_id

plain

xsd:integer

The internal numeric identifier of the linked PTP instance

uuid

plain

csapi:UUID

The universally unique identifier for this object

parameters

plain

xsd:list

List of parameters (key=value pairs) of this PTP interface

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP interface

hostnames

plain

xsd:list

List of hosts whose interfaces are associated to this PTP interface)

ptp_instance_name

plain

xsd:string

The user-specified name for the linked PTP instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-interface

id

plain

xsd:integer

The internal numeric identifier for this PTP interface

name

plain

xsd:string

The user-specified name for this PTP interface

{
   "ptp_interfaces": [
      {
            "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
            "interface_names": [
               "controller-0/data0"
            ],
            "ptp_instance_id": 1,
            "uuid": "8b64219d-2639-4599-b3d8-77d174cfafbf",
            "parameters": [
               "delay_mechanism=P2P"
            ],
            "created_at": "2022-03-17T10:06:32.161067+00:00",
            "updated_at": null,
            "capabilities": {},
            "hostnames": [
               "controller-0"
            ],
            "ptp_instance_name": "ptp4lsvc0",
            "type": "ptp-interface",
            "id": 3,
            "name": "ptpif0"
      }
   ]
}
GET
/v1/ptp_interfaces/​{ptp_interface_id}

Shows information about specific PTP interface

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_interface_id

URI

csapi:UUID

The unique identifier of an existing PTP interface

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier for the linked PTP instance

interface_names

plain

xsd:list

List of interfaces (and their hosts) associated to this PTP interface (and the linked PTP instance)

ptp_instance_id

plain

xsd:integer

The internal numeric identifier of the linked PTP instance

uuid

plain

csapi:UUID

The universally unique identifier for this object

parameters

plain

xsd:list

List of parameters (key=value pairs) of this PTP interface

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP interface

hostnames

plain

xsd:list

List of hosts whose interfaces are associated to this PTP interface

ptp_instance_name

plain

xsd:string

The user-specified name for the linked PTP instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-interface

id

plain

xsd:integer

The internal numeric identifier for this PTP interface

name

plain

xsd:string

The user-specified name for this PTP interface

{
   "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
   "interface_names": [
      "controller-0/data0"
   ],
   "ptp_instance_id": 1,
   "uuid": "8b64219d-2639-4599-b3d8-77d174cfafbf",
   "parameters": [
      "delay_mechanism=P2P"
   ],
   "created_at": "2022-03-17T10:06:32.161067+00:00",
   "updated_at": null,
   "capabilities": {},
   "hostnames": [
      "controller-0"
   ],
   "ptp_instance_name": "ptp4lsvc0",
   "type": "ptp-interface",
   "id": 3,
   "name": "ptpif0"
}
POST
/v1/ptp_interfaces/​

Creates new PTP interface

Creates a PTP interface object that will be used to link network interface(s) with a PTP service (instance).

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), conflict (409)

Request parameters

Parameter

Style

Type

Description

name

plain

xsd:string

User-defined name of new PTP interface

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier of the PTP instance to be linked

{
   "name": "ptpif1",
   "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be"
}

Response parameters

Parameter

Style

Type

Description

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier for the linked PTP instance, should match the given one

interface_names

plain

xsd:list

List of interfaces associated to this PTP interface (should be empty)

ptp_instance_id

plain

xsd:integer

The internal numeric identifier of the linked PTP instance

uuid

plain

csapi:UUID

The universally unique identifier for the new object

parameters

plain

xsd:list

List of parameters (key=value pairs) of this PTP interface (should be empty)

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated (should be null)

capabilities

plain

xsd:string

Extra information about the PTP interface (should be empty)

hostnames

plain

xsd:list

List of hosts whose interfaces are associated to this PTP interface (should be empty)

ptp_instance_name

plain

xsd:string

The user-specified name for the linked PTP instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-interface

id

plain

xsd:integer

The internal numeric identifier for this PTP interface

name

plain

xsd:string

Name of the PTP interface, should match the requested one

{
   "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
   "interface_names": [],
   "ptp_instance_id": 1,
   "uuid": "bc069b30-1087-4b9d-8e1c-761f60646318",
   "parameters": [],
   "created_at": "2022-03-17T11:09:03.907320+00:00",
   "updated_at": null,
   "capabilities": {},
   "hostnames": [],
   "ptp_instance_name": "ptp4lsvc0",
   "type": "ptp-interface",
   "id": 4,
   "name": "ptpif1"
}
PATCH
/v1/ptp_interfaces/​{ptp_interface_id}

Modifies a PTP interface (add or delete parameter)

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_interface_id

URI

csapi:UUID

The unique identifier of an existing PTP interface

path

URI

xsd:string

/ptp_parameters/- (always)

value

plain

xsd:string

Key-value pair for the PTP interface parameter

op

plain

xsd:string

Type of operation. Valid values are (is): add or remove (the parameter)

[
   {
      "path": "/ptp_parameters/-",
      "value": "delay_mechanism=P2P",
      "op": "add"
   },
   {
      "path": "/ptp_parameters/-",
      "value": "network_transport=L2",
      "op": "add"
   }
]

Response parameters

Will reply with updated PTP interface object (see “parameters”):

Parameter

Style

Type

Description

ptp_instance_uuid

plain

csapi:UUID

The universally unique identifier for the linked PTP instance

interface_names

plain

xsd:list

List of interfaces (and their hosts) associated to this PTP interface (and the linked PTP instance)

ptp_instance_id

plain

xsd:integer

The internal numeric identifier of the linked PTP instance

uuid

plain

csapi:UUID

The universally unique identifier for this object

parameters

plain

xsd:list

UPDATED list of parameters (key=value pairs) of this PTP interface

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

capabilities

plain

xsd:string

Extra information about the PTP interface

hostnames

plain

xsd:list

List of hosts whose interfaces are associated to this PTP interface

ptp_instance_name

plain

xsd:string

The user-specified name for the linked PTP instance

type

plain

xsd:string

The internal type of this PTP object, must be ptp-interface

id

plain

xsd:integer

The internal numeric identifier for this PTP interface

name

plain

xsd:string

The user-specified name for this PTP interface

{
   "ptp_instance_uuid": "964d4966-f9ac-4acc-9a7e-f30b2effe3be",
   "interface_names": [],
   "ptp_instance_id": 1,
   "uuid": "bc069b30-1087-4b9d-8e1c-761f60646318",
   "parameters": [
      "delay_mechanism=P2P",
      "network_transport=L2"
   ],
   "created_at": "2022-03-17T11:09:03.907320+00:00",
   "updated_at": null,
   "capabilities": {},
   "hostnames": [],
   "ptp_instance_name": "ptp4lsvc0",
   "type": "ptp-interface",
   "id": 4,
   "name": "ptpif1"
}
PATCH
/v1/iinterfaces/​{interface_id}

(Un)Assigns a PTP interface to a host interface

This assignment makes the host interface being associated with the linked PTP service (instance) with corresponding protocol traffic flowing through, given the interface is configured with not-none “ptp-role”.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

interface_id

URI

csapi:UUID

The unique identifier of the host interface

path

URI

xsd:string

/ptp_interfaces/- (always)

value

plain

xsd:integer

The internal numeric identifier of the PTP interface

op

plain

xsd:string

Type of operation. Valid values are (is): add or remove (the PTP interface)

[
   {
      "path": "/ptp_interfaces/-",
      "value": 4,
      "op": "add"
   }
]

Response parameters

Parameters of the (dis)associated interface. Notice the PTP interface is NOT included in that list, since this is a bridged association.

DELETE
/v1/ptp_interfaces/​{ptp_interface_id}

Destroys a PTP interface

This operation removes PTP interface from the system. It requires all the parameters must have been already deleted and associated host interfaces been already unassigned (see operations above).

Normal response codes

204

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_interface_id

URI

csapi:UUID

The unique identifier of the PTP interface

This operation does not accept a request body.

PTP Parameters

PTP (Precision Time Protocol) parameters can apply to services (instances) or interfaces where PTP traffic resides. PTP parameters aren’t created or destroyed outside the scope of some PTP instance or PTP interface (see their APIs above), and can be shared among different PTP objects (for instance, two PTP instances - one for ptp4l and another for phc2sys can share the same PTP parameter “domainNumber=1”). These APIs allow to display and modify the value of a PTP parameter (which might have impact in all of PTP instances/interfaces sharing that parameter).

GET
/v1/ptp_parameters

List the PTP parameters

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403)

Response parameters

Parameter

Style

Type

Description

ptp_parameters

plain

xsd:list

The list of all PTP parameters configured in the system

owners

plain

xsd:list

List of unique identifiers for the PTP instances and/or PTP interfaces that link to this PTP parameter

name

plain

xsd:string

The name (key) of this PTP parameter, usually taken from linuxptp configuration

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

value

plain

xsd:string

The current value of this PTP parameter

uuid

plain

csapi:UUID

The universally unique identifier for this object

{
   "ptp_parameters": [
      {
            "owners": [
               "8b64219d-2639-4599-b3d8-77d174cfafbf",
               "bc069b30-1087-4b9d-8e1c-761f60646318"
            ],
            "name": "delay_mechanism",
            "created_at": "2022-03-17T10:08:41.226883+00:00",
            "updated_at": null,
            "value": "P2P",
            "uuid": "b1337a39-1a9e-4212-ab88-a92eca7556e4"
      },
      {
            "owners": [
               "964d4966-f9ac-4acc-9a7e-f30b2effe3be"
            ],
            "name": "domainNumber",
            "created_at": "2022-03-16T11:59:44.223616+00:00",
            "updated_at": null,
            "value": "1",
            "uuid": "64fab445-f820-4e79-b8c8-8703b32ed4ca"
      },
      {
            "owners": [
               "bc069b30-1087-4b9d-8e1c-761f60646318"
            ],
            "name": "network_transport",
            "created_at": "2022-03-17T13:28:31.275889+00:00",
            "updated_at": null,
            "value": "L2",
            "uuid": "e2ab5727-e272-4eb3-9b9d-7e989426aa59"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/ptp_instances/{ptp_instance_id}/ptp_parameters

List the parameters of a specified PTP instance

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_instance_id

URI

csapi:UUID

The unique identifier of the PTP instance (service)

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ptp_parameters

plain

xsd:list

The list of all PTP parameters configured in the system

owners

plain

xsd:list

List of unique identifiers for the PTP instances and/or PTP interfaces that link to this PTP parameter

name

plain

xsd:string

The name (key) of this PTP parameter, usually taken from linuxptp configuration

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

value

plain

xsd:string

The current value of this PTP parameter

uuid

plain

csapi:UUID

The universally unique identifier for this object

{
   "ptp_parameters": [
      {
            "owners": [
               "964d4966-f9ac-4acc-9a7e-f30b2effe3be"
            ],
            "name": "domainNumber",
            "created_at": "2022-03-16T11:59:44.223616+00:00",
            "updated_at": null,
            "value": "1",
            "uuid": "64fab445-f820-4e79-b8c8-8703b32ed4ca"
      }
   ]
}
GET
/v1/ptp_interfaces/{ptp_interface_id}/ptp_parameters

List the parameters of a specified PTP interface

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_interface_id

URI

csapi:UUID

The unique identifier of the PTP interface

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ptp_parameters

plain

xsd:list

The list of all PTP parameters configured in the system

owners

plain

xsd:list

List of unique identifiers for the PTP instances and/or PTP interfaces that link to this PTP parameter

name

plain

xsd:string

The name (key) of this PTP parameter, usually taken from linuxptp configuration

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

value

plain

xsd:string

The current value of this PTP parameter

uuid

plain

csapi:UUID

The universally unique identifier for this object

{
   "ptp_parameters": [
      {
            "owners": [
               "8b64219d-2639-4599-b3d8-77d174cfafbf",
               "bc069b30-1087-4b9d-8e1c-761f60646318"
            ],
            "name": "delay_mechanism",
            "created_at": "2022-03-17T10:08:41.226883+00:00",
            "updated_at": null,
            "value": "P2P",
            "uuid": "b1337a39-1a9e-4212-ab88-a92eca7556e4"
      }
   ]
}
PATCH
/v1/ptp_parameters/​{ptp_parameter_id}

Modifies a PTP parameter

This operation changes the value of a parameter (key). Notice that ALL owners of the original “key-value” pair (PTP parameter object) will be affected.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ptp_parameter_id

URI

csapi:UUID

The unique identifier of an existing PTP parameter

path

URI

xsd:string

/value (always)

value

plain

xsd:string

New value of the PTP parameter

op

plain

xsd:string

Type of operation: replace (always)

[
   {
      "path": "/value",
      "value": "P2P",
      "op": "replace"
   }
]

Response parameters

Will reply with updated PTP parameter object (see “value”):

Parameter

Style

Type

Description

owners

plain

xsd:list

List of unique identifiers for the PTP instances and/or PTP interfaces that link to this PTP parameter

name

plain

xsd:string

The name (key) of this PTP parameter, usually taken from linuxptp configuration

created_at

plain

xsd:dateTime

The time when the object was created

updated_at

plain

xsd:dateTime

The time when the object was last updated

value

plain

xsd:string

UPDATED value of this PTP parameter

uuid

plain

csapi:UUID

The universally unique identifier for this object

{
   "owners": [
      "8b64219d-2639-4599-b3d8-77d174cfafbf",
      "bc069b30-1087-4b9d-8e1c-761f60646318"
   ],
   "uuid": "b1337a39-1a9e-4212-ab88-a92eca7556e4",
   "created_at": "2022-03-17T10:08:41.226883+00:00",
   "updated_at": null,
   "value": "P2P",
   "id": 3,
   "name": "delay_mechanism"
}

External OAM

The extoam is the External OAM entity for the system.

GET
/v1/iextoam

Shows attributes of the External OAM object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

oam_subnet (Optional)

plain

xsd:string

The External OAM IP Subnet.

oam_gateway_ip (Optional)

plain

xsd:string

The External OAM Gateway IP Address.

oam_floating_ip (Optional)

plain

xsd:string

The External OAM Floating IP Address.

oam_c0_ip (Optional)

plain

xsd:string

The External OAM Controller-0 IP Address.

oam_c1_ip (Optional)

plain

xsd:string

The External OAM Controller-1 IP Address.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the External OAM IP belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "iextoams":[
      {
         "links":[
            {
               "href":"http://192.168.204.2:6385/v1/iextoams/2056b372-10a5-47d3-b1da-8957c370b630",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.2:6385/iextoams/2056b372-10a5-47d3-b1da-8957c370b630",
               "rel":"bookmark"
            }
         ],
         "created_at":"2014-09-30T14:42:16.656226+00:00",
         "updated_at":"2014-10-01T17:35:43.131331+00:00",
         "oam_subnet":"10.10.10.0/24",
         "oam_ifcs":"eth0",
         "oam_gateway_ip":"10.10.10.1",
         "oam_floating_ip":"10.10.10.2",
         "oam_c0_ip":"10.10.10.3",
         "oam_c1_ip":"10.10.10.4",
         "isystem_uuid":"ce178041-2b2c-405d-bf87-f19334a35582",
         "uuid":"2056b372-10a5-47d3-b1da-8957c370b630"
      }
   ]
}

This operation does not accept a request body.

PATCH
/v1/iextoam/​{extoam_id}

Modifies attributes of the External OAM object

The attributes of the External OAM objects that are configurable are:

  • oam_subnet

  • oam_gateway_ip

  • oam_floating_ip

  • oam_c0_ip

  • oam_c1_ip

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

extoam_id

URI

csapi:UUID

The unique identifier of the External OAM for this system.

oam_subnet (Optional)

plain

xsd:string

This parameter specifies External OAM IP Subnet.

oam_gateway_ip (Optional)

plain

xsd:string

This parameter specifies External OAM Gateway IP Address.

oam_floating_ip (Optional)

plain

xsd:string

This parameter specifies External OAM Floating IP.

oam_c0_ip (Optional)

plain

xsd:string

This parameter specifies External OAM Controller-0 IP Address.

oam_c1_ip (Optional)

plain

xsd:string

This parameter specifies External OAM Controller-1 IP Address.

Response parameters

Parameter

Style

Type

Description

oam_subnet (Optional)

plain

xsd:string

The External OAM IP Subnet.

oam_gateway_ip (Optional)

plain

xsd:string

The External OAM Gateway IP Address.

oam_floating_ip (Optional)

plain

xsd:string

The External OAM Floating IP Address.

oam_c0_ip (Optional)

plain

xsd:string

The External OAM Controller-0 IP Address.

oam_c1_ip (Optional)

plain

xsd:string

The External OAM Controller-1 IP Address.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the External OAM IP belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
   {
      "path":"/oam_c1_ip",
      "value":"10.10.10.4",
      "op":"replace"
   },
   {
      "path":"/action",
      "value":"apply",
      "op":"replace"
   }
]
{
   "iextoams":[
      {
         "links":[
            {
               "href":"http://192.168.204.2:6385/v1/iextoams/2056b372-10a5-47d3-b1da-8957c370b630",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.2:6385/iextoams/2056b372-10a5-47d3-b1da-8957c370b630",
               "rel":"bookmark"
            }
         ],
         "created_at":"2014-09-30T14:42:16.656226+00:00",
         "updated_at":"2014-10-01T17:35:43.131331+00:00",
         "oam_subnet":"10.10.10.0/24",
         "oam_gateway_ip":"10.10.10.1",
         "oam_floating_ip":"10.10.10.2",
         "oam_c0_ip":"10.10.10.3",
         "oam_c1_ip":"10.10.10.4",
         "isystem_uuid":"ce178041-2b2c-405d-bf87-f19334a35582",
         "uuid":"2056b372-10a5-47d3-b1da-8957c370b630"
      }
   ]
}

DRBD Configuration

The drbdconfig is the Distributed Replicated Block Device (DRBD) configuration entity for the system.

GET
/v1/drbdconfig

Shows attributes of the DRBD configuration object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

link_util (Optional)

plain

xsd:integer

The DRBD engineered link utilization percent during resync.

num_parallel (Optional)

plain

xsd:integer

The DRBD number of parallel devices to resync.

rtt_ms (Optional)

plain

xsd:float

The DRBD replication nodes round-trip-time milliseconds.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the DRBD link belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "drbdconfigs": [
        {
            "created_at": "2015-12-14T21:20:23.329867+00:00",
            "isystem_uuid": "88770f18-1ade-4222-b08f-dadd8aa78b32",
            "link_util": 40,
            "links": [
                {
                    "href": "http://192.168.204.2:6385/v1/drbdconfigs/e23b99b4-62b3-4bcc-a78b-ece63bc0edc5",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.204.2:6385/drbdconfigs/e23b99b4-62b3-4bcc-a78b-ece63bc0edc5",
                    "rel": "bookmark"
                }
            ],
            "num_parallel": 1,
            "rtt_ms": 0.2,
            "updated_at": "2015-12-14T22:15:03.909772+00:00",
            "uuid": "e23b99b4-62b3-4bcc-a78b-ece63bc0edc5"
        }
    ]
}

This operation does not accept a request body.

PATCH
/v1/drbdconfig/​{drbdconfig_id}

Modifies attributes of the DRBD configuration object

The attributes of the DRBD configuration object that are configurable are:

  • link_util

  • num_parallel

  • rtt_ms

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

drbdconfig_id

URI

csapi:UUID

The unique identifier of the DRBD config for this system.

link_util (Optional)

plain

xsd:integer

This parameter specifies the DRBD engineered link utilization percent during resync.

num_parallel (Optional)

plain

xsd:integer

This parameter specifies the DRBD number of parallel devices to resync.

rtt_ms (Optional)

plain

xsd:float

This parameter specifies the DRBD replication nodes round-trip-time milliseconds.

Response parameters

Parameter

Style

Type

Description

link_util (Optional)

plain

xsd:integer

The DRBD engineered link utilization percent during resync.

num_parallel (Optional)

plain

xsd:integer

The DRBD number of parallel devices to resync.

rtt_ms (Optional)

plain

xsd:float

The DRBD replication nodes round-trip-time milliseconds.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the DRBD link belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "op": "replace",
        "path": "/link_util",
        "value": "40"
    },
    {
        "op": "replace",
        "path": "/rtt_ms",
        "value": "0.2"
    },
    {
        "op": "replace",
        "path": "/action",
        "value": "apply"
    }
]
{
    "action": null,
    "created_at": "2015-12-14T21:20:23.329867+00:00",
    "forisystemid": 1,
    "isystem_uuid": "88770f18-1ade-4222-b08f-dadd8aa78b32",
    "link_util": 40,
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/drbdconfigs/e23b99b4-62b3-4bcc-a78b-ece63bc0edc5",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/drbdconfigs/e23b99b4-62b3-4bcc-a78b-ece63bc0edc5",
            "rel": "bookmark"
        }
    ],
    "num_parallel": 1,
    "rtt_ms": 0.2,
    "updated_at": "2015-12-14T21:20:26.792494+00:00",
    "uuid": "e23b99b4-62b3-4bcc-a78b-ece63bc0edc5"
}

SNMP Communities

StarlingX supports SNMPv2c and SNMPv3, but it is now configured using Helm charts.

For more information, see the Fault Management Guide, SNMP overview section.

SNMP Trap Destinations

StarlingX supports SNMPv2c and SNMPv3, but it is now configured using Helm charts.

For more information, see the Fault Management Guide, SNMP overview section.

Devices

These APIs allow the display of the pci devices of a host and their attributes.

GET
/v1/ihosts/​{host_id}​/pci_devices

List the PCI devices of a host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

devices (Optional)

plain

xsd:list

The list of PCI devices of a host.

name (Optional)

plain

xsd:string

The user-specified name for the PCI device

pciaddr (Optional)

plain

xsd:string

The PCI Address of the device.

pclass_id (Optional)

plain

xsd:string

The class or type identifier of the physical IO controller device of the device.

pvendor_id (Optional)

plain

xsd:boolean

The primary vendor identifier of the device hardware.

pdevice_id (Optional)

plain

xsd:boolean

The primary type and model identifier of the devicehardware.

pclass (Optional)

plain

xsd:string

The class or type name of the physical IO controller device of the device.

pvendor (Optional)

plain

xsd:boolean

The primary vendor name of the port hardware.

pdevice (Optional)

plain

xsd:boolean

The primary type and model information of the device hardware.

psvendor (Optional)

plain

xsd:boolean

The secondary vendor information of the device hardware.

psdevice (Optional)

plain

xsd:boolean

The secondary type and model information of the device hardware.

sriov_totalvfs (Optional)

plain

xsd:integer

Indicates the maximum number of VFs that this device can support.

sriov_numvfs (Optional)

plain

xsd:integer

Indicates the actual number of VFs configured for the interface using this device.

sriov_vfs_pci_address (Optional)

plain

xsd:string

A comma-separated list of the PCI addresses of the configured VFs.

driver (Optional)

plain

xsd:string

The driver being used for the device.

enabled (Optional)

plain

xsd:string

The availability status of the device.

extra_info (Optional)

plain

xsd:string

Extra information about the device.

numa_node (Optional)

plain

xsd:integer

The NUMA Node of the device.

host_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the device.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

needs_firmware_update (optional)

plain

xsd:string

Indicates whether the device requires firmware update.

status (optional)

plain

xsd:string

The status of firmware update of the device.

root_key (optional)

plain

xsd:string

The root key of the FPGA device.

revoked_key_ids (optional)

plain

xsd:string

The revoked key ids of the FPGA device.

boot_page (optional)

plain

xsd:string

The boot page of the FPGA device.

bitstream_id (optional)

plain

xsd:string

The bitstream id of the FPGA device.

bmc_build_version (optional)

plain

xsd:string

The BMC build version of the FPGA device.

bmc_fw_version (optional)

plain

xsd:string

The BMC firmware version of the FPGA device.

retimer_a_version (optional)

plain

xsd:string

The retimer A version of the FPGA device.

retimer_b_version (optional)

plain

xsd:string

The retimer B version of the FPGA device.

{
  "pci_devices": [
    {
      "uuid": "b2b411a8-1522-4d22-9679-e9fb8b24813b",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "440FX - 82441FX PMC [Natoma]",
      "created_at": "2015-11-02T02:15:23.608001+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "1237",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/b2b411a8-1522-4d22-9679-e9fb8b24813b",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/b2b411a8-1522-4d22-9679-e9fb8b24813b",
          "rel": "bookmark"
        }
      ],
      "pclass": "Host bridge",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:00.0",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "60000",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_00_0"
    },
    {
      "uuid": "49139dd2-3e46-4056-b91d-c7d5cb453524",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "82371SB PIIX3 ISA [Natoma\/Triton II]",
      "created_at": "2015-11-02T02:15:23.615088+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "7000",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/49139dd2-3e46-4056-b91d-c7d5cb453524",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/49139dd2-3e46-4056-b91d-c7d5cb453524",
          "rel": "bookmark"
        }
      ],
      "pclass": "ISA bridge",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:01.0",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "60100",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_01_0"
    },
    {
      "uuid": "4a11043c-c1fe-463f-ab13-01e0b6c12376",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "82371AB\/EB\/MB PIIX4 IDE",
      "created_at": "2015-11-02T02:15:23.620579+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "7111",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/4a11043c-c1fe-463f-ab13-01e0b6c12376",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/4a11043c-c1fe-463f-ab13-01e0b6c12376",
          "rel": "bookmark"
        }
      ],
      "pclass": "IDE interface",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:01.1",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "1018a",
      "driver": null,
      "psvendor": "-p8a",
      "enabled": "False",
      "name": "pci_0000_00_01_1"
    },
    {
      "uuid": "09746d46-9ca9-4ef4-a7a4-0fa46c2a9165",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "VirtualBox Graphics Adapter",
      "created_at": "2015-11-02T02:15:23.627342+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "beef",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/09746d46-9ca9-4ef4-a7a4-0fa46c2a9165",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/09746d46-9ca9-4ef4-a7a4-0fa46c2a9165",
          "rel": "bookmark"
        }
      ],
      "pclass": "VGA compatible controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "InnoTek Systemberatung GmbH",
      "pciaddr": "0000:00:02.0",
      "numa_node": -1,
      "pvendor_id": "80ee",
      "pclass_id": "30000",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_02_0"
    },
    {
      "uuid": "56686ced-6dd7-445a-aed9-6ff7399b322e",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "82540EM Gigabit Ethernet Controller",
      "created_at": "2015-11-02T02:15:23.632929+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "100e",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/56686ced-6dd7-445a-aed9-6ff7399b322e",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/56686ced-6dd7-445a-aed9-6ff7399b322e",
          "rel": "bookmark"
        }
      ],
      "pclass": "Ethernet controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "PRO\/1000 MT Desktop Adapter",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:03.0",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "20000",
      "driver": null,
      "psvendor": "Intel Corporation",
      "enabled": "False",
      "name": "pci_0000_00_03_0"
    },
    {
      "uuid": "93c27653-7858-4025-babf-e72e4b1ba45e",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "VirtualBox Guest Service",
      "created_at": "2015-11-02T02:15:23.639261+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "cafe",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/93c27653-7858-4025-babf-e72e4b1ba45e",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/93c27653-7858-4025-babf-e72e4b1ba45e",
          "rel": "bookmark"
        }
      ],
      "pclass": "System peripheral",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "InnoTek Systemberatung GmbH",
      "pciaddr": "0000:00:04.0",
      "numa_node": -1,
      "pvendor_id": "80ee",
      "pclass_id": "88000",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_04_0"
    },
    {
      "uuid": "c67c2c89-fc01-4bc7-97a8-d913f5623b7e",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "KeyLargo\/Intrepid USB",
      "created_at": "2015-11-02T02:15:23.644716+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "3f",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/c67c2c89-fc01-4bc7-97a8-d913f5623b7e",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/c67c2c89-fc01-4bc7-97a8-d913f5623b7e",
          "rel": "bookmark"
        }
      ],
      "pclass": "USB controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "Apple Inc.",
      "pciaddr": "0000:00:06.0",
      "numa_node": -1,
      "pvendor_id": "106b",
      "pclass_id": "c0310",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_06_0"
    },
    {
      "uuid": "a769a7d0-c32f-4072-ba2e-73b754361ac6",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "82371AB\/EB\/MB PIIX4 ACPI",
      "created_at": "2015-11-02T02:15:23.651222+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "7113",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/a769a7d0-c32f-4072-ba2e-73b754361ac6",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/a769a7d0-c32f-4072-ba2e-73b754361ac6",
          "rel": "bookmark"
        }
      ],
      "pclass": "Bridge",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:07.0",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "68000",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_07_0"
    },
    {
      "uuid": "40fc39e7-d6bb-4ae5-9c98-0e7a0c71dc6f",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "82540EM Gigabit Ethernet Controller",
      "created_at": "2015-11-02T02:15:23.657036+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "100e",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/40fc39e7-d6bb-4ae5-9c98-0e7a0c71dc6f",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/40fc39e7-d6bb-4ae5-9c98-0e7a0c71dc6f",
          "rel": "bookmark"
        }
      ],
      "pclass": "Ethernet controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "PRO\/1000 MT Desktop Adapter",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:08.0",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "20000",
      "driver": null,
      "psvendor": "Intel Corporation",
      "enabled": "False",
      "name": "pci_0000_00_08_0"
    },
    {
      "uuid": "a674ae59-aa08-4bef-85a5-ad209809725d",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "Virtio network device",
      "created_at": "2015-11-02T02:15:23.662643+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "1000",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/a674ae59-aa08-4bef-85a5-ad209809725d",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/a674ae59-aa08-4bef-85a5-ad209809725d",
          "rel": "bookmark"
        }
      ],
      "pclass": "Ethernet controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "Device 0001",
      "sriov_vfs_pci_address": "",
      "pvendor": "Red Hat, Inc",
      "pciaddr": "0000:00:09.0",
      "numa_node": -1,
      "pvendor_id": "1af4",
      "pclass_id": "20000",
      "driver": null,
      "psvendor": "Red Hat, Inc",
      "enabled": "False",
      "name": "pci_0000_00_09_0"
    },
    {
      "uuid": "67d75625-12a6-48ca-8e93-40a704eb7bf7",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "Virtio network device",
      "created_at": "2015-11-02T02:15:23.668183+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "1000",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/67d75625-12a6-48ca-8e93-40a704eb7bf7",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/67d75625-12a6-48ca-8e93-40a704eb7bf7",
          "rel": "bookmark"
        }
      ],
      "pclass": "Ethernet controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "Device 0001",
      "sriov_vfs_pci_address": "",
      "pvendor": "Red Hat, Inc",
      "pciaddr": "0000:00:0a.0",
      "numa_node": -1,
      "pvendor_id": "1af4",
      "pclass_id": "20000",
      "driver": null,
      "psvendor": "Red Hat, Inc",
      "enabled": "False",
      "name": "pci_0000_00_0a_0"
    },
    {
      "uuid": "4b1d9cf8-81bd-40cb-b873-594faa9d23ef",
      "sriov_numvfs": 0,
      "updated_at": null,
      "pdevice": "82801FB\/FBM\/FR\/FW\/FRW (ICH6 Family) USB2 EHCI Controller",
      "created_at": "2015-11-02T02:15:23.673775+00:00",
      "sriov_totalvfs": null,
      "pdevice_id": "265c",
      "links": [
        {
          "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/4b1d9cf8-81bd-40cb-b873-594faa9d23ef",
          "rel": "self"
        },
        {
          "href": "http:\/\/192.168.204.2:6385\/pci_devices\/4b1d9cf8-81bd-40cb-b873-594faa9d23ef",
          "rel": "bookmark"
        }
      ],
      "pclass": "USB controller",
      "host_uuid": "ae8d3ec5-b2e1-425d-a73f-d7c7b00551fd",
      "psdevice": "",
      "sriov_vfs_pci_address": "",
      "pvendor": "Intel Corporation",
      "pciaddr": "0000:00:0b.0",
      "numa_node": -1,
      "pvendor_id": "8086",
      "pclass_id": "c0320",
      "driver": null,
      "psvendor": "",
      "enabled": "False",
      "name": "pci_0000_00_0b_0"
    },
    {
      "links": [
        {
          "href": "http://192.168.204.1:6385/v1/pci_devices/3ab614a6-3906-4c55-8114-4d78a6dde445",
          "rel": "self"
        },
        {
          "href": "http://192.168.204.1:6385/pci_devices/3ab614a6-3906-4c55-8114-4d78a6dde445",
          "rel": "bookmark"
        }
      ],
      "enabled": true,
      "updated_at": "2020-05-04T18:54:03.679744+00:00",
      "needs_firmware_update": false,
      "bitstream_id": null,
      "uuid": "3ab614a6-3906-4c55-8114-4d78a6dde445",
      "pdevice": "Device 0b30",
      "boot_page": null,
      "psvendor": "Intel Corporation",
      "psdevice": "Device 0000",
      "pclass_id": "120000",
      "pvendor": "Intel Corporation",
      "status": null,
      "sriov_numvfs": 0,
      "driver": "intel-fpga-pci",
      "bmc_fw_version": null,
      "root_key": null,
      "host_uuid": "35436a7d-ce05-4e5f-87ac-706fe7513ece",
      "bmc_build_version": null,
      "retimer_a_version": null,
      "retimer_b_version": null,
      "name": "pci_0000_b3_00_0",
      "revoked_key_ids": null,
      "numa_node": 1,
      "created_at": "2020-05-04T18:23:34.697710+00:00",
      "pdevice_id": "0b30",
      "pclass": "Processing accelerators",
      "sriov_vfs_pci_address": "",
      "sriov_totalvfs": 1,
      "pciaddr": "0000:b3:00.0",
      "pvendor_id": "8086"
    },
  ]
}

This operation does not accept a request body.

GET
/v1/pci_devices/​{device_id}

Shows the attributes of a specific PCI device

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

device_id

URI

csapi:UUID

The unique identifier of an existing pci device. PCI address or name.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The user-specified name for the PCI device

pciaddr (Optional)

plain

xsd:string

The PCI Address of the device.

pclass_id (Optional)

plain

xsd:string

The class or type identifier of the physical IO controller device of the device.

pvendor_id (Optional)

plain

xsd:boolean

The primary vendor identifier of the device hardware.

pdevice_id (Optional)

plain

xsd:boolean

The primary type and model identifier of the devicehardware.

pclass (Optional)

plain

xsd:string

The class or type name of the physical IO controller device of the device.

pvendor (Optional)

plain

xsd:boolean

The primary vendor name of the port hardware.

pdevice (Optional)

plain

xsd:boolean

The primary type and model information of the device hardware.

psvendor (Optional)

plain

xsd:boolean

The secondary vendor information of the device hardware.

psdevice (Optional)

plain

xsd:boolean

The secondary type and model information of the device hardware.

sriov_totalvfs (Optional)

plain

xsd:integer

Indicates the maximum number of VFs that this device can support.

sriov_numvfs (Optional)

plain

xsd:integer

Indicates the actual number of VFs configured for the interface using this device.

sriov_vfs_pci_address (Optional)

plain

xsd:string

A comma-separated list of the PCI addresses of the configured VFs.

driver (Optional)

plain

xsd:string

The driver being used for the device.

enabled (Optional)

plain

xsd:string

The availability status of the device.

extra_info (Optional)

plain

xsd:string

Extra information about the device.

numa_node (Optional)

plain

xsd:integer

The NUMA Node of the device.

host_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the device.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
  "uuid": "8fdab3b1-c90a-421b-ba5f-5dc2d677dac6",
  "sriov_numvfs": 32,
  "updated_at": "2015-11-04T18:48:09.051858+00:00",
  "pdevice": "Coleto Creek PCIe Endpoint",
  "created_at": "2015-11-04T04:22:59.406921+00:00",
  "sriov_totalvfs": 32,
  "pdevice_id": "435",
  "links": [
    {
      "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/8fdab3b1-c90a-421b-ba5f-5dc2d677dac6",
      "rel": "self"
    },
    {
      "href": "http:\/\/192.168.204.2:6385\/pci_devices\/8fdab3b1-c90a-421b-ba5f-5dc2d677dac6",
      "rel": "bookmark"
    }
  ],
  "pclass": "Co-processor",
  "host_uuid": "aa3fabca-e007-485b-bea9-4f1a0ad9049a",
  "psdevice": "Device 35c5",
  "sriov_vfs_pci_address": "0000:09:01.0,0000:09:01.1,0000:09:01.2,0000:09:01.3,0000:09:01.4,0000:09:01.5,0000:09:01.6,0000:09:01.7,0000:09:02.0,0000:09:02.1,0000:09:02.2,0000:09:02.3,0000:09:02.4,0000:09:02.5,0000:09:02.6,0000:09:02.7,0000:09:03.0,0000:09:03.1,0000:09:03.2,0000:09:03.3,0000:09:03.4,0000:09:03.5,0000:09:03.6,0000:09:03.7,0000:09:04.0,0000:09:04.1,0000:09:04.2,0000:09:04.3,0000:09:04.4,0000:09:04.5,0000:09:04.6,0000:09:04.7",
  "pvendor": "Intel Corporation",
  "pciaddr": "0000:09:00.0",
  "numa_node": 0,
  "pvendor_id": "8086",
  "pclass_id": "b4000",
  "driver": null,
  "psvendor": "Intel Corporation",
  "enabled": "True",
  "name": "pci_0000_09_00_0"
}

This operation does not accept a request body.

PATCH
/v1/pci_devices/​{device_id}

Modifies a specific PCI device

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

device_id

URI

csapi:UUID

The unique identifier of an existing pci device. PCI address or name.

name (Optional)

plain

xsd:string

The name for the device.

enabled (Optional)

plain

xsd:string

The status of this device; i.e. True, False.

Response parameters

Parameter

Style

Type

Description

devices (Optional)

plain

xsd:list

URIs to the PCI devices of this host.

name (Optional)

plain

xsd:string

The user-specified name for the PCI device

pciaddr (Optional)

plain

xsd:string

The PCI Address of the device.

pclass_id (Optional)

plain

xsd:string

The class or type identifier of the physical IO controller device of the device.

pvendor_id (Optional)

plain

xsd:boolean

The primary vendor identifier of the device hardware.

pdevice_id (Optional)

plain

xsd:boolean

The primary type and model identifier of the devicehardware.

pclass (Optional)

plain

xsd:string

The class or type name of the physical IO controller device of the device.

pvendor (Optional)

plain

xsd:boolean

The primary vendor name of the port hardware.

pdevice (Optional)

plain

xsd:boolean

The primary type and model information of the device hardware.

psvendor (Optional)

plain

xsd:boolean

The secondary vendor information of the device hardware.

psdevice (Optional)

plain

xsd:boolean

The secondary type and model information of the device hardware.

sriov_totalvfs (Optional)

plain

xsd:integer

Indicates the maximum number of VFs that this device can support.

sriov_numvfs (Optional)

plain

xsd:integer

Indicates the actual number of VFs configured for the interface using this device.

sriov_vfs_pci_address (Optional)

plain

xsd:string

A comma-separated list of the PCI addresses of the configured VFs.

driver (Optional)

plain

xsd:string

The driver being used for the device.

enabled (Optional)

plain

xsd:string

The availability status of the device.

extra_info (Optional)

plain

xsd:string

Extra information about the device.

numa_node (Optional)

plain

xsd:integer

The NUMA Node of the device.

host_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the device.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
  {
    "path": "/enabled",
    "value": "True",
    "op": "replace"
  },
  {
    "path": "/name",
    "value": "pci_0000_09_00_0",
    "op": "replace"
  }
]
{
  "links": [
    {
      "href": "http:\/\/192.168.204.2:6385\/v1\/pci_devices\/8fdab3b1-c90a-421b-ba5f-5dc2d677dac6",
      "rel": "self"
    },
    {
      "href": "http:\/\/192.168.204.2:6385\/pci_devices\/8fdab3b1-c90a-421b-ba5f-5dc2d677dac6",
      "rel": "bookmark"
    }
  ],
  "enabled": "True",
  "updated_at": "2015-11-04T18:48:09.051858+00:00",
  "extra_info": null,
  "uuid": "8fdab3b1-c90a-421b-ba5f-5dc2d677dac6",
  "pdevice": "Coleto Creek PCIe Endpoint",
  "psvendor": "Intel Corporation",
  "psdevice": "Device 35c5",
  "pclass_id": "b4000",
  "pvendor": "Intel Corporation",
  "sriov_numvfs": 32,
  "driver": null,
  "host_uuid": "aa3fabca-e007-485b-bea9-4f1a0ad9049a",
  "name": "pci_0000_09_00_0",
  "numa_node": 0,
  "created_at": "2015-11-04T04:22:59.406921+00:00",
  "pdevice_id": "435",
  "pclass": "Co-processor",
  "sriov_vfs_pci_address": "0000:09:01.0,0000:09:01.1,0000:09:01.2,0000:09:01.3,0000:09:01.4,0000:09:01.5,0000:09:01.6,0000:09:01.7,0000:09:02.0,0000:09:02.1,0000:09:02.2,0000:09:02.3,0000:09:02.4,0000:09:02.5,0000:09:02.6,0000:09:02.7,0000:09:03.0,0000:09:03.1,0000:09:03.2,0000:09:03.3,0000:09:03.4,0000:09:03.5,0000:09:03.6,0000:09:03.7,0000:09:04.0,0000:09:04.1,0000:09:04.2,0000:09:04.3,0000:09:04.4,0000:09:04.5,0000:09:04.6,0000:09:04.7",
  "sriov_totalvfs": 32,
  "pciaddr": "0000:09:00.0",
  "pvendor_id": "8086"
}

Device images

GET
/v1/device_images

List the device images

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

device_images (Optional)

plain

xsd:list

The list of device images.

bitstream_type (Optional)

plain

xsd:string

The bitstream type of the device image.

pci_vendor (Optional)

plain

xsd:string

The vendor ID of the pci device.

pci_device (Optional)

plain

xsd:string

The device ID of the pci device.

bitstream_id (Optional)

plain

xsd:string

The bitstream id of the functional device image.

key_signature (Optional)

plain

xsd:string

The key signature of the root-key device image.

revoked_key_id (Optional)

plain

xsd:string

The key revocation id of the key revocation device image.

name (Optional)

plain

xsd:string

The name of the device image.

description (Optional)

plain

xsd:string

The description of the device image.

image_version (Optional)

plain

xsd:string

The version of the device image.

applied_labels (Optional)

plain

xsd:list

The device image applied to the device labels.

bmc (Optional)

plain

xsd:boolean

This indicates whether it is a BMC functional image.

retimer_included (Optional)

plain

xsd:boolean

This indicates whether the retimer firmware is included in the BMC functional image.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

{
   "device_images": [
      {
         "uuid": "7e794693-2060-4e9e-b0bd-b281b059e8e4",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "functional",
         "bitstream_id": "1234",
         "key_signature": null,
         "revoke_key_id": null,
         "description": null,
         "name": null,
         "image_version": null,
         "bmc": false,
         "retimer_included": false,
         "applied_labels":
            {
               "key1": "value1",
               "key2": "value2"
            },
      },
      {
         "uuid": "09100124-5ae9-44d8-aefc-a192b8f27360",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "root-key",
         "bitstream_id": null
         "key_signature": "a123",
         "revoke_key_id": null,
         "name": "Image name",
         "description": null,
         "image_version": null,
         "applied_labels": null,
      },
      {
         "uuid": "ef4c39b1-81e9-42dd-b850-06fc8833b47c",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "key-revocation",
         "bitstream_id": null
         "key_signature": null,
         "revoke_key_id": 123,
         "name": "Image name",
         "description": null,
         "image_version": null,
         "applied_labels": null,
      },
   ]
}

This operation does not accept a request body.

GET
/v1/device_images/​{image_id}

Shows attributes of the Device Image object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

image_id

URI

csapi:UUID

The unique identifier of a device image.

Response parameters

Parameter

Style

Type

Description

device_images (Optional)

plain

xsd:list

The list of device images.

bitstream_type (Optional)

plain

xsd:string

The bitstream type of the device image.

pci_vendor (Optional)

plain

xsd:string

The vendor ID of the pci device .

pci_device (Optional)

plain

xsd:string

The device ID of the pci device.

bitstream_id (Optional)

plain

xsd:string

The bitstream id of the functional device image.

key_signature (Optional)

plain

xsd:string

The key id of the root-key device image.

revoked_key_id (Optional)

plain

xsd:string

The key revocation id of the key revocation device image.

name (Optional)

plain

xsd:string

The name of the device image.

description (Optional)

plain

xsd:string

The description of the device image.

image_version (Optional)

plain

xsd:string

The version of the device image.

applied_labels (Optional)

plain

xsd:list

The device image applied to the device labels.

bmc (Optional)

plain

xsd:boolean

This indicates whether it is a BMC functional image.

retimer_included (Optional)

plain

xsd:boolean

This indicates whether the retimer firmware is included in the BMC functional image.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

{
   "device_images": [
      {
         "uuid": "7e794693-2060-4e9e-b0bd-b281b059e8e4",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "functional",
         "bitstream_id": "1234",
         "key_signature": null,
         "revoke_key_id": null,
         "description": null,
         "name": null,
         "image_version": null,
         "bmc": false,
         "retimer_included": false,
         "applied_labels":
            {
               "key1": "value1",
               "key2": "value2"
            },
      }
   ]
}
POST
/v1/device_image

Creates a device image

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

bitstream_type

plain

xsd:string

The bitstream type of the device image. Valid types are functional, root-key, key-revocation

pci_vendor

plain

xsd:string

The vendor ID of the pci device.

pci_device

plain

xsd:string

The device ID of the pci device.

bitstream_id (Optional)

plain

xsd:string

The bitstream id of the functional device image. Required for bitstream type functional

key_signature (Optional)

plain

xsd:string

The key id of the root-key device image.

revoked_key_id (Optional)

plain

xsd:string

The key revocation id of the key revocation device image.

name (Optional)

plain

xsd:string

The name of the device image.

description (Optional)

plain

xsd:string

The description of the device image.

image_version (Optional)

plain

xsd:string

The version of the device image.

bmc (Optional)

plain

xsd:boolean

This indicates whether it is a BMC functional image.

retimer_included (Optional)

plain

xsd:boolean

This indicates whether the retimer firmware is included in the BMC functional image.

Response parameters

Parameter

Style

Type

Description

bitstream_type

plain

xsd:string

The bitstream type of the device image.

pci_vendor

plain

xsd:string

The vendor ID of the pci device .

pci_device

plain

xsd:string

The device ID of the pci device.

bitstream_id (Optional)

plain

xsd:string

The bitstream id of the functional device image.

key_signature (Optional)

plain

xsd:string

The key id of the root-key device image.

revoked_key_id (Optional)

plain

xsd:string

The key revocation id of the key revocation device image.

name (Optional)

plain

xsd:string

The name of the device image.

description (Optional)

plain

xsd:string

The description of the device image.

image_version (Optional)

plain

xsd:string

The version of the device image.

bmc (Optional)

plain

xsd:boolean

This indicates whether it is a BMC functional image.

retimer_included (Optional)

plain

xsd:boolean

This indicates whether the retimer firmware is included in the BMC functional image.

applied_labels (Optional)

plain

xsd:list

The device image applied to the device labels.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

{
   "device_images": [
      {
         "uuid": "7e794693-2060-4e9e-b0bd-b281b059e8e4",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "functional",
         "bitstream_id": "1234",
         "key_signature": null,
         "revoke_key_id": null,
         "description": null,
         "name": null,
         "image_version": null,
         "bmc": false,
         "retimer_included": false,
         "applied_labels": null
      }
   ]
}
PATCH
/v1/device_images/​{image_id}​?action=apply

Applies the device image to all hosts or label

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

image_id

URI

csapi:UUID

The unique identifier of a device image.

device_label (Optional)

plain

xsd:string

The key-value paired device label assigned to a device.

{
   "key1": "value1"
}

Response parameters

Parameter

Style

Type

Description

bitstream_type

plain

xsd:string

The bitstream type of the device image.

pci_vendor

plain

xsd:string

The vendor ID of the pci device .

pci_device

plain

xsd:string

The device ID of the pci device.

bitstream_id (Optional)

plain

xsd:string

The bitstream id of the functional device image.

key_signature (Optional)

plain

xsd:string

The key id of the root-key device image.

revoked_key_id (Optional)

plain

xsd:string

The key revocation id of the key revocation device image.

name (Optional)

plain

xsd:string

The name of the device image.

description (Optional)

plain

xsd:string

The description of the device image.

image_version (Optional)

plain

xsd:string

The version of the device image.

bmc (Optional)

plain

xsd:boolean

This indicates whether it is a BMC functional image.

retimer_included (Optional)

plain

xsd:boolean

This indicates whether the retimer firmware is included in the BMC functional image.

applied_labels (Optional)

plain

xsd:list

The device image applied to the device labels.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

{
   "device_images": [
      {
         "uuid": "7e794693-2060-4e9e-b0bd-b281b059e8e4",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "functional",
         "bitstream_id": "1234",
         "key_signature": null,
         "revoke_key_id": null,
         "description": null,
         "name": null,
         "image_version": null,
         "bmc": false,
         "retimer_included": false,
         "applied_labels":
            {
               "key1": "value1"
            },
      }
   ]
}
PATCH
/v1/device_images/​{image_id}​?action=remove

Remove the device image from host or label

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

image_id

URI

csapi:UUID

The unique identifier of a device image.

device_label (Optional)

plain

xsd:string

The key-value paired device label assigned to a device.

{
   "key1": "value1"
}

Response parameters

Parameter

Style

Type

Description

bitstream_type

plain

xsd:string

The bitstream type of the device image.

pci_vendor

plain

xsd:string

The vendor ID of the pci device .

pci_device

plain

xsd:string

The device ID of the pci device.

bitstream_id (Optional)

plain

xsd:string

The bitstream id of the functional device image.

key_signature (Optional)

plain

xsd:string

The key id of the root-key device image.

revoked_key_id (Optional)

plain

xsd:string

The key revocation id of the key revocation device image.

name (Optional)

plain

xsd:string

The name of the device image.

description (Optional)

plain

xsd:string

The description of the device image.

image_version (Optional)

plain

xsd:string

The version of the device image.

bmc (Optional)

plain

xsd:boolean

This indicates whether it is a BMC functional image.

retimer_included (Optional)

plain

xsd:boolean

This indicates whether the retimer firmware is included in the BMC functional image.

applied_labels (Optional)

plain

xsd:list

The device image applied to the device labels.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

{
   "device_images": [
      {
         "uuid": "7e794693-2060-4e9e-b0bd-b281b059e8e4",
         "pci_vendor": "8086",
         "pci_device": "0b30",
         "bitstream_type": "functional",
         "bitstream_id": "1234",
         "key_signature": null,
         "revoke_key_id": null,
         "description": null,
         "name": null,
         "image_version": null,
         "bmc": false,
         "retimer_included": false,
         "applied_labels": null
      }
   ]
}
DELETE
/v1/device_images/​{image_id}

Deletes a device image

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

image_id

URI

csapi:UUID

The unique identifier of a device image.

This operation does not accept a request body.

Device labels

GET
/v1/device_labels

List the device labels

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

device_labels

plain

xsd:list

The list of device labels.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

pcidevice_uuid

plain

csapi:UUID

The universally unique identifier for the pci device object.

host_uuid

plain

csapi:UUID

The universally unique identifier for the host object.

label_key

plain

xsd:string

The key of the device label.

label_value

plain

xsd:string

The value of the device label.

{
   "device_labels": [
      {
         "uuid": "fe26ca98-35d4-43b7-8c51-f0ca957b35e1",
         "pcidevice_uuid": "64641c6d-4fdd-4ecb-9c66-a68982267b6d",
         "host_uuid": "32be8077-1174-46cf-8309-48c107765ffc"
         "label_key": "key1",
         "label_value": "value1",
      },
      {
         "uuid": "60342a18-a686-48c4-8e71-13a005ffda1b",
         "pcidevice_uuid": "9d69d492-9888-4d85-90d0-e52def926b17",
         "host_uuid": "32be8077-1174-46cf-8309-48c107765ffc"
         "label_key": "key5",
         "label_value": "value5",
      },
   ]
}
POST
/v1/device_labels

Assign device label to a pci device

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

pcidevice_uuid

URI

csapi:UUID

The unique identifier of a pci device.

device_labels

URI

xsd:list

List of key-value paired of device labels.

{
   "pcidevice_uuid": "da98f600-49cf-4f0e-b14e-15ef91069fe8",
   "key1": "value1",
   "key2": "value2"
}

Response parameters

Parameter

Style

Type

Description

uuid

URI

csapi:UUID

The unique identifier of the device label object.

pcidevice_uuid

URI

csapi:UUID

The unique identifier of a pci device.

label_key

URI

xsd:string

The label key of device labels.

label_value

URI

xsd:string

The label value of device labels.

{
   "device_labels": [
      {
         "uuid": "66daffb1-72ee-4e6e-9489-206c5eeaec94",
         "pcidevice_uuid": "da98f600-49cf-4f0e-b14e-15ef91069fe8",
         "label_key": "key1",
         "label_value": "value1",
      },
      {
         "uuid": "2e7821ed-e373-4cb8-a47b-f70ff2558dfd",
         "pcidevice_uuid": "da98f600-49cf-4f0e-b14e-15ef91069fe8",
         "label_key": "key2",
         "label_value": "value2",
      }
   ]
}
DELETE
/v1/device_labels/​{device_label_uuid}

Deletes a device label

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

device_label_uuid

URI

csapi:UUID

The unique identifier of a device label.

This operation does not accept a request body.

Service Parameter

GET
/v1/service_parameter

List the service parameters

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

parameters (Optional)

plain

xsd:list

The list of service parameters.

service (Optional)

plain

xsd:string

The name of the service.

section (Optional)

plain

xsd:string

The section name within the configuration file for the specified service.

name (Optional)

plain

xsd:string

The name of the service parameter.

value (Optional)

plain

xsd:string

The value of the service parameter.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "parameters":[
      {
         "uuid":"7694eca1-21e0-4998-bf2c-15f71b3bddc5",
         "links":[
            {
               "href":"http://10.10.10.2:6385/v1/parameters/7694eca1-21e0-4998-bf2c-15f71b3bddc5",
               "rel":"self"
            },
            {
               "href":"http://10.10.10.2:6385/parameters/7694eca1-21e0-4998-bf2c-15f71b3bddc5",
               "rel":"bookmark"
            }
         ],
         "section":"assignment",
         "value":"keystone.assignment.backends.sql.Assignment",
         "service":"identity",
         "name":"driver"
      },
      {
         "uuid":"5eeebd50-4809-4d2e-b4ce-1acd9cfeadab",
         "links":[
            {
               "href":"http://10.10.10.2:6385/v1/parameters/5eeebd50-4809-4d2e-b4ce-1acd9cfeadab",
               "rel":"self"
            },
            {
               "href":"http://10.10.10.2:6385/parameters/5eeebd50-4809-4d2e-b4ce-1acd9cfeadab",
               "rel":"bookmark"
            }
         ],
         "section":"identity",
         "value":"keystone.identity.backends.sql.Identity",
         "service":"identity",
         "name":"driver"
      },
      {
         "uuid":"b84378ae-6e0a-48f0-b394-f8a519fc14f4",
         "links":[
            {
               "href":"http://10.10.10.2:6385/v1/parameters/b84378ae-6e0a-48f0-b394-f8a519fc14f4",
               "rel":"self"
            },
            {
               "href":"http://10.10.10.2:6385/parameters/b84378ae-6e0a-48f0-b394-f8a519fc14f4",
               "rel":"bookmark"
            }
         ],
         "section":"resource",
         "value":"keystone.resource.backends.sql.Resource",
         "service":"identity",
         "name":"driver"
      },
      {
         "uuid":"6634285f-428e-4ebe-becd-cbb0ab7f30ad",
         "links":[
            {
               "href":"http://10.10.10.2:6385/v1/parameters/6634285f-428e-4ebe-becd-cbb0ab7f30ad",
               "rel":"self"
            },
            {
               "href":"http://10.10.10.2:6385/parameters/6634285f-428e-4ebe-becd-cbb0ab7f30ad",
               "rel":"bookmark"
            }
         ],
         "section":"role",
         "value":"keystone.assignment.role_backends.sql.Role",
         "service":"identity",
         "name":"driver"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/service_parameter/​{parameter_id}

Shows attributes of the Service parameter object

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

parameter_id

URI

csapi:UUID

The unique identifier of a service parameter.

Response parameters

Parameter

Style

Type

Description

service (Optional)

plain

xsd:string

The name of the service.

section (Optional)

plain

xsd:string

The section name within the configuration file for the specified service.

name (Optional)

plain

xsd:string

The name of the service parameter.

value (Optional)

plain

xsd:string

The value of the service parameter.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "uuid":"fd5e5e4c-2723-430a-b162-b06b49d94313",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/parameters/fd5e5e4c-2723-430a-b162-b06b49d94313",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/parameters/fd5e5e4c-2723-430a-b162-b06b49d94313",
         "rel":"bookmark"
      }
   ],
   "section":"identity",
   "updated_at":"2015-12-23T19:07:41.257052+00:00",
   "value":"keystone.identity.backends.sql.Identity",
   "service":"identity",
   "created_at":"2015-12-23T18:54:53.676200+00:00",
   "name":"driver"
}

This operation does not accept a request body.

POST
/v1/service_parameter

Creates parameters for a service

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

service (Optional)

plain

xsd:string

This parameter specifies the name of the service. Valid values are (is): identity

section (Optional)

plain

xsd:string

This parameter specifies the section of the configuration file for the service.

Response parameters

Parameter

Style

Type

Description

service (Optional)

plain

xsd:string

The name of the service.

section (Optional)

plain

xsd:string

The section name within the configuration file for the specified service.

name (Optional)

plain

xsd:string

The name of the service parameter.

value (Optional)

plain

xsd:string

The value of the service parameter.

{
   "section":"ldap",
   "parameters":{
      "url":"ldap://localhost",
      "allow_subtree_delete":"False"
   },
   "service":"identity"
}
{
   "uuid":"399ec29b-5cf4-45e2-a9d0-a640a5a1760c",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/parameters/399ec29b-5cf4-45e2-a9d0-a640a5a1760c",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/parameters/399ec29b-5cf4-45e2-a9d0-a640a5a1760c",
         "rel":"bookmark"
      }
   ],
   "section":"ldap",
   "updated_at":null,
   "value":"ldap://localhost",
   "service":"identity",
   "created_at":"2015-12-24T15:29:54.954563+00:00",
   "name":"url"
}
{
   "uuid":"cff25627-0f2e-42b3-a8b0-34d491c15728",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/parameters/cff25627-0f2e-42b3-a8b0-34d491c15728",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/parameters/cff25627-0f2e-42b3-a8b0-34d491c15728",
         "rel":"bookmark"
      }
   ],
   "section":"ldap",
   "updated_at":null,
   "value":"False",
   "service":"identity",
   "created_at":"2015-12-24T15:29:54.957636+00:00",
   "name":"allow_subtree_delete"
}
POST
/v1/service_parameter/apply

Applies the service parameters

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

service (Optional)

plain

xsd:string

This parameter specifies the name of the service. Valid values are (is): identity

{
   "service":"identity"
}
PATCH
/v1/service_parameter/​{parameter_id}

Modifies the value of the Service parameter object

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

parameter_id

URI

csapi:UUID

The unique identifier of a service parameter.

name (Optional)

plain

xsd:string

The name for the service parameter.

value (Optional)

plain

xsd:string

The value of the service parameter.

Response parameters

Parameter

Style

Type

Description

parameters (Optional)

plain

xsd:list

URIs to the service parameters.

service (Optional)

plain

xsd:string

The name of the service.

section (Optional)

plain

xsd:string

The section name within the configuration file for the specified service.

name (Optional)

plain

xsd:string

The name of the service parameter.

value (Optional)

plain

xsd:string

The value of the service parameter.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
  {
     "path":"/name",
     "value":"suffix",
     "op":"replace"
  },
  {
     "path":"/value",
     "value":"dc=openstack,dc=org",
     "op":"replace"
  }
]
{
   "uuid":"b1d07555-ac16-4d5a-ba00-8191f4047bd6",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/parameters/b1d07555-ac16-4d5a-ba00-8191f4047bd6",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/parameters/b1d07555-ac16-4d5a-ba00-8191f4047bd6",
         "rel":"bookmark"
      }
   ],
   "section":"ldap",
   "updated_at":"2015-12-24T15:37:06.091315+00:00",
   "value":"dc=openstack,dc=org",
   "service":"identity",
   "created_at":"2015-12-23T18:58:03.166244+00:00",
   "name":"suffix"
}
DELETE
/v1/service_parameter/​{parameter_id}

Deletes a service parameter

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

parameter_id

URI

csapi:UUID

The unique identifier of a service parameter.

This operation does not accept a request body.

SDN Controllers

These APIs allow for the display and configuration of the SDN controllers that each of the compute nodes will connect to for the purpose of SDN manager interface (i.e. OVSDB connection). The SDN controllers configured are for active connections to the SDN controller for each of the virtual switch instances running on the compute nodes, and is shared across all compute nodes.

GET
/v1/sdn_controller

List the SDN controllers

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

sdn_controllers (Optional)

plain

xsd:list

The list of SDN controllers.

ip_address (Optional)

plain

xsd:string

This parameter specifies the IP address or FQDN of the SDN controller.

port (Optional)

plain

xsd:string

This parameter specifies the listening port number of the OVSDB southbound API of the SDN controller.

transport (Optional)

plain

xsd:string

This parameter specifies the transport protocol to use for the connection of the OVSDB protocol. Expected value is TCP. Valid values are: UDP or TCP.

state (Optional)

plain

xsd:string

This parameter specifies the administrative state of the SDN controller. Valid values are: enabled or disabled.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "sdn_controllers" : [{
            "uuid" : "cdae53f1-d842-4a51-a64a-30a682611a24",
            "links" : [{
                    "href" : "http://192.168.204.2:6385/v1/sdn_controllers/cdae53f1-d842-4a51-a64a-30a682611a24",
                    "rel" : "self"
                }, {
                    "href" : "http://192.168.204.2:6385/sdn_controllers/cdae53f1-d842-4a51-a64a-30a682611a24",
                    "rel" : "bookmark"
                }
            ],
            "state" : "enabled",
            "ip_address" : "192.168.0.1",
            "port" : 6640,
            "transport" : "TCP"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/sdn_controller/​{controller_id}

Shows attributes of the SDN controller

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

controller_id

URI

csapi:UUID

The unique identifier of the SDN controller.

Response parameters

Parameter

Style

Type

Description

ip_address (Optional)

plain

xsd:string

This parameter specifies the IP address or FQDN of the SDN controller.

port (Optional)

plain

xsd:string

This parameter specifies the listening port number of the OVSDB southbound API of the SDN controller.

transport (Optional)

plain

xsd:string

This parameter specifies the transport protocol to use for the connection of the OVSDB protocol. Expected value is TCP. Valid values are: UDP or TCP.

state (Optional)

plain

xsd:string

This parameter specifies the administrative state of the SDN controller. Valid values are: enabled or disabled.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "uuid" : "cdae53f1-d842-4a51-a64a-30a682611a24",
    "links" : [{
            "href" : "http://192.168.204.2:6385/v1/sdn_controllers/cdae53f1-d842-4a51-a64a-30a682611a24",
            "rel" : "self"
        }, {
            "href" : "http://192.168.204.2:6385/sdn_controllers/cdae53f1-d842-4a51-a64a-30a682611a24",
            "rel" : "bookmark"
        }
    ],
    "created_at" : "2016-08-16T13:04:30.997350+00:00",
    "updated_at" : null,
    "state" : "enabled",
    "ip_address" : "192.168.0.1",
    "port" : 6640,
    "transport" : "TCP"
}

This operation does not accept a request body.

POST
/v1/sdn_controller

Adds an SDN controller

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

ip_address (Optional)

plain

xsd:string

This parameter specifies the IP address or FQDN of the SDN controller.

port (Optional)

plain

xsd:string

This parameter specifies the listening port number of the OVSDB southbound API of the SDN controller.

transport (Optional)

plain

xsd:string

This parameter specifies the transport protocol to use for the connection of the OVSDB protocol. Expected value is TCP. Valid values are: UDP or TCP.

state (Optional)

plain

xsd:string

This parameter specifies the administrative state of the SDN controller. Valid values are: enabled or disabled.

Response parameters

Parameter

Style

Type

Description

ip_address (Optional)

plain

xsd:string

This parameter specifies the IP address or FQDN of the SDN controller.

port (Optional)

plain

xsd:string

This parameter specifies the listening port number of the OVSDB southbound API of the SDN controller.

transport (Optional)

plain

xsd:string

This parameter specifies the transport protocol to use for the connection of the OVSDB protocol. Expected value is TCP. Valid values are: UDP or TCP.

state (Optional)

plain

xsd:string

This parameter specifies the administrative state of the SDN controller. Valid values are: enabled or disabled.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "state" : "enabled",
    "ip_address" : "192.168.0.1",
    "port" : "6640",
    "transport" : "TCP"
}
{
    "uuid" : "55390e8e-1262-4945-8792-40a26206c8a0",
    "links" : [{
            "href" : "http://192.168.204.2:6385/v1/sdn_controllers/55390e8e-1262-4945-8792-40a26206c8a0",
            "rel" : "self"
        }, {
            "href" : "http://192.168.204.2:6385/sdn_controllers/55390e8e-1262-4945-8792-40a26206c8a0",
            "rel" : "bookmark"
        }
    ],
    "created_at" : "2016-08-16T17:06:25.368111+00:00",
    "updated_at" : null,
    "state" : "enabled",
    "ip_address" : "192.168.0.1",
    "port" : 6640,
    "transport" : "TCP"
}
PATCH
/v1/sdn_controller/​{controller_id}

Modifies the attributes of the SDN controller

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

controller_id

URI

csapi:UUID

The unique identifier of the SDN controller.

ip_address (Optional)

plain

xsd:string

This parameter specifies the IP address or FQDN of the SDN controller.

port (Optional)

plain

xsd:string

This parameter specifies the listening port number of the OVSDB southbound API of the SDN controller.

transport (Optional)

plain

xsd:string

This parameter specifies the transport protocol to use for the connection of the OVSDB protocol. Expected value is TCP. Valid values are: UDP or TCP.

state (Optional)

plain

xsd:string

This parameter specifies the administrative state of the SDN controller. Valid values are: enabled or disabled.

Response parameters

Parameter

Style

Type

Description

ip_address (Optional)

plain

xsd:string

This parameter specifies the IP address or FQDN of the SDN controller.

port (Optional)

plain

xsd:string

This parameter specifies the listening port number of the OVSDB southbound API of the SDN controller.

transport (Optional)

plain

xsd:string

This parameter specifies the transport protocol to use for the connection of the OVSDB protocol. Expected value is TCP. Valid values are: UDP or TCP.

state (Optional)

plain

xsd:string

This parameter specifies the administrative state of the SDN controller. Valid values are: enabled or disabled.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[{
        "path" : "/state",
        "value" : "disabled",
        "op" : "replace"
    }, {
        "path" : "/transport",
        "value" : "TCP",
        "op" : "replace"
    }
]
{
    "uuid" : "55390e8e-1262-4945-8792-40a26206c8a0",
    "links" : [{
            "href" : "http://192.168.204.2:6385/v1/sdn_controllers/55390e8e-1262-4945-8792-40a26206c8a0",
            "rel" : "self"
        }, {
            "href" : "http://192.168.204.2:6385/sdn_controllers/55390e8e-1262-4945-8792-40a26206c8a0",
            "rel" : "bookmark"
        }
    ],
    "created_at" : "2016-08-16T17:06:25.368111+00:00",
    "updated_at" : "2016-08-16T17:13:31.035249+00:00",
    "state" : "disabled",
    "ip_address" : "192.168.0.1",
    "port" : 6640,
    "transport" : "TCP"
}
DELETE
/v1/sdn_controller/​{controller_id}

Deletes an SDN controller

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

controller_id

URI

csapi:UUID

The unique identifier of the SDN controller.

This operation does not accept a request body.

Remote Logging

These APIs allow the display and configuration of the remote logging settings

GET
/v1/remotelogging

Show configuration for remote logging

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

remoteloggings (Optional)

plain

xsd:list

The list of remotelogging configuration.

ip_address (Optional)

plain

xsd:string

IP Address of remote log server.

enabled (Optional)

plain

xsd:boolean

Remote log server enabled.

transport (Optional)

plain

xsd:string

Remote log server transport protocol.

port (Optional)

plain

xsd:integer

Remote log server port.

key_file (Optional)

plain

xsd:string

Remote log server TLS key file.

{
   "remoteloggings":[
      {
         "uuid":"319a1a4c-a1b1-4dc0-a29f-b257497619ef",
         "links":[
            {
               "href":"http://192.168.204.2:6385/v1/remoteloggings/319a1a4c-a1b1-4dc0-a29f-b257497619ef",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.2:6385/remoteloggings/319a1a4c-a1b1-4dc0-a29f-b257497619ef",
               "rel":"bookmark"
            }
         ],
         "created_at":"2016-11-10T19:57:37.969067+00:00",
         "enabled":"False",
         "updated_at":null,
         "key_file":null,
         "ip_address":null,
         "port":514,
         "transport":"udp"
      }
   ]
}

This operation does not accept a request body.

PATCH
/v1/remotelogging/​{remotelogging_id}

Modifies the configuration of the remote logging of this system

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

remotelogging_id

URI

csapi:UUID

The unique identifier of a remotelogging settings entry.

ip_address (Optional)

plain

xsd:string

IP Address of remote log server.

enabled (Optional)

plain

xsd:boolean

Remote log server enabled.

transport (Optional)

plain

xsd:string

Remote log server transport protocol.

port (Optional)

plain

xsd:integer

Remote log server port.

Response parameters

Parameter

Style

Type

Description

ip_address (Optional)

plain

xsd:string

IP Address of remote log server.

enabled (Optional)

plain

xsd:boolean

Remote log server enabled.

transport (Optional)

plain

xsd:string

Remote log server transport protocol.

port (Optional)

plain

xsd:integer

Remote log server port.

key_file (Optional)

plain

xsd:string

Remote log server TLS key file.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
   {
      "path":"/ip_address",
      "value":"10.10.10.45",
      "op":"replace"
   },
   {
      "path":"/enabled",
      "value":"True",
      "op":"replace"
   },
   {
      "path":"/transport",
      "value":"tcp",
      "op":"replace"
   },
   {
      "path":"/port",
      "value":"514",
      "op":"replace"
   },
   {
      "path":"/action",
      "value":"apply",
      "op":"replace"
   }
]
{
   "uuid":"319a1a4c-a1b1-4dc0-a29f-b257497619ef",
   "links":[
      {
         "href":"http://192.168.204.2:6385/v1/remoteloggings/319a1a4c-a1b1-4dc0-a29f-b257497619ef",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.2:6385/remoteloggings/319a1a4c-a1b1-4dc0-a29f-b257497619ef",
         "rel":"bookmark"
      }
   ],
   "created_at":"2016-11-10T19:57:37.969067+00:00",
   "enabled":"True",
   "updated_at":null,
   "isystem_uuid":"036b338e-8217-4378-97b2-6a3c097882b4",
   "action":null,
   "key_file":null,
   "ip_address":"10.10.10.45",
   "port":514,
   "transport":"tcp"
}

Networks

These APIs allow the display of system managed networks. They are intended for internal system use only.

GET
/v1/networks

Shows detailed information about all networks

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

uuid (Optional)

plain

csapi:UUID

The uuid of the network resource.

name (Optional)

plain

xsd:string

The name of network resource.

type (Optional)

plain

xsd:string

The type of network resource.

dynamic (Optional)

plain

xsd:boolean

A boolean describing whether IP addresses are assigned by the user (False) or by the system (True).

pool_uuid (Optional)

plain

csapi:UUID

The uuid of the address pool from which IP addresses are allocated or registered.

{
    "networks": [{
        "uuid": "7b322329-8097-4233-a7df-83eafaba8447",
        "name": "mgmt",
        "type": "mgmt",
        "dynamic": true,
        "pool_uuid": "d7187d17-8715-4934-8754-4827e604a468",
    },
    {
        "uuid": "bf226d1f-39a3-4c3f-abde-8077077835a4",
        "name": "cluster-host",
        "type": "cluster-host",
        "dynamic": true,
        "pool_uuid": "7b299949-614c-4f1a-85cb-c46a09827f0c",
    },
    {
        "uuid": "d735fe97-6e10-4534-8720-1ee2d24ec8ae",
        "name": "oam",
        "type": "oam",
        "dynamic": false,
        "pool_uuid": "c5fced12-40ad-47fa-ad01-6800d1e418b7",
    }]
}

This operation does not accept a request body.

GET
/v1/networks/​{network_id}

Shows detailed information about a specific network

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

network_id

URI

csapi:UUID

The unique identifier of the network resource.

Response parameters

Parameter

Style

Type

Description

uuid (Optional)

plain

csapi:UUID

The uuid of the network resource.

name (Optional)

plain

xsd:string

The name of network resource.

type (Optional)

plain

xsd:string

The type of network resource.

dynamic (Optional)

plain

xsd:boolean

A boolean describing whether IP addresses are assigned by the user (False) or by the system (True).

pool_uuid (Optional)

plain

csapi:UUID

The uuid of the address pool from which IP addresses are allocated or registered.

{
    "uuid": "bf226d1f-39a3-4c3f-abde-8077077835a4",
    "created_at": "2016-11-09T14:53:20.185156+00:00",
    "dynamic": true,
    "updated_at": null,
    "pool_uuid": "7b299949-614c-4f1a-85cb-c46a09827f0c",
    "name": "cluster-host",
    "type": "cluster-host",
    "id": 2,
}

This operation does not accept a request body.

Address Pools

These APIs allow the display and configuration of IP address pools.

GET
/v1/addrpools

Shows detailed information about all address pools

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name (or network type) of the address pool resource.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

order (Optional)

plain

xsd:string

A string representing the IP address allocation scheme; random to allocate in random order, or sequential to allocate in sequential order.

ranges (Optional)

plain

xsd:string

A python list, formatted as a JSON string, representing a series of start-end pairs which define the allocatable ranges of IP addresses in the pool.

floating_address (Optional)

plain

xsd:string

The floating IP address of the network.

controller0_address (Optional)

plain

xsd:string

The controller-0 IP address of the network.

controller1_address (Optional)

plain

xsd:string

The controller-1 IP address of the network.

gateway_address (Optional)

plain

xsd:string

The gateway IP address of the network.

uuid (Optional)

plain

csapi:UUID

The uuid of the address pool resource.

{
    "addrpools": [{
        "network": "192.168.204.0",
        "name": "management",
        "ranges": [["192.168.204.2",
        "192.168.204.254"]],
        "prefix": 24,
        "order": "random",
        "floating_address": "192.168.204.2",
        "controller0_address": "192.168.204.3",
        "controller1_address": "192.168.204.4",
        "gateway_address": null,
        "uuid": "d7187d17-8715-4934-8754-4827e604a468"
    },
    {
        "network": "192.168.206.0",
        "name": "cluster-host",
        "ranges": [["192.168.206.2",
        "192.168.206.254"]],
        "prefix": 24,
        "order": "random",
        "floating_address": "192.168.206.2",
        "controller0_address": "192.168.206.3",
        "controller1_address": "192.168.206.4",
        "gateway_address": null,
        "uuid": "7b299949-614c-4f1a-85cb-c46a09827f0c"
    },
    {
        "network": "10.10.10.0",
        "name": "oam",
        "ranges": [["10.10.10.1",
        "10.10.10.254"]],
        "prefix": 24,
        "order": "random",
        "floating_address": "10.10.10.3",
        "controller0_address": "10.10.10.4",
        "controller1_address": "10.10.10.5",
        "gateway_address": "10.10.10.1",
        "uuid": "c5fced12-40ad-47fa-ad01-6800d1e418b7"
    }]
}

This operation does not accept a request body.

POST
/v1/addrpools

Adds an address pool

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name (or network type) of the address pool resource.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

order (Optional)

plain

xsd:string

A string representing the IP address allocation scheme; random to allocate in random order, or sequential to allocate in sequential order.

ranges (Optional)

plain

xsd:string

A python list, formatted as a JSON string, representing a series of start-end pairs which define the allocatable ranges of IP addresses in the pool.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name (or network type) of the address pool resource.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

order (Optional)

plain

xsd:string

A string representing the IP address allocation scheme; random to allocate in random order, or sequential to allocate in sequential order.

ranges (Optional)

plain

xsd:string

A python list, formatted as a JSON string, representing a series of start-end pairs which define the allocatable ranges of IP addresses in the pool.

uuid (Optional)

plain

csapi:UUID

The uuid of the address pool resource.

{
    "ranges": [["1.2.3.1", "1.2.3.10"], ["1.2.3.20", "1.2.3.29"]],
    "network": "1.2.3.0",
    "prefix": "24",
    "order": "random",
    "name": "test1"
}
{
    "network": "1.2.3.0",
    "updated_at": null,
    "created_at": "2016-11-16T15:50:00.628246+00:00",
    "uuid": "dbac9f9d-2d1f-4c48-99d0-77eb9acac856",
    "id": 8,
    "ranges": [["1.2.3.1", "1.2.3.10"], ["1.2.3.20", "1.2.3.29"]],
    "prefix": 24,
    "order": "random",
    "name": "test1"
}
GET
/v1/addrpools/​{pool_id}

Shows detailed information about a specific address pool

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

pool_id

URI

csapi:UUID

The unique identifier of the address pool resource.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name (or network type) of the address pool resource.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

order (Optional)

plain

xsd:string

A string representing the IP address allocation scheme; random to allocate in random order, or sequential to allocate in sequential order.

ranges (Optional)

plain

xsd:string

A python list, formatted as a JSON string, representing a series of start-end pairs which define the allocatable ranges of IP addresses in the pool.

floating_address (Optional)

plain

xsd:string

The floating IP address of the network.

controller0_address (Optional)

plain

xsd:string

The controller-0 IP address of the network.

controller1_address (Optional)

plain

xsd:string

The controller-1 IP address of the network.

gateway_address (Optional)

plain

xsd:string

The gateway IP address of the network.

uuid (Optional)

plain

csapi:UUID

The uuid of the address pool resource.

{
    "network": "192.168.204.0",
    "updated_at": null,
    "created_at": "2016-11-09T15:13:59.652107+00:00",
    "uuid": "366e08ac-a5c8-4554-b019-0a0d2d011e6e",
    "id": 6,
    "ranges": [["192.168.204.2",
    "192.168.204.254"]],
    "prefix": 24,
    "floating_address": "192.168.204.2",
    "controller0_address": "192.168.204.3",
    "controller1_address": "192.168.204.4",
    "order": "random",
    "name": "management",
}

This operation does not accept a request body.

PATCH
/v1/addrpools/​{pool_id}

Modifies an address pool

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

pool_id

URI

csapi:UUID

The unique identifier of the address pool resource.

name (Optional)

plain

xsd:string

The name (or network type) of the address pool resource.

order (Optional)

plain

xsd:string

A string representing the IP address allocation scheme; random to allocate in random order, or sequential to allocate in sequential order.

ranges (Optional)

plain

xsd:string

A python list, formatted as a JSON string, representing a series of start-end pairs which define the allocatable ranges of IP addresses in the pool.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name (or network type) of the address pool resource.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

order (Optional)

plain

xsd:string

A string representing the IP address allocation scheme; random to allocate in random order, or sequential to allocate in sequential order.

ranges (Optional)

plain

xsd:string

A python list, formatted as a JSON string, representing a series of start-end pairs which define the allocatable ranges of IP addresses in the pool.

uuid (Optional)

plain

csapi:UUID

The uuid of the address pool resource.

[{
    "path": "/ranges",
    "value": [["192.168.57.2", "192.168.57.11"]],
    "op": "replace"
},
{
    "path": "/name",
    "value": "group0-data0v4-modified",
    "op": "replace"
}]
{
    "network": "192.168.57.0",
    "updated_at": "2016-11-16T15:40:54.855820+00:00",
    "created_at": "2016-11-09T15:13:59.652107+00:00",
    "uuid": "366e08ac-a5c8-4554-b019-0a0d2d011e6e",
    "id": 6,
    "ranges": [["192.168.57.2", "192.168.57.10"]],
    "prefix": 24,
    "order": "random",
    "name": "group0-data0v4-modified"
}
DELETE
/v1/addrpools/​{pool_id}

Deletes an address pool

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

pool_id

URI

csapi:UUID

The unique identifier of the address pool resource.

This operation does not accept a request body.

Network Address Pools

These APIs allow the display and configuration of Network to Address Pool associations.

GET
/v1/network_addresspools

Shows detailed information about all network to address pool associations

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

network_addresspools

plain

xsd:list

The list of Network Addresspool association objects.

id

plain

xsd:integer

The network to address pool association ID for this object.

uuid

plain

csapi:UUID

The universally unique identifier for this object.

address_pool_id

plain

xsd:integer

the address pool’s ID.

address_pool_uuid

plain

csapi:UUID

The address pool’s universally unique identifier.

address_pool_name

plain

xsd:string

The address pool’s name.

network_id

plain

xsd:integer

The network’s ID.

network_uuid

plain

csapi:UUID

The network’s universally unique identifier.

network_name

plain

xsd:string

The network’s name.

{
   "network_addresspools": [
      {
         "id": 1,
         "uuid": "f8208170-fe3f-44ed-8c48-662f8c48466c",
         "address_pool_id": 1,
         "address_pool_uuid": "412aebff-9a86-40b1-a379-752f00a0c3a0",
         "address_pool_name": "management-ipv6",
         "network_id": 1,
         "network_uuid": "b5650530-490c-4333-9574-d30eeb565d49",
         "network_name": "mgmt"
      },
      {
         "id": 2,
         "uuid": "55a0d2df-0ef0-4238-91a0-eff1e72ff05a",
         "address_pool_id": 2,
         "address_pool_uuid": "05fde56d-f26a-4ea4-8b32-1ebf868743e2",
         "address_pool_name": "pxeboot",
         "network_id": 2,
         "network_uuid": "bbb1bdf8-3aac-43a0-be45-992d7c777132",
         "network_name": "pxeboot"
      },
      {
         "id": 3,
         "uuid": "a1d33ee2-2ad7-41fa-90f1-a5523c2bf079",
         "address_pool_id": 3,
         "address_pool_uuid": "b46512d7-5404-4daa-a64d-fc510e0c5864",
         "address_pool_name": "oam-ipv6",
         "network_id": 3,
         "network_uuid": "99963794-8048-47b4-b769-77e21561f189",
         "network_name": "oam"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/network_addresspools/​{network_addrpool_id}

Shows detailed information about a specific network to address pool association

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

network_addrpool_id

URI

csapi:UUID

The unique identifier of an existing network to address pool association.

Response parameters

Parameter

Style

Type

Description

id

plain

xsd:integer

The network to address pool association ID for this object.

uuid

plain

csapi:UUID

The universally unique identifier for this object.

address_pool_id

plain

xsd:integer

The address pool ID.

address_pool_uuid

plain

csapi:UUID

The address pool universally unique identifier.

address_pool_name

plain

xsd:string

The address pool name.

network_id

plain

xsd:integer

The network ID.

network_uuid

plain

csapi:UUID

The network universally unique identifier.

network_name

plain

xsd:string

The network name.

{
   "id": 1,
   "uuid": "f8208170-fe3f-44ed-8c48-662f8c48466c",
   "address_pool_id": 1,
   "address_pool_uuid": "412aebff-9a86-40b1-a379-752f00a0c3a0",
   "address_pool_name": "management-ipv6",
   "network_id": 1,
   "network_uuid": "b5650530-490c-4333-9574-d30eeb565d49",
   "network_name": "mgmt",
}

This operation does not accept a request body.

POST
/v1/network_addresspools

Adds a network to address pool association

This will create an association between a network and an address pool.

Normal response codes

200

Error response codes

Conflict (409)

Request parameters

Parameter

Style

Type

Description

address_pool_uuid

plain

csapi:UUID

The universally unique identifier for the address pool.

network_uuid

plain

csapi:UUID

The universally unique identifier for the network.

Response parameters

Parameter

Style

Type

Description

id

plain

xsd:integer

The network to address pool association ID.

uuid

plain

csapi:UUID

The universally unique identifier for this object.

address_pool_id

plain

xsd:integer

the address pool’s ID.

address_pool_uuid

plain

csapi:UUID

The address pool’s universally unique identifier.

address_pool_name

plain

xsd:string

The address pool’s name.

network_id

plain

xsd:integer

The network’s ID.

network_uuid

plain

csapi:UUID

The network’s universally unique identifier.

network_name

plain

xsd:string

The network’s name.

{
   "address_pool_uuid": "4affb8fb-6b67-467a-9674-cfa6743ca5c5",
   "network_uuid": "5ffef0c2-3c4e-4946-b67d-3cecda7c1246"
}
{
   "id": 6,
   "uuid": "0f1ab4ad-3962-49f7-b20c-bca519d752b6",
   "address_pool_id": 8,
   "address_pool_uuid": "4affb8fb-6b67-467a-9674-cfa6743ca5c5",
   "address_pool_name": "admin-ipv4",
   "network_id": 8,
   "network_uuid": "5ffef0c2-3c4e-4946-b67d-3cecda7c1246",
   "network_name": "admin",
}
DELETE
/v1/network_addresspools/​{network_addrpool_id}

Removes a network to address pool association

This will remove address pool from the network.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

network_addrpool_id

URI

csapi:UUID

The unique identifier of an existing Network to address pool association.

This operation does not accept a request body.

Addresses

These APIs allow the display and configuration of IP addresses for a specific host resource.

GET
/v1/ihosts/​{host_id}​/addresses

Shows detailed information about all addresses

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

address (Optional)

plain

xsd:string

The IP address.

prefix (Optional)

plain

xsd:integer

The IP address prefix length in bits.

uuid (Optional)

plain

csapi:UUID

The uuid of the address resource.

ifname (Optional)

plain

xsd:string

The interface name to which the address is assigned.

enable_dad (Optional)

plain

xsd:boolean

Whether duplicate address detection is enabled on allocated addresses.

{
    "addresses": [{
        "forihostid": 1,
        "uuid": "268241c3-99b8-4d0a-9172-49d2ff9681bc",
        "prefix": 24,
        "address": "192.168.204.3",
        "enable_dad": false,
        "ifname": "enp0s8",
        "interface_uuid": "49e994d5-2733-4fab-8e1b-54523afdd2d9",
        "pool_uuid": "d7187d17-8715-4934-8754-4827e604a468"
    },
    {
        "forihostid": 1,
        "uuid": "1a3fb522-be74-4563-a418-6063f9fcf8a1",
        "prefix": 24,
        "address": "192.168.205.3",
        "enable_dad": false,
        "ifname": "eth0.99",
        "interface_uuid": "434df886-4709-4187-8639-ec10d0784a36",
        "pool_uuid": "7b299949-614c-4f1a-85cb-c46a09827f0c"
    },
    {
        "forihostid": 1,
        "uuid": "7040521a-6a59-49ad-a703-0fc35573d4db",
        "prefix": 24,
        "address": "192.168.59.2",
        "enable_dad": false,
        "ifname": "vlan11",
        "interface_uuid": "280baad6-7791-41a5-97f9-f8f8e0f879c5",
        "pool_uuid": null
    },
    {
        "forihostid": 1,
        "uuid": "e7169f61-9b8e-455f-bac3-936b774d4b69",
        "prefix": 64,
        "address": "fd00:0:0:b::2",
        "enable_dad": true,
        "ifname": "vlan11",
        "interface_uuid": "280baad6-7791-41a5-97f9-f8f8e0f879c5",
        "pool_uuid": null
    },
    {
        "forihostid": 1,
        "uuid": "08608f9c-d5f7-4f29-bd71-2d6feee22a6e",
        "prefix": 24,
        "address": "192.168.58.2",
        "enable_dad": false,
        "ifname": "data1",
        "interface_uuid": "6db88b94-fbaa-47a9-95f5-0633036a1a27",
        "pool_uuid": "15a1fa4e-d1c0-49f8-80d9-484640fb95a0"
    },
    {
        "forihostid": 1,
        "uuid": "53bb0f7e-1547-4635-9faf-4d9b8dad2698",
        "prefix": 64,
        "address": "fd00:0:0:2::7",
        "enable_dad": true,
        "ifname": "data1",
        "interface_uuid": "6db88b94-fbaa-47a9-95f5-0633036a1a27",
        "pool_uuid": "04ff8781-9042-4602-a19e-7ed90f0979ad"
    },
    {
        "forihostid": 1,
        "uuid": "369c552a-1da6-4181-afdb-778d3b90d4c9",
        "prefix": 24,
        "address": "192.168.57.2",
        "enable_dad": false,
        "ifname": "data0",
        "interface_uuid": "7a3331e2-88c4-4c30-a49e-67bf924661b4",
        "pool_uuid": "366e08ac-a5c8-4554-b019-0a0d2d011e6e"
    },
    {
        "forihostid": 1,
        "uuid": "af3c8e3c-57ad-4eda-ad5a-f1dbab93875b",
        "prefix": 64,
        "address": "fd00:0:0:1::2",
        "enable_dad": true,
        "ifname": "data0",
        "interface_uuid": "7a3331e2-88c4-4c30-a49e-67bf924661b4",
        "pool_uuid": "950a4587-2baf-4075-994a-98189de51acc"
    }]
}

This operation does not accept a request body.

POST
/v1/ihosts/​{host_id}​/addresses

Adds an address

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

address (Optional)

plain

xsd:string

The IP address.

prefix (Optional)

plain

xsd:integer

The IP address prefix length in bits.

Response parameters

Parameter

Style

Type

Description

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

address (Optional)

plain

xsd:string

The IP address.

prefix (Optional)

plain

xsd:integer

The IP address prefix length in bits.

uuid (Optional)

plain

csapi:UUID

The uuid of the address resource.

ifname (Optional)

plain

xsd:string

The interface name to which the address is assigned.

enable_dad (Optional)

plain

xsd:boolean

Whether duplicate address detection is enabled on allocated addresses.

{
    "prefix": "24",
    "interface_uuid": "4e49a054-3c72-43b8-8e48-1f63dcc5ff7d",
    "address": "192.168.59.3"
}
{
    "forihostid": 3,
    "uuid": "5dc26260-d825-424d-88d2-b1906022c374",
    "created_at": "2016-11-16T16:03:14.614922+00:00",
    "updated_at": null,
    "pool_uuid": null,
    "prefix": 24,
    "address": "192.168.59.3",
    "enable_dad": false,
    "ifname": "vlan11",
    "interface_uuid": "4e49a054-3c72-43b8-8e48-1f63dcc5ff7d",
    "id": 25,
    "name": null
}
GET
/v1/ihosts/​{host_id}​/addresses/​{address_id}

Shows detailed information about a specific address

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

address_id

URI

csapi:UUID

The unique identifier of an address resource.

Response parameters

Parameter

Style

Type

Description

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

address (Optional)

plain

xsd:string

The IP address.

prefix (Optional)

plain

xsd:integer

The IP address prefix length in bits.

uuid (Optional)

plain

csapi:UUID

The uuid of the address resource.

ifname (Optional)

plain

xsd:string

The interface name to which the address is assigned.

enable_dad (Optional)

plain

xsd:boolean

Whether duplicate address detection is enabled on allocated addresses.

{
    "forihostid": 1,
    "uuid": "369c552a-1da6-4181-afdb-778d3b90d4c9",
    "created_at": "2016-11-09T15:14:09.409615+00:00",
    "updated_at": null,
    "pool_uuid": "366e08ac-a5c8-4554-b019-0a0d2d011e6e",
    "prefix": 24,
    "address": "192.168.57.2",
    "enable_dad": false,
    "ifname": "data0",
    "interface_uuid": "7a3331e2-88c4-4c30-a49e-67bf924661b4",
    "id": 17,
    "name": null
}

This operation does not accept a request body.

DELETE
/v1/ihosts/​{host_id}​/addresses/​{address_id}

Deletes an address

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

address_id

URI

csapi:UUID

The unique identifier of an address resource.

This operation does not accept a request body.

Routes

These APIs allow the display and configuration of IP route for a specific host resource.

GET
/v1/ihosts/​{host_id}​/routes

Shows detailed information about all routes

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

gateway (Optional)

plain

xsd:string

The IP address of the nexthop gateway device.

metric (Optional)

plain

xsd:integer

The IP route metric/weight.

uuid (Optional)

plain

csapi:UUID

The uuid of the route resource.

ifname (Optional)

plain

xsd:string

The interface name to which the address is assigned.

{
    "routes": [{
        "forihostid": 3,
        "uuid": "dbacbb57-b3cd-4b9c-b365-0ecf5dec4d60",
        "metric": 1,
        "prefix": 0,
        "ifname": "vlan11",
        "gateway": "192.168.59.1",
        "network": "0.0.0.0"
    },
    {
        "forihostid": 3,
        "uuid": "354968fc-6f18-46dc-93a1-6118280e3cee",
        "metric": 1,
        "prefix": 0,
        "ifname": "vlan11",
        "gateway": "fd00:0:0:b::1",
        "network": "::"
    },
    {
        "forihostid": 3,
        "uuid": "014b66b2-3d57-4c3c-a305-5d417ee75125",
        "metric": 1,
        "prefix": 0,
        "ifname": "data1",
        "gateway": "192.168.58.1",
        "network": "0.0.0.0"
    },
    {
        "forihostid": 3,
        "uuid": "1ef1bc3f-813d-4947-a1a6-1ee9945010d4",
        "metric": 1,
        "prefix": 0,
        "ifname": "data1",
        "gateway": "fd00:0:0:2::1",
        "network": "::"
    },
    {
        "forihostid": 3,
        "uuid": "67255752-ad7f-496d-8d72-b42775fca330",
        "metric": 1,
        "prefix": 0,
        "ifname": "data0",
        "gateway": "192.168.57.1",
        "network": "0.0.0.0"
    },
    {
        "forihostid": 3,
        "uuid": "77c9ac25-49c4-4327-aa3c-f9e868b6a56d",
        "metric": 1,
        "prefix": 0,
        "ifname": "data0",
        "gateway": "fd00:0:0:1::1",
        "network": "::"
    }]
}

This operation does not accept a request body.

POST
/v1/ihosts/​{host_id}​/routes

Adds a route

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

gateway (Optional)

plain

xsd:string

The IP address of the nexthop gateway device.

metric (Optional)

plain

xsd:integer

The IP route metric/weight.

Response parameters

Parameter

Style

Type

Description

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

gateway (Optional)

plain

xsd:string

The IP address of the nexthop gateway device.

metric (Optional)

plain

xsd:integer

The IP route metric/weight.

uuid (Optional)

plain

csapi:UUID

The uuid of the route resource.

ifname (Optional)

plain

xsd:string

The interface name to which the address is assigned.

{
    "prefix": "0",
    "interface_uuid": "4e49a054-3c72-43b8-8e48-1f63dcc5ff7d",
    "gateway": "192.168.59.1",
    "metric": "1",
    "network": "0.0.0.0"
}
{
    "forihostid": 3,
    "network": "0.0.0.0",
    "metric": 1,
    "updated_at": null,
    "gateway": "192.168.59.1",
    "created_at": "2016-11-16T16:49:58.044211+00:00",
    "prefix": 0,
    "ifname": "vlan11",
    "interface_uuid": "4e49a054-3c72-43b8-8e48-1f63dcc5ff7d",
    "id": 14,
    "uuid": "83c1d4e1-9dd4-414b-93e9-61875bc5a180"
}
GET
/v1/ihosts/​{host_id}​/routes/​{route_id}

Shows detailed information about a specific route

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

host_id

URI

csapi:UUID

The unique identifier of a route resource.

Response parameters

Parameter

Style

Type

Description

interface_uuid (Optional)

plain

csapi:UUID

The interface uuid to which the address is assigned.

network (Optional)

plain

xsd:string

The IP address of the network.

prefix (Optional)

plain

xsd:integer

The network address prefix length in bits.

gateway (Optional)

plain

xsd:string

The IP address of the nexthop gateway device.

metric (Optional)

plain

xsd:integer

The IP route metric/weight.

uuid (Optional)

plain

csapi:UUID

The uuid of the route resource.

ifname (Optional)

plain

xsd:string

The interface name to which the address is assigned.

{
    "forihostid": 3,
    "network": "0.0.0.0",
    "metric": 1,
    "updated_at": null,
    "gateway": "192.168.57.1",
    "created_at": "2016-11-09T15:58:31.830131+00:00",
    "prefix": 0,
    "ifname": "data0",
    "interface_uuid": "da107d6c-3844-482b-aa5d-2c355f5434d3",
    "id": 11,
    "uuid": "67255752-ad7f-496d-8d72-b42775fca330"
}

This operation does not accept a request body.

DELETE
/v1/ihosts/​{host_id}​/routes/​{route_id}

Deletes a route

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

host_id

URI

csapi:UUID

The unique identifier of a route resource.

This operation does not accept a request body.

Storage Backends

These APIs allow the display and configuration of different storage backends.

GET
/v1/storage_backend

List the storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_backends": [
        {
            "task": null,
            "uuid": "9172f885-4a84-41e0-89cd-e350d7fcfeb7",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/storage_backends/9172f885-4a84-41e0-89cd-e350d7fcfeb7",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/storage_backends/9172f885-4a84-41e0-89cd-e350d7fcfeb7",
                    "rel": "bookmark"
                }
            ],
            "created_at": "2018-02-06T07:03:55.373879+00:00",
            "updated_at": "2018-02-06T07:04:04.760902+00:00",
            "capabilities": {},
            "services": "glance",
            "state": "configured",
            "isystem_uuid": "d0f2c2ff-9fc2-4ad3-869f-ef9ea6367c0e",
            "backend": "file",
            "name": "file-store"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/storage_lvm

List LVM storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_lvm": [
        {
            "backend": "lvm",
            "capabilities": {},
            "created_at": "2018-03-08T07:52:40.795489+00:00",
            "links": [
                {
                    "href": "http://192.168.144.103:6385/v1/storage_lvm/4d966cf9-c721-4d44-b9f8-7b7f98e4dc89",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.144.103:6385/storage_lvm/4d966cf9-c721-4d44-b9f8-7b7f98e4dc89",
                    "rel": "bookmark"
                }
            ],
            "name": "lvm-store",
            "services": "cinder",
            "state": "configured",
            "task": null,
            "updated_at": "2018-03-08T07:55:07.253739+00:00",
            "uuid": "4d966cf9-c721-4d44-b9f8-7b7f98e4dc89"
        }
    ]
}

This operation does not accept a request body.

POST
/v1/storage_lvm

Add a Lvm storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

backend (Optional)

plain

xsd:string

This parameter specifies the type of the backend. Valid values are (is): lvm

name (Optional)

plain

xsd:string

This parameter specifies the name of the backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "services": "cinder",
    "confirmed": true
}
{
    "confirmed": false,
    "task": null,
    "name": "lvm-store",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_lvm/5798d210-bbfc-436a-84f3-66dfd1d18aef",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_lvm/5798d210-bbfc-436a-84f3-66dfd1d18aef",
            "rel": "bookmark"
        }
    ],
    "created_at": "2018-02-07T07:47:42.841988+00:00",
    "uuid": "5798d210-bbfc-436a-84f3-66dfd1d18aef",
    "capabilities": {},
    "updated_at": null,
    "state": "configuring",
    "services": "cinder",
    "backend": "lvm"
}
GET
/v1/storage_lvm/​{storage_lvm_id}

Shows attributes of the Lvm storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_lvm_id

URI

csapi:UUID

The unique identifier of the storage backend.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "backend": "lvm",
    "capabilities": {},
    "confirmed": false,
    "created_at": "2018-03-08T07:52:40.795489+00:00",
    "links": [
        {
            "href": "http://192.168.144.103:6385/v1/storage_lvm/4d966cf9-c721-4d44-b9f8-7b7f98e4dc89",
            "rel": "self"
        },
        {
            "href": "http://192.168.144.103:6385/storage_lvm/4d966cf9-c721-4d44-b9f8-7b7f98e4dc89",
            "rel": "bookmark"
        }
    ],
    "name": "lvm-store",
    "services": "cinder",
    "state": "configured",
    "task": null,
    "updated_at": "2018-03-08T07:55:07.253739+00:00",
    "uuid": "4d966cf9-c721-4d44-b9f8-7b7f98e4dc89"
}

This operation does not accept a request body.

PATCH
/v1/storage_lvm/​{storage_lvm_id}

Modifies the Lvm storage backend

LVM backend only supports cinder service and is mandatory. Also, there is currently no modifiable parameter in the capabilities field. Any custom defined parameter will remain unused.

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_lvm_id

URI

csapi:UUID

The unique identifier of the storage backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

Response parameters

Parameter

Style

Type

Description

confirmed (Optional)

plain

xsd:boolean

Returns back parameter in request.

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "path": "/services",
        "value": "cinder,glance",
        "op": "replace"
    }
]
{
    "error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Service glance is not supported for the lvm backend\"}"
}
DELETE
/v1/storage_lvm/​{storage_lvm_id}

Deletes an LVM storage backend

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_lvm_id

URI

csapi:UUID

The unique identifier of the storage backend.

This operation does not accept a request body.

GET
/v1/storage_ceph

List Ceph storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

cinder_pool_gib (Optional)

plain

xsd:integer

The cinder volumes pool quota in GiB.

glance_pool_gib (Optional)

plain

xsd:integer

The glance image pool quota in GiB.

ephemeral_pool_gib (Optional)

plain

xsd:integer

The ephemeral pool quota in GiB.

object_pool_gib (Optional)

plain

xsd:integer

The object gateway pool quota in GiB.

ceph_total_space_gib (Optional)

plain

xsd:integer

The total ceph pool space in GiB.

object_gateway (Optional)

plain

xsd:boolean

This specifies if object gateway is configured.

tier_name (Optional)

plain

xsd:string

This specifies storage tier name this backend is using .

tier_uuid (Optional)

plain

csapi:UUID

This specifies storage tier uuid this backend is using .

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_ceph": [
        {
            "backend": "ceph",
            "capabilities": {
                "min_replication": "1",
                "replication": "2"
            },
            "ceph_total_space_gib": 0,
            "cinder_pool_gib": 27,
            "created_at": "2018-03-04T07:19:51.699172+00:00",
            "ephemeral_pool_gib": 0,
            "glance_pool_gib": 21,
            "links": [
                {
                    "href": "http://192.168.204.2:6385/v1/storage_ceph/bb6a60f6-7fe2-407d-afd0-21d8b6e2f128",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.204.2:6385/storage_ceph/bb6a60f6-7fe2-407d-afd0-21d8b6e2f128",
                    "rel": "bookmark"
                }
            ],
            "name": "ceph-store",
            "object_gateway": true,
            "object_pool_gib": 0,
            "services": "cinder,glance,swift",
            "state": "configured",
            "task": "restore",
            "tier_name": "storage",
            "tier_uuid": "dcb41fcc-307a-4d0b-b5dd-af8c6a48a3c5",
            "updated_at": "2018-03-08T06:13:02.485985+00:00",
            "uuid": "bb6a60f6-7fe2-407d-afd0-21d8b6e2f128"
        },
        {
            "backend": "ceph",
            "capabilities": {
                "min_replication": "1",
                "replication": "2"
            },
            "ceph_total_space_gib": 0,
            "cinder_pool_gib": 0,
            "created_at": "2018-03-07T18:56:22.525053+00:00",
            "ephemeral_pool_gib": null,
            "glance_pool_gib": null,
            "links": [
                {
                    "href": "http://192.168.204.2:6385/v1/storage_ceph/6320a6d5-e3d7-4e63-a02c-964b9a4460f8",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.204.2:6385/storage_ceph/6320a6d5-e3d7-4e63-a02c-964b9a4460f8",
                    "rel": "bookmark"
                }
            ],
            "name": "gold-store",
            "object_gateway": false,
            "object_pool_gib": null,
            "services": "cinder",
            "state": "configured",
            "task": null,
            "tier_name": "gold",
            "tier_uuid": "270e8fa4-8f38-4410-a54a-8e44d8f24f6f",
            "updated_at": "2018-03-07T18:56:56.221489+00:00",
            "uuid": "6320a6d5-e3d7-4e63-a02c-964b9a4460f8"
        }
    ]
}

This operation does not accept a request body.

POST
/v1/storage_ceph

Add a Ceph storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

backend (Optional)

plain

xsd:string

This parameter specifies the type of the backend. Valid values are (is): ceph

name (Optional)

plain

xsd:string

This parameter specifies the name of the backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

cinder_pool_gib (Optional)

plain

xsd:integer

The cinder volumes pool quota in GiB.

glance_pool_gib (Optional)

plain

xsd:integer

The glance image pool quota in GiB.

ephemeral_pool_gib (Optional)

plain

xsd:integer

The ephemeral pool quota in GiB.

object_pool_gib (Optional)

plain

xsd:integer

The object gateway pool quota in GiB.

ceph_total_space_gib (Optional)

plain

xsd:integer

The total ceph pool space in GiB.

object_gateway (Optional)

plain

xsd:boolean

This specifies if object gateway is configured.

tier_name (Optional)

plain

xsd:string

This specifies storage tier name this backend is using .

tier_uuid (Optional)

plain

csapi:UUID

This specifies storage tier uuid this backend is using .

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

cinder_pool_gib (Optional)

plain

xsd:integer

The cinder volumes pool quota in GiB.

glance_pool_gib (Optional)

plain

xsd:integer

The glance image pool quota in GiB.

ephemeral_pool_gib (Optional)

plain

xsd:integer

The ephemeral pool quota in GiB.

object_pool_gib (Optional)

plain

xsd:integer

The object gateway pool quota in GiB.

ceph_total_space_gib (Optional)

plain

xsd:integer

The total ceph pool space in GiB.

object_gateway (Optional)

plain

xsd:boolean

This specifies if object gateway is configured.

tier_name (Optional)

plain

xsd:string

This specifies storage tier name this backend is using .

tier_uuid (Optional)

plain

csapi:UUID

This specifies storage tier uuid this backend is using .

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "services": "cinder,glance",
    "confirmed": true
}
{
    "confirmed": false,
    "tier_uuid": null,
    "cinder_pool_gib": null,
    "uuid": "253f5801-e8bc-468d-a040-1bfa918541ac",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_ceph/253f5801-e8bc-468d-a040-1bfa918541ac",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_ceph/253f5801-e8bc-468d-a040-1bfa918541ac",
            "rel": "bookmark"
        }
    ],
    "name": "ceph-store",
    "object_pool_gib": null,
    "updated_at": null,
    "capabilities": {
        "min_replication": "1",
        "replication": "2"
    },
    "ceph_total_space_gib": 0,
    "backend": "ceph",
    "glance_pool_gib": null,
    "state": "configuring",
    "task": "applying-manifests",
    "tier_name": null,
    "services": "cinder,glance",
    "object_gateway": false,
    "created_at": "2018-02-07T08:39:00.880044+00:00",
    "ephemeral_pool_gib": null
}
GET
/v1/storage_ceph/​{storage_ceph_id}

Shows attributes of the Ceph storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_ceph_id

URI

csapi:UUID

The unique identifier of the storage backend.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

cinder_pool_gib (Optional)

plain

xsd:integer

The cinder volumes pool quota in GiB.

glance_pool_gib (Optional)

plain

xsd:integer

The glance image pool quota in GiB.

ephemeral_pool_gib (Optional)

plain

xsd:integer

The ephemeral pool quota in GiB.

object_pool_gib (Optional)

plain

xsd:integer

The object gateway pool quota in GiB.

ceph_total_space_gib (Optional)

plain

xsd:integer

The total ceph pool space in GiB.

object_gateway (Optional)

plain

xsd:boolean

This specifies if object gateway is configured.

tier_name (Optional)

plain

xsd:string

This specifies storage tier name this backend is using .

tier_uuid (Optional)

plain

csapi:UUID

This specifies storage tier uuid this backend is using .

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "backend": "ceph",
    "capabilities": {
        "min_replication": "1",
        "replication": "2"
    },
    "ceph_total_space_gib": 0,
    "cinder_pool_gib": 27,
    "created_at": "2018-03-04T07:19:51.699172+00:00",
    "ephemeral_pool_gib": 0,
    "glance_pool_gib": 21,
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/storage_ceph/bb6a60f6-7fe2-407d-afd0-21d8b6e2f128",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/storage_ceph/bb6a60f6-7fe2-407d-afd0-21d8b6e2f128",
            "rel": "bookmark"
        }
    ],
    "name": "ceph-store",
    "object_gateway": true,
    "object_pool_gib": 0,
    "services": "cinder,glance,swift",
    "state": "configured",
    "task": "restore",
    "tier_name": "storage",
    "tier_uuid": "dcb41fcc-307a-4d0b-b5dd-af8c6a48a3c5",
    "updated_at": "2018-03-08T06:13:02.485985+00:00",
    "uuid": "bb6a60f6-7fe2-407d-afd0-21d8b6e2f128"
}

This operation does not accept a request body.

PATCH
/v1/storage_ceph/​{storage_ceph_id}

Modifies the Ceph storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_ceph_id

URI

csapi:UUID

The unique identifier of the storage backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

cinder_pool_gib (Optional)

plain

xsd:integer

The cinder volumes pool quota in GiB.

glance_pool_gib (Optional)

plain

xsd:integer

The glance image pool quota in GiB.

ephemeral_pool_gib (Optional)

plain

xsd:integer

The ephemeral pool quota in GiB.

object_pool_gib (Optional)

plain

xsd:integer

The object gateway pool quota in GiB.

ceph_total_space_gib (Optional)

plain

xsd:integer

The total ceph pool space in GiB.

object_gateway (Optional)

plain

xsd:boolean

This specifies if object gateway is configured.

tier_name (Optional)

plain

xsd:string

This specifies storage tier name this backend is using .

tier_uuid (Optional)

plain

csapi:UUID

This specifies storage tier uuid this backend is using .

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

cinder_pool_gib (Optional)

plain

xsd:integer

The cinder volumes pool quota in GiB.

glance_pool_gib (Optional)

plain

xsd:integer

The glance image pool quota in GiB.

ephemeral_pool_gib (Optional)

plain

xsd:integer

The ephemeral pool quota in GiB.

object_pool_gib (Optional)

plain

xsd:integer

The object gateway pool quota in GiB.

ceph_total_space_gib (Optional)

plain

xsd:integer

The total ceph pool space in GiB.

object_gateway (Optional)

plain

xsd:boolean

This specifies if object gateway is configured.

tier_name (Optional)

plain

xsd:string

This specifies storage tier name this backend is using .

tier_uuid (Optional)

plain

csapi:UUID

This specifies storage tier uuid this backend is using .

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "path": "/capabilities",
    "value": "{\\"min_replication\\": \\"2\\"}",
    "op": "replace"
}
{
    "backend": "ceph",
    "capabilities": {
        "min_replication": "2",
        "replication": "2"
    },
    "ceph_total_space_gib": 0,
    "cinder_pool_gib": 0,
    "confirmed": false,
    "created_at": "2018-01-04T11:15:41.957698+00:00",
    "ephemeral_pool_gib": 0,
    "glance_pool_gib": 20,
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/storage_ceph/3f14980c-018f-4f6c-8bfb-82d7c665df06",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/storage_ceph/3f14980c-018f-4f6c-8bfb-82d7c665df06",
            "rel": "bookmark"
        }
    ],
    "object_gateway": false,
    "object_pool_gib": 0,
    "services": "cinder,glance",
    "state": "configured",
    "task": null,
    "updated_at": "2018-01-08T01:53:44.446623+00:00",
    "uuid": "3f14980c-018f-4f6c-8bfb-82d7c665df06"
}
DELETE
/v1/storage_ceph/​{storage_ceph_id}

Deletes a ceph storage backend

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_ceph_id

URI

csapi:UUID

The unique identifier of the storage backend.

This operation does not accept a request body.

GET
/v1/storage_ceph_external

List Ceph External storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_ceph_external": [
        {
            "task": null,
            "uuid": "ced40c30-5499-48a7-8197-3e1a90b3f402",
            "links": [
                {
                    "href": "http://192.168.204.2:6385/v1/storage_backends/ced40c30-5499-48a7-8197-3e1a90b3f402",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.204.2:6385/storage_backends/ced40c30-5499-48a7-8197-3e1a90b3f402",
                    "rel": "bookmark"
                }
            ],
            "created_at": "2018-06-27T13:30:38.557700+00:00",
            "updated_at": "2018-06-27T13:35:13.213177+00:00",
            "capabilities": {
                "cinder_pool": "cinder-volumes"
            },
            "services": "cinder",
            "state": "configured",
            "backend": "ceph-external",
            "name": "ceph-ext-bk"
        }
    ]
}

This operation does not accept a request body.

POST
/v1/storage_ceph_external

Add a Ceph External storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

backend (Optional)

plain

xsd:string

This parameter specifies the type of the backend. Valid values are (is): ceph-external

name (Optional)

plain

xsd:string

This parameter specifies the name of the backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "services": "cinder",
    "confirmed": true,
    "name": "ceph-ext-bk",
    "ceph_conf": "ext-ceph.conf",
    "capabilities": {"cinder_pool": "cinder-volumes"}
}
{
    "confirmed": false,
    "task": null,
    "name": "ceph-ext-bk",
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/storage_ceph_external/ced40c30-5499-48a7-8197-3e1a90b3f402",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/storage_ceph_external/ced40c30-5499-48a7-8197-3e1a90b3f402",
            "rel": "bookmark"
        }
    ],
    "created_at": "2018-06-27T13:30:38.557700+00:00",
    "updated_at": null,
    "uuid": "ced40c30-5499-48a7-8197-3e1a90b3f402",
    "capabilities": {
        "cinder_pool": "cinder-volumes"
    },
    "ceph_conf": null,
    "state": "configuring",
    "services": "cinder",
    "backend": "ceph-external"
}
GET
/v1/storage_ceph_external/​{storage_ceph_external_id}

Shows attributes of the Ceph External storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_ceph_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "confirmed": false,
    "task": null,
    "uuid": "ced40c30-5499-48a7-8197-3e1a90b3f402",
    "links": [
         {
             "href": "http://192.168.204.2:6385/v1/storage_ceph_external/ced40c30-5499-48a7-8197-3e1a90b3f402",
             "rel": "self"
         },
         {
             "href": "http://192.168.204.2:6385/storage_ceph_external/ced40c30-5499-48a7-8197-3e1a90b3f402",
             "rel": "bookmark"
         }
    ],
    "created_at": "2018-06-27T13:30:38.557700+00:00",
    "updated_at": "2018-06-27T13:35:13.213177+00:00",
    "capabilities": {
        "cinder_pool": "cinder-volumes"
    },
    "name": "ceph-ext-bk",
    "services": "cinder",
    "state": "configured",
    "ceph_conf": "ext-ceph.conf",
    "backend": "ceph-external"
}

This operation does not accept a request body.

PATCH
/v1/storage_ceph_external/​{storage_ceph_external_id}

Modifies the Ceph External storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_ceph_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "path": "/services",
        "value": "cinder,glance",
        "op": "replace"
    }
    {
        "path": "/capabilities",
        "value": "{\\"glance_pool\\": \\"images\\"}",
        "op": "replace"
    }
]
{
    "confirmed": false,
    "task": null,
    "uuid": "ced40c30-5499-48a7-8197-3e1a90b3f402",
    "links": [
        {
            "href": "http://192.168.204.2:6385/v1/storage_ceph_external/ced40c30-5499-48a7-8197-3e1a90b3f402",
            "rel": "self"
        },
        {
            "href": "http://192.168.204.2:6385/storage_ceph_external/ced40c30-5499-48a7-8197-3e1a90b3f402",
            "rel": "bookmark"
        }
    ],
    "created_at": "2018-06-27T13:30:38.557700+00:00",
    "updated_at": "2018-06-27T13:35:13.213177+00:00",
    "capabilities": {
        "glance_pool": "images",
        "cinder_pool": "cinder-volumes"
    },
    "name": "ceph-ext-bk",
    "services": "cinder,glance",
    "state": "configured",
    "ceph_conf": "ext-ceph.conf",
    "backend": "ceph-external"
}
DELETE
/v1/storage_ceph_external/​{storage_ceph_external_id}

Deletes a ceph External storage backend

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_ceph_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

This operation does not accept a request body.

GET
/v1/storage_file

List file storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_file": [
        {
            "backend": "file",
            "capabilities": {},
            "created_at": "2018-03-08T05:29:55.246907+00:00",
            "links": [
                {
                    "href": "http://192.168.144.2:6385/v1/storage_file/e9e734b0-8143-4835-b70a-21267f5d8ca9",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.144.2:6385/storage_file/e9e734b0-8143-4835-b70a-21267f5d8ca9",
                    "rel": "bookmark"
                }
            ],
            "name": "file-store",
            "services": "glance",
            "state": "configured",
            "task": null,
            "updated_at": "2018-03-08T05:29:59.518621+00:00",
            "uuid": "e9e734b0-8143-4835-b70a-21267f5d8ca9"
        }
    ]
}

This operation does not accept a request body.

POST
/v1/storage_file

Add a File storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

backend

plain

xsd:string

This parameter specifies the type of the backend. Valid values are (is): file

name (Optional)

plain

xsd:string

This parameter specifies the name of the backend.

services

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "name": "new-file-store",
    "services": "glance",
    "confirmed": true
}
{
    "confirmed": false,
    "task": null,
    "uuid": "c70ab134-20f3-419f-8048-66ba9fae960d",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_file/c70ab134-20f3-419f-8048-66ba9fae960d",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_file/c70ab134-20f3-419f-8048-66ba9fae960d",
            "rel": "bookmark"
        }
    ],
    "created_at": "2018-02-07T09:19:35.077198+00:00",
    "updated_at": null,
    "capabilities": {},
    "name": "new-file-store",
    "state": "configuring",
    "services": "glance",
    "backend": "file"
}
GET
/v1/storage_file/​{storage_file_id}

Shows attributes of the file storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_file_id

URI

csapi:UUID

The unique identifier of the storage backend.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "backend": "file",
    "capabilities": {},
    "confirmed": false,
    "created_at": "2018-03-08T19:12:34.419453+00:00",
    "links": [
        {
            "href": "http://192.168.144.103:6385/v1/storage_file/a9c3d775-8913-4b92-a091-3bd1b905a6a5",
            "rel": "self"
        },
        {
            "href": "http://192.168.144.103:6385/storage_file/a9c3d775-8913-4b92-a091-3bd1b905a6a5",
            "rel": "bookmark"
        }
    ],
    "name": "file-store",
    "services": "glance",
    "state": "configured",
    "task": null,
    "updated_at": "2018-03-08T19:12:34.463159+00:00",
    "uuid": "a9c3d775-8913-4b92-a091-3bd1b905a6a5"
}

This operation does not accept a request body.

PATCH
/v1/storage_file/​{storage_file_id}

Modifies the File storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_file_id

URI

csapi:UUID

The unique identifier of the storage backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "path": "/services",
        "value": "glance,cinder",
        "op": "replace"
    }
]
{
    "error_message": "{\"debuginfo\": null, \"faultcode\": \"Client\", \"faultstring\": \"Service cinder is not supported for the file backend\"}"
}
DELETE
/v1/storage_file/​{storage_file_id}

Deletes a file storage backend

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_file_id

URI

csapi:UUID

The unique identifier of the storage backend.

This operation does not accept a request body.

GET
/v1/storage_external

List external storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_external": [
        {
            "backend": "external",
            "capabilities": {},
            "created_at": "2018-03-08T07:28:59.840381+00:00",
            "links": [
                {
                    "href": "http://192.168.144.103:6385/v1/storage_external/38803ac0-aa33-431f-ae43-e09d86eb4fa5",
                    "rel": "self"
                },
                {
                    "href": "http://192.168.144.103:6385/storage_external/38803ac0-aa33-431f-ae43-e09d86eb4fa5",
                    "rel": "bookmark"
                }
            ],
            "name": "shared_services",
            "services": "glance",
            "state": "configured",
            "task": null,
            "updated_at": null,
            "uuid": "38803ac0-aa33-431f-ae43-e09d86eb4fa5"
        }
    ]
}

This operation does not accept a request body.

POST
/v1/storage_external

Add an External storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

backend (Optional)

plain

xsd:string

This parameter specifies the type of the backend. Valid values are (is): external

name (Optional)

plain

xsd:string

This parameter specifies the name of the backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "name": "new-shared-services",
    "services": "cinder",
    "confirmed": true
}
{
    "backend": "external",
    "capabilities": {},
    "confirmed": false,
    "created_at": "2018-03-08T19:12:34.419453+00:00",
    "links": [
        {
            "href": "http://192.168.144.103:6385/v1/storage_file/a9c3d775-8913-4b92-a091-3bd1b905a6a5",
            "rel": "self"
        },
        {
            "href": "http://192.168.144.103:6385/storage_file/a9c3d775-8913-4b92-a091-3bd1b905a6a5",
            "rel": "bookmark"
        }
    ],
    "name": "new-shared-services",
    "services": "glance",
    "state": "configuring",
    "task": null,
    "updated_at": null,
    "uuid": "a9c3d775-8913-4b92-a091-3bd1b905a6a5"
}
GET
/v1/storage_external/​{storage_external_id}

Shows attributes of the external storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "backend": "external",
    "capabilities": {},
    "confirmed": false,
    "created_at": "2018-03-08T07:28:59.840381+00:00",
    "links": [
        {
            "href": "http://192.168.144.103:6385/v1/storage_external/38803ac0-aa33-431f-ae43-e09d86eb4fa5",
            "rel": "self"
        },
        {
            "href": "http://192.168.144.103:6385/storage_external/38803ac0-aa33-431f-ae43-e09d86eb4fa5",
            "rel": "bookmark"
        }
    ],
    "name": "shared_services",
    "services": "glance",
    "state": "configured",
    "task": null,
    "updated_at": null,
    "uuid": "38803ac0-aa33-431f-ae43-e09d86eb4fa5"
}

This operation does not accept a request body.

PATCH
/v1/storage_external/​{storage_external_id}

Modifies the External storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed (Optional)

plain

xsd:boolean

When “false” it will run in test mode without applying any modification. This allow checking a request for validity before performing non-reversible changes. When set to “true” the modifications are immediately applied.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "path": "/services",
        "value": "glance,cinder",
        "op": "replace"
    }
]
DELETE
/v1/storage_external/​{storage_external_id}

Deletes an external storage backend

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

This operation does not accept a request body.

Storage Ceph Rook

These APIs allow the create, display, modify and delete of the storage ceph rook.

GET
/v1/storage_ceph_rook

List Ceph Rook storage backends

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the backend (to differentiate between multiple common backends).

backend (Optional)

plain

xsd:string

Represents the storage backend (file, lvm, or ceph).

state (Optional)

plain

xsd:string

The state of the backend. It can be configured, configuring-with-app.

task (Optional)

plain

xsd:string

Current task of the corresponding application.

capabilities (Optional)

plain

xsd:string

Meta data for the storage backend

services (Optional)

plain

xsd:string

The openstack services that are supported by this storage backend.

uuid (Optional)

plain

csapi:UUID

Unique UUID for this rook ceph storage backend.

links (Optional)

plain

xsd:list

A list containing a self link and associated storage backend links.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "storage_ceph_rook": [
      {
         "task": null,
         "uuid": "ced40c30-5499-48a7-8197-3e1a90b3f402",
         "links": [
               {
                  "href": "http://192.168.204.2:6385/v1/storage_ceph_rook/ced40c30-5499-48a7-8197-3e1a90b3f402",
                  "rel": "self"
               },
               {
                  "href": "http://192.168.204.2:6385/storage_ceph_rook/ced40c30-5499-48a7-8197-3e1a90b3f402",
                  "rel": "bookmark"
               }
         ],
         "created_at": "2018-06-27T13:30:38.557700+00:00",
         "updated_at": "2018-06-27T13:35:13.213177+00:00",
         "capabilities": {
               "cinder_pool": "cinder-volumes"
         },
         "services": "cinder",
         "state": "configured",
         "backend": "ceph-external",
         "name": "ceph-ext-bk"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/storage_ceph_rook/{storage_ceph_rook_uuid}

Shows attributes of the Ceph Rook storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_ceph_rook_uuid

URI

csapi:UUID

The unique identifier of the storage backend.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the backend (to differentiate between multiple common backends).

backend (Optional)

plain

xsd:string

Represents the storage backend (file, lvm, or ceph).

state (Optional)

plain

xsd:string

The state of the backend. It can be configured, configuring-with-app.

task (Optional)

plain

xsd:string

Current task of the corresponding application.

capabilities (Optional)

plain

xsd:string

Meta data for the storage backend

services (Optional)

plain

xsd:string

The openstack services that are supported by this storage backend.

uuid (Optional)

plain

csapi:UUID

Unique UUID for this rook ceph storage backend.

links (Optional)

plain

xsd:list

A list containing a self link and associated storage backend links.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
   "storage_ceph_rook": [
         {
            "task": null,
            "uuid": "ced40c30-5499-48a7-8197-3e1a90b3f402",
            "links": [
                  {
                     "href": "http://192.168.204.2:6385/v1/storage_ceph_rook/ced40c30-5499-48a7-8197-3e1a90b3f402",
                     "rel": "self"
                  },
                  {
                     "href": "http://192.168.204.2:6385/storage_ceph_rook/ced40c30-5499-48a7-8197-3e1a90b3f402",
                     "rel": "bookmark"
                  }
            ],
            "created_at": "2018-06-27T13:30:38.557700+00:00",
            "updated_at": "2018-06-27T13:35:13.213177+00:00",
            "capabilities": {
                  "cinder_pool": "cinder-volumes"
            },
            "services": "cinder",
            "state": "configured",
            "backend": "ceph-external",
            "name": "ceph-ext-bk"
        }
   ]
}

This operation does not accept a request body.

POST
/v1/storage_ceph_rook

Add a Ceph Rook storage backend

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

name(Optional)

plain

xsd:string

Name of this backend.

backend(Optional)

plain

xsd:string

The type of the storage backend.

state(Optional)

plain

xsd:string

The admin state of the storage backend.

task(Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

capabilities(Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services(Optional)

plain

xsd:string

A comma separated list of backend services.

confirmed(Optional)

plain

xsd:boolean

Represent confirmation that the backend operation should proceed

deployment (Optional)

plain

xsd:string

The deployment model for the storage backend

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

The universally unique identifier for this object.

links

plain

xsd:list

A list containing a self link and associated storage backend links.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

backend

plain

xsd:string

The type of the storage backend.

state

plain

xsd:string

The admin state of the storage backend.

name

plain

xsd:string

Name of this backend.

task

plain

xsd:string

The current task of the storage backend when in “configuring” state.

services

plain

xsd:string

A comma separated list of backend services.

capabilities

plain

xsd:string

A dictionary of storage backend capabilities.

confirmed

plain

xsd:boolean

Represent confirmation that the backend operation should proceed

deployment

plain

xsd:string

The deployment model for the storage backend

{
   "backend": "ceph-rook",
   "confirmed" : True
}
{
   "uuid": "fa7a4dae-1b4a-4715-a65e-389196d6b3ea",
   "links": [
      {
         "href": "http://192.168.204.2:6385/v1/storage_ceph_rook/fa7a4dae-1b4a-4715-a65e-389196d6b3ea",
         "rel": "self"
      },
      {
         "href": "http://192.168.204.2:6385/storage_ceph_rook/fa7a4dae-1b4a-4715-a65e-389196d6b3ea",
         "rel": "bookmark"
      }
   ],
   "created_at": "2024-08-20T18:24:51.710024+00:00",
   "updated_at": null,
   "backend": "ceph-rook",
   "state": "configuring-with-app",
   "name": "ceph-rook-store",
   "task": "uploaded",
   "services": "block,filesystem",
   "capabilities": {
      "deployment_model": "controller",
      "replication": "1",
      "min_replication": "1"
   },
   "confirmed": false,
   "deployment": null
}
PATCH
/v1/storage_ceph_external/​{storage_ceph_external_id}

Modifies the Ceph Rook storage backend

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_ceph_external_id

URI

csapi:UUID

The unique identifier of the storage backend.

services (Optional)

plain

xsd:string

The name of the storage service.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

task (Optional)

plain

xsd:string

Current task of the corresponding application.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this backend.

backend (Optional)

plain

xsd:string

The type of the storage backend.

state (Optional)

plain

xsd:string

The admin state of the storage backend.

task (Optional)

plain

xsd:string

The current task of the storage backend when in “configuring” state.

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

services (Optional)

plain

xsd:string

A comma separated list of backend services.

ceph_conf (Optional)

plain

xsd:integer

The Ceph External configuration file.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
   {
      "path": "/capabilities",
      "value": '{"replication": 3, "min_replication": 2}',
      "op": "replace"
   }
]
{
   "uuid": "5063cd1a-16ad-4686-8f9c-f4f7e21a756a",
   "links": [
      {
         "href": "http://192.168.204.2:6385/v1/storage_ceph_rook/5063cd1a-16ad-4686-8f9c-f4f7e21a756a",
         "rel": "self"
      },
      {
         "href": "http://192.168.204.2:6385/storage_ceph_rook/5063cd1a-16ad-4686-8f9c-f4f7e21a756a",
         "rel": "bookmark"
      }
   ],
   "created_at": "2024-08-20T18:27:39.502884+00:00",
   "updated_at": "2024-08-20T18:43:52.558888+00:00",
   "backend": "ceph-rook",
   "state": "configured",
   "name": "ceph-rook-store",
   "task": "applied",
   "services": "block,filesystem,object",
   "capabilities": {
      "replication": 3,
      "min_replication": 2,
      "deployment_model": "controller"
   },
   "confirmed": false,
   "deployment": null
}
DELETE
/v1/storage_ceph_rook/​{storage_ceph_rook_uuid}

Deletes a Ceph Rook storage backend

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_ceph_rook_uuid

URI

csapi:UUID

The unique identifier of the storage backend.

This operation does not accept a request body.

Storage Tiers

These APIs allow the create, display, modify and delete of the storage tiers.

GET
/v1/storage_tiers

List the storage tiers

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this storage tier.

type (Optional)

plain

xsd:string

The type of storage tier. This maps to a backend type..

status (Optional)

plain

xsd:string

The status of the storage tier: defined or in-use.

stors (Optional)

plain

xsd:list

The list of osd ids assigned to this tier.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

backend_uuid (Optional)

plain

csapi:UUID

The backend UUID which is using this tier.

cluster_uuid (Optional)

plain

csapi:UUID

The cluster UUID which this tier is associated.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "storage_tiers": [
        {
            "status": "in-use",
            "uuid": "70184946-7b3e-4833-a4f8-e46edf006e37",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/storage_tiers/70184946-7b3e-4833-a4f8-e46edf006e37",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/storage_tiers/70184946-7b3e-4833-a4f8-e46edf006e37",
                    "rel": "bookmark"
                }
            ],
            "stors": [],
            "created_at": "2018-02-07T04:34:27.078558+00:00",
            "updated_at": "2018-02-07T08:39:00.950066+00:00",
            "capabilities": {},
            "cluster_uuid": "ba42aa45-7094-4bcd-b094-2848816441a3",
            "backend_uuid": "253f5801-e8bc-468d-a040-1bfa918541ac",
            "type": "ceph",
            "name": "storage"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/storage_tiers/​{storage_tier_id}

Shows attributes of a storage tier

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

storage_tier_id

URI

csapi:UUID

The unique identifier of the storage tier resource.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this storage tier.

type (Optional)

plain

xsd:string

The type of storage tier. This maps to a backend type..

status (Optional)

plain

xsd:string

The status of the storage tier: defined or in-use.

stors (Optional)

plain

xsd:list

The list of osd ids assigned to this tier.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

backend_uuid (Optional)

plain

csapi:UUID

The backend UUID which is using this tier.

cluster_uuid (Optional)

plain

csapi:UUID

The cluster UUID which this tier is associated.

{
    "status": "in-use",
    "uuid": "70184946-7b3e-4833-a4f8-e46edf006e37",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_tiers/70184946-7b3e-4833-a4f8-e46edf006e37",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_tiers/70184946-7b3e-4833-a4f8-e46edf006e37",
            "rel": "bookmark"
        }
    ],
    "stors": [],
    "created_at": "2018-02-07T04:34:27.078558+00:00",
    "istors": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_tiers/70184946-7b3e-4833-a4f8-e46edf006e37/istors",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_tiers/70184946-7b3e-4833-a4f8-e46edf006e37/istors",
            "rel": "bookmark"
        }
    ],
    "updated_at": "2018-02-07T08:39:00.950066+00:00",
    "capabilities": {},
    "cluster_uuid": "ba42aa45-7094-4bcd-b094-2848816441a3",
    "backend_uuid": "253f5801-e8bc-468d-a040-1bfa918541ac",
    "type": "ceph",
    "name": "storage"
}

This operation does not accept a request body.

POST
/v1/storage_tiers

Add a storage tier

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

name

plain

xsd:string

This parameter specifies the unique name of the storage tier.

type (Optional)

plain

xsd:string

The type of storage tier. This corresponds to the backend type that will be attached to the tier. Currently only a tier type of ceph is supported.

backend_uuid (Optional)

plain

csapi:UUID

The UUID of the backend that is attached to this tier. The backend is attached to enable service(s) to use the storage tier resources.

cluster_uuid

plain

csapi:UUID

For tier type of ceph, this provides the cluster_uuid that this tier is associated.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this storage tier.

type (Optional)

plain

xsd:string

The type of storage tier. This maps to a backend type..

status (Optional)

plain

xsd:string

The status of the storage tier: defined or in-use.

stors (Optional)

plain

xsd:list

The list of osd ids assigned to this tier.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

backend_uuid (Optional)

plain

csapi:UUID

The backend UUID which is using this tier.

cluster_uuid (Optional)

plain

csapi:UUID

The cluster UUID which this tier is associated.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "name": "new-tier",
    "type": "ceph",
    "cluster_uuid": "ba42aa45-7094-4bcd-b094-2848816441a3"
}
{
    "status": "defined",
    "uuid": "5ff4a489-dcbc-4fd2-a04a-1a95f4a45780",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780",
            "rel": "bookmark"
        }
    ],
    "stors": [],
    "created_at": "2018-02-07T09:27:24.482961+00:00",
    "istors": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780/istors",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780/istors",
            "rel": "bookmark"
        }
    ],
    "updated_at": null,
    "capabilities": {},
    "cluster_uuid": "ba42aa45-7094-4bcd-b094-2848816441a3",
    "backend_uuid": null,
    "type": "ceph",
    "forclusterid": 1,
    "name": "new-tier"
}
PATCH
/v1/storage_tiers/​{storage_tier_id}

Modifies the storage tier

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

storage_tier_id

URI

csapi:UUID

The unique identifier of the storage tier resource.

type (Optional)

plain

xsd:string

The type of storage tier. This corresponds to the backend type that will be attached to the tier. Currently only a tier type of ceph is supported.

backend_uuid (Optional)

plain

csapi:UUID

The UUID of the backend that is attached to this tier. The backend is attached to enable service(s) to use the storage tier resources.

cluster_uuid (Optional)

plain

csapi:UUID

For tier type of ceph, this provides the cluster_uuid that this tier is associated.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

Name of this storage tier.

type (Optional)

plain

xsd:string

The type of storage tier. This maps to a backend type..

status (Optional)

plain

xsd:string

The status of the storage tier: defined or in-use.

stors (Optional)

plain

xsd:list

The list of osd ids assigned to this tier.

capabilities (Optional)

plain

xsd:string

A dictionary of storage backend capabilities.

backend_uuid (Optional)

plain

csapi:UUID

The backend UUID which is using this tier.

cluster_uuid (Optional)

plain

csapi:UUID

The cluster UUID which this tier is associated.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "path": "/name",
        "value": "really-new-tier",
        "op": "replace"
    }
]
{
    "status": "defined",
    "uuid": "5ff4a489-dcbc-4fd2-a04a-1a95f4a45780",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780",
            "rel": "bookmark"
        }
    ],
    "stors": [],
    "created_at": "2018-02-07T09:27:24.482961+00:00",
    "istors": [
        {
            "href": "http://10.10.10.2:6385/v1/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780/istors",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/storage_tiers/5ff4a489-dcbc-4fd2-a04a-1a95f4a45780/istors",
            "rel": "bookmark"
        }
    ],
    "updated_at": null,
    "capabilities": {},
    "cluster_uuid": "ba42aa45-7094-4bcd-b094-2848816441a3",
    "backend_uuid": null,
    "type": "ceph",
    "forclusterid": 1,
    "name": "really-new-tier"
}
DELETE
/v1/storage_tiers/​{storage_tier_id}

Deletes a storage tier

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

storage_tier_id

URI

csapi:UUID

The unique identifier of the storage tier resource.

This operation does not accept a request body.

Host Filesystem

These APIs allow the display and configuration of the host filesystems.

GET
/v1/ihosts/​{host_id}​/host_fs

Lists all filesystems of a host

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

logical_volume (Optional)

plain

xsd:string

The logical volume of the filesystem.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the filesystem.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "host_fs": [
        {
            "name": "backup"
            "logical_volume": "backup-lv",
            "size": "90"
            "uuid": "039de9ef-b1db-4c31-9072-add0f888b8b9",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/host_fs/039de9ef-b1db-4c31-9072-add0f888b8b9",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/host_fs/039de9ef-b1db-4c31-9072-add0f888b8b9",
                    "rel": "bookmark"
                }
            ],
            "created_at": "2015-03-11T02:46:55.730611+00:00",
            "updated_at": "2015-03-11T02:50:57.361006+00:00",
            "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
        }
        {
            "name": "scratch"
            "logical_volume": "scratch-lv",
            "size": "8"
            "uuid": "a12de715-0037-4083-b652-121d3908bc6c",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/host_fs/a12de715-0037-4083-b652-121d3908bc6c",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/host_fs/a12de715-0037-4083-b652-121d3908bc6c",
                    "rel": "bookmark"
                }
            ],
            "created_at": "2015-03-11T02:46:55.730611+00:00",
            "updated_at": "2015-03-11T02:50:57.361006+00:00",
            "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
        }
        {
            "name": "docker"
            "logical_volume": "docker-lv",
            "size": "30"
            "uuid": "320dc274-1e35-4700-bfaa-cee2f2d44888",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/host_fs/320dc274-1e35-4700-bfaa-cee2f2d44888",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/host_fs/320dc274-1e35-4700-bfaa-cee2f2d44888",
                    "rel": "bookmark"
                }
            ],
            "created_at": "2015-03-11T02:46:55.730611+00:00",
            "updated_at": "2015-03-11T02:50:57.361006+00:00",
            "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
        }
        {
            "name": "kubelet"
            "logical_volume": "kubelet-lv",
            "size": "10"
            "uuid": "321ac374-1e35-4700-bfaa-cee2f2d44888",
            "links": [
                {
                    "href": "http://10.10.10.2:6385/v1/host_fs/321ac374-1e35-4700-bfaa-cee2f2d44888",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.10.2:6385/host_fs/321ac374-1e35-4700-bfaa-cee2f2d44888",
                    "rel": "bookmark"
                }
            ],
            "created_at": "2015-03-11T02:46:55.730611+00:00",
            "updated_at": "2015-03-11T02:50:57.361006+00:00",
            "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
        }
    ]
}

This operation does not accept a request body.

GET
/v1/host_fs/​{host_fs_id}

Show detailed information about a host filesystem

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

host_fs_id

URI

csapi:UUID

The unique identifier of an existing host filesystem.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

logical_volume (Optional)

plain

xsd:string

The logical volume of the filesystem.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

ihost_uuid (Optional)

plain

csapi:UUID

The UUID of the host containing the port.

{
    "name": "backup",
    "logical_volume": "backup-lv",
    "size": 94,
    "uuid": "139de9ef-b1db-4c31-9072-add0f888b8b9",
    "links": [
        {
            "href": "http://10.10.10.2:6385/v1/host_fs/139de9ef-b1db-4c31-9072-add0f888b8b9",
            "rel": "self"
        },
        {
            "href": "http://10.10.10.2:6385/host_fs/139de9ef-b1db-4c31-9072-add0f888b8b9",
            "rel": "bookmark"
        }
    ],
    "created_at": "2015-03-11T02:46:55.730611+00:00",
    "updated_at": "2015-03-11T02:50:57.361006+00:00",
    "ihost_uuid": "1ef159f8-0192-4879-a08e-f60328486e34",
}

This operation does not accept a request body.

PUT
/v1/ihosts/​{host_id}​/host_fs/​update_many

Modifies specific host filesystem(s)

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

host_id

URI

csapi:UUID

The unique identifier of an existing host.

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

[
  [{
     "path": "/name",
     "value": "scratch",
     "op": "replace"},
   {
     "path": "/size",
     "value": "10",
     "op": "replace"}],
  [{
     "path": "/name",
     "value": "backup",
     "op": "replace"},
   {
     "path": "/size",
     "value": "100",
     "op": "replace"}]
]

Controller Filesystem

These APIs allow the display and configuration of the controller filesystem.

GET
/v1/controller_fs

List the Controller filesystems

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

logical_volume (Optional)

plain

xsd:string

The logical volume of the filesystem.

replicated (Optional)

plain

xsd:boolean

Specifies if the filesystem is drbd replicated.

state (Optional)

plain

xsd:integer

The state of the filesystem; None, availabe or drbd_fs_resizing_in_progress

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{"controller_fs":
[
   {
      "logical_volume": "backup-lv",
      "uuid": "3ce46550-4703-4161-b654-5573045546b3",
      "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/3ce46550-4703-4161-b654-5573045546b3", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/3ce46550-4703-4161-b654-5573045546b3", "rel": "bookmark"}],
      "created_at": "2017-09-14T17:54:15.853307+00:00",
      "updated_at": "2017-09-15T15:18:38.006260+00:00",
      "name": "backup",
      "state": "available",
      "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
      "replicated": false, "size": 92
   },
   {
      "logical_volume": "platform-lv",
      "uuid": "d30cc018-9218-403e-a1c2-9a5691a8bffb",
      "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/d30cc018-9218-403e-a1c2-9a5691a8bffb", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/d30cc018-9218-403e-a1c2-9a5691a8bffb", "rel": "bookmark"}],
      "created_at": "2017-09-14T17:54:15.896408+00:00",
      "updated_at": "2017-09-14T20:59:53.114344+00:00",
      "name": "platform",
      "state": "available",
      "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
      "replicated": true,
      "size": 36},
   {
      "logical_volume": "pgsql-lv",
      "uuid": "d5fd96f5-05c2-4d4c-b2b7-a46d7b0eb6e7",
      "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/d5fd96f5-05c2-4d4c-b2b7-a46d7b0eb6e7", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/d5fd96f5-05c2-4d4c-b2b7-a46d7b0eb6e7", "rel": "bookmark"}],
      "created_at": "2017-09-14T17:54:15.955574+00:00",
      "updated_at": "2017-09-14T20:50:53.032463+00:00",
      "name": "database",
      "state": "available",
      "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
      "replicated": true,
      "size": 30},
   {
      "logical_volume": "scratch-lv",
      "uuid": "a12de715-0037-4083-b652-121d3908bc6c",
      "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/a12de715-0037-4083-b652-121d3908bc6c", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/a12de715-0037-4083-b652-121d3908bc6c", "rel": "bookmark"}],
      "created_at": "2017-09-14T17:54:16.012491+00:00",
      "updated_at": "2017-09-14T18:35:51.859954+00:00",
      "name": "scratch",
      "state": "available",
      "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
      "replicated": false,
      "size": 8},
   {
      "logical_volume": "img-conversions-lv",
      "uuid": "f7bae4fe-3cd1-4335-8664-a149579b2b47",
      "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/f7bae4fe-3cd1-4335-8664-a149579b2b47", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/f7bae4fe-3cd1-4335-8664-a149579b2b47", "rel": "bookmark"}],
      "created_at": "2017-09-14T17:54:16.050789+00:00",
      "updated_at": "2017-09-14T18:35:51.876670+00:00",
      "name": "img-conversions",
      "state": "available",
      "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
      "replicated": false, "size": 20
   },
   {
      "logical_volume": "extension-lv",
      "uuid": "320dc274-1e35-4700-bfaa-cee2f2d448c5",
      "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/320dc274-1e35-4700-bfaa-cee2f2d448c5", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/320dc274-1e35-4700-bfaa-cee2f2d448c5", "rel": "bookmark"}],
      "created_at": "2017-09-14T17:54:16.090570+00:00",
      "updated_at": "2017-09-14T18:35:51.893766+00:00",
      "name": "extension",
      "state": "available",
      "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
      "replicated": true,
      "size": 1
   }
]
}

This operation does not accept a request body.

PATCH
/v1/controller_fs/​{controller_fs_id}

Modifies a Controller filesystem

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

controller_fs_id

URI

csapi:UUID

The unique identifier of the controller filesystem.

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

logical_volume (Optional)

plain

xsd:string

The logical volume of the filesystem.

replicated (Optional)

plain

xsd:boolean

Specifies if the filesystem is drbd replicated.

state (Optional)

plain

xsd:integer

The state of the filesystem; None, availabe or drbd_fs_resizing_in_progress

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

[
    {
        "path": "/name",
        "value": "backup",
        "op": "replace"},
    {
        "path": "/size",
        "value": "94",
        "op": "replace"
    }
]
{
    "logical_volume": "backup-lv",
    "uuid": "3ce46550-4703-4161-b654-5573045546b3",
    "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/3ce46550-4703-4161-b654-5573045546b3", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/3ce46550-4703-4161-b654-5573045546b3", "rel": "bookmark"}],
    "created_at": "2017-09-14T17:54:15.853307+00:00",
    "updated_at": "2017-09-15T15:18:38.006260+00:00",
    "name": "backup",
    "state": "available",
    "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
    "replicated": false,
    "forisystemid": 1,
    "size": 94
}
PUT
/v1/isystems/​{system_uuid}​/controller_fs/update_many

Modifies Controller Filesystem(s)

Normal response codes

200

Error response codes

badMediaType (415)

Request parameters

Parameter

Style

Type

Description

system_uuid

URI

csapi:UUID

The unique identifier of the system.

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

[
  [{
     "path": "/name",
     "value": "extension",
     "op": "replace"},
   {
     "path": "/size",
     "value": "2",
     "op": "replace"}],
  [{
     "path": "/name",
     "value": "backup",
     "op": "replace"},
   {
     "path": "/size",
     "value": "6",
     "op": "replace"}]
]
GET
/v1/controller_fs/​{controller_fs_id}

Shows attributes of a Controller filesystem

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

controller_fs_id

URI

csapi:UUID

The unique identifier of the controller filesystem.

Response parameters

Parameter

Style

Type

Description

name (Optional)

plain

xsd:string

The name of the filesystem.

size (Optional)

plain

xsd:integer

The size of the filesystem in GiB.

logical_volume (Optional)

plain

xsd:string

The logical volume of the filesystem.

replicated (Optional)

plain

xsd:boolean

Specifies if the filesystem is drbd replicated.

state (Optional)

plain

xsd:integer

The state of the filesystem; None, availabe or drbd_fs_resizing_in_progress

isystem_uuid (Optional)

plain

csapi:UUID

The System UUID which the storage backend belongs to.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "controller_fs":
    [
        {
            "logical_volume": "platform-lv",
            "uuid": "d30cc018-9218-403e-a1c2-9a5691a8bffb",
            "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/d30cc018-9218-403e-a1c2-9a5691a8bffb", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/d30cc018-9218-403e-a1c2-9a5691a8bffb", "rel": "bookmark"}],
            "created_at": "2017-09-14T17:54:15.896408+00:00",
            "updated_at": "2017-09-14T20:59:53.114344+00:00",
            "name": "platform",
            "state": "available",
            "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
            "replicated": true,
            "size": 36
        },
        {
            "logical_volume": "pgsql-lv",
            "uuid": "d5fd96f5-05c2-4d4c-b2b7-a46d7b0eb6e7",
            "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/d5fd96f5-05c2-4d4c-b2b7-a46d7b0eb6e7", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/d5fd96f5-05c2-4d4c-b2b7-a46d7b0eb6e7", "rel": "bookmark"}],
            "created_at": "2017-09-14T17:54:15.955574+00:00",
            "updated_at": "2017-09-14T20:50:53.032463+00:00",
            "name": "database",
            "state": "available",
            "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
            "replicated": true,
            "size": 30
        },
        {
            "logical_volume": "img-conversions-lv",
            "uuid": "f7bae4fe-3cd1-4335-8664-a149579b2b47",
            "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/f7bae4fe-3cd1-4335-8664-a149579b2b47", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/f7bae4fe-3cd1-4335-8664-a149579b2b47", "rel": "bookmark"}],
            "created_at": "2017-09-14T17:54:16.050789+00:00",
            "updated_at": "2017-09-14T18:35:51.876670+00:00",
            "name": "img-conversions",
            "state": "available",
            "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
            "replicated": false, "size": 20},
        {
            "logical_volume": "extension-lv",
            "uuid": "320dc274-1e35-4700-bfaa-cee2f2d448c5",
            "links": [{"href": "http://127.168.204.2:6385/v1/controller_fs/320dc274-1e35-4700-bfaa-cee2f2d448c5", "rel": "self"}, {"href": "http://127.168.204.2:6385/controller_fs/320dc274-1e35-4700-bfaa-cee2f2d448c5", "rel": "bookmark"}],
            "created_at": "2017-09-14T17:54:16.090570+00:00",
            "updated_at": "2017-09-14T18:35:51.893766+00:00",
            "name": "extension",
            "state": "available",
            "isystem_uuid": "a5b7f26c-423f-41ed-a660-cd8cff4627eb",
            "replicated": true,
            "size": 1}
    ]
}

This operation does not accept a request body.

Ceph Monitors

These APIs allow the display and configuration of the Ceph monitors.

GET
/v1/ceph_mon

List Ceph monitors

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

device_path (Optional)

plain

xsd:string

[Deprecated] The disk device path on the host that cgts-vg will be extended to create ceph-mon-lv.

hostname (Optional)

plain

xsd:string

The name of host this ceph mon belongs to.

state (Optional)

plain

xsd:string

The admin state of the Ceph monitor backend.

task (Optional)

plain

xsd:string

The current task of the Ceph monitor when in “configuring” state.

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "ceph_mon": [
        {
            "created_at": "2016-12-08T17:48:06.623435+00:00",
            "device_path": null,
            "hostname": "controller-0",
            "state": "configured",
            "task": null,
            "links": [
                {
                    "href": "http://10.10.20.2:6385/v1/ceph_mon/9608cc7f-ace6-4fc7-8eb8-01cfebf6906e",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.20.2:6385/ceph_mon/9608cc7f-ace6-4fc7-8eb8-01cfebf6906e",
                    "rel": "bookmark"
                }
            ],
            "updated_at": null,
            "uuid": "9608cc7f-ace6-4fc7-8eb8-01cfebf6906e"
        },
        {
            "created_at": "2016-12-08T19:02:02.359114+00:00",
            "device_path": null,
            "hostname": "controller-1",
            "state": "configured",
            "task": null,
            "links": [
                {
                    "href": "http://10.10.20.2:6385/v1/ceph_mon/9c1d1dce-40aa-4c58-bdf2-9715ec870944",
                    "rel": "self"
                },
                {
                    "href": "http://10.10.20.2:6385/ceph_mon/9c1d1dce-40aa-4c58-bdf2-9715ec870944",
                    "rel": "bookmark"
                }
            ],
            "updated_at": null,
            "uuid": "9c1d1dce-40aa-4c58-bdf2-9715ec870944"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/ceph_mon/​{ceph_mon_id}

Shows attributes of a Ceph monitor

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ceph_mon_id

URI

csapi:UUID

The unique identifier of Ceph monitor.

Response parameters

Parameter

Style

Type

Description

device_path (Optional)

plain

xsd:string

[Deprecated] The disk device path on the host that cgts-vg will be extended to create ceph-mon-lv.

hostname (Optional)

plain

xsd:string

The name of host this ceph mon belongs to.

state (Optional)

plain

xsd:string

The admin state of the Ceph monitor backend.

task (Optional)

plain

xsd:string

The current task of the Ceph monitor when in “configuring” state.

uuid (Optional)

plain

csapi:UUID

The UUID of this ceph monitor.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "created_at": "2016-12-08T17:48:06.623435+00:00",
    "device_path": null,
    "hostname": "controller-0",
    "state": "configured",
    "task": null,
    "links": [
        {
            "href": "http://10.10.20.2:6385/v1/ceph_mon/9608cc7f-ace6-4fc7-8eb8-01cfebf6906e",
            "rel": "self"
        },
        {
            "href": "http://10.10.20.2:6385/ceph_mon/9608cc7f-ace6-4fc7-8eb8-01cfebf6906e",
            "rel": "bookmark"
        }
    ],
    "updated_at": null,
    "uuid": "9608cc7f-ace6-4fc7-8eb8-01cfebf6906e"
}
DELETE
/v1/ceph_mon/​{host_uuid}

Deletes a specific ceph monitor

Delete a ceph monitor.

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

host_uuid

URI

csapi:UUID

The host UUID that the Ceph monitor belongs to.

This operation does not accept a request body.

System Certificate Configuration

These APIs allow for the display and configuration of Host certificates which include SSL, Docker Registry, Openstack and Trusted Platform Module(TPM) certificates.

POST
/v1/certificate/certificate_install

Install System Certificate

Accepts a PEM file containing the X509 certificates.

For security reasons, the original certificate, containing the private key, will be removed, once the private key is processed.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), badMediaType (415)

Request parameters

Parameter

Style

Type

Description

Content-Type multipart/form-data

plain

xsd:string

The content of a file. e.g. if using curl, this would be specified as: curl -F name=@full_path_of_filename <div class=”example”><pre>file=@/home/sysadmin/server-with-key.pem </pre></div>

passphrase (Optional)

plain

xsd:string

The passphrase for the PEM file.

mode (Optional)

plain

xsd:string

This parameter specifies the type of System certificate. Possible values are: <emphasis xmlns=”http://docbook.org/ns/docbook”>ssl, tpm_mode, docker_registry, openstack, openstack_ca</emphasis>. Default: <emphasis xmlns=”http://docbook.org/ns/docbook”>ssl</emphasis>

GET
/v1/certificate

List installed System Certificates

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

This operation does not accept a request body.

GET
/v1/certificate/​{uuid}

Shows attributes of the Certificate configuration, including additional details if available for that certificate mode

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

uuid

URI

csapi:UUID

The unique identifier of the Certificate configuration.

Response parameters

Parameter

Style

Type

Description

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

{
    "uuid": "ada8f12c-0ab2-49b7-bad9-946e34cedd69",
    "certtype": "tpm_mode",
    "expiry_date": "2018-03-27T18:15:23+00:00",
    "signature": "ssl_14615813356245445293",
    "start_date": "2017-03-27T18:15:23+00:00",
    "issuer": null,
    "details": {
        "state" : {
            "controller-0": "tpm-config-applied",
            "controller-1": "tpm-config-applied"
        }
    }
}

This operation does not accept a request body.

DELETE
/v1/certificate/​{uuid}

Deletes a CA certificate

Normal response codes

200

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

uuid

URI

csapi:UUID

The unique identifier of the CA Certificate.

Response parameters

Parameter

Style

Type

Description

uuid (Optional)

plain

csapi:UUID

The universally unique identifier for this object.

certtype (Optional)

plain

xsd:string

The type of the certificate.

signature (Optional)

plain

xsd:string

The signature of the certificate.

details (Optional)

plain

xsd:string

A dictionary of the certificate details.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

created_at (Optional)

plain

xsd:dateTime

The time when the object was created.

updated_at (Optional)

plain

xsd:dateTime

The time when the object was last updated.

start_date (Optional)

plain

xsd:dateTime

The time when the certificate becomes valid.

expiry_date (Optional)

plain

xsd:dateTime

The time when the certificate expires.

{
    "uuid": "32e8053a-04de-468c-a3c3-6bf55be4d0e6",
    "certtype": "ssl_ca",
    "expiry_date": "2022-12-14T15:08:25+00:00",
    "details": null,
    "signature": "ssl_ca_9552807080826043442",
    "start_date":"2020-02-24T15:08:25+00:00",
    "issuer": null
}

This operation does not accept a request body.

POST
/v1/certificate/certificate_renew

Renew System Certificate

Accepts a JSON data structure for renewing a specified certificate.

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), badMediaType (415)

Request parameters

Parameter

Style

Type

Description

Content-Type multipart/form-data

JSON

xsd:string

{‘certtype’:’’, ‘root_ca_crt’: ‘’, ‘sc_ca_cert’: ‘’, ‘sc_ca_key’:’’}. certtype: type of certificate to renew, options are admin-endpoint-cert or intermediate-ca-cert. ‘root_ca_crt’, required if certtype is intermediate-ca-cert, base64 endcoded root CA certificate. sc_ca_cert: required if certtype is intermediate-ca-cert, base64 endcoded subcloud intermediate CA certificate. sc_ca_key required if certtype is intermediate-ca-cert, base64 endcoded private key of subcloud intermediate CA.

Response parameters

Parameter

Style

Type

Description

response

JSON

xsd:string

A json object to return the result of the operation. {‘result’: ‘<operation result>’}

{
   "result": "OK"
}
GET
/v1/certificate/get_all_certs

List all Platform Certificates

Normal response codes

200

Request parameters

Parameter

Style

Type

Description

soon_to_expiry

plain

xsd:string

The number of days before the certificate’s expiry date

expired

plain

xsd:string

True to return all expired certificates, False to return all certificates

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

Residual Time

plain

xsd:string

The residual time of the certificate

Version

plain

xsd:string

The algo version for this certificate

Serial Number

plain

xsd:string

The serial number of the certificate

Issuer

plain

xsd:string

The issuer of the certificate

Validity

plain

xsd:dictionary

The validity of the certificate

Subject

plain

xsd:string

The subject of the certificate

Subject Public Key Info

plain

xsd:dictionary

The subject public key info

X509v3 extensions

plain

xsd:dictionary

The X509v3 extensions

Signature Algorithm

plain

xsd:string

The signature algorithm.

Signature

plain

xsd:string

The signature

File Path

plain

xsd:string

The certificate file path

Namespace

plain

xsd:string

The namespace of the k8s certificate’s secret

Secret

plain

xsd:string

The secret name of the k8s certificate

{
   "system-openldap-local-certificate":{
      "Residual Time":"83d",
      "Version":"v3",
      "Serial Number":"0x1cc16feb95a4aa296d3818dccb5fbe7e",
      "Issuer":"CN=starlingx",
      "Validity":{
         "Not Before":"August 28 15:04:52 2024",
         "Not After":"November 26 15:04:52 2024"
      },
      "Subject":"CN=system-openldap,O=starlingx,L=593173ae568a4c97878b404e8589b034",
      "Subject Public Key Info":{
         "key_size":"(2048 bit)"
      },
      "X509v3 extensions":{
         "X509v3 Key Usage":{
            "values":"Digital Signature, Key Encipherment",
            "critical":true
         },
         "X509v3 Basic Constraints":{
            "CA":false,
            "critical":true
         },
         "X509v3 Authority Key Identifier":{
            "keyid":"0fc82f4901c7fcae3d188bc9f363d5b9602b1024"
         },
         "X509v3 Subject Alternative Name":{
            "DNS":[
               "593173ae568a4c97878b404e8589b034.starlingx.local",
               "controller",
               "controller-0",
               "controller-1"
            ],
            "IP Address":[
               "192.168.0.2",
               "192.168.0.3",
               "192.168.0.4"
            ]
         }
      },
      "Signature Algorithm":"sha256WithRSAEncryption",
      "Signature":"0a17ef4e8eff610a7ddfbff1088561a8f6e7dcf8813076cdca50890c1b13138441e9801b1c4f2be6d",
      "File Path":"/etc/ldap/certs/openldap-cert.crt",
      "Renewal":"Automatic",
      "Namespace":"deployment",
      "Secret":"system-openldap-local-certificate"
   },
   "etcd-ca":{
      "Residual Time":"3643d",
      "Version":"v3",
      "Serial Number":"0x7315491e28aaff4586ce9ad0e5ff2974812837c4",
      "Issuer":"CN=etcd",
      "Validity":{
         "Not Before":"August 28 14:48:05 2024",
         "Not After":"August 26 14:48:05 2034"
      },
      "Subject":"CN=etcd",
      "Subject Public Key Info":{
         "key_size":"(4096 bit)"
      },
      "X509v3 extensions":{
         "X509v3 Subject Alternative Name":{
            "DNS":[
               "etcd"
            ]
         },
         "X509v3 Key Usage":{
            "values":"Digital Signature, Key Encipherment"
         },
         "X509v3 Basic Constraints":{
            "CA":true,
            "critical":true
         }
      },
      "Signature Algorithm":"sha256WithRSAEncryption",
      "Signature":"a1e8ca24dd4123bf20d97f0b77ede6a7f4a95fc4fd3a2810c263faefeb0fd8f36618223c555eeb84",
      "File Path":"/etc/etcd/ca.crt",
      "Renewal":"Manual"
   }
}

This operation does not accept a request body.

GET
/v1/certificate/get_all_k8s_certs

List all K8s tls/Opaque type Certificates

Normal response codes

200

Request parameters

Parameter

Style

Type

Description

soon_to_expiry

plain

xsd:string

The number of days before the certificate’s expiry date

expired

plain

xsd:string

True to return all expired certificates, False to return all certificates

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

Residual Time

plain

xsd:string

The residual time of the certificate

Version

plain

xsd:string

The algo version for this certificate

Serial Number

plain

xsd:string

The serial number of the certificate

Issuer

plain

xsd:string

The issuer of the certificate

Validity

plain

xsd:dictionary

The validity of the certificate

Subject

plain

xsd:string

The subject of the certificate

Subject Public Key Info

plain

xsd:dictionary

The subject public key info

X509v3 extensions

plain

xsd:dictionary

The X509v3 extensions

Signature Algorithm

plain

xsd:string

The signature algorithm.

Signature

plain

xsd:string

The signature

File Path

plain

xsd:string

The certificate file path

Namespace

plain

xsd:string

The namespace of the k8s certificate’s secret

Secret

plain

xsd:string

The secret name of the k8s certificate

Secret Type

plain

xsd:string

The type of secret

{
   "system-local-ca":{
      "Residual Time":"3643d",
      "Version":"v3",
      "Serial Number":"0x5f94e3238ee0dfe096e63346cd3c3bc97aa9d950",
      "Issuer":"CN=starlingx",
      "Validity":{
         "Not Before":"August 28 14:56:48 2024",
         "Not After":"August 26 14:56:48 2034"
      },
      "Subject":"CN=starlingx",
      "Subject Public Key Info":{
         "key_size":"(4096 bit)"
      },
      "X509v3 extensions":{
         "X509v3 Subject Alternative Name":{
            "DNS":[
               "starlingx"
            ]
         },
         "X509v3 Key Usage":{
            "values":"Digital Signature, Key Encipherment"
         },
         "X509v3 Basic Constraints":{
            "CA":true,
            "critical":true
         }
      },
      "Signature Algorithm":"sha256WithRSAEncryption",
      "Signature":"6c1b2b8a676f48a893b0bc1c9128a2e9ab187977d84c0baefbf1941ab03e6610e11f7",
      "Namespace":"cert-manager",
      "Secret":"system-local-ca",
      "Renewal":"Manual",
      "Secret Type":"kubernetes.io/tls"
   },
   "system-openldap-local-certificate":{
      "Residual Time":"83d",
      "Version":"v3",
      "Serial Number":"0x1cc16feb95a4aa296d3818dccb5fbe7e",
      "Issuer":"CN=starlingx",
      "Validity":{
         "Not Before":"August 28 15:04:52 2024",
         "Not After":"November 26 15:04:52 2024"
      },
      "Subject":"CN=system-openldap,O=starlingx,L=593173ae568a4c97878b404e8589b034",
      "Subject Public Key Info":{
         "key_size":"(2048 bit)"
      },
      "X509v3 extensions":{
         "X509v3 Key Usage":{
            "values":"Digital Signature, Key Encipherment",
            "critical":true
         },
         "X509v3 Basic Constraints":{
            "CA":false,
            "critical":true
         },
         "X509v3 Authority Key Identifier":{
            "keyid":"0fc82f4901c7fcae3d188bc9f363d5b9602b1024"
         },
         "X509v3 Subject Alternative Name":{
            "DNS":[
               "593173ae568a4c97878b404e8589b034.starlingx.local",
               "controller",
               "controller-0",
               "controller-1"
            ],
            "IP Address":[
               "192.168.0.2",
               "192.168.0.3",
               "192.168.0.4"
            ]
         }
      },
      "Signature Algorithm":"sha256WithRSAEncryption",
      "Signature":"0a17ef4e8eff610a7ddfbff1088561a8f6e7dcf8813076cdca50890c1b13138441e",
      "Namespace":"deployment",
      "Secret":"system-openldap-local-certificate",
      "Renewal":"Automatic",
      "Secret Type":"kubernetes.io/tls"
   }
}

This operation does not accept a request body.

Docker Registry

These APIs allow the display and delete of images in the local Docker registry

GET
/v1/registry_image

List images in the local Docker registry

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

registry_images (Optional)

plain

xsd:list

The list of images in the local Docker registry.

tag (Optional)

plain

xsd:string

The image tag for the image

name (Optional)

plain

xsd:string

The name of the image, including full repo

{
   "registry_images": [
      {
         "tag": null,
         "name": "docker.io/starlingx/ceph-config-helper"
      },
      {
         "tag": null,
         "name": "quay.io/external_storage/rbd-provisioner"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/registry_image

List tags of a given image in the local Docker registry

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

image_name

plain

csapi:string

The name of the image, including full repo

Response parameters

Parameter

Style

Type

Description

registry_images (Optional)

plain

xsd:list

The list of images in the local Docker registry.

tag (Optional)

plain

xsd:string

The image tag for the image

name (Optional)

plain

xsd:string

The name of the image, including full repo

{
   "registry_images": [
      {
         "tag": "v1.15.0",
         "name": "docker.io/starlingx/ceph-config-helper"
      }
   ]
}
DELETE
/v1/registry_image

Deletes an image in the local Docker registry

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

image_name_and_tag

plain

csapi:string

The image name and tag of the form name:tag

This operation does not accept a request body.

POST
/v1/registry_image

Run the Docker registry garbage collector

Normal response codes

204

Request parameters

Parameter

Style

Type

Description

garbage_collect

plain

csapi:bool

run the garbage collect?

This operation does not accept a request body.

Kubernetes Clusters

These APIs allow for the retrieval of the Kubernetes cluster information, including the access information for remote administrative access.

GET
/v1/kube_clusters

List the Kubernetes clusters

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Response parameters

Parameter

Style

Type

Description

cluster_name

plain

xsd:string

Kubernetes Cluster Name (kubernetes)

cluster_version

plain

xsd:string

Kubernetes Release Version

cluster_api_endpoint

plain

xsd:string

Cluster API Public Endpoint URL

cluster_ca_cert

plain

xsd:string

Admin Root CA X.509 Certificate (PEM format)

admin_client_cert

plain

xsd:string

Admin Client X.509 Certificate (PEM format)

admin_client_key

plain

xsd:string

Admin Client Key (PEM format)

admin_user

plain

xsd:string

Admin User Name (kubernetes-admin)

admin_token (Optional)

plain

xsd:string

Admin service account token for admin_user, if configured (Base64 ASCII)

{
   "kube_clusters": [
      {
         "cluster_name": "kubernetes",
         "cluster_version": "v1.18.1",
         "cluster_api_endpoint": "https://10.10.10.2:6443",
         "cluster_ca_cert": "REDACTED: <certificate-data>",
         "admin_client_cert": "REDACTED: <certificate-data>",
         "admin_client_key": "REDACTED: <key-data>",
         "admin_user": "kubernetes-admin",
         "admin_token": "REDACTED: <token-data>"
      }
   ]
}

This operation does not accept a request body.

GET
/v1/kube_clusters/​{cluster_name}

Get the Kubernetes cluster details of a specific cluster

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

cluster_name

URI

xsd:string

The unique Kubernetes cluster name.

Response parameters

Parameter

Style

Type

Description

cluster_name

plain

xsd:string

Kubernetes Cluster Name (kubernetes)

cluster_version

plain

xsd:string

Kubernetes Release Version

cluster_api_endpoint

plain

xsd:string

Cluster API Public Endpoint URL

cluster_ca_cert

plain

xsd:string

Admin Root CA Certificate (PEM format)

admin_client_cert

plain

xsd:string

Admin Client Certificate (PEM format)

admin_client_key

plain

xsd:string

Admin Client Key (PEM format)

admin_user

plain

xsd:string

Admin User Name (kubernetes-admin)

admin_token (Optional)

plain

xsd:string

Admin service account token for admin_user, if configured (base64 encoded)

{
   "cluster_name": "kubernetes",
   "cluster_version": "v1.18.1",
   "cluster_api_endpoint": "https://10.10.10.2:6443",
   "cluster_ca_cert": "REDACTED: <certificate-data>",
   "admin_client_cert": "REDACTED: <certificate-data>",
   "admin_client_key": "REDACTED: <key-data>",
   "admin_user": "kubernetes-admin",
   "admin_token": "REDACTED: <token-data>"
}

This operation does not accept a request body.

Kubernetes rootca update

These APIs allow the renewal of kubernetes root certificate authority, dividing the whole procedure in steps to be sequentially taken, and expose ‘state’ to allow for management or orchestration.

POST
/v1/kube_rootca_update

Start kubernetes root ca update procedure

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Parameter

Style

Type

Description

force

query

xsd:boolean

A boolean flag indicating if the API should ignore non-management affecting alarms on eventual health checks (the parameter is passed as part of the URL, ie, /v1/kube_rootca_update/?force=True).

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

state

plain

xsd:string

The current state of the procedure on the cluster.

from_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

to_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure.

{
   "uuid": "ec742b42-199a-4df7-bd83-e9465a8e0e9f",
   "links": [
      {
         "href": "http://192.168.204.1:6385/v1/kube_rootca_update/ec742b42-199a-4df7-bd83-e9465a8e0e9f",
         "rel": "self"
      },
      {
         "href": "http://192.168.204.1:6385/kube_rootca_update/ec742b42-199a-4df7-bd83-e9465a8e0e9f",
         "rel": "bookmark"
      }
   ],
   "to_rootca_cert": null,
   "created_at": "2021-08-25T19:09:45.717195+00:00",
   "from_rootca_cert": "d70efa2daaee06f8-70634176318091904949557575469846596498",
   "updated_at": null,
   "capabilities": {},
   "state": "update-started",
   "id": 24
}

This operation does not accept a request body.

POST
/v1/kube_rootca_update/generate_cert

Generate new kubernetes root ca

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Parameter

Style

Type

Description

expiry_date (Optional)

plain

xsd:string

An ISO 8601 (YYYY-MM-DD) string representing the date in which the certificate should expire.

subject (Optional)

plain

xsd:string

A string representing the subject to be set on the generated certificate. It should be given in the format <parameter_initials>=<value> and supports C(Country), ST(State/Province), L(Locality), O(Organization), OU(OrganizationalUnit) and CN(CommonName).

{
   "expiry_date": "2022-03-14",
   "subject": "CN=kubernetes C=US"
}

Response parameters

Parameter

Style

Type

Description

cert_id

plain

xsd:string

Certificate identifier composed by a combination of <issuer_hash>-<serial_number>

error

plain

xsd:string

The error message in the event of execution failure

This operation does not accept a request body.

Get
/v1/kube_rootca_update/get_cert_id

Get existing kubernetes root ca ID

Normal response codes

200

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Response parameters

Parameter

Style

Type

Description

cert_id

plain

xsd:string

Certificate identifier composed by a combination of <issuer_hash>-<serial_number>

error

plain

xsd:string

The error message in the event of execution failure

{
   "cert_id": "d70efa2daaee06f8-314121337707572303468615715651317888841",
   "error": ""
}

This operation does not accept a request body.

POST
/v1/kube_rootca_update/upload_cert

Upload new kubernetes root ca

Accepts a PEM file containing the X509 certificate and the corresponding private key.

Normal response codes

204

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Parameter

Style

Type

Description

Content-Type multipart/form-data

plain

xsd:string

The content of a file. e.g. if using curl, this would be specified as: curl -F name=@full_path_of_filename <div class=”example”><pre>file=@/home/sysadmin/server-with-key.pem </pre></div>

Response parameters

Parameter

Style

Type

Description

success

plain

xsd:string

Certificate identifier composed by a combination of <issuer_hash>-<serial_number>

error

plain

xsd:string

The error message in case something wrong happen on the API execution

{
   "success": "d70efa2daaee06f8-314121337707572303468615715651317888841",
   "error": ""
}
POST
/v1/ihosts/{host_uuid}/kube_update_ca

Update host for kubernetes root ca update procedure

Normal response codes

204

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Parameter

Style

Type

Description

host_uuid

URI

csapi:UUID

The UUID from the host in which the configuration will be applied.

phase

plain

xsd:string

An argument specifying which phase of the procedure should be applied to the host.

{
   "phase": "trust-both-cas"
}

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

hostname

plain

xsd:string

The host name.

personality

plain

xsd:string

The host personality.

state

plain

xsd:string

The current state of the procedure on the host.

effective_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

target_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure on host.

{
   "target_rootca_cert":"d70efa2daaee06f8-10245860497885060024",
   "links":[
      {
         "href":"http://192.168.204.1:6385/v1/kube_rootca_host_update/d1c215cf-bc1d-40a1-bffd-08009781c93a",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.1:6385/kube_rootca_host_update/d1c215cf-bc1d-40a1-bffd-08009781c93a",
         "rel":"bookmark"
      }
   ],
   "created_at":"2021-08-26T18:35:47.979692+00:00",
   "hostname":"controller-0",
   "updated_at":"2021-08-27T10:01:50.686658+00:00",
   "capabilities":{},
   "state":"updating-host-update-certs",
   "personality":"controller",
   "id":55,
   "effective_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
   "uuid":"d1c215cf-bc1d-40a1-bffd-08009781c93a"
}
POST
/v1/kube_rootca_update/pods

Kubernetes root CA update for pods

Request parameters

Parameter

Style

Type

Description

phase

plain

xsd:string

An argument specifying which phase of the procedure should be applied to the host.

{
   "phase": "trust-both-cas"
}

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

state

plain

xsd:string

The current state of the procedure on the cluster.

from_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

to_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure.

{
   "uuid":"afdcb990-eab0-44b3-a86d-b4eb0d8565f9",
   "links":[
      {
         "href":"http://192.168.204.1:6385/v1/kube_rootca_update/afdcb990-eab0-44b3-a86d-b4eb0d8565f9",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.1:6385/kube_rootca_update/afdcb990-eab0-44b3-a86d-b4eb0d8565f9",
         "rel":"bookmark"
      }
   ],
   "to_rootca_cert":"d70efa2daaee06f8-10245860497885060024",
   "created_at":"2021-08-26T18:35:47.936898+00:00",
   "from_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
   "updated_at":"2021-08-27T10:19:06.987527+00:00",
   "capabilities":{},
   "state":"updating-pods-trust-new-ca",
   "id":28
}

This operation does not accept a request body.

PATCH
/v1/kube_rootca_update

Complete kubernetes root ca update procedure

Normal response codes

204

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Parameter

Style

Type

Description

state

plain

xsd:string

The new state to be set in kube_rootca_update object

[
   {
      "path": "/state",
      "value": "update-completed",
      "op": "replace"
   }
]

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

state

plain

xsd:string

The current state of the procedure on the cluster.

from_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

to_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure.

{
   "uuid":"beb28c6f-a461-4be7-8c01-c3ce82f2a1ab",
   "links":[
      {
         "href":"http://192.168.204.1:6385/v1/kube_rootca_update/beb28c6f-a461-4be7-8c01-c3ce82f2a1ab",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.1:6385/kube_rootca_update/beb28c6f-a461-4be7-8c01-c3ce82f2a1ab",
         "rel":"bookmark"
      }
   ],
   "to_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
   "created_at":"2021-08-26T17:35:57.757823+00:00",
   "from_rootca_cert":"d70efa2daaee06f8-70634176318091904949557575469846596498",
   "updated_at":"2021-08-26T18:25:02.759171+00:00",
   "capabilities":{},
   "state":"update-completed",
   "id":27
}
PATCH
/v1/kube_rootca_update

Abort kubernetes root ca update procedure

Normal response codes

204

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Parameter

Style

Type

Description

state

plain

xsd:string

The new state to be set in kube_rootca_update object

[
   {
      "path": "/state",
      "value": "update-aborted",
      "op": "replace"
   }
]

Response parameters

Parameter

Style

Type

Description

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

state

plain

xsd:string

The current state of the procedure on the cluster.

from_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

to_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure.

{
   "uuid":"beb28c6f-a461-4be7-8c01-c3ce82f2a1ab",
   "links":[
      {
         "href":"http://192.168.204.1:6385/v1/kube_rootca_update/beb28c6f-a461-4be7-8c01-c3ce82f2a1ab",
         "rel":"self"
      },
      {
         "href":"http://192.168.204.1:6385/kube_rootca_update/beb28c6f-a461-4be7-8c01-c3ce82f2a1ab",
         "rel":"bookmark"
      }
   ],
   "to_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
   "created_at":"2021-08-26T17:35:57.757823+00:00",
   "from_rootca_cert":"d70efa2daaee06f8-70634176318091904949557575469846596498",
   "updated_at":"2021-08-26T18:25:02.759171+00:00",
   "capabilities":{},
   "state":"update-aborted",
   "id":27
}
GET
/v1/kube_rootca_update

Show state of kube root ca update procedure on cluster

Normal response codes

200

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Response parameters

Parameter

Style

Type

Description

kube_rootca_updates

plain

xsd:list

The list of kube rootca updates happening on cluster.

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

state

plain

xsd:string

The current state of the procedure on the host.

from_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

to_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure.

{
   "kube_rootca_updates":[
      {
         "uuid":"afdcb990-eab0-44b3-a86d-b4eb0d8565f9",
         "links":[
            {
               "href":"http://192.168.204.1:6385/v1/kube_rootca_update/afdcb990-eab0-44b3-a86d-b4eb0d8565f9",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.1:6385/kube_rootca_update/afdcb990-eab0-44b3-a86d-b4eb0d8565f9",
               "rel":"bookmark"
            }
         ],
         "to_rootca_cert":"d70efa2daaee06f8-10245860497885060024",
         "created_at":"2021-08-26T18:35:47.936898+00:00",
         "from_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
         "updated_at":"2021-08-27T09:12:00.491276+00:00",
         "capabilities":{},
         "state":"updated-host-trust-both-cas",
         "id":28
      }
   ]
}

This operation does not accept a request body.

GET
/v1/kube_rootca_update/hosts

List hosts states of kube root ca update procedure

Normal response codes

200

Error response codes

serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Response parameters

Parameter

Style

Type

Description

kube_host_updates

plain

xsd:list

The list of kube rootca updates describing each host from its perspective.

uuid

plain

csapi:UUID

Unique identifier of kube_rootca_update object

hostname

plain

xsd:string

The host name.

personality

plain

xsd:string

The host personality.

state

plain

xsd:string

The current state of the procedure on the host.

effective_rootca_cert

plain

xsd:string

An identifier of the current kubernetes root ca to be updated on the procedure.

target_rootca_cert

plain

xsd:string

The target root ca to be active as new kubernetes root certificate authority at the end of the procedure.

created_at

plain

xsd:dateTime

The time when the object was created.

updated_at

plain

xsd:dateTime

The time when the object was last updated.

links (Optional)

plain

xsd:list

For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage.

capabilities (Optional)

plain

xsd:string

Additional capabilities info about kubernetes rootca procedure on host.

{
   "kube_host_updates":[
      {
         "target_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
         "links":[
            {
               "href":"http://192.168.204.1:6385/v1/kube_rootca_host_update/cba1ed8c-4142-42aa-8e98-99dfd558aefb",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.1:6385/kube_rootca_host_update/cba1ed8c-4142-42aa-8e98-99dfd558aefb",
               "rel":"bookmark"
            }
         ],
         "created_at":"2021-08-26T17:35:57.822617+00:00",
         "hostname":"controller-0",
         "updated_at":"2021-08-26T17:38:05.754691+00:00",
         "capabilities":{},
         "state":"updated-host-trust-both-cas",
         "personality":"controller",
         "id":53,
         "effective_rootca_cert":"d70efa2daaee06f8-70634176318091904949557575469846596498",
         "uuid":"cba1ed8c-4142-42aa-8e98-99dfd558aefb"
      },
      {
         "target_rootca_cert":"d70efa2daaee06f8-190956970562491901425726716176051336686",
         "links":[
            {
               "href":"http://192.168.204.1:6385/v1/kube_rootca_host_update/a9290c32-20d7-4b18-b1b7-582f5af87ec2",
               "rel":"self"
            },
            {
               "href":"http://192.168.204.1:6385/kube_rootca_host_update/a9290c32-20d7-4b18-b1b7-582f5af87ec2",
               "rel":"bookmark"
            }
         ],
         "created_at":"2021-08-26T17:35:57.846353+00:00",
         "hostname":"controller-1",
         "updated_at":"2021-08-26T17:38:33.028668+00:00",
         "capabilities":{},
         "state":"updated-host-trust-both-cas",
         "personality":"controller",
         "id":54,
         "effective_rootca_cert":"d70efa2daaee06f8-70634176318091904949557575469846596498",
         "uuid":"a9290c32-20d7-4b18-b1b7-582f5af87ec2"
      }
   ]
}

This operation does not accept a request body.

Kubernetes config kubelet

These APIs allow the reconfiguration of kubelet-config parameters and restart of kubelet on each node.

POST
/v1/kube_config_kubelet/apply

Apply kubelet-config parameters reconfiguration and restart kubelet procedure

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)

Request parameters

Response parameters

Parameter

Style

Type

Description

success

plain

xsd:string

The success message indicating start of the kube-config-kubelet apply

error

plain

xsd:string

The error message in case something wrong happen on the API execution

{
   "success": "kube-config-kubelet applied.",
   "error": ""
}
GET
/v1/isystems/region_id

Get Region Name

Normal response codes

200

Error response codes

serviceUnavailable (503), badRequest (400), forbidden (403), badMethod (405)

Response parameters

Parameter

Style

Type

Description

region_name

plain

xsd:string

region name can be default RegionOne or UUID

{
   "region_name": "f558ce1b-de27-4132-8ca6-ac7f34ae8d21",
}

This operation does not accept a request body.

Host Kernels

These APIs allow the display and modification of the host’s kernel

GET
/v1/ihosts/{ihost_uuid}/kernel

Display Host Kernel

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), unauthorized (401), forbidden (403), itemNotFound (404)

Request parameters

Parameter

Style

Type

Description

ihost_uuid

URI

csapi:UUID

The unique identifier of the host

This operation does not accept a request body.

Response parameters

Parameter

Style

Type

Description

ihost_uuid

URI

csapi:UUID

The unique identifier of the host

hostname

plain

xsd:string

The host name

kernel_provisioned

plain

xsd:string

The provisioned kernel

kernel_running

plain

xsd:string

The running kernel

{
   "ihost_uuid": "e551b1f0-ab6d-43a9-8eb1-05c39025a161",
   "hostname": "controller-0",
   "kernel_provisioned": "standard",
   "kernel_running": "standard",
}

This operation does not accept a request body.

PATCH
/v1/ihosts/{ihost_uuid}/kernel

Modify Host Kernel

Normal response codes

200

Error response codes

computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404)

Parameter

Style

Type

Description

ihost_uuid

URI

csapi:UUID

The unique identifier of the host

path

URI

xsd:string

/kernel_provisioned (always)

value

plain

xsd:string

New Kernel [lowlatency|standard]

op

plain

xsd:string

Type of operation: replace (always)

[
   {
      "path": "/kernel_provisioned",
      "value": "lowlatency",
      "op": "replace"
   }
]

Will reply with updated kernel value

Parameter

Style

Type

Description

ihost_uuid

URI

csapi:UUID

The unique identifier of the host

hostname

plain

xsd:string

The host name

kernel_provisioned

plain

xsd:string

The provisioned kernel

kernel_running

plain

xsd:string

The running kernel

{
   "ihost_uuid": "e551b1f0-ab6d-43a9-8eb1-05c39025a161",
   "hostname": "controller-0",
   "kernel_provisioned": "lowlatency",
   "kernel_running": "standard"
}