WebSphere Automation REST API

API for WebSphere Automation capabilities including vulnerability management, automated patching, and health monitoring. Accessible through the Swagger UI on OpenShift Container Platform deployments.

OpenAPI Specification

websphere-automation-rest-api.yml Raw ↑
openapi: 3.1.0
info:
  title: WebSphere Automation REST API
  description: >-
    API for WebSphere Automation capabilities including vulnerability management,
    automated patching, health monitoring, and compliance tracking. Accessible
    through the Swagger UI on OpenShift Container Platform deployments.
    Provides centralized management of WebSphere Application Server and Liberty
    environments with automated security vulnerability remediation.
  version: 1.0.0
  license:
    name: IBM International License Agreement
    url: https://www.ibm.com/legal/terms
  contact:
    name: IBM Support
    url: https://www.ibm.com/mysupport
externalDocs:
  description: WebSphere Automation Documentation
  url: https://www.ibm.com/docs/en/ws-automation
servers:
- url: https://automation-api.example.com/v1
  description: WebSphere Automation API Server
security:
- bearerAuth: []
tags:
- name: Servers
  description: Managed server inventory and registration
- name: Vulnerabilities
  description: Security vulnerability tracking and remediation
- name: Fixes
  description: Fix management and automated patching
- name: Health
  description: Health monitoring and status
- name: Compliance
  description: Compliance and configuration drift detection
- name: Notifications
  description: Alert and notification management
paths:
  /servers:
    get:
      operationId: listManagedServers
      summary: List Managed Servers
      description: Returns a list of all servers registered with WebSphere Automation.
      tags:
      - Servers
      parameters:
      - name: type
        in: query
        description: Filter by server type
        schema:
          type: string
          enum:
          - was-traditional
          - liberty
        example: was-traditional
      - name: status
        in: query
        description: Filter by server status
        schema:
          type: string
          enum:
          - active
          - inactive
          - unknown
        example: active
      responses:
        '200':
          description: List of managed servers
          content:
            application/json:
              schema:
                type: object
                properties:
                  servers:
                    type: array
                    items:
                      $ref: '#/components/schemas/ManagedServer'
                  totalCount:
                    type: integer
              examples:
                Listmanagedservers200Example:
                  summary: Default listManagedServers 200 response
                  x-microcks-default: true
                  value:
                    servers:
                    - id: abc123
                      name: Example Title
                      type: was-traditional
                      version: example_value
                      host: example_value
                      port: 10
                      status: active
                      vulnerabilityCount: 10
                      lastScanDate: '2026-01-15T10:30:00Z'
                      registeredDate: '2026-01-15T10:30:00Z'
                      installedFixes:
                      - {}
                    totalCount: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: registerServer
      summary: Register a Server
      description: Registers a new server with WebSphere Automation for monitoring and management.
      tags:
      - Servers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              - type
              - connectionInfo
              properties:
                name:
                  type: string
                  description: Server name
                type:
                  type: string
                  enum:
                  - was-traditional
                  - liberty
                connectionInfo:
                  type: object
                  required:
                  - host
                  - port
                  properties:
                    host:
                      type: string
                    port:
                      type: integer
                    protocol:
                      type: string
                      enum:
                      - https
                      - http
                      default: https
                credentials:
                  type: object
                  properties:
                    username:
                      type: string
                    password:
                      type: string
                      format: password
            examples:
              RegisterserverRequestExample:
                summary: Default registerServer request
                x-microcks-default: true
                value:
                  name: Example Title
                  type: was-traditional
                  connectionInfo:
                    host: example_value
                    port: 10
                    protocol: https
                  credentials:
                    username: example_value
                    password: example_value
      responses:
        '201':
          description: Server registered
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedServer'
              examples:
                Registerserver201Example:
                  summary: Default registerServer 201 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Example Title
                    type: was-traditional
                    version: example_value
                    host: example_value
                    port: 10
                    status: active
                    vulnerabilityCount: 10
                    lastScanDate: '2026-01-15T10:30:00Z'
                    registeredDate: '2026-01-15T10:30:00Z'
                    installedFixes:
                    - example_value
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /servers/{serverId}:
    get:
      operationId: getManagedServer
      summary: Get Managed Server Details
      description: Returns details of a specific managed server.
      tags:
      - Servers
      parameters:
      - $ref: '#/components/parameters/serverId'
      responses:
        '200':
          description: Server details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedServer'
              examples:
                Getmanagedserver200Example:
                  summary: Default getManagedServer 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Example Title
                    type: was-traditional
                    version: example_value
                    host: example_value
                    port: 10
                    status: active
                    vulnerabilityCount: 10
                    lastScanDate: '2026-01-15T10:30:00Z'
                    registeredDate: '2026-01-15T10:30:00Z'
                    installedFixes:
                    - example_value
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: deregisterServer
      summary: Deregister a Server
      description: Removes a server from WebSphere Automation management.
      tags:
      - Servers
      parameters:
      - $ref: '#/components/parameters/serverId'
      responses:
        '204':
          description: Server deregistered
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /vulnerabilities:
    get:
      operationId: listVulnerabilities
      summary: List Vulnerabilities
      description: Returns a list of known security vulnerabilities affecting managed servers.
      tags:
      - Vulnerabilities
      parameters:
      - name: severity
        in: query
        description: Filter by severity
        schema:
          type: string
          enum:
          - critical
          - high
          - medium
          - low
        example: critical
      - name: status
        in: query
        description: Filter by remediation status
        schema:
          type: string
          enum:
          - open
          - resolved
          - in-progress
          - accepted-risk
        example: open
      - name: serverId
        in: query
        description: Filter by affected server
        schema:
          type: string
        example: '500123'
      - name: cveId
        in: query
        description: Filter by CVE identifier
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: List of vulnerabilities
          content:
            application/json:
              schema:
                type: object
                properties:
                  vulnerabilities:
                    type: array
                    items:
                      $ref: '#/components/schemas/Vulnerability'
                  totalCount:
                    type: integer
              examples:
                Listvulnerabilities200Example:
                  summary: Default listVulnerabilities 200 response
                  x-microcks-default: true
                  value:
                    vulnerabilities:
                    - id: abc123
                      cveIds:
                      - {}
                      severity: critical
                      cvssScore: 42.5
                      description: A sample description.
                      affectedServers:
                      - {}
                      status: open
                      availableFixes:
                      - {}
                      publishedDate: '2026-01-15T10:30:00Z'
                      discoveredDate: '2026-01-15T10:30:00Z'
                    totalCount: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /vulnerabilities/{vulnerabilityId}:
    get:
      operationId: getVulnerability
      summary: Get Vulnerability Details
      description: Returns details of a specific vulnerability.
      tags:
      - Vulnerabilities
      parameters:
      - name: vulnerabilityId
        in: path
        required: true
        description: Vulnerability identifier
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Vulnerability details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Vulnerability'
              examples:
                Getvulnerability200Example:
                  summary: Default getVulnerability 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    cveIds:
                    - example_value
                    severity: critical
                    cvssScore: 42.5
                    description: A sample description.
                    affectedServers:
                    - example_value
                    status: open
                    availableFixes:
                    - example_value
                    publishedDate: '2026-01-15T10:30:00Z'
                    discoveredDate: '2026-01-15T10:30:00Z'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /vulnerabilities/{vulnerabilityId}/resolve:
    post:
      operationId: resolveVulnerability
      summary: Resolve a Vulnerability
      description: Initiates the resolution of a vulnerability by applying fixes.
      tags:
      - Vulnerabilities
      parameters:
      - name: vulnerabilityId
        in: path
        required: true
        schema:
          type: string
        example: '500123'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                action:
                  type: string
                  enum:
                  - apply-fix
                  - accept-risk
                  description: Resolution action
                fixId:
                  type: string
                  description: Specific fix to apply
                serverIds:
                  type: array
                  items:
                    type: string
                  description: Target servers for the fix
            examples:
              ResolvevulnerabilityRequestExample:
                summary: Default resolveVulnerability request
                x-microcks-default: true
                value:
                  action: apply-fix
                  fixId: '500123'
                  serverIds:
                  - example_value
      responses:
        '202':
          description: Resolution initiated
          content:
            application/json:
              schema:
                type: object
                properties:
                  taskId:
                    type: string
                  status:
                    type: string
              examples:
                Resolvevulnerability202Example:
                  summary: Default resolveVulnerability 202 response
                  x-microcks-default: true
                  value:
                    taskId: '500123'
                    status: example_value
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /fixes:
    get:
      operationId: listFixes
      summary: List Available Fixes
      description: Returns a list of available fixes and patches.
      tags:
      - Fixes
      parameters:
      - name: serverId
        in: query
        description: Filter by applicable server
        schema:
          type: string
        example: '500123'
      - name: type
        in: query
        description: Filter by fix type
        schema:
          type: string
          enum:
          - security
          - ifix
          - fixpack
        example: security
      responses:
        '200':
          description: List of fixes
          content:
            application/json:
              schema:
                type: object
                properties:
                  fixes:
                    type: array
                    items:
                      $ref: '#/components/schemas/Fix'
                  totalCount:
                    type: integer
              examples:
                Listfixes200Example:
                  summary: Default listFixes 200 response
                  x-microcks-default: true
                  value:
                    fixes:
                    - id: abc123
                      name: Example Title
                      type: security
                      description: A sample description.
                      resolvedCVEs:
                      - {}
                      applicableVersions:
                      - {}
                      downloadURL: https://www.example.com
                      releaseDate: '2026-01-15T10:30:00Z'
                      size: 10
                    totalCount: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /fixes/{fixId}:
    get:
      operationId: getFix
      summary: Get Fix Details
      description: Returns details of a specific fix.
      tags:
      - Fixes
      parameters:
      - name: fixId
        in: path
        required: true
        description: Fix identifier
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Fix details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Fix'
              examples:
                Getfix200Example:
                  summary: Default getFix 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Example Title
                    type: security
                    description: A sample description.
                    resolvedCVEs:
                    - example_value
                    applicableVersions:
                    - example_value
                    downloadURL: https://www.example.com
                    releaseDate: '2026-01-15T10:30:00Z'
                    size: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /fixes/{fixId}/apply:
    post:
      operationId: applyFix
      summary: Apply a Fix
      description: Applies a fix to one or more managed servers.
      tags:
      - Fixes
      parameters:
      - name: fixId
        in: path
        required: true
        schema:
          type: string
        example: '500123'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - serverIds
              properties:
                serverIds:
                  type: array
                  items:
                    type: string
                  description: Target servers
                schedule:
                  type: string
                  format: date-time
                  description: Scheduled time for applying the fix
                restartAfterApply:
                  type: boolean
                  default: true
                  description: Whether to restart servers after applying the fix
            examples:
              ApplyfixRequestExample:
                summary: Default applyFix request
                x-microcks-default: true
                value:
                  serverIds:
                  - example_value
                  schedule: '2026-01-15T10:30:00Z'
                  restartAfterApply: true
      responses:
        '202':
          description: Fix application initiated
          content:
            application/json:
              schema:
                type: object
                properties:
                  taskId:
                    type: string
                  status:
                    type: string
              examples:
                Applyfix202Example:
                  summary: Default applyFix 202 response
                  x-microcks-default: true
                  value:
                    taskId: '500123'
                    status: example_value
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /health:
    get:
      operationId: getOverallHealth
      summary: Get Overall Health Status
      description: Returns the overall health status of all managed servers.
      tags:
      - Health
      responses:
        '200':
          description: Overall health status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OverallHealth'
              examples:
                Getoverallhealth200Example:
                  summary: Default getOverallHealth 200 response
                  x-microcks-default: true
                  value:
                    status: healthy
                    totalServers: 10
                    activeServers: 10
                    inactiveServers: 10
                    openVulnerabilities: 10
                    criticalVulnerabilities: 10
                    pendingFixes: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /health/servers/{serverId}:
    get:
      operationId: getServerHealth
      summary: Get Server Health Status
      description: Returns health information for a specific managed server.
      tags:
      - Health
      parameters:
      - $ref: '#/components/parameters/serverId'
      responses:
        '200':
          description: Server health status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerHealth'
              examples:
                Getserverhealth200Example:
                  summary: Default getServerHealth 200 response
                  x-microcks-default: true
                  value:
                    serverId: '500123'
                    serverName: example_value
                    status: healthy
                    uptime: 10
                    cpuUsage: 42.5
                    memoryUsage: 42.5
                    openVulnerabilities: 10
                    lastHealthCheck: '2026-01-15T10:30:00Z'
                    checks:
                    - name: Example Title
                      status: pass
                      message: example_value
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /compliance/reports:
    get:
      operationId: listComplianceReports
      summary: List Compliance Reports
      description: Returns a list of compliance reports.
      tags:
      - Compliance
      responses:
        '200':
          description: List of compliance reports
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ComplianceReport'
              examples:
                Listcompliancereports200Example:
                  summary: Default listComplianceReports 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    name: Example Title
                    generatedDate: '2026-01-15T10:30:00Z'
                    overallCompliance: 42.5
                    servers:
                    - serverId: '500123'
                      serverName: example_value
                      complianceScore: 42.5
                      findings: {}
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /compliance/reports/{reportId}:
    get:
      operationId: getComplianceReport
      summary: Get Compliance Report Details
      description: Returns a specific compliance report.
      tags:
      - Compliance
      parameters:
      - name: reportId
        in: path
        required: true
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Compliance report details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComplianceReport'
              examples:
                Getcompliancereport200Example:
                  summary: Default getComplianceReport 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Example Title
                    generatedDate: '2026-01-15T10:30:00Z'
                    overallCompliance: 42.5
                    servers:
                    - serverId: '500123'
                      serverName: example_value
                      complianceScore: 42.5
                      findings:
                      - {}
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /notifications:
    get:
      operationId: listNotifications
      summary: List Notifications
      description: Returns a list of notifications and alerts.
      tags:
      - Notifications
      parameters:
      - name: type
        in: query
        description: Filter by notification type
        schema:
          type: string
          enum:
          - vulnerability
          - health
          - compliance
          - fix
        example: vulnerability
      - name: read
        in: query
        description: Filter by read status
        schema:
          type: boolean
        example: true
      responses:
        '200':
          description: List of notifications
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Notification'
              examples:
                Listnotifications200Example:
                  summary: Default listNotifications 200 response
                  x-microcks-default: true
                  value:
                  - id: abc123
                    type: vulnerability
                    severity: info
                    title: Example Title
                    message: example_value
                    read: true
                    createdDate: '2026-01-15T10:30:00Z'
                    relatedResourceId: '500123'
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /notifications/{notificationId}/read:
    post:
      operationId: markNotificationRead
      summary: Mark Notification as Read
      description: Marks a notification as read.
      tags:
      - Notifications
      parameters:
      - name: notificationId
        in: path
        required: true
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Notification marked as read
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT Bearer token authentication
  parameters:
    serverId:
      name: serverId
      in: path
      required: true
      description: Managed server identifier
      schema:
        type: string
  schemas:
    ManagedServer:
      type: object
      properties:
        id:
          type: string
          description: Unique server identifier
          example: abc123
        name:
          type: string
          description: Server name
          example: Example Title
        type:
          type: string
          enum:
          - was-traditional
          - liberty
          example: was-traditional
        version:
          type: string
          description: WebSphere version
          example: example_value
        host:
          type: string
          description: Server hostname
          example: example_value
        port:
          type: integer
          description: Server port
          example: 10
        status:
          type: string
          enum:
          - active
          - inactive
          - unknown
          example: active
        vulnerabilityCount:
          type: integer
          description: Number of open vulnerabilities
          example: 10
        lastScanDate:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        registeredDate:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        installedFixes:
          type: array
          items:
            type: string
          description: List of installed fix IDs
          example: []
    Vulnerability:
      type: object
      properties:
        id:
          type: string
          description: Vulnerability identifier
          example: abc123
        cveIds:
          type: array
          items:
            type: string
          description: Associated CVE identifiers
          example: []
        severity:
          type: string
          enum:
          - critical
          - high
          - medium
          - low
          example: critical
        cvssScore:
          type: number
          description: CVSS base score
          example: 42.5
        description:
          type: string
          example: A sample description.
        affectedServers:
          type: array
          items:
            type: string
          description: List of affected server IDs
          example: []
        status:
          type: string
          enum:
          - open
          - resolved
          - in-progress
          - accepted-risk
          example: open
        availableFixes:
          type: array
          items:
            type: string
          description: List of available fix IDs
          example: []
        publishedDate:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        discoveredDate:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
    Fix:
      type: object
      properties:
        id:
          type: string
          description: Fix identifier
          example: abc123
        name:
          type: string
          description: Fix name
          example: Example Title
        type:
          type: string
          enum:
          - security
          - ifix
          - fixpack
          example: security
        description:
          type: string
          example: A sample description.
        resolvedCVEs:
          type: array
          items:
            type: string
          description: CVEs resolved by this fix
          example: []
        applicableVersions:
          type: array
          items:
            type: string
          description: WebSphere versions this fix applies to
          example: []
        downloadURL:
          type: string
          format: uri
          example: https://www.example.com
        releaseDate:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        size:
          type: integer
          description: Fix size in bytes
          example: 10
    OverallHealth:
      type: object
      properties:
        status:
          type: string
          enum:
          - healthy
          - warning
          - critical
          example: healthy
        totalServers:
          type: integer
          example: 10
        activeServers:
          type: integer
          example: 10
        inactiveServers:
          type: integer
          example: 10
        openVulnerabilities:
          type: integer
          example: 10
        criticalVulnerabilities:
          type: integer
          example: 10
        pendingFixes:
          type: integer
          example: 10
    ServerHealth:
      type: object
      properties:
        serverId:
          type: string
          example: '500123'
        serverName:
          type: string
          example: example_value
        status:
          type: string
          enum:
          - healthy
          - warning
          - critical
          example: healthy
        uptime:
          type: integer
          description: Uptime in seconds
          example: 10
        cpuUsage:
          type: number
          description: CPU usage percentage
          example: 42.5
        memoryUsage:
          type: number
          description: Memory usage percentage
          example: 42.5
        openVulnerabilities:
          type: integer
          example: 10
        lastHealthCheck:
          type: string
          format: da

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/websphere/refs/heads/main/openapi/websphere-automation-rest-api.yml