openapi: 3.0.1
servers:
  - url: http://truesight.local
  - description: On this TrueSight Server
    url: /tsws/10.0/api/
  - description: TrueSight Presentation Server
    url: https://{hostname}:{port}/tsws/10.0/api/
    variables:
      hostname:
        default: localhost
      port:
        default: "8043"
info:
  contact:
    name: Sentry on BMC Community
    url: https://community.bmc.com/s/group/0F93n000000PlUtCAK/sentry-software
  description: Hardware Sentry TrueSight Presentation Server REST API
  license:
    name: BMC Connector SDK License Agreement
    url: https://www.bmc.com/content/dam/bmc/corporate/Connector_SDK_License_Agreement.pdf
  title: Hardware Sentry TrueSight Presentation Server REST API
  version: 11.1.00
  x-apisguru-categories:
    - iot
  x-origin:
    - format: openapi
      url: https://www.sentrysoftware.com/library/mshw/11.1.00/hardware-tsps-openapi.yaml
      version: "3.0"
  x-providerName: truesight.local
tags:
  - description: API operations to interact with the PATROL Agent.
    name: Actions
  - description: API operations to interact with the monitored Applications.
    name: Applications
  - description: API operations to interact with the monitored Devices.
    name: Devices
  - description: API operations to interact with the monitored Groups.
    name: Groups
  - description: API operations to get historical data.
    name: Historical Data
  - description: API operations to interact with the monitored Services.
    name: Services
paths:
  "/hardware/actions/{deviceId}/collect-now":
    post:
      description: You need to provide the <b>Device ID</b> and <b>Monitor Class</b> parameters to identify the device:<br>- Use the <b>/hardware/devices</b> service in the <b>Device</b> section to retrieve the <b>Device ID</b> of any device.<br>- Use the <b>/hardware/device-monitors/{deviceId}</b> service in the <b>Device</b> section to retrieve the <b>Monitor Class</b> of a device.
      operationId: collectNow
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
        - description: The Monitor Class of the device.
          example: MS_HW_FAN
          in: query
          name: monitorClass
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ActionResponse"
          description: Successful operation
        "403":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Triggers a new collect on a specific device.
      tags:
        - Actions
  "/hardware/actions/{deviceId}/rediscover":
    post:
      description: You need to provide the <b>Device ID</b> to identify the device:<br>- Use the <b>/hardware/devices</b> service in the <b>Device</b> section to retrieve the <b>Device ID</b> of a device.
      operationId: rediscover
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ActionResponse"
          description: Successful operation
        "403":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Triggers a new discovery on a specific device.
      tags:
        - Actions
  "/hardware/actions/{deviceId}/reinitialize":
    post:
      description: Launches a 'Reinitialize KM' command for the following parameters:<br>- resetDiscoveryAndPollingIntervals<br>- resetAlertAfterNTimes<br>- resetAlertActions<br>- resetOtherA<br>- resetSettings<br>- resetDebugMode<br>- resetRemovedPausedObjectList<br>- resetReportSettings<br>- resetJavaSettings<br>- resetThresholds<br><br>You need to provide the <b>Device ID</b> to identify the device:<br>- Use the <b>/hardware/devices</b> service in the <b>Device</b> section to retrieve the <b>Device ID</b> of a device.
      operationId: reinitialize
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ReinitializeActionConfiguration"
        description: The request body as a JSON payload.
        required: true
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ActionResponse"
          description: Successful operation
        "403":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Sends a 'Reinitialize KM' command.
      tags:
        - Actions
      x-codegen-request-body-name: body
  "/hardware/actions/{deviceId}/remove":
    post:
      description: You need to provide the <b>Device ID</b>, the <b>Monitor Class</b> and the <b>Monitor SID</b> parameters:<br>- Use the <b>/hardware/devices</b> service in the <b>Device</b> section to retrieve the <b>Device ID</b> of any device.<br>- Use the <b>/hardware/device-monitors/{deviceId}</b> service in the <b>Device</b> section to retrieve the <b>Monitor Class</b> and the <b>Monitor SID</b> for a device.<br><br>(Example:"path":"/MS_HW_MAIN/10025150" where <em>MS_HW_MAIN</em> is the Monitor Class and <em>10025150</em> is the Monitor SID).
      operationId: remove
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
        - description: The Monitor Class of the device.
          example: MS_HW_FAN
          in: query
          name: monitorClass
          required: true
          schema:
            type: string
        - description: The Monitor SID of the device.
          example: cisco-c240-imc
          in: query
          name: monitorSid
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ActionResponse"
          description: Successful operation
        "403":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Removes a specific instance from the monitoring environment.
      tags:
        - Actions
  "/hardware/actions/{deviceId}/reset-error-count":
    post:
      description: Sets the Error Count parameter to 0.<br><br>You need to provide the <b>Device ID</b>, the <b>Monitor Class</b> and the <b>Monitor SID</b> parameters:<br>- Use the <b>/hardware/devices</b> service in the <b>Device</b> section to retrieve the <b>Device ID</b> of any device.<br>- Use the <b>/hardware/device-monitors/{deviceId}</b> service in the <b>Device</b> section to retrieve the <b>Monitor Class</b> and the <b>Monitor SID</b> for a device.<br><br>(Example:"path":"/MS_HW_MAIN/10025150" where <em>MS_HW_MAIN</em> is the Monitor Class and <em>10025150</em> is the monitorSid).
      operationId: reset
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
        - description: The Monitor Class of the device.
          example: MS_HW_FAN
          in: query
          name: monitorClass
          required: true
          schema:
            type: string
        - description: The Monitor SID of the device.
          example: cisco-c240-imc
          in: query
          name: monitorSid
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ActionResponse"
          description: Successful operation
        "403":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Resets the Error Count parameter.
      tags:
        - Actions
  /hardware/applications:
    get:
      description: Lists all the available ApplicationSummary instances.
      operationId: getApplications
      parameters:
        - description: The page number to retrieve (first page is 0).
          in: query
          name: page
          schema:
            default: "0"
            format: int32
            type: string
        - description: The maximum number of entries per page.
          in: query
          name: limit
          schema:
            default: 100
            format: int32
            type: integer
        - description: The sorting order (case insensitive).
          in: query
          name: direction
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The column to sort by (case insensitive).
          in: query
          name: sort
          schema:
            default: name
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No applications found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets summarized information about all monitored applications.
      tags:
        - Applications
  "/hardware/applications/{applicationId}":
    get:
      description: You need to provide an <b>Application ID</b>:<br>- use the <b>hardware/applications</b> service to retrieve all available application IDs.
      operationId: getOneApplication
      parameters:
        - description: The ID of the application.
          example: "0"
          in: path
          name: applicationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ApplicationSummary"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No applications found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets detailed information for a specific application.
      tags:
        - Applications
  "/hardware/device-monitors/{deviceId}":
    get:
      description: You need to provide a <b>Device ID</b>:<br>- use the <b>hardware/devices</b> service to get all available device IDs.
      operationId: getDeviceMonitors
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content: {}
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets the Monitors for a specific device.
      tags:
        - Devices
  /hardware/devices:
    get:
      description: "Lists the available DeviceSummary instances.<br><br>If a parent ID (group ID, application ID, or service ID) is provided, the function narrows down the devices list to those attached to the specified parent:<br>- use the <b>hardware/groups</b> service in the <b>Groups</b> section to get all available group IDs.<br>- use the <b>hardware/applications</b> service in the <b>Applications</b> section to get all available application IDs.<br>- use the <b>hardware/services</b> service in the <b>Services</b> section to get all available service IDs.<br><br><b>Note</b>: At most, one parent ID is taken into account according to this order of precedence:<ol><li>group ID</li><li>application ID</li><li>service ID</li></ol>"
      operationId: getDevices
      parameters:
        - description: The page number to retrieve (first page is 0).
          in: query
          name: page
          schema:
            default: "0"
            format: int32
            type: string
        - description: The maximum number of entries per page.
          in: query
          name: limit
          schema:
            default: 100
            format: int32
            type: integer
        - description: The sorting order (case insensitive).
          in: query
          name: direction
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The column to sort by (case insensitive).
          in: query
          name: sort
          schema:
            default: name
            type: string
        - description: The ID of the group.
          example: "0"
          in: query
          name: groupId
          schema:
            type: string
        - description: The ID of the application.
          example: "0"
          in: query
          name: applicationId
          schema:
            type: string
        - description: The ID of the service.
          example: "0"
          in: query
          name: serviceId
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No devices found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets summarized information about all monitored devices.
      tags:
        - Devices
  /hardware/devices-summary:
    get:
      description: Lists the GlobalSummary instance for all the monitored devices.
      operationId: getDevicesSummary
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/GlobalSummary"
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets overall information for all devices.
      tags:
        - Devices
  "/hardware/devices/{deviceId}":
    get:
      description: You need to provide a <b>Device ID</b>:<br>-use the <b>hardware/devices</b> service to get all available device IDs.
      operationId: getDevice
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/DeviceSummary"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No devices found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets detailed information about a specific device.
      tags:
        - Devices
  "/hardware/devices/{deviceId}/agent":
    get:
      description: You need to provide a <b>Device ID</b> to retrieve detailed information about the Agent that Monitors the device:<br>-use the <b>hardware/devices</b> service to get all available device IDs.
      operationId: getDeviceAgent
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/DeviceAgent"
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets detailed information about an Agent.
      tags:
        - Devices
  "/hardware/devices/{deviceId}/agent-devices":
    get:
      description: You need to provide the <b>Device ID</b> of a device to retrieve any other devices monitored by the same Agent:<br>-use the <b>hardware/devices</b> service to get all available device IDs.
      operationId: getAgentDevices
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets a list of all the devices monitored by an Agent.
      tags:
        - Devices
  "/hardware/devices/{deviceId}/parameter-history":
    get:
      description: You need to provide the <b>Device ID</b>, <b>Parameter Name</b>, <b>Monitor Type</b> and <b>Monitor SID</b>:<br>- use the <b>hardware/devices</b> service to get all available device IDs<br>- use the <b>/hardware/device-monitors/{deviceId}</b> to get the parameter name, the Monitor type and the Monitor SID.<br><br>Finally, define the period for which you wish to retrieve data history.
      operationId: getDeviceParameterHistory
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
        - description: The name of the parameter.
          example: Power Consumption
          in: query
          name: parameterName
          required: true
          schema:
            type: string
        - description: The unique name of the Monitor type.
          example: _PATROL__MS_HW_REPORT
          in: query
          name: monitorType
          required: true
          schema:
            type: string
        - description: Beginning of the period (Epoch time, in seconds).
          example: 1608850800
          in: query
          name: from
          schema:
            format: int64
            type: integer
        - description: End of the period (Epoch time, in seconds).
          example: 1608850800
          in: query
          name: to
          schema:
            format: int64
            type: integer
        - description: The Monitor SID (to filter the list of Monitors).
          example: cisco-c240-imc
          in: query
          name: monitorSid
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets data history for a parameter of a specific device over a given period.
      tags:
        - Devices
  "/hardware/energy-usage/{deviceId}":
    get:
      description: You need to provide the device ID:<br>- use the <b>hardware/devices</b> service to get all available device IDs.
      operationId: getDeviceEnergyUsage
      parameters:
        - description: The ID of the device.
          example: 42
          in: path
          name: deviceId
          required: true
          schema:
            format: int32
            type: integer
        - description: The period for which you wish to retrieve energy usage data.
          in: query
          name: rollPeriod
          schema:
            default: ONE_DAY
            enum:
              - ONE_DAY
              - ONE_WEEK
              - ONE_MONTH
              - SIX_MONTHS
              - ONE_YEAR
            type: string
        - description: Subdivision of the period for which you wish to retrieve energy usage data.
          in: query
          name: basis
          schema:
            default: HOURLY
            enum:
              - MONTHLY
              - DAILY
              - HOURLY
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets the energy usage for a specific device and a given period.
      tags:
        - Devices
  /hardware/groups:
    get:
      description: Lists the available GroupSummary instances.
      operationId: getGroups
      parameters:
        - description: The page number to retrieve (first page is 0).
          in: query
          name: page
          schema:
            default: "0"
            format: int32
            type: string
        - description: The maximum number of entries per page.
          in: query
          name: limit
          schema:
            default: 100
            format: int32
            type: integer
        - description: The sorting order (case insensitive).
          in: query
          name: direction
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The column to sort by (case insensitive).
          in: query
          name: sort
          schema:
            default: name
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No groups found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets all group summaries.
      tags:
        - Groups
  "/hardware/groups/{groupId}":
    get:
      description: You need to provide a <b>Device ID</b>:<br>- use the <b>hardware/groups</b> service to get all available group ID.
      operationId: getOneGroup
      parameters:
        - description: The ID of the group.
          example: "0"
          in: path
          name: groupId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/GroupSummary"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No groups found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets detailed information about a specific group.
      tags:
        - Groups
    put:
      description: You need to provide a <b>Device ID</b>:<br>- use the <b>hardware/groups</b> service to get all available group ID.<br><br>If the ID is <em>"global"</em>, then the group being updated is the GlobalSummary.
      operationId: updateEnergyCost
      parameters:
        - description: The ID of the group.
          example: "0"
          in: path
          name: groupId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GroupConfiguration"
        description: The values you wish to assign.
        required: false
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/GlobalSummary"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No settings or groups found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Updates the values of the energy footprint parameter for a specific group.
      tags:
        - Groups
      x-codegen-request-body-name: body
  /hardware/heating-margin-devices:
    get:
      description: "If a parent ID (group ID, application ID, or service ID) is provided, the function narrows down the devices list to those attached to the specified parent:<br>- use the <b>hardware/groups</b> service in the <b>Groups</b> section to get all available group IDs.<br>- use the <b>hardware/applications</b> service in the <b>Applications</b> section to get all available application IDs.<br>- use the <b>hardware/services</b> service in the <b>Services</b> section to get all available service IDs.<br><br><b>Note</b>: At most, one parent ID is taken into account according to this order of precedence:<ol><li>group ID</li><li>application ID</li><li>service ID</li></ol>"
      operationId: getHeatingMarginCoverage
      parameters:
        - description: If set to <em>true</em>, only gets devices whose heating margin information is available.<br>Otherwise, gets any other devices.
          in: query
          name: covered
          schema:
            default: true
            type: boolean
        - description: The page number to retrieve (first page is 0).
          in: query
          name: page
          schema:
            default: "0"
            format: int32
            type: string
        - description: The maximum number of entries per page.
          in: query
          name: limit
          schema:
            default: 100
            format: int32
            type: integer
        - description: The sorting order (case insensitive).
          in: query
          name: direction
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The column to sort by (case insensitive).
          in: query
          name: sort
          schema:
            default: name
            type: string
        - description: The ID of the group.
          example: "0"
          in: query
          name: groupId
          schema:
            type: string
        - description: The ID of the application.
          example: "0"
          in: query
          name: applicationId
          schema:
            type: string
        - description: The ID of the service.
          example: "0"
          in: query
          name: serviceId
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No devices found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets the heating margin values for each monitored device, when available.
      tags:
        - Devices
  /hardware/history:
    get:
      description: "Gets the historical data for a specific group, application or service, for a given period.<br><br>If a parent ID (group ID, application ID, or service ID) is provided, the function narrows down the devices list to those attached to the specified parent:<br>- use the <b>hardware/groups</b> service in the <b>Groups</b> section to get all available group IDs.<br>- use the <b>hardware/applications</b> service in the <b>Applications</b> section to get all available application IDs.<br>- use the <b>hardware/services</b> service in the <b>Services</b> section to get all available service IDs.<br><br><b>Note</b>: At most, one parent ID is taken into account according to this order of precedence:<ol><li>group ID</li><li>application ID</li><li>service ID</li></ol>"
      operationId: getHistory
      parameters:
        - description: The ID of the group.
          example: "0"
          in: query
          name: groupId
          schema:
            type: string
        - description: The ID of the application.
          example: "0"
          in: query
          name: applicationId
          schema:
            type: string
        - description: The ID of the service.
          example: "0"
          in: query
          name: serviceId
          schema:
            type: string
        - description: Beginning of the period (Epoch time, in seconds).
          example: 1608850800
          in: query
          name: from
          schema:
            format: int64
            type: integer
        - description: End of the period (Epoch time, in seconds).
          example: 1608850800
          in: query
          name: to
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets historical data for a specific group, application or service.
      tags:
        - Historical Data
  /hardware/search-devices:
    get:
      description: "Gets the DeviceSummary instances whose name, model, manufacturer or serial number match the specified criteria.<br><br>If a parent ID (group ID, application ID, or service ID) is provided, the function narrows down the devices list to those attached to the specified parent:<br>- use the <b>hardware/groups</b> service in the <b>Groups</b> section to get all available group IDs.<br>- use the <b>hardware/applications</b> service in the <b>Applications</b> section to get all available application IDs.<br>- use the <b>hardware/services</b> service in the <b>Services</b> section to get all available service IDs.<br><br><b>Note</b>: At most, one parent ID is taken into account according to this order of precedence:<ol><li>group ID</li><li>application ID</li><li>service ID</li></ol>"
      operationId: searchDevices
      parameters:
        - description: Space-separated search criteria.
          example: EMC Unity
          in: query
          name: searchTerms
          required: true
          schema:
            type: string
        - description: The ID of the group.
          example: "0"
          in: query
          name: groupId
          schema:
            type: string
        - description: The ID of the application.
          example: "0"
          in: query
          name: applicationId
          schema:
            type: string
        - description: The ID of the service.
          example: "0"
          in: query
          name: serviceId
          schema:
            type: string
        - description: The page number to retrieve (first page is 0).
          in: query
          name: page
          schema:
            default: "0"
            format: int32
            type: string
        - description: The maximum number of entries per page.
          in: query
          name: limit
          schema:
            default: 100
            format: int32
            type: integer
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No devices found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Searches devices by name, model, manufacturer or serial number.
      tags:
        - Devices
  /hardware/services:
    get:
      description: Lists the available ServiceSummary instances.
      operationId: getServices
      parameters:
        - description: The page number to retrieve (first page is 0).
          in: query
          name: page
          schema:
            default: "0"
            format: int32
            type: string
        - description: The maximum number of entries per page.
          in: query
          name: limit
          schema:
            default: 100
            format: int32
            type: integer
        - description: The sorting order (case insensitive).
          in: query
          name: direction
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The column to sort by (case insensitive).
          in: query
          name: sort
          schema:
            default: name
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ResultPage"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No services found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets summarized information about all monitored services.
      tags:
        - Services
  "/hardware/services/{serviceId}":
    get:
      description: You need to provide a <b>Service ID</b> ID :<br>- use the <b>hardware/services</b> service to get all available service IDs.
      operationId: getOneService
      parameters:
        - description: The ID of the service.
          example: "0"
          in: path
          name: serviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ServiceSummary"
          description: Successful operation
        "404":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: No services found
        "500":
          content:
            "*/*":
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unexpected error
      summary: Gets detailed information about a specific service.
      tags:
        - Services
components:
  schemas:
    ActionResponse:
      description: The object encapsulating the output of an operation affecting the PATROL Agent.
      properties:
        pslOutput:
          description: The output of the underlying PSL operation.
          example: "!!!SUCCESS!!!"
          type: string
      type: object
    ApplicationSummary:
      properties:
        costUnit:
          description: The currency in which all energy cost values are being expressed.
          type: string
        deviceSummaries:
          description: "The list of devices attached to the application.<br><u>Note</u>: when using the <b>Applications</b> service, this list is always empty. It is populated only when using the <b>Application Details</b> service."
          items:
            $ref: "#/components/schemas/DeviceSummary"
          type: array
        emittedCo2Unit:
          description: The unit in which all CO<sub>2</sub> emission values are being expressed.
          type: string
        energyConsumptionUnit:
          description: The unit in which all energy consumption values are being expressed.
          type: string
        heatingMargin:
          description: The lowest heating margin among the heating margins of the devices attached to the application.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginCoverage:
          description: The percentage of devices attached to the application, whose heating margin could be found.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginDeviceName:
          description: The name of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginDeviceUrl:
          description: The link to the details of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginUnit:
          description: The unit in which the heating margin of the application is being expressed.
          type: string
        historyParentIdKey:
          description: The name of the key used to identify the application in the history table.
          type: string
        id:
          description: The ID of the application.
          example: "42"
          type: string
        name:
          description: The name of the application.
          type: string
        numberOfDevices:
          description: The number of devices attached to the application.
          format: int32
          type: integer
        oneDayConfidence:
          description: The confidence score (percentage) for the daily energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneDayCost:
          description: The daily cost of the energy consumed by the devices attached to the application.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneDayEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the application during one day.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneDayEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the application during one day.
          format: double
          type: number
        oneMonthConfidence:
          description: The confidence score (percentage) for the monthly energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneMonthCost:
          description: The monthly cost of the energy consumed by the devices attached to the application.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneMonthEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the application during one month.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneMonthEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the application during one month.
          format: double
          type: number
        oneYearConfidence:
          description: The confidence score (percentage) for the yearly energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneYearCost:
          description: The yearly cost of the energy consumed by the devices attached to the application.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneYearEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the application in one year.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneYearEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the application during one year.
          format: double
          type: number
        totalPowerConsumption:
          description: The total power consumption of the devices attached to the application.
          format: double
          type: number
        totalPowerConsumptionUnit:
          description: The unit in which the total power consumption of the devices attached to the application is being expressed.
          type: string
        updateTimestamp:
          description: The data collection time (as an Epoch time, in seconds).
          format: int64
          type: integer
        url:
          description: The link to the application details.
          example: "#/green-it/applications/349676/details"
          type: string
      type: object
    DeviceAgent:
      description: Contains all information regarding a specific PATROL Agent.
      properties:
        connectionStatus:
          description: The status of the PATROL Agent's connection.
          example: Connection Active
          type: string
        id:
          description: The ID of the PATROL Agent.
          example: "9"
          type: string
        name:
          description: The FQDN of the PATROL Agent.
          example: name.domain
          type: string
        os:
          description: The operating system the PATROL Agent is running on.
          example: Linux
          type: string
        port:
          description: The port the PATROL Agent is running on.
          example: "3181"
          type: string
        url:
          description: The link to the 'Monitors' tab of the PATROL Agent.
          example: "#/devices/42/2/monitorTab"
          type: string
        version:
          description: The version of the PATROL Agent.
          example: V11.3.02i
          type: string
      type: object
    DeviceSummary:
      properties:
        agentId:
          description: The ID of the PATROL Agent the device is attached to.
          example: 42
          format: int32
          type: integer
        agentName:
          description: The name of the PATROL Agent the device is attached to.
          example: name.domain
          type: string
        ambientTemperature:
          description: The ambient temperature of the device.
          format: double
          type: number
        collectTime:
          description: The collection time of the heating margin (as an Epoch time, in seconds).<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        deviceTSMOKey:
          description: The TSMOKey of the device.
          example: 2+501040 462
          type: string
        deviceUrl:
          description: The link to the device details.
          example: "#/hardware-sentry/devices/42/details"
          type: string
        heatingMargin:
          description: The heating margin of the device.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginUnit:
          description: The unit in which the heating margin of the device is being expressed.<br><u>Note</u>:This field will only be present if a value could be found.
          example: Celsius degrees
          type: string
        id:
          description: The ID of the device.
          example: 42
          format: int32
          type: integer
        name:
          description: The ID of the device.
          type: string
        powerConsumption:
          description: The power consumption of the device.
          format: double
          type: number
        powerConsumptionUnit:
          description: The unit in which the power consumption of the device is being expressed.
          type: string
        productVersion:
          description: The Hardware Sentry KM version of the device's Monitor.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        serverId:
          description: The ID of the server the device is attached to.
          example: 42
          format: int32
          type: integer
        serverName:
          description: The name of the server the device is attached to.
          example: name.domain
          type: string
        sid:
          description: The SID of the device.
          example: cisco-c240-imc
          type: string
        type:
          enum:
            - DEFAULT
            - ESX_HOST
            - VIRTUAL_MACHINE
            - VIRTUAL_CENTER
            - XEN_HOST
            - XEN_MASTER_SERVER
            - XEN_VIRTUAL_MACHINE
            - XENAPP_CONTROLLER
            - XENAPP_MACHINE
            - VBLOCK_ESX
            - VBLOCK_VIRTUAL_MACHINE
            - VBLOCK_SWITCH
            - VBLOCK_STORAGE
            - VBLOCK_CHASSIS
            - VBLOCK_BLADE
            - VBLOCK_ENV
            - AIX_BOX
            - AIX_HARD_PARTITION
            - AIX_POOL
            - AIX_LPAR
            - AIX_WPAR
            - SOL_SYSTEM
            - SOL_FRAME
            - SOL_ZONE
            - SOL_LDOM
            - REDHAT_KVM_HOST
            - REDHAT_KVM_GUEST_INSTANCE
            - REDHAT_XEN_HOST
            - REDHAT_VM
            - HP_SYSTEM
            - HP_NPAR
            - HP_VPAR
            - HP_INT_VM
            - HP_INT_HOST
            - MS_HOST
            - MS_VM
            - AZURE_VIRTUALMACHINE
            - AMAZON_EC2
            - OS400_HOST
            - DOCKER_HOST
            - DOCKER_NODE
            - DOCKER_CONTAINER
            - ROUTER
            - HUB
            - PRINTER
            - REPEATER
            - WORKSTATION
            - NTSERVER
            - PRINETSERVER
            - RMONPROBE
            - WEBSERVER
            - DBSERVER
            - MAILSERVER
            - FIREWALL
            - OTHERS
            - APPSERVER
            - DEDICATEDAGENT
            - REMOTEAGENT
            - LAYER_3_SWITCH
            - CENTRAL_OFFICE_SWITCH
            - ACCESS_SERVER
            - I_O
            - WEB_CACHING
            - MANAGEMENT
            - BLOCK_SERVER
            - FILE_SERVER
            - MOBILE_USER_DEVICE
            - BRIDGE_OR_EXTENDER
            - GATEWAY
            - LOADBALANCER
            - MAINFRAME
            - SANSWITCH
            - SANHUB
            - SANBRIDGE
            - SANROUTER
            - SANDIRECTOR
            - RAIDSTORAGEDEVICE
            - VIRTUAL_TAPE_LIBRARY
            - JBOD
            - STORAGESUBSYSTEM
            - STORAGE_VIRTUALIZER
            - MEDIA_LIBRARY
            - EXTENDERNODE
            - NAS_HEAD
            - SELFCONTAINED_NAS
            - UPS
            - IP_PHONE
            - MANAGEMENT_CONTROLLER
            - CHASSIS_MANAGER
            - HOSTBASED_RAID_CONTROLLER
            - STORAGE_DEVICE_ENCLOSURE
            - DESKTOP
            - LAPTOP
            - VIRTUAL_LIBRARY_SYSTEM
            - BLADE_SYSTEM
            - BLADE_SERVER
            - VPN_CONCENTRATOR
            - PROXY_SERVER
            - LAYER_3_PROXY_SERVER
            - WAN_ACCELERATOR
            - SAN_PROCESSOR
            - VIRTUAL_SERVER_RHL
            - VIRTUAL_SERVER_WINDOWS
            - ESXi
            - VIRTUAL_SERVER
            - HYPERVISOR
            - AWS_AMI
            - MS_AZURE
            - UNKNOWN
          type: string
        updateTimestamp:
          description: The data collection time (as an Epoch time, in seconds).
          format: int64
          type: integer
      type: object
    ErrorResponse:
      properties:
        code:
          description: The error's business identifier.
          example: GENERAL_ERROR
          type: string
        date:
          description: The timestamp of the error.
          format: date-time
          type: string
        message:
          description: The error message.
          example: No data found
          type: string
      type: object
    GlobalSummary:
      properties:
        co2Emission:
          description: The CO<sub>2</sub> emissions for all devices. This value can be updated by users with sufficient permissions.
          format: double
          type: number
        co2EmissionUnit:
          description: The unit in which the CO<sub>2</sub> emission is being expressed.
          type: string
        editable:
          description: If <em>true</em>, indicates that you do not have sufficient rights to update the global settings. However, you may still have sufficient rights to update a specific group's setting.
          type: boolean
        energyCost:
          description: The electricity rate for all devices. This value can be updated by users with sufficient permissions.
          format: double
          type: number
        energyCostUnit:
          description: The unit in which the electricity rate is being expressed.
          type: string
        groupNameFilter:
          description: Regular expression used to filter the groups for which the power consumption will be reported.
          example: Group [0-9]+
          type: string
        heatingMargin:
          description: The lowest heating margin among the heating margins of all the devices.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginCoverage:
          description: The percentage of devices whose heating margin could be found.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginDeviceName:
          description: The name of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginDeviceUrl:
          description: The link to the details of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          example: "#/hardware-sentry/devices/3/details"
          type: string
        heatingMarginUnit:
          description: The unit in which the heating margin is being expressed.
          type: string
        id:
          description: The ID of the global summary (this ID will always be "global").
          type: string
        totalPowerConsumption:
          description: The total power consumption of all the devices.
          format: double
          type: number
        totalPowerConsumptionUnit:
          description: The unit in which the total power consumption is being expressed.
          type: string
        updateTimestamp:
          description: The data collection time (as an Epoch time, in seconds).
          format: int64
          type: integer
      type: object
    GroupConfiguration:
      description: The deserialized form of the <b>Energy Footprint Update</b> service's request payload.
      properties:
        co2Emission:
          description: "Updates the CO<sub>2</sub> emission (unit: kg/kWh)."
          example: 0.3
          format: double
          type: number
        energyCost:
          description: "Updates the electricity rate (unit: $/kWh)."
          example: 0.3
          format: double
          type: number
        groupNameFilter:
          description: Updates the regular expression used to filter the groups for which the power consumption should be reported.
          example: Group [0-9]+
          type: string
      type: object
    GroupSummary:
      properties:
        ambientTemperature:
          description: The average ambient temperature based on the ambient temperatures of the devices attached to the group.
          format: double
          type: number
        ambientTemperatureUnit:
          description: The unit in which the ambient temperature value is being expressed.
          type: string
        co2Emission:
          description: The CO<sub>2</sub> emissions for all devices attached to the group. This value can be updated by users with sufficient permissions.
          format: double
          type: number
        co2EmissionUnit:
          description: The unit in which the user-defined CO<sub>2</sub> emission value is being expressed.
          type: string
        costUnit:
          description: The currency in which all energy cost values are being expressed.
          type: string
        deviceSummaries:
          items:
            $ref: "#/components/schemas/DeviceSummary"
          type: array
        editable:
          description: The name of the key used to identify the group in the history table.
          type: boolean
        emittedCo2Unit:
          description: The unit in which all emitted CO<sub>2</sub> quantities are being expressed.
          type: string
        energyConsumptionUnit:
          description: The unit in which all energy consumption values are being expressed.
          type: string
        energyCost:
          description: The electricity rate for all devices attached to the group. This value can be updated by users with sufficient permissions.
          format: double
          type: number
        energyCostUnit:
          description: The unit in which th euser-defined electricity rate value is being expressed.
          type: string
        heatingMargin:
          description: The lowest heating margin among the heating margins of the devices attached to the group.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginCoverage:
          description: The percentage of devices attached to the group, whose heating margin could be found.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginDeviceName:
          description: The name of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginDeviceUrl:
          description: The link to the details of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginUnit:
          description: The unit in which the heating margin of the group is being expressed.
          type: string
        historyParentIdKey:
          type: string
        id:
          description: The ID of the group.
          example: "42"
          type: string
        name:
          description: The name of the group.
          type: string
        numberOfDevices:
          description: The number of devices attached to the group.
          format: int32
          type: integer
        oneDayConfidence:
          description: The confidence score (percentage) for the daily energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneDayCost:
          description: The daily cost of the energy consumed by the devices attached to the group.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneDayEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the group during one day.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneDayEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the group during one day.
          format: double
          type: number
        oneMonthConfidence:
          description: The confidence score (percentage) for the monthly energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneMonthCost:
          description: The monthly cost of the energy consumed by the devices attached to the group.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneMonthEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the group during one month.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneMonthEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the group during one month.
          format: double
          type: number
        oneYearConfidence:
          description: The confidence score (percentage) for the yearly energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneYearCost:
          description: The yearly cost of the energy consumed by the devices attached to the group.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneYearEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the group in one year.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneYearEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the group during one year.
          format: double
          type: number
        serverId:
          description: The ID of the server the group is attached to.
          example: 42
          format: int32
          type: integer
        totalPowerConsumption:
          description: The total power consumption of the devices attached to the group.
          format: double
          type: number
        totalPowerConsumptionUnit:
          description: The unit in which the total power consumption of the devices attached to the group is being expressed.
          type: string
        updateTimestamp:
          description: The data collection time (as an Epoch time, in seconds).
          format: int64
          type: integer
        url:
          description: The link to the group details.
          example: "#/green-it/groups/13/details"
          type: string
      type: object
    ReinitializeActionConfiguration:
      description: The deserialized form of the <b>Reinitialize</b> service's request payload.
      properties:
        resetAlertActions:
          description: When set to <em>1</em>, removes all manually set Alert Actions and reverts to basic default actions i.e. trigger a PATROL event and annotate a parameter graph.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetAlertAfterNTimes:
          description: When set to <em>1</em>, resets the number of times thresholds can be breached before triggering an alert to their default values (1 time) for numeric, discrete, connector status and present parameters.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetDebugMode:
          description: When set to <em>1</em>, deactivates the debug mode when it was manually enabled.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetDiscoveryAndPollingIntervals:
          description: When set to <em>1</em>, removes all user-defined frequencies for discovery and polling processes to their default values (respectively 1 hour and 2 minutes).
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetJavaSettings:
          description: When set to <em>1</em>, removes the custom Java settings (path and credentials). The KM will try to automatically find a suitable JRE.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetOtherAlertSettings:
          description: When set to <em>1</em>, reverts any manually performed configuration changes to the default Hardware Sentry values.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetRemovedPausedObjectList:
          description: When set to <em>1</em>, reactivates the monitoring of all paused or removed objects.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetReportSettings:
          description: When set to <em>1</em>, clears the report schedule.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
        resetThresholds:
          description: When set to <em>1</em>, resets all thresholds.
          enum:
            - 0
            - 1
          example: 1
          format: int32
          type: integer
      type: object
    ResultPage:
      description: Encapsulates a list of results.
      properties:
        items:
          description: The list of currently accessible results.
          items:
            properties: {}
            type: object
          type: array
        restrictedRights:
          description: If <em>true</em>, indicates that you are denied access to part of, or all the results.
          example: false
          type: boolean
        total:
          description: The total number of accessible results, including the results not listed in <em>items</em>.
          format: int64
          type: integer
      type: object
    ServiceSummary:
      properties:
        costUnit:
          description: The currency in which all energy cost values are being expressed.
          type: string
        deviceSummaries:
          description: "The list of devices attached to the service.<br><u>Note</u>: when using the <b>Services</b> service, this list is always empty. It is populated only when using the <b>Service Details</b> service."
          items:
            $ref: "#/components/schemas/DeviceSummary"
          type: array
        emittedCo2Unit:
          description: The unit in which all CO<sub>2</sub> emission values are being expressed.
          type: string
        energyConsumptionUnit:
          description: The unit in which all energy consumption values are being expressed.
          type: string
        heatingMargin:
          description: The lowest heating margin among the heating margins of the devices attached to the service.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginCoverage:
          description: The percentage of devices attached to the service, whose heating margin could be found.<br><u>Note</u>:This field will only be present if a value could be found.
          format: double
          type: number
        heatingMarginDeviceName:
          description: The name of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginDeviceUrl:
          description: The link to the details of the device having the lowest heating margin.<br><u>Note</u>:This field will only be present if a value could be found.
          type: string
        heatingMarginUnit:
          description: The unit in which the heating margin of the service is being expressed.
          type: string
        historyParentIdKey:
          description: The name of the key used to identify the service in the history table.
          type: string
        id:
          description: The ID of the service.
          example: 2+mc.pncell_dev-tsim.internal.sentrysoftware.net.1f485a2f.0
          type: string
        name:
          description: The name of the service.
          type: string
        numberOfDevices:
          description: The number of devices attached to the service.
          format: int32
          type: integer
        oneDayConfidence:
          description: The confidence score (percentage) for the daily energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneDayCost:
          description: The daily cost of the energy consumed by the devices attached to the service.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneDayEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the service during one day.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneDayEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the service during one day.
          format: double
          type: number
        oneMonthConfidence:
          description: The confidence score (percentage) for the monthly energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneMonthCost:
          description: The monthly cost of the energy consumed by the devices attached to the service.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneMonthEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the service during one month.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneMonthEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the service during one month.
          format: double
          type: number
        oneYearConfidence:
          description: The confidence score (percentage) for the yearly energy consumption, energy cost and CO<sub>2</sub> emission values.<br>The lower the confidence score, the more extrapolated the values are.
          format: double
          type: number
        oneYearCost:
          description: The yearly cost of the energy consumed by the devices attached to the service.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneYearEmittedCo2:
          description: The quantity of CO<sub>2</sub> emitted by the devices attached to the service in one year.<br><u>Note</u>:This field will only be present if a value could be computed.
          format: double
          type: number
        oneYearEnergyConsumption:
          description: The quantity of energy consumed by the devices attached to the service during one year.
          format: double
          type: number
        providerId:
          description: The ID of the server providing the service.
          example: "42"
          type: string
        totalPowerConsumption:
          description: The total power consumption of the devices attached to the service.
          format: double
          type: number
        totalPowerConsumptionUnit:
          description: The unit in which the total power consumption of the devices attached to the service is being expressed.
          type: string
        updateTimestamp:
          description: The data collection time (as an Epoch time, in seconds).
          format: int64
          type: integer
        url:
          description: The link to the service details.
          example: "#/green-it/services/2+mc.pncell_dev-tsim.internal.sentrysoftware.net.1f485a2f.0/details"
          type: string
      type: object
  securitySchemes:
    Cookie:
      in: header
      name: Cookie
      type: apiKey
