SimpliVity security API

Includes the REST APIs that support security operations for HPE SimpliVity objects

OpenAPI Specification

simplivity-security-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: "This API enables the programmatic management of key components of an HPE SimpliVity configuration.\n\nTo access the API, request an authentication token by issuing an authentication request in the following form, where the username/password combination is a set of valid management credentials for the applicable hypervisor environment:\n\n     curl -k https://simplivity@<host>/api/oauth/token -d grant_type=password -d username=<user> -d password=<pass>\n\nThen, you can pass in the resulting access_token returned in each HTTP header using Authorization: Bearer token. For example:\n\n     curl -H \"Authorization: Bearer 0a08c809-17ff-479f-b0a8-aedd4d8305a0\"\n\nThe access_token times out after 10 minutes of inactivity and expires after 24 hours.\n\nMake sure to use TLS version 1.2 or greater.\n\nThere are a wide range of possible return values.  Below is a list of the most common return values. \n\n    200 \"OK\" ⁃ This indicates that the request and action has completed with no issues.\n    201 \"Created\" ⁃ This indicates that the request has completed and a new resource has been created.\n    202 \"Accepted\" ⁃ This indicates that the request has been accepted for processing but the processing has not\n                     completed. This is a typical return when a task is generated.\n    400 \"Bad Request\" ⁃ The request cannot or will not be proccessed.  Usually due to a missing required parameter\n                        or invalid data in the parameter.\n    401 \"Unauthorized\" ⁃ The request has not been applied because it lacks authentication credentials for the\n                         target resource.\n    404 \"Not Found\" ⁃ The requested target doesn't exist or has been deleted.\n    405 \"Method Not Allowed\" ⁃ The method being requested is not valid for the target it is being performed on.\n    408 \"Request Timeout\" ⁃ The response took too long.\n    500 \"Internal Server Error\" ⁃ Indicates that the server encountered an unexpected condition that prevented it\n                                  from fulfilling the request.\n\n<a href=\"https://developer.hpe.com/platform/hpe-simplivity/home\" class=\"\toggleEndpointList\" data-id=\"errors\">Click here for a complete list of return codes and response formats</a>\n\n"
  version: '1.25'
  title: HPE OmniStack REST backups security API
  contact:
    name: Hewlett Packard Enterprise
  license:
    name: HPE OmniStack REST API
host: localhost
basePath: ''
tags:
- name: security
  description: Includes the REST APIs that support security operations for HPE SimpliVity objects
paths:
  /security/certificates:
    get:
      tags:
      - security
      summary: Get all SSL certificates from the HPE SimpliVity trust store
      operationId: getCertificates
      consumes:
      - application/json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/certificate'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    post:
      tags:
      - security
      summary: Add an SSL certificate to the HPE SimpliVity trust store
      operationId: addCertificate
      consumes:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      parameters:
      - in: body
        name: mo
        description: mo
        required: true
        schema:
          $ref: '#/definitions/add_certificate'
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/certificate'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /security/certificates/upload_der_encoded_certificate:
    post:
      tags:
      - security
      summary: Add a DER encoded SSL certificate to the HPE SimpliVity trust store
      operationId: addDEREncodedCertificate
      consumes:
      - multipart/form-data
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      parameters:
      - name: certificate
        in: formData
        description: A DER encoded SSL certificate
        required: true
        type: file
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/certificate'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /security/certificates/{certId}:
    get:
      tags:
      - security
      summary: Get an SSL certificate from the HPE SimpliVity trust store
      operationId: getCertificate
      consumes:
      - application/json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      parameters:
      - name: certId
        in: path
        description: The unique identifier (SHA-1 thumbprint) of the certificate that you want to retrieve
        required: true
        type: string
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/certificate'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    delete:
      tags:
      - security
      summary: Delete an SSL certificate in the HPE SimpliVity trust store
      operationId: deleteCertificate
      consumes:
      - application/json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      parameters:
      - name: certId
        in: path
        description: The unique identifier (SHA-1 thumbprint) of the certificate that you want to delete
        required: true
        type: string
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/certificate'
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
  /security/rbac/policies/role_assignments:
    get:
      tags:
      - security
      summary: Get all HPE OmniStack role assignments
      operationId: getRoleAssignments
      consumes:
      - application/json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/role_assignments'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    post:
      tags:
      - security
      summary: Add an HPE OmniStack role assignment
      operationId: addRoleAssignments
      consumes:
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.20+json
      - application/vnd.simplivity.v1.24+json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      parameters:
      - in: body
        name: mo
        description: mo
        required: true
        schema:
          $ref: '#/definitions/role_assignments'
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/role_assignments'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /security/rbac/policies/role_assignments/remove:
    post:
      tags:
      - security
      summary: Remove HPE OmniStack role assignments
      operationId: removeRoleAssignments
      consumes:
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.20+json
      - application/vnd.simplivity.v1.24+json
      produces:
      - application/vnd.simplivity.v1.19+json
      - application/vnd.simplivity.v1.23+json
      - application/json
      - application/vnd.simplivity.v1.9+json
      - application/vnd.simplivity.v1.18+json
      - application/vnd.simplivity.v1.13+json
      - application/vnd.simplivity.v1.16+json
      - application/vnd.simplivity.v1.24+json
      - application/vnd.simplivity.v1.14+json
      - application/vnd.simplivity.v1.11+json
      - application/vnd.simplivity.v1.17+json
      - application/vnd.simplivity.v1.21+json
      - application/vnd.simplivity.v1.22+json
      - application/vnd.simplivity.v1.10+json
      - application/vnd.simplivity.v1.8+json
      - application/vnd.simplivity.v1.15+json
      - application/vnd.simplivity.v1.25+json
      - application/vnd.simplivity.v1.12+json
      - application/vnd.simplivity.v1.20+json
      parameters:
      - in: body
        name: mo
        description: mo
        required: true
        schema:
          $ref: '#/definitions/role_assignments'
      responses:
        '201':
          description: Created
        '204':
          description: No Content
          schema:
            $ref: '#/definitions/role_assignments'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
definitions:
  add_certificate:
    type: object
    required:
    - certificate
    properties:
      certificate:
        type: string
        description: A Base64 encoded SSL certificate
    description: Add an SSL certificate to the HPE SimpliVity trust store
  role_assignments:
    type: object
    required:
    - groups
    - role
    properties:
      role:
        type: string
        description: The value of the HPE OmniStack role
      groups:
        type: array
        description: The vCenter Server group(s) assigned to the HPE OmniStack role
        items:
          type: string
    description: The HPE OmniStack role assignments
  certificate:
    type: object
    required:
    - certificate
    properties:
      certificate:
        type: string
        description: A Base64 encoded SSL certificate
      hash:
        type: string
        description: A hash value of the SSL certificate
      subject:
        type: string
        description: The subject value of the SSL certificate
      issuer:
        type: string
        description: The issuer value of the SSL certificate
      serialno:
        type: string
        description: The serial number of the SSL certificate
    description: An SSL Certificate
securityDefinitions:
  OAuth2:
    type: oauth2
    tokenUrl: /oauth/token
    flow: password
    scopes:
      read: Grants read access
      write: Grants write access