Quick Starttop

The Senient Cloud Platform provides an easy way to set up a hybrid-cloud environment, where the operator can orchestrate, manage and monitor dedicated and * as a Service resources.

Built "API-first", the Senient Cloud Platform provides a rich API which allows consumers to access all of the information about their cloud environment, from the memory-presure, down to the efficiency of the power-supplies, and provides the ability to respond programatically to changes within the environment.

					
[senient@wintermute] $ senient modules --limit 5

Serial Number         Resource Pool  Power      Cores  Arch      RAM (MB)
------------------  ---------------  -------  -------  ------  ----------
FF-0000-0000000004                   Off            8  X86_64        8192
FF-0000-000000000F                   Off            8  X86_64        8192
FF-0000-0000000017                   Off            8  X86_64        8192
FF-0000-000000001F                   Off            8  X86_64        8192
FF-0000-0000000021                   Off            8  X86_64        8192
					
				

Commandstop

Within the Senient Cloud Platform, there is a barrier between the management system and the hosting environment. The Command pipeline is responsible for initiating any operations that mutate the hosting environment.

Schema

Command object
  • completed string
    The date and time that the Command completed (if it has).
  • id string
    An auto-generated unique identifier of the Command.
  • ims_instance_id string
    The instance id of the IMS node that originated the Command.
  • initiated string
    The date and time when the Command was initiated.
  • initiated_by string
    The Name of the uer who initiated the Command.
  • last_updated string
    The date and time that the Command was last updated.
  • message string
    The current human-readable message about the state of the Command.
  • metadata object
    A dictionary of metadata associated with the Command.
  • org_id string
    The identifier for the organization to which the Command is applicable.
  • properties object
    A dictionary of properties applicable to the Command.
  • status enum QUEUED PREPARING EXECUTING FAILED SUCCESSFUL CANCELLED
    The current status of the Command.
  • type string
    The type of Command to be performed.
  • valid boolean
    A value indicating whether or not a Command has passed validation.
  • validation_messages array
    A list of messages resulting from the validation of the Command.

Operations

  • Retrieve all Commands that match {query}. GET /api/commands sizeint32 pageint32 querystring
    Query Parameters
    • size int32 100
      The number of Commands to return per query.
    • page int32 0
      The page offset to return.
    • query string *:*
      A query string to filter the Commands with.
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • Initiate a new command. POST /api/commands
    Responses
    • 200 OK
    • 201 Created
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • Retrieve a specific Command by its Id. GET /api/commands/{id}
    Path Parameters
    • id string
      The id of the command to retrieve.
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Definitionstop

Schema

Definition object
  • components array
  • meta object
  • module_types object
  • name string
  • namespace string
  • parent object
    • name string
    • namespace string
    • version string
  • properties object
  • public boolean
  • stores array
  • version string

Operations

  • getNamespaces GET /api/definitions
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • post POST /api/definitions
    Form Parameters
    • definition file
      definition
    • assets array
      assets
    Responses
    • 200 OK
    • 201 Created
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • put PUT /api/definitions
    Form Parameters
    • definition file
      definition
    • assets array
      assets
    Responses
    • 200 OK
    • 201 Created
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • getNames GET /api/definitions/{namespace}
    Path Parameters
    • namespace string
      namespace
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • getVersions GET /api/definitions/{namespace}/{name}
    Path Parameters
    • name string
      name
    • namespace string
      namespace
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • getJson GET /api/definitions/{namespace}/{name}/{version}/senient.json
    Path Parameters
    • version string
      version
    • name string
      name
    • namespace string
      namespace
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • Get definition file in YAML format. GET /api/definitions/{namespace}/{name}/{version}/senient.yaml
    Path Parameters
    • version string
      version
    • name string
      name
    • namespace string
      namespace
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Deploymentstop

Schema

Deployment object
  • command_id string
  • completed string
  • components array
  • definition object
    • name string
    • namespace string
    • version string
  • id string
  • initiated string
  • message string
  • org_id string
  • resource_pool_id string
  • status enum QUEUED PREPARING DEPLOYING DEPLOYED BRING_UP UP BRING_DOWN DOWN DESTROYING DESTROYED CANCELED FAILED DELETING DELETED

Operations

  • get GET /api/deployments
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • get GET /api/deployments/{id}
    Path Parameters
    • id string
      id
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Instancestop

Schema

Instance object
  • admin_status enum UNDEPLOYED CHECK_DEPLOY_REQUIRED DEPLOYING UNDEPLOYING DEPLOYED_FS DEPLOYED UP DOWN BOOTING GOING_DOWN ORPHANED
    The recognized target Instance status.
  • base_image string
    The base image used for this Instance.
  • component_deployment_id string
    The locally-unique identifier for the initiating component deployment.
  • deleted boolean
  • deployment_id string
    The globally-unique identifier for the initiating deployment.
  • hostname string
    The hostname of this Instance.
  • id string
    The ID of the Instance.
  • ipv4_addrs array
    The IPv4 address assigned to this Instance.
  • ipv6_addrs array
    The IPv6 address assigned to this Instance.
  • oper_status enum UNDEPLOYED CHECK_DEPLOY_REQUIRED DEPLOYING UNDEPLOYING DEPLOYED_FS DEPLOYED UP DOWN BOOTING GOING_DOWN ORPHANED
    The current recognize Instance status.
  • org_id string
    The globally-unique identifier for the owning organization.
  • primary_mac_address string
    The primary MAC address of this Instance.
  • rm_serial_number string
    The serial number of the Resource Module hosting this Instance.
  • storage_pool string
    The storage pool of this Instance.

Operations

  • get GET /api/instances
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • get GET /api/instances/{id}
    Path Parameters
    • id string
      id
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Imagestop

Schema

Image object
  • arch string
  • description string
  • distribution string
  • init_system enum SYSTEM_D INIT
  • name string
    The name of the image.
  • org_id string
  • parent_image string
    The image from which this one is derived.
  • parent_snap string
    The version of the parent image from which this image is derived.
  • properties object
  • size int64
    Size in bytes of the image.
  • type string
  • vendor string
  • version string
  • versions array

Operations

  • get GET /api/images
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • get GET /api/images/{name}
    Path Parameters
    • name string
      name
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Resource Modulestop

Schema

Resource Module object
  • connected boolean
    A value indicating whether the Resource Module is connected.
  • deployment_id string
    The globally-unique identifier of the Deployment using the Resource Module.
  • embedded_storage_read_speed int32
    The read speed of the embedded storage.
  • embedded_storage_type byte
    The type of embedded storage available to the Resource Module.(0 = NAND, 1 = SATA)
  • embedded_storage_write_cycles int32
    The estimated number of write cycles the of embedded storagewas designed for.
  • embedded_storage_write_speed int32
    The write speed of the embedded storage.
  • enclosure_id int32
    The globally-unique identifier of the Enclosure housing theResource Module.
  • ethernet_port_map object
    A map of interfaces to their connected switch ports.
  • first_connected string
    An ISO 8601 timestamp identifying the first time a Resource Module was connected.
  • last_connected string
    An ISO 8601 timestamp identifying the last time a Resource Module was connected.
  • master_cpu_arch byte
    The architecture of the Resource Module's master CPU
  • master_cpu_arch_version byte
    The architecture version of the Resource Module's master CPU
  • master_cpu_core_count int32
    The number of cores in the Resource Module's master CPU
  • master_cpu_datapath_width byte
    The data path width of the Resource Module's master CPU
  • master_cpu_integer_width byte
    The integer width of the Resource Module's master CPU
  • master_cpu_memory_addr_width byte
    The memory address width of the Resource Module's master CPU
  • maximum_input_voltage double
    The maximum input voltage supported by the Resource Module.
  • maximum_power int32
    The maximum power draw in watts.
  • minimum_input_voltage double
    The minimum input voltage supported by the Resource Module.
  • module_function string
  • module_index int32
    The index of the slot a module is current attached to.
  • pcie_lane_per_link byte
    The number of PCIe lanes per link.
  • pcie_link_count byte
    The total number of PCIe links available.
  • pcie_version byte
    The version of PCIe the Resoure Module supports.
  • power_state enum ON OFF UNKNOWN COMING_UP GOING_DOWN
    The current power state of the Resource Module.
  • ram_amount int32
    The amount of RAM currently allocated to the Resource Module.
  • ram_speed int32
    The speed of the RAM the Resource Module has access to.
  • resource_pool_id string
    The globally-unique identifier of the Resource Pool to which the Resource Module belongs.
  • serial_number string
    The serial number of the Resource Module.
  • slave_cpu_arch byte
    The architecture of the Resource Module's slave CPU
  • slave_cpu_arch_version byte
    The architecture version of the Resource Module's slave CPU
  • slave_cpu_core_count int32
    The number of cores in the Resource Module's slave CPU
  • slave_cpu_datapath_width byte
    The data path width of the Resource Module's slave CPU
  • slave_cpu_integer_width byte
    The integer width of the Resource Module's slave CPU
  • slave_cpu_memory_addr_width byte
    The memory address width of the Resource Module's slave CPU
  • updated string
    An ISO 8601 timestamp identifying the last time a Resource Module's state was changed.

Operations

  • get GET /api/resource_modules sizeint32 pageint32 querystring
    Query Parameters
    • size int32 100
      size
    • page int32 0
      page
    • query string *:*
      query
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • get GET /api/resource_modules/{serialNumber}
    Path Parameters
    • serialNumber string
      serialNumber
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • put PUT /api/resource_modules/{serialNumber}
    Path Parameters
    • serialNumber string
      serialNumber
    Responses
    • 200 OK
    • 201 Created
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Resource Poolstop

Schema

Resource Pool object
  • created string
  • default boolean
    A boolean value indicating whether this Resource Pool is the default for the account.
  • description string
    The description of the Resource Pool.
  • id string
    The globally unique identifier for the Resource Pool.
  • name string
    The account-local, friendly name of the Resource Pool.

Operations

  • get GET /api/resource_pools namesarray
    Query Parameters
    • names array
      names
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • post POST /api/resource_pools
    Responses
    • 200 OK
    • 201 Created
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • getById GET /api/resource_pools/{id}
    Path Parameters
    • id string
      id
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • delete DELETE /api/resource_pools/{id}
    Path Parameters
    • id string
      id
    Responses
    • 200 OK
    • 204 No Content
    • 401 Unauthorized
    • 403 Forbidden

Snapshotstop

Schema

Snapshot object
  • id int64
    The snapshot id.
  • name string
    The snapshot name.
  • note string
  • size int64
    Size in bytes of the snapshot.

Operations

  • get GET /api/snapshots
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • get GET /api/snapshots/{name}
    Path Parameters
    • name string
      name
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Storestop

Schema

Store object
  • created string
  • definition object
    • access object
      • anyone enum READ WRITE NONE
      • resource_pool enum READ WRITE NONE
      • service enum READ WRITE NONE
    • compressed boolean
    • encrypted boolean
    • name string
    • replicas object
      • max int32
      • min int32
    • replication enum REPLICATED ERASURE
    • reserved boolean
    • size string
  • deployment_id string
  • name string
  • reserved int64
  • used int64

Operations

  • get GET /api/stores
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • get GET /api/stores/{name}
    Path Parameters
    • name string
      name
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Componentstop

Schema

Component object
  • completed string
  • id string
  • initiated string
  • message string
  • name string
  • status enum QUEUED PREPARING DEPLOYING DEPLOYED BRING_UP UP BRING_DOWN DOWN DESTROYING DESTROYED CANCELED FAILED DELETING DELETED

Operations

  • Get all components GET /api/components namestring typeIdint32 typestring enclosureIdint32
    Query Parameters
    • name string
      name
    • typeId int32
      typeId
    • type string
      type
    • enclosureId int32
      enclosureId
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • Get component by id GET /api/components/{componentId}
    Path Parameters
    • componentId int64
      componentId
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Eventstop

Schema

Event object
  • enclosure_id int32
  • id string
    The id of the Event.
  • properties object
    All properties relating to the Event.
  • timestamp string
    The ISO8601 formatted timestamp of the event.
  • type string
    The type or category of the Event.

Operations

  • get GET /api/events sizeint32 pageint32 querystring
    Query Parameters
    • size int32 100
      size
    • page int32 0
      page
    • query string *:*
      query
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Metricstop

Schema

Metric object
  • component_id object
    The globally-unique identifier of the component that originated the metric.
    • enclosure_id int32
      The 32-bit globally unique enclosure ID.
    • subtype int32
      The subtype of the component as an integer.
    • subtype_id int32
      The subtype id of the component.
    • subtype_name string
      The subtype of the component as a string.
    • type int32
      The type of the component as an integer.
    • type_id int32
      The type id of the component.
    • type_name string
      The type of the component as a string.
    • value int64
      The 64-bit globally unique component ID.
  • enclosure_id int32
    The globally-unique identifier of the enclosure that originated the metric.
  • timestamp string
    The ISO8601 formatted timestamp of the metric.
  • type string
    The type or category of the metric.
  • value double
    The value of the metric.

Operations

  • get GET /api/metrics cursorTtlint64 cursorIdstring typesarray pageSizeint32 pageint32 toint64 fromint64
    Query Parameters
    • cursorTtl int64 60000
      cursorTtl
    • cursorId string
      cursorId
    • types array *
      types
    • pageSize int32 100
      pageSize
    • page int32 0
      page
    • to int64
      to
    • from int64
      from
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
  • prepareCursor GET /api/metrics/cursor typesarray pageSizeint32 ttlint64 toint64 fromint64
    Query Parameters
    • types array *
      types
    • pageSize int32 1000
      pageSize
    • ttl int64 60000
      ttl
    • to int64
      to
    • from int64
      from
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found

Versionstop

Schema

Version object
  • consumes array
    The mime types supported by POST and PUT in this version of the API.
  • produces array
    The mime types returnable by this version of the API.
  • version string
    The version number of the API.

Operations

  • get GET /api/versions
    Responses
    • 200 OK
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found