openapi: 3.1.0
info:
  version: v2
  title: HPE GreenLake for Wellness
  description: >-
    The HPE GreenLake for Wellness APIs facilitates the automation of IT
    operations by enabling you to monitor wellness events related to your
    infrastructure. To further streamline integration workflows, these APIs
    provide various filtering options and KPI metrics.
  contact: {}
  license:
    name: HPE License
    url: https://www.hpe.com/us/en/software/licensing.html
servers:
  - url: https://global.api.greenlake.hpe.com
tags:
  - name: Events
    description: "Wellness events provide health insights about your\_HPE\_products and services and show information about automatically created support cases. Wellness events allow you to&#58; <ul> <li>Identify potential vulnerabilities before they affect your environment.</li> <li>Proactively monitor the health of your\_HPE\_products and services.</li> <li>View AI-powered recommendations about events.</li></ul>"
  - name: Support Cases
    description: Create and retrieve support cases associated with wellness events.
  - name: Async Operations
    description: "Asynchronous APIs are APIs that do not return data immediately. This means you can make multiple requests at once. A high-level overview of the asynchronous API process&#58; <ol><li>You make a request to an asynchronous API endpoint.</li> <li>HPE GreenLake returns an acknowledgment, typically a `202 Accepted`, and provides a URI to the async-operation resource in the\_`Location`\_header. <li>HPE GreenLake continues to process the request.</li> <li>When completed, HPE GreenLake returns the requested information.</li></ol>"
security:
  - Bearer: []
paths:
  /wellness/v2/events:
    get:
      tags:
        - Events
      summary: Get a list of wellness events
      description: >-
        Retrieves a list of wellness events, in descending order of creation
        time so that the most recent events are listed first.<br><br>

        __Pagination__&mdash; This endpoint exclusively supports cursor-based
        pagination, using the `next` query parameter.<br><br>
        __Filtering__&mdash; The following are the supported filter
        parameters&#58;

        * `condition/severity`

        * `status/currentState`

        * `supportCase/caseNumber`

        * `asset/serialNumber`

        * `productName`

        * `serviceName`

        * `region`

        * `serviceManager/id `

        * `flag`

        * `archive`

        * `read`

        * `createdAt`

        * `updatedAt`
      operationId: getAllEvents
      parameters:
        - name: filter
          in: query
          required: false
          description: >-
            The `filter` query parameter is used to filter a set of resources.
            The returned set of resources matches the criteria in the filter
            query parameter. The value of the filter query parameter is a subset
            of [OData V4](https://www.odata.org/documentation/) filter
            expressions consisting of simple comparison operations joined by
            logical operators.
          schema:
            type: string
          examples:
            serialNumber:
              summary: Filter with serial number
              description: Retrieve events that belong to the specified serial number.
              value: asset/serialNumber eq 'CZJ4490026'
            severity:
              summary: Filter with the severity of the condition
              description: Retrieve events with severity 'warning'.
              value: condition/severity eq 'warning'
            product:
              summary: Filter with product
              description: Retrieve events that belong to productName 'HPE Alletra 9000'.
              value: productName eq 'HPE Alletra 9000'
            service:
              summary: Filter with multiple services
              description: Retrieve events that belong to specified services.
              value: serviceName in ('Storage', 'Compute')
            region:
              summary: Filter with device region
              description: Retrieve events that belong to devices in the given region.
              value: region eq 'us-east'
            service-manager:
              summary: Filter with Service Manager ID
              description: Retrieve events that belong to specified Service Manager.
              value: serviceManager/id eq '0001b67f-9518-4d0f-9b17-70cec7763632'
            service-manager-region:
              summary: Filter with Service Manager and Region
              description: >-
                Retrieve events that belong to specified Service Manager and a
                Region.
              value: >-
                region eq 'us-east' and serviceManager/id eq
                '0001b67f-9518-4d0f-9b17-70cec7763632'
            flag:
              summary: Filter with flag
              description: Retrieve events that are flagged.
              value: flag eq true
            archive:
              summary: Filter with archive
              description: Retrieve events that are not archived.
              value: archive ne true
            contains:
              summary: Filter with case number of the support case
              description: >-
                Retrieve events that contains the given number in the support
                case number.
              value: contains(supportCase/caseNumber, '523')
            lt-time-range:
              summary: Filter with timestamp (less than)
              description: Retrieve events created before the given timestamp.
              value: createdAt lt 2021-05-12T07:20:00.00Z
            btw-time-range:
              summary: Filter with timestamp (between)
              description: Retrieve events created between the given timestamps.
              value: >-
                createdAt gt 2021-05-12T07:20:00.00Z and createdAt lt
                2022-05-12T07:20:00.00Z
            severity-product:
              summary: Filter with the severity of the condition and product
              description: >-
                Retrieve events with severity 'warning' and that belong to
                productName 'HPE Alletra 9000'.
              value: >-
                condition/severity eq 'warning' and productName eq 'HPE Alletra
                9000'
        - name: text-search
          required: false
          in: query
          description: >-
            Searches for wellness events that contain the given search string. A
            search string can include alphanumeric characters, a space character
            (Unicode `U+0020`) or a hyphen (-). Apart from space characters and
            hyphens, no other special characters are supported. Including an
            unsupported character might cause inaccurate results. The minimum
            length of a search string is 2 characters and maximum is 100
            characters. When performing a search, it's important to use specific
            terms. A generic search term may cause the search to timeout.

            * `title`

            * `condition.category`

            * `condition.name`

            * `condition.severity`

            * `asset.name`

            * `asset.product`

            * `asset.serialNumber`

            * `status.currentStatus`

            * `supportCase.casenumber`

            * `supportCase.casestatus`

            * `serviceName`

            * `productName`

            <br><br>__Note:__ You can use both the `filter` and `text-search`
            parameters in the same query. If both are provided, the filter is
            applied first, and then text-search is performed on the filtered
            results.
          schema:
            type: string
            minLength: 2
            maxLength: 100
          examples:
            temperature:
              summary: Search for wellness events that contain the string `temperature`
              value: temperature
        - name: select
          required: false
          in: query
          description: >-
            The `select` query parameter is used to limit the properties
            returned for support cases. The value of the `select` query
            parameter is a comma separated list of properties. All properties
            are returned if the select parameter is omitted.<br><br> __Note:__
            Only the `total` property is supported.
          schema:
            type: string
          examples:
            total:
              summary: Get total count
              description: Retrieve the total count of events for the current filter.
              value: total
        - name: limit
          in: query
          description: Specifies the number of resources (wellness events) to fetch.
          schema:
            type: integer
            format: int32
            minimum: 1
            maximum: 200
            default: 100
        - name: next
          in: query
          description: >-
            The `next` parameter represents the ID of an event used as a
            pagination cursor to retrieve the next set of wellness events. The
            parameter must be a valid UUID and be a part of the response of the
            previous request.
          schema:
            type: string
          examples:
            event-id:
              description: Event ID as pagination cursor
              value: 0908777a-788f-45da-afb8-295c626e4d14
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetEventListResponse'
              examples:
                events:
                  summary: List of events
                  value:
                    items:
                      - id: 0001b67f-9518-4d0f-9b17-70cec7763632
                        type: wellness/event
                        resourceUri: >-
                          /wellness/v2/events/0001b67f-9518-4d0f-9b17-70cec7763632
                        title: >-
                          Potential increase in the frequency of reboots on Gen
                          9 Servers
                        description:
                          mediaType: text/plain
                          content: >-
                            Potential increase in the frequency of reboots on
                            Gen 9 Servers
                        asset:
                          name: SRBACKUP01ILO.jansen.local
                          serialNumber: CZJ4490026
                        condition:
                          urn: >-
                            urn:proliant:Potential increase in the frequency of
                            reboots on Gen 9 Servers
                          severity: notice
                          name: >-
                            Potential increase in the frequency of reboots on
                            Gen 9 Servers
                          category: Firmware/Drivers
                        status:
                          currentState: open
                        causes:
                          - title: >-
                              <p>The system experienced an unexpected reset or
                              shutdown with no errors logged.</p>
                        supportCase:
                          id: '73695013'
                          caseNumber: '29160'
                          status: open
                          resourceUri: /wellness/v2/support-cases/73695013
                          user: sample-user@gmail.com
                          crm: salesforce
                          createdAt: '2023-01-27T18:17:37.607Z'
                          updatedAt: '2023-01-29T23:37:37.607Z'
                          generation: 2
                          type: wellness/support-case
                        createdAt: '2023-01-27T18:17:37.607Z'
                        updatedAt: '2023-01-28T18:17:37.607Z'
                        generation: 2
                        region: us-east
                        serviceManager:
                          id: 0001b67f-9518-4d0f-9b17-70cec7763632
                          resourceUri: >-
                            /wellness/v2/service-managers/0001b67f-9518-4d0f-9b17-70cec7763632
                      - id: 0001a481-e47c-4f5e-9b62-36221cbaec99
                        type: wellness/event
                        resourceUri: >-
                          /wellness/v2/events/0001a481-e47c-4f5e-9b62-36221cbaec99
                        title: Active Health System exceeds size threshold
                        description:
                          mediaType: text/plain
                          content: Active Health System exceeds size threshold
                        asset:
                          name: ilo-cm1.yvr.com
                          serialNumber: CZJ4490026
                        condition:
                          urn: >-
                            urn:proliant:Active Health System exceeds size
                            threshold
                          severity: critical
                          name: Active Health System exceeds size threshold
                          category: Firmware/Drivers
                        status:
                          currentState: open
                        causes:
                          - title: >-
                              <p>Active Health System (AHS) exceeds size
                              threshold.</p>
                        supportCase:
                          id: '43997887'
                          caseNumber: '89903'
                          type: wellness/support-case
                          resourceUri: /wellness/v2/support-cases/43997887
                          createdAt: '2023-03-01T17:25:39.984Z'
                          updatedAt: '2024-02-02T16:32:19.984Z'
                          generation: 1
                          status: open
                        createdAt: '2023-03-01T17:25:39.984Z'
                        updatedAt: '2024-01-09T23:37:37.607Z'
                        generation: 0
                        flag: true
                        read: true
                        region: us-east
                        serviceManager:
                          id: 0001b67f-9518-4d0f-9b17-70cec7763632
                          resourceUri: >-
                            /wellness/v2/service-managers/0001b67f-9518-4d0f-9b17-70cec7763632
                    count: 2
                    next: 0001b67f-9518-4d0f-9b17-70cec7763632
                    total: 300
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-query-params:
                  summary: Invalid query params
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENTS_INVALID_REQUEST_PARAMS
                    message: Invalid query params
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                invalid-select:
                  summary: Invalid select query param
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENTS_INVALID_SELECT
                    message: Only total is supported for select query param
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '422':
          description: Search Timeout - Search too wide causing timeout
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENTS_SEARCH_TIMED_OUT
                    message: >-
                      The specified search is too wide. Try using more specific
                      terms to narrow it down.
                    debugId: 38bf3d78-d2c9-4bff-9b0f-197744635346
                    httpStatusCode: 422
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Please contact HPE support
            if it is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Please re-try and contact HPE support if
            the error is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENTS_NEXT_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
                unexpected-1:
                  summary: Unexpected error 1
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENTS_UNEXPECTED_ERROR_1
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
  /wellness/v2/events/bulk:
    patch:
      tags:
        - Events
      operationId: updateEventsBulk
      summary: Update multiple wellness events
      description: >-
        Update multiple wellness events in a single request. Only the attributes
        `flag`, `read`, and `archive` can be updated. This is a non-atomic
        operation - if an error occurs while updating a resource, the operation
        continues for the remaining resources. Maximum of 20 events can be
        updated in a single request.
      requestBody:
        description: Request body containing list of event IDs and common updates to apply
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/BulkPatchEventReqBody'
            examples:
              bulk-mark-read:
                summary: Mark multiple wellness events as Flagged
                value:
                  items:
                    - id: 0908777a-788f-45da-afb8-295c626e4d14
                    - id: 0908777a-788f-45da-afb8-295c626e4d15
                    - id: 0908777a-788f-45da-afb8-295c626e4d16
                  data:
                    flag: true
              bulk-read-archive:
                summary: Read and Archive multiple wellness events
                value:
                  items:
                    - id: 0908777a-788f-45da-afb8-295c626e4d14
                    - id: 0908777a-788f-45da-afb8-295c626e4d15
                  data:
                    read: true
                    archive: true
        required: true
      responses:
        '200':
          description: >-
            Bulk update operation completed. Individual events may have
            succeeded or failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkPatchEventResponse'
              examples:
                bulk-update-success:
                  summary: Successful bulk update with some failures
                  value:
                    successCount: 2
                    errorCount: 1
                    successes:
                      - id: 0908777a-788f-45da-afb8-295c626e4d14
                      - id: 0908777a-788f-45da-afb8-295c626e4d15
                    errors:
                      - id: 0908777a-788f-45da-afb8-295c626e4d16
                        httpStatusCode: 404
                        errorCode: HPE_GL_WELLNESS_BULK_PATCH_EVENT_NOT_FOUND
                        message: Wellness event not found
                        debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-request-body:
                  summary: Invalid request body
                  value:
                    errorCode: HPE_GL_WELLNESS_BULK_PATCH_INVALID_REQUEST_BODY
                    message: Invalid request body format
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                empty-items:
                  summary: Empty items array
                  value:
                    errorCode: HPE_GL_WELLNESS_BULK_PATCH_EMPTY_ITEMS
                    message: Items array cannot be empty
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                too-many-items:
                  summary: Too many items in request
                  value:
                    errorCode: HPE_GL_WELLNESS_BULK_PATCH_TOO_MANY_ITEMS
                    message: >-
                      Request contains more than 20 items. Maximum allowed is 20
                      items per request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '403':
          description: Forbidden - The user does not have permission to update the resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                forbidden:
                  summary: Forbidden
                  value:
                    errorCode: HPE_GL_WELLNESS_BULK_PATCH_FORBIDDEN
                    message: User does not have permission to update events
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 403
        '429':
          description: >-
            You have exceeded the allowed rate limit. Contact HPE support if it
            is an error.
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  summary: Rate Limited
                  value: 'true'
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Retry and contact HPE support if the error
            is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_BULK_PATCH_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists contact HPE
                      support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
  /wellness/v2/events/{id}:
    get:
      tags:
        - Events
      operationId: getEvent
      summary: Get wellness event with specific ID
      description: Retrieves a wellness event identified by the given ID.
      parameters:
        - name: id
          in: path
          required: true
          description: The wellness event ID.
          schema:
            type: string
            format: uuid
          examples:
            equals:
              summary: Example with a specific event ID
              description: Returns event that match the given wellness event ID.
              value: 0908777a-788f-45da-afb8-295c626e4d14
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WellnessEvent'
              examples:
                event:
                  summary: Single event
                  value:
                    id: 0001b67f-9518-4d0f-9b17-70cec7763632
                    type: wellness/event
                    resourceUri: /wellness/v2/events/0001b67f-9518-4d0f-9b17-70cec7763632
                    title: >-
                      Potential increase in the frequency of reboots on Gen 9
                      Servers
                    description:
                      mediaType: text/plain
                      content: >-
                        Potential increase in the frequency of reboots on Gen 9
                        Servers
                    asset:
                      name: simba-lion-king
                      serialNumber: CZJ4490026
                    condition:
                      urn: >-
                        urn:proliant:Potential increase in the frequency of
                        reboots on Gen 9 Servers
                      severity: notice
                      name: >-
                        Potential increase in the frequency of reboots on Gen 9
                        Servers
                      category: Firmware/Drivers
                    status:
                      currentState: open
                    causes:
                      - title: >-
                          <p>The system experienced an unexpected reset or
                          shutdown with no errors logged.</p>
                    supportCase:
                      id: '73695013'
                      caseNumber: '29160'
                      type: wellness/support-case
                      resourceUri: /wellness/v2/support-cases/73695013
                      createdAt: '2023-01-27T18:17:37.607Z'
                      updatedAt: '2024-01-09T23:37:37.607Z'
                      generation: 1
                    createdAt: '2023-01-27T18:17:37.607Z'
                    updatedAt: '2024-01-09T23:37:37.607Z'
                    generation: 0
                    flag: true
                    read: true
                    region: us-east
                    serviceManager:
                      id: 0001b67f-9518-4d0f-9b17-70cec7763632
                      resourceUri: >-
                        /wellness/v2/service-managers/0001b67f-9518-4d0f-9b17-70cec7763632
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-query-params:
                  summary: Invalid query params
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENT_INVALID_REQUEST_PARAMS
                    message: Invalid query params
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                invalid-event-id:
                  summary: Invalid event id
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENT_INVALID_EVENT_ID_PARAM
                    message: Invalid event ID
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '404':
          description: Bad Request. A wellness event does not exist with the given ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                not-found:
                  summary: Not found error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENT_EVENT_NOT_FOUND
                    message: Wellness event not found
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 404
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  summary: Rate Limited
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Contact HPE support if it
            is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Retry and contact HPE support if the error
            is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_EVENT_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
    patch:
      tags:
        - Events
      operationId: updateEvent
      summary: Update wellness event with specific ID
      description: >-
        Update a wellness event identified by the given ID. Only the attributes
        `flag`, `read`, and `archive` can be updated.
      parameters:
        - name: id
          in: path
          required: true
          description: Event ID
          schema:
            type: string
            format: uuid
            default: 0908777a-788f-45da-afb8-295c626e4d14
          examples:
            equals:
              summary: Example with specific event ID
              description: Update specific event
              value: 0908777a-788f-45da-afb8-295c626e4d14
      requestBody:
        description: Request body can have the following attributes
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/PatchEventReqBody'
            examples:
              single-tag-read:
                summary: Mark a wellness event as read
                value:
                  read: true
              single-tag-archive:
                summary: Archive a wellness event
                value:
                  archive: true
              multiple-tags:
                summary: Mark as unread and flag the wellness event
                value:
                  read: false
                  flag: true
        required: true
      responses:
        '200':
          description: Successfully updated the given wellness event
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PatchEventResponse'
              examples:
                update-event:
                  summary: Update wellness event
                  value:
                    event:
                      resourceUri: /wellness/v2/events/0001b67f-9518-4d0f-9b17-70cec7763632
                      id: 0001b67f-9518-4d0f-9b17-70cec7763632
                    success: true
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                InvalidEventId:
                  value:
                    errorCode: HPE_GL_WELLNESS_PATCH_EVENT_INVALID_EVENT_ID_PARAM
                    message: Invalid event id
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                EmptyReqBody:
                  value:
                    errorCode: HPE_GL_WELLNESS_PATCH_EVENTS_EMPTY_REQUEST_BODY
                    message: >-
                      At least one of the read, flag or archive fields must be
                      present
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '404':
          description: A wellness event does not exist with the given ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                not-found:
                  summary: Not found error
                  value:
                    errorCode: HPE_GL_WELLNESS_PATCH_EVENT_EVENT_NOT_FOUND
                    message: A wellness event doesn't exist with the given ID
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 404
        '422':
          description: Invalid request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-request-body:
                  summary: Invalid request body error
                  value:
                    errorCode: HPE_GL_WELLNESS_PATCH_EVENTS_INVALID_REQUEST_BODY
                    message: Invalid request body
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 422
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  summary: Rate limit exceeded
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Contact HPE support if it
            is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Retry and contact HPE support if the error
            is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected-error:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_PATCH_EVENT_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
  /wellness/v2/support-cases:
    post:
      tags:
        - Support Cases
      operationId: createSupportCase
      summary: Create a support case
      description: >-
        Create a support case for a wellness event. This is an **asynchronous
        operation**. Use the `URI` specified in the `Location` response header
        to retrieve the status of the case creation operation.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSupportCaseReqBody'
            examples:
              create-support-case:
                summary: Create support case for a wellness event
                value:
                  event:
                    resourceUri: /wellness/v2/events/00000010-7e93-4046-9adc-1397cd6ab2d1
                    id: 00000010-7e93-4046-9adc-1397cd6ab2d1
        required: true
      responses:
        '202':
          description: OK
          headers:
            Location:
              description: URI to get details of the support case creation operation.
              schema:
                type: string
                format: uri-reference
              examples:
                async-op:
                  summary: URI to retrieve the status of the case creation operation
                  value: >-
                    /wellness/v2/async-operations/00000010-7e93-4046-9adc-1397cd6ab2d1
          content:
            application/json: {}
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-req-body:
                  value:
                    errorCode: HPE_GL_WELLNESS_POST_SUPPORT_CASE_INVALID_REQUEST_BODY
                    message: Invalid request body
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-token:
                  summary: Invalid Token Error
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '404':
          description: Wellness event doesn't exist with the given ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                id-not-found:
                  summary: Event ID not found
                  value:
                    errorCode: HPE_GL_WELLNESS_POST_SUPPORT_CASE_EVENT_NOT_FOUND
                    message: Wellness event doesn't exist with the given ID
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 404
        '409':
          description: >-
            Conflict - Support case creation is already in progress for this
            event
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                case-creation-pending:
                  summary: Support Case creation is already in progress
                  value:
                    errorCode: HPE_GL_WELLNESS_POST_SUPPORT_CASE_PENDING_CASE_CREATION
                    message: >-
                      Support case creation is already in progress for this
                      event
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 409
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                when-exceeded:
                  summary: Rate limit exceeded
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Contact HPE support if it
            is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected server error. Retry and contact HPE Support if the error
            is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected-error:
                  value:
                    errorCode: HPE_GL_WELLNESS_POST_SUPPORT_CASE_UNEXPECTED_ERROR
                    message: >-
                      unexpected error occurred while creating support case, if
                      the issue persists, contact HPE Support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
    get:
      tags:
        - Support Cases
      operationId: getSupportCases
      summary: Get a list of support cases
      description: >-
        Retrieves a list of support cases associated with wellness events. The
        results are in descending order of creation time, so that the most
        recent support cases are listed first.<br><br>

        __Pagination__&#58; This endpoint exclusively supports cursor-based
        pagination, using the `next` query parameter.<br><br> __Filtering__&#58;
        The following are the supported filter parameters &#58;

        * `event/id` &mdash; The `event/id` filter parameter only supports the
        `eq` operator and its value should be a valid wellness event ID.

        * `caseNumber`

        * `status`

        * `createdAt`

        * `updatedAt`

        * `event/condition/severity`

        * `event/status/currentState`

        * `event/productName`

        * `event/serviceName`

        * `event/createdAt`

        * `event/updatedAt`
      parameters:
        - name: filter
          in: query
          required: false
          description: >-
            The `filter` query parameter is used to filter a set of resources.
            The returned set of resources matches the criteria in the filter
            query parameter. The value of the filter query parameter is a subset
            of [OData V4](https://www.odata.org/documentation/) filter
            expressions consisting of simple comparison operations joined by
            logical operators.
          schema:
            type: string
          examples:
            event-id:
              summary: >-
                Retrieve the support case details associated with the given
                wellness event
              value: event/id eq 3fa85f64-5717-4562-b3fc-2c963f66afa6
            event-timestamp-lt:
              summary: >-
                Retrieve a list of support cases for wellness events created
                before the given timestamp
              value: event/createdAt lt 2021-05-12T07:20:00.00Z
            event-timestamp-gt:
              summary: >-
                Retrieve a list of support cases for wellness events created
                after the given timestamp
              value: event/createdAt gt 2021-05-12T07:20:00.00Z
            lt-time-range:
              summary: >-
                Retrieve a list of support cases created before the given
                timestamp
              value: createdAt lt 2021-05-12T07:20:00.00Z
            btw-time-range:
              summary: >-
                Retrieve a list of support cases created between given
                timestamps
              value: >-
                createdAt gt 2021-05-12T07:20:00.00Z and createdAt lt
                2022-05-12T07:20:00.00Z
        - name: select
          in: query
          description: >-
            The `select` query parameter is used to limit the properties
            returned for support cases. The value of the `select` query
            parameter is a comma separated list of properties. All properties
            are returned if the select parameter is omitted.<br><br> __Note:__
            Only the `total` property is supported.
          schema:
            type: string
          examples:
            total:
              summary: Get only the count of support cases
              description: Retrieve only the count of support cases for the current filter.
              value: total
        - name: limit
          in: query
          description: Specifies the number of support cases to be returned.
          schema:
            type: integer
            format: int32
            minimum: 1
            maximum: 200
            default: 100
        - name: next
          in: query
          description: >-
            Specifies the event ID, which acts as the pagination cursor for the
            next page of support cases.
          schema:
            type: string
          examples:
            event-id:
              summary: Event ID
              description: Event ID
              value: 0908777a-788f-45da-afb8-295c626e4d14
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetSupportCaseListResponse'
              examples:
                support-cases:
                  summary: List of support cases
                  value:
                    items:
                      - id: '86325656'
                        caseNumber: '93793'
                        type: wellness/support-case
                        resourceUri: /wellness/v2/support-cases/86325656
                        event:
                          resourceUri: >-
                            /wellness/v2/events/0000030d-0ba6-4d15-b3c4-e3d3c4391ec9
                          id: 0000030d-0ba6-4d15-b3c4-e3d3c4391ec9
                        createdAt: '2024-01-06T12:17:37.606Z'
                        updatedAt: '2024-01-09T23:37:37.606Z'
                        generation: 1
                        status: closed
                      - id: '41495911'
                        caseNumber: '47758'
                        type: wellness/support-case
                        resourceUri: /wellness/v2/support-cases/41495911
                        event:
                          resourceUri: >-
                            /wellness/v2/events/00006e2e-e02c-4cb3-ba40-d9d8ae2fdb24
                          id: 00006e2e-e02c-4cb3-ba40-d9d8ae2fdb24
                        createdAt: '2023-11-12T12:18:59.983Z'
                        updatedAt: '2024-02-02T16:32:19.983Z'
                        generation: 1
                        status: open
                    count: 2
                    next: 000000d0-a3c9-4dc2-aacb-d85973efbdf3
                    total: 300
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-request-params:
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASES_INVALID_REQUEST_PARAMS
                    message: Invalid request params
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                invalid-select-param:
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASES_INVALID_SELECT
                    message: Only total is supported for select request param
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-token-error:
                  summary: Invalid AUTH Token
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limit-exceed:
                  summary: Rate limit exceeded
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit, Please contact HPE Support
            if its an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Please re-try and contact HPE support if
            the error is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected-error:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASES_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
  /wellness/v2/support-cases/{id}:
    get:
      tags:
        - Support Cases
      operationId: getSupportCase
      summary: Get support case with specific ID
      description: Retrieves a support case identified by the given ID.
      parameters:
        - name: id
          in: path
          required: true
          description: The support case ID.
          schema:
            type: string
          examples:
            equals:
              summary: Example with specific Support Case ID
              description: Returns support case that match given event ID.
              value: ab23434cs
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/supportCase'
              examples:
                support-case:
                  summary: Support Case
                  value:
                    id: '41495911'
                    caseNumber: '47758'
                    type: wellness/support-case
                    resourceUri: /wellness/v2/support-cases/41495911
                    event:
                      resourceUri: /wellness/v2/events/00006e2e-e02c-4cb3-ba40-d9d8ae2fdb24
                      id: 00006e2e-e02c-4cb3-ba40-d9d8ae2fdb24
                    createdAt: '2023-11-12T12:18:59.983Z'
                    updatedAt: '2024-02-02T16:32:19.983Z'
                    generation: 1
                    status: open
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-request-params:
                  summary: Invalid request params
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASE_INVALID_ID_PARAM
                    message: Invalid request params
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                invalid-support-case-id:
                  summary: Invalid support case id
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASE_INVALID_ID_PARAM
                    message: Invalid support case ID
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '404':
          description: Bad Request, A support case doesn't exist with the given ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                not-found:
                  summary: Not found error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASE_ID_NOT_FOUND
                    message: support case not found
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 404
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  summary: Rate Limited
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Please contact HPE support
            if it is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Please re-try and contact HPE support if
            the error is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_SUPPORT_CASE_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
  /wellness/v2/async-operations:
    get:
      tags:
        - Async Operations
      operationId: getAllAsyncOperations
      summary: Get a list of asynchronous operations
      description: >-
        Retrieves a list of all asynchronous operations organized in descending
        order based on their creation time. This ensures the most recent
        asynchronous operations are presented first.<br><br>

        __Pagination__&#58; This endpoint exclusively supports cursor-based
        pagination.<br><br> __Filtering__&#58; The following are the supported
        filter parameters&#58;

        * `state`&mdash; The `state` filter parameter only supports the `eq`
        operator and its value should be a valid string.

        * `createdAt`

        * `updatedAt`

        * `endedAt`

        * `startedAt`
      parameters:
        - name: filter
          in: query
          required: false
          description: >-
            The `filter` query parameter is used to filter a set of resources.
            The returned set of resources matches the criteria in the filter
            query parameter. The value of the filter query parameter is a subset
            of [OData V4](https://www.odata.org/documentation/) filter
            expressions consisting of simple comparison operations joined by
            logical operators.
          schema:
            type: string
          examples:
            state:
              summary: >-
                Retrieve a list of asynchronous operations that are in the given
                `state`
              value: state eq SUCCEEDED
            aOp-timestamp-lt:
              summary: >-
                Retrieve a list of asynchronous operations initiated before the
                given timestamp
              value: createdAt lt 2021-05-12T07:20:00.00Z
            aOp-timestamp-gt:
              summary: >-
                Retrieve a list of asynchronous operations initiated after the
                given timestamp
              value: createdAt gt 2021-05-12T07:20:00.00Z
            aOp-start-lt:
              summary: >-
                Retrieve a list of asynchronous operations that went into the
                `RUNNING` state after the given timestamp
              value: startedAt gt 2021-05-12T07:20:00.00Z
            aOp-btw-time-range:
              summary: >-
                Retrieve a list of asynchronous operations initiated between the
                given timestamps
              value: >-
                createdAt gt 2021-05-12T07:20:00.00Z and createdAt lt
                2022-05-12T07:20:00.00Z
        - name: limit
          in: query
          description: Specifies the number of asynchronous operations to be returned.
          schema:
            type: integer
            format: int32
            minimum: 1
            maximum: 200
            default: 100
        - name: next
          in: query
          description: >-
            Specifies the ID, which acts as the pagination cursor for the next
            page of asynchronous operations.
          schema:
            type: string
          examples:
            async-op-id:
              summary: Async Operation ID
              description: Async Operation ID
              value: 0908777a-788f-45da-afb8-295c626e4d14
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAsyncOperationListResponse'
              examples:
                async-ops:
                  summary: List of asynchronous operations
                  value:
                    items:
                      - id: 00006e2e-e02c-4cb3-ba40-d9d8ae2fdb24
                        type: wellness/async-operation
                        generation: 1
                        createdAt: '2024-01-01T12:00:00Z'
                        updatedAt: '2024-02-01T12:00:00Z'
                        startedAt: '2024-01-01T12:00:00Z'
                        endedAt: '2024-01-01T12:05:00Z'
                        sourceResourceUri: >-
                          /wellness/v2/events/00000010-7e93-4046-9adc-1397cd6ab2d1
                        state: SUCCEEDED
                        logMessages: null
                        progressPercent: 100
                        error: null
                        suggestedPollingIntervalSeconds: 30
                        timeoutMinutes: 1
                        results:
                          - resourceUri: /wellness/v2/support-cases/343445456
                            name: wellness/support-case
                      - id: 00006e2e-e02c-4cb3-ba40-d9d8ae2fdb25
                        type: wellness/async-operation
                        generation: 1
                        createdAt: '2024-02-01T12:00:00Z'
                        updatedAt: '2024-03-01T12:00:00Z'
                        startedAt: '2024-02-01T12:00:00Z'
                        endedAt: ''
                        sourceResourceUri: >-
                          /wellness/v2/events/00000010-7e93-4046-9adc-1397cd6ab2d2
                        state: RUNNING
                        logMessages: null
                        progressPercent: 0
                        error: null
                        suggestedPollingIntervalSeconds: 30
                        timeoutMinutes: 1
                        results: null
                    count: 2
                    next: 0001b67f-9518-4d0f-9b17-70cec7763632
                    total: 300
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-query-params:
                  summary: Invalid query params
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OPS_REQUEST_PARAMS
                    message: Invalid query params
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                invalid-select:
                  summary: Invalid select query param
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OPS_INVALID_SELECT
                    message: Only total is supported for select query param
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Please contact HPE support
            if it is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected Server Error. Please re-try and contact HPE support if
            the error is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OPS_NEXT_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
                unexpected-1:
                  summary: Unexpected error 1
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OPS_UNEXPECTED_ERROR_1
                    message: >-
                      Unexpected error, if the problem persists please contact
                      HPE support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
  /wellness/v2/async-operations/{id}:
    get:
      tags:
        - Async Operations
      operationId: getAsyncOperation
      summary: Get asynchronous operation details
      description: Retrieves asynchronous operation details identified with a specific ID.
      parameters:
        - name: id
          in: path
          required: true
          description: >-
            The asynchronous operation `id` returned in an ansychronous API
            response.
          schema:
            type: string
            format: uuid
          examples:
            equals:
              summary: Example with specific ayschronous operation ID
              description: >-
                Returns details of the asynchronous operation that matches the
                given ID.
              value: 0908777a-788f-45da-afb8-295c626e4d14
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncOperation'
              examples:
                async-operation:
                  summary: Asynchronous Operation
                  value:
                    id: 00006e2e-e02c-4cb3-ba40-d9d8ae2fdb24
                    type: wellness/async-operation
                    generation: 1
                    createdAt: '2024-01-01T12:00:00Z'
                    updatedAt: '2024-02-01T12:00:00Z'
                    startedAt: '2024-01-01T12:00:00Z'
                    endedAt: '2024-01-01T12:05:00Z'
                    sourceResourceUri: /wellness/v2/events/00000010-7e93-4046-9adc-1397cd6ab2d1
                    state: SUCCEEDED
                    logMessages: null
                    progressPercent: 100
                    error: null
                    suggestedPollingIntervalSeconds: 30
                    timeoutMinutes: 1
                    results:
                      - resourceUri: /wellness/v2/support-cases/343445456
                        name: wellness/support-case
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalid-request-params:
                  summary: Invalid request params
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OP_INVALID_REQUEST_PARAMS
                    message: Invalid request params
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
                invalid-async-op-id:
                  summary: Invalid async operation id
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OP_INVALID_ID_PARAM
                    message: Invalid asynchronous operation id
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 400
        '401':
          description: Unauthorized - Invalid JWT token in Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    errorCode: HPE_GL_ERROR_FORBIDDEN
                    message: Invalid JWT token in Request
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 401
        '404':
          description: >-
            Bad Request. An asynchronous operation doesn't exist with the given
            ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                not-found:
                  summary: Not found error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OP_ID_NOT_FOUND
                    message: asynchronous operation id not found
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 404
        '429':
          headers:
            x-envoy-rate-limited:
              description: Rate limit exceeded
              schema:
                type: string
                format: boolean
              examples:
                rate-limited:
                  summary: Rate Limited
                  value: 'true'
          description: >-
            You have exceeded the allowed rate limit. Contact HPE support if it
            is an error.
          content:
            application/json: {}
        '500':
          description: >-
            Unexpected server error. Retry and contact HPE support if the error
            is not resolved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                unexpected:
                  summary: Unexpected error
                  value:
                    errorCode: HPE_GL_WELLNESS_GET_ASYNC_OP_UNEXPECTED_ERROR
                    message: >-
                      Unexpected error, if the problem persists contact HPE
                      support
                    debugId: 75d40213-6776-40ff-a959-89a7514ef7fc
                    httpStatusCode: 500
components:
  securitySchemes:
    Bearer:
      description: >-
        Personal access token compliant with RFC8725 issued by the HPE GreenLake
        platform.
      type: http
      scheme: bearer
      bearerFormat: JWT
  schemas:
    description:
      type: object
      description: Explanation of the wellness event.
      properties:
        mediaType:
          type: string
          description: Specifies the media type of the content.
          enum:
            - text/plain
            - html
        content:
          type: string
          description: A descriptive explanation of the wellness event.
    asset:
      type: object
      description: The device the wellness event belongs to.
      properties:
        name:
          type: string
          description: The serial number or name of the asset.
        serialNumber:
          type: string
          description: The serial number of the asset.
    condition:
      type: object
      description: Specifies details about the nature of the wellness event.
      properties:
        urn:
          type: string
          description: Unique identifier of the condition.
        severity:
          type: string
          description: The severity level of the wellness event.
          enum:
            - critical
            - warning
            - notice
        name:
          type: string
          description: Human-readable name given to the condition.
        category:
          type: string
          description: The category the condition belongs to.
    status:
      type: object
      description: Current status of the wellness event.
      properties:
        currentState:
          type: string
          description: >-
            The current status. It is the most recent computed state for the
            event.
          enum:
            - open
            - resolved
            - timeoutCaseCreation
            - pendingCaseCreation
            - pendingEscalation
            - escalated
            - correlated
            - acknowledged
            - expired
            - error
        correlatedTo:
          type: array
          description: List of wellness events correlated to this wellness event.
          items:
            type: string
    cause:
      type: object
      description: >-
        Short explanation about potential cause for occurrence of this wellness
        event.
      properties:
        title:
          type: string
          description: One sentence summary of potential cause.
        description:
          $ref: '#/components/schemas/description'
        confidence:
          type: integer
          format: int32
          minimum: 0
          maximum: 100
          description: Confidence score for this cause.
        visibility:
          type: string
          description: A visibility filter. Null or absent implies universally visible.
        recommendation:
          type: string
          description: A recommended action to resolve the wellness condition.
    caseHistoryData:
      type: object
      description: History of the actions performed on the support case object.
      properties:
        action:
          type: string
          description: The type of case update, for example, `Case Opened` and `Updated`.
        timeStamp:
          type: string
          format: date-time
          description: Date and time representing when the support case update occurred.
    supportCase:
      type: object
      description: Support case object.
      required:
        - id
        - type
        - generation
        - createdAt
        - updatedAt
      properties:
        id:
          type: string
          description: Unique identifier of the case.
        type:
          type: string
          description: The type of the resource.
          const: wellness/support-case
        resourceUri:
          type: string
          description: URI to the support case.
          format: uri-reference
        caseNumber:
          type: string
          description: The case number assigned to the support case.
        event:
          $ref: '#/components/schemas/EventResourceRef'
        user:
          type: string
          description: >-
            The first and last name of the user that escalated the wellness
            event. Only relevant to manually escalated cases.
        crm:
          type: string
          description: >-
            The customer relationship management (CRM) system used to create the
            support case.
        status:
          type: string
          description: The current status of the support case.
          enum:
            - open
            - closed
            - escalated
            - correlated
            - acknowledged
            - resolved
            - expired
            - error
        caseHistory:
          type: array
          description: Case update history.
          items:
            $ref: '#/components/schemas/caseHistoryData'
        createdAt:
          type: string
          format: date-time
          description: The date and time of support case creation.
        updatedAt:
          type: string
          format: date-time
          description: The last date and time the support case was updated.
        generation:
          type: integer
          format: int32
          minimum: 0
          description: >-
            Monotonically increasing update counter to track the support case
            version.
    asyncOpLogMessage:
      type: object
      description: Progress update object of an asynchronous operation.
      properties:
        message:
          type: string
          description: Description of a recorded state of an asynchronous operation.
        timestamp:
          type: string
          description: The time at which the state of asynchronous operation is recorded.
          format: date-time
    asyncOpResult:
      type: object
      description: Resource that is newly created by the asynchronous operation.
      properties:
        resourceUri:
          type: string
          description: >-
            Reference to the resource that is newly created by the asynchronous
            operation
          format: uri-reference
        name:
          type: string
          description: Name of the resource created.
    WellnessEvent:
      type: object
      description: Wellness Event Object.
      required:
        - id
        - type
        - generation
        - createdAt
        - updatedAt
      properties:
        id:
          type: string
          format: uuid
          description: Primary identifier for the wellness event given by the system.
        type:
          type: string
          description: The type of the resource.
          const: wellness/event
        resourceUri:
          type: string
          description: URI to the wellness event itself (a self link).
          format: uri-reference
        title:
          type: string
          description: Short description of the wellness event.
        description:
          $ref: '#/components/schemas/description'
        asset:
          $ref: '#/components/schemas/asset'
        condition:
          $ref: '#/components/schemas/condition'
        status:
          $ref: '#/components/schemas/status'
        causes:
          type: array
          description: A list of possible root causes for the event condition.
          items:
            $ref: '#/components/schemas/cause'
        supportCase:
          $ref: '#/components/schemas/supportCase'
        correlated:
          type: boolean
          default: false
          description: >-
            Specifies if this wellness event is related to another wellness
            event or not.
        serviceName:
          type: string
          description: The name of the service to which this event belongs.
        productName:
          type: string
          description: The name of the product to which this event belongs.
        createdAt:
          type: string
          format: date-time
          description: Time of wellness event creation.
        updatedAt:
          type: string
          format: date-time
          description: The last date and time the wellness event was updated.
        generation:
          type: integer
          format: int32
          minimum: 0
          description: Monotonically increasing update counter.
        flag:
          type: boolean
          default: false
          description: Specifies if the wellness event has been flagged or not.
        read:
          type: boolean
          default: false
          description: Specifies if the wellness event has been read or not.
        archive:
          type: boolean
          default: false
          description: Specifies if the wellness event has been archived or not.
        supportCaseCreationOpUri:
          type: string
          format: uri-reference
          description: URI to get details of the support case creation operation.
        serviceManager:
          $ref: '#/components/schemas/ServiceManagerRef'
        region:
          type: string
          description: The region of the device to which the wellness event belongs.
    ServiceManagerRef:
      type: object
      description: >-
        Reference to the service manager (application) of the device that
        generated this wellness event.
      required:
        - resourceUri
        - id
      properties:
        resourceUri:
          type: string
          description: >-
            URI to the service manager (application) of the device that
            generated this wellness event.
          format: uri-reference
        id:
          type: string
          description: >-
            Unique ID of the service manager (application) of the device that
            generated this wellness event.
          format: uuid
    EventResourceRef:
      type: object
      description: Reference to the wellness event.
      required:
        - resourceUri
        - id
      properties:
        resourceUri:
          type: string
          description: URI to the wellness event
          format: uri-reference
        id:
          type: string
          description: Unique ID of the the wellness event
          format: uuid
    AsyncOperation:
      type: object
      description: Asynchronous operation object.
      required:
        - id
        - type
        - generation
        - createdAt
        - updatedAt
        - startedAt
        - endedAt
        - sourceResourceUri
        - state
        - logMessages
        - progressPercent
        - error
      properties:
        id:
          type: string
          format: uuid
          description: >-
            Primary identifier for the asynchronous operation given by the
            system.
        type:
          type: string
          description: The type of the resource.
          const: wellness/async-operation
        generation:
          type: integer
          format: int32
          minimum: 0
          description: Monotonically increasing update counter.
        createdAt:
          type: string
          format: date-time
          description: The time at which this asynchronous operation is submitted.
        updatedAt:
          type: string
          format: date-time
          description: The time at which this asynchronous operation is last updated.
        startedAt:
          type: string
          format: date-time
          description: Time at which the operation entered the `RUNNING` state.
        endedAt:
          type: string
          format: date-time
          description: >-
            Time at which the operation completed (entered a `SUCCEEDED`,
            `FAILED`, or `CANCELLED` state).
        sourceResourceUri:
          type: string
          description: URI reference to the resource that initiated the operation.
          format: uri-reference
        state:
          type: string
          description: State of the operation.
          enum:
            - INITIALIZED
            - RUNNING
            - PAUSED
            - TIMEDOUT
            - SUCCEEDED
            - FAILED
        logMessages:
          oneOf:
            - type: array
              description: A list of progress update objects, which may be empty.
              items:
                $ref: '#/components/schemas/asyncOpLogMessage'
              maxItems: 0
            - type: 'null'
              description: No log messages
        progressPercent:
          type: integer
          format: int32
          description: Percent progress of the operation as an integer value of 0 to 100.
          minimum: 0
          maximum: 100
        error:
          oneOf:
            - $ref: '#/components/schemas/ApiError'
            - description: No error
              type: 'null'
        suggestedPollingIntervalSeconds:
          type: integer
          format: int32
          description: Number of seconds recommended for clients to poll for updates.
          minimum: 30
          maximum: 360000
        timeoutMinutes:
          type: integer
          format: int32
          description: >-
            Number of minutes after the last update before the operation moves
            into the `TIMEDOUT` state.
          maximum: 1
          minimum: 1
        results:
          oneOf:
            - type: array
              description: >-
                List of references to resources (other than the source resource)
                which were created, updated, or deleted during the operation.
              items:
                $ref: '#/components/schemas/asyncOpResult'
              maxItems: 1
            - type: 'null'
              description: No resources are created yet
    GetEventListResponse:
      type: object
      description: Event list response object.
      required:
        - items
        - count
        - next
        - total
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/WellnessEvent'
          maxItems: 200
        count:
          type: integer
          format: int32
          minimum: 1
          maximum: 200
          default: 100
          description: Number of items (wellness events) returned.
        next:
          type: string
          description: >-
            The event ID acts as the pagination cursor for the next page of
            resources.
          format: uuid
        total:
          type: integer
          format: int32
          minimum: 0
          description: >-
            Total number of items (wellness events) for the current filter
            criteria.
    PatchEventReqBody:
      type: object
      description: Patch event request body.
      properties:
        read:
          type: boolean
          default: false
          description: Boolean indicating the read status of the wellness event.
        flag:
          type: boolean
          default: false
          description: Boolean indicating whether the wellness event is flagged or not.
        archive:
          type: boolean
          default: false
          description: Boolean indicating whether the wellness event is archived or not.
    PatchEventResponse:
      type: object
      description: Patch Event Response Object.
      properties:
        event:
          $ref: '#/components/schemas/EventResourceRef'
        success:
          type: boolean
          default: false
          description: Indicates whether the event identified by the ID was updated or not.
    CreateSupportCaseReqBody:
      type: object
      description: Create support case request body.
      properties:
        event:
          $ref: '#/components/schemas/EventResourceRef'
    GetSupportCaseListResponse:
      type: object
      description: Support case list response object.
      required:
        - items
        - count
        - next
        - total
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/supportCase'
          maxItems: 200
        count:
          type: integer
          format: int32
          minimum: 0
          maximum: 200
          description: Number of items (support cases) returned.
        next:
          type: string
          description: >-
            Support case ID, which acts as the pagination cursor for the next
            page of support cases.
        total:
          type: integer
          format: int32
          minimum: 0
          description: >-
            Total number of items (support cases) for the current filter
            criteria.
    GetAsyncOperationListResponse:
      type: object
      description: Async Operation List Response Object.
      required:
        - items
        - count
        - next
        - total
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/AsyncOperation'
          maxItems: 200
        count:
          type: integer
          format: int32
          minimum: 1
          maximum: 200
          default: 100
          description: Number of items (asynchronous operations) returned.
        next:
          type: string
          description: >-
            The asynchronous operation ID acts as the pagination cursor for the
            next page of resources.
          format: uuid
        total:
          type: integer
          format: int32
          minimum: 0
          description: >-
            Total number of items (asynchronous operation) for the current
            filter criteria.
    BulkPatchEventReqBody:
      type: object
      description: Bulk patch events request body.
      required:
        - items
        - data
      properties:
        items:
          type: array
          description: A list of wellness event IDs to update.
          minItems: 1
          maxItems: 20
          items:
            type: object
            required:
              - id
            properties:
              id:
                type: string
                format: uuid
                description: The wellness event ID to update.
        data:
          type: object
          description: >-
            Common updates to apply to all specified events. Must follow JSON
            Merge Patch format (RFC 7396).
          properties:
            read:
              type: boolean
              description: Boolean indicating the read status of the wellness event.
            flag:
              type: boolean
              description: Boolean indicating whether the wellness event is flagged or not.
            archive:
              type: boolean
              description: >-
                Boolean indicating whether the wellness event is archived or
                not.
    BulkPatchEventResponse:
      type: object
      description: Bulk patch events response object.
      required:
        - successCount
        - errorCount
        - successes
        - errors
      properties:
        successCount:
          type: integer
          format: int32
          minimum: 0
          maximum: 20
          description: Number of wellness events successfully updated.
        errorCount:
          type: integer
          format: int32
          minimum: 0
          maximum: 20
          description: Number of wellness events not updated.
        successes:
          type: array
          description: List of wellness events successfully updated.
          minItems: 0
          maxItems: 20
          items:
            type: object
            required:
              - id
            properties:
              id:
                type: string
                format: uuid
                description: Unique identifier of the wellness event successfully updated.
        errors:
          type: array
          description: List of errors for wellness events not updated.
          minItems: 0
          maxItems: 20
          items:
            $ref: '#/components/schemas/BulkPatchEventError'
    BulkPatchEventError:
      type: object
      description: Error object for failed bulk patch operations.
      required:
        - id
        - httpStatusCode
        - errorCode
        - message
        - debugId
      properties:
        id:
          type: string
          format: uuid
          description: Identifier of the wellness event that failed to update.
        httpStatusCode:
          type: integer
          format: int32
          minimum: 400
          maximum: 599
          description: HTTP equivalent status code for the error.
        errorCode:
          type: string
          description: >-
            A unique machine-friendly, but human-readable identifier for the
            error.
        message:
          type: string
          description: A user-friendly error message.
        debugId:
          type: string
          format: uuid
          description: A unique identifier for the instance of this error.
        errorDetails:
          type: array
          description: Any general metadata error details about the error.
          items:
            type: object
    ApiError:
      type: object
      description: API Error Object.
      required:
        - errorCode
        - message
        - debugId
        - httpStatusCode
      properties:
        httpStatusCode:
          type: integer
          format: int32
          minimum: 400
          maximum: 599
          description: HTTP equivalent status code
        message:
          type: string
          description: User-friendly error message
        debugId:
          type: string
          format: uuid
          description: Unique identifier for the instance of this error
        errorCode:
          type: string
          description: >-
            A unique machine-friendly, but human-readable identifier for the
            error
