Malwarebytes OS Patches API

The OS Patches API from Malwarebytes — 8 operation(s) for os patches.

OpenAPI Specification

malwarebytes-os-patches-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Malwarebytes OS Patches API
  version: 1.0.0
  description: 'Operations tagged OS Patches across 2 of this provider''s published API definitions: malwarebytes-threatdown-nebula-openapi.json, malwarebytes-threatdown-oneview-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.threatdown.com
tags:
- name: OS Patches
paths:
  /nebula/v1/os-patches/export:
    servers:
    - url: https://api.threatdown.com
    post:
      description: "Export OS Patch data. You can export across multiple accounts. Specify your interested fields and the output format.\n\nSupported output formats: csv, xlsx, json.\n\n## Settings\n\n| Name | Description |\n|------|-------------|\n| groups | List of queries. The constraints accepted are the same accepted by the search os patches route. Refer to [Search OS Patches API](#operation/api.nebula.search.os-patches) for more information about the constraints accepted. |\n| download | If set to true, the server will set the `Content-Disposition` header using the `filename` and `format` |\n| select | Which fields to select, and which field name to map to. See request schema for allowed values |\n| type | Output encoding (for `csv` and `json` format) |\n| filename | Name of the file to be set in `Content-Disposition` header if `download` = true |\n\n## Examples\n\n### Download HTML file\n\nA request with this body sent by a browser will download a file called `nameofthefile.html`, displaying a table with columns: `KB Id`, `Category`, `Description` for all detections on `windows` endpoints:\n\n```json\n\t{\n\t\t\"groups\": [{\n\t\t\t\"os_info.os_platform\": \"Windows\"\n\t\t}],\n\t\t\"format\": \"html\",\n\t\t\"type\": \"string\",\n\t\t\"filename\": \"nameofthefile\",\n\t\t\"download\": true,\n\t\t\"select\": [\n            {\"field\": \"patch_id\", \"newField\": \"KB Id\"},\n            {\"field\": \"category\", \"newField\": \"Category\"},\n            {\"field\": \"description\", \"newField\": \"Description\"}\n        ]\n\t}\n```\n\n\n"
      summary: Export OS Patches
      security:
      - client_credentials:
        - execute
      - user_permissions:
        - patchManagement.view
      status:
        outage:
        - auth
        - search_stateless
      parameters:
      - name: authorization
        required: true
        in: header
        description: Authorization token
        schema:
          type: string
      - name: accountid
        required: true
        in: header
        description: Your Nebula account id (Ex. "9256034b-7967-4253-a5d9-260663e4fa4f")
        schema:
          type: string
          pattern: '[\da-fA-F]{8}-?[\da-fA-F]{4}-?[\da-fA-F]{4}-?[\da-fA-F]{4}-?[\da-fA-F]{12}$'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              title: Export request
              required:
              - groups
              - select
              - format
              properties:
                format:
                  type: string
                  title: The output file
                  enum:
                  - csv
                  - xlsx
                  - html
                  - ods
                  - txt
                  - rtf
                  - json
                download:
                  type: boolean
                  title: Whether to instruct the client to download the response as a file. Only clients like browsers are supported
                type:
                  type: string
                  title: The encoding of the output
                  enum:
                  - string
                  - base64
                  - binary
                  default: string
                select:
                  type: array
                  title: Which fields to select from the response
                  items:
                    type: object
                    title: Field
                    required:
                    - field
                    - newField
                    properties:
                      newField:
                        type: string
                        title: the new value
                      field:
                        type: string
                        title: The response field to map to a new value
                        enum:
                        - account_id
                        - account_name
                        - parent_account_id
                        - machine_id
                        - group_id
                        - root_group_id
                        - group_name
                        - object_guid
                        - host_name
                        - fully_qualified_host_name
                        - domain_name
                        - display_name
                        - vendor
                        - product
                        - os_info.os_type
                        - os_info.os_version
                        - os_info.os_platform
                        - os_info.os_architecture
                        - os_info.os_release_name
                        - severity
                        - title
                        - description
                        - category
                        - security_update_id
                        - patch_id
                        - kb_id
                        - created_at
                        - released_at
                        - reboot_required
                        - preview_patch
                        - size
                        - group.name
                        - group.policy_id
                        - group.policy_name
                        - endpoint.last_day_seen
                        - endpoint.last_user
                        - alias
                        - ignored_until
                        - ignore_rule_ids
                        - active_directory.user.display_name
                        - active_directory.user.sam_account_name
                        - active_directory.user.ou
                        - active_directory.machine.display_name
                        - active_directory.machine.sam_account_name
                        - active_directory.machine.ou
                groups:
                  type: array
                  title: List of queries
                  items:
                    type: object
                    title: Query to fetch endpoints
                    allOf:
                    - type: object
                      title: Search assets software request. Leading wildcards are not supported for constraint fields without '.keyword' suffix.
                      properties:
                        machine_id:
                          type: string
                          title: Filter the search by machine_id. Search for an exact match
                        machine_id.keyword:
                          type: string
                          title: Filter the search by machine_id.keyword. Search for the matches that contain the value
                        not.machine_id:
                          type: string
                          title: Filter the search by not.machine_id. Search for the matches that are not equal to the value
                        not.machine_id.keyword:
                          type: string
                          title: Filter the search by not.machine_id.keyword. Search for the matches that do not contain the value
                        group_id:
                          type: string
                          title: Filter the search by group_id. Search for an exact match
                        group_id.keyword:
                          type: string
                          title: Filter the search by group_id.keyword. Search for the matches that contain the value
                        not.group_id:
                          type: string
                          title: Filter the search by not.group_id. Search for the matches that are not equal to the value
                        not.group_id.keyword:
                          type: string
                          title: Filter the search by not.group_id.keyword. Search for the matches that do not contain the value
                        root_group_id:
                          type: string
                          title: Filter the search by root_group_id. Search for an exact match
                        root_group_id.keyword:
                          type: string
                          title: Filter the search by root_group_id.keyword. Search for the matches that contain the value
                        not.root_group_id:
                          type: string
                          title: Filter the search by not.root_group_id. Search for the matches that are not equal to the value
                        not.root_group_id.keyword:
                          type: string
                          title: Filter the search by not.root_group_id.keyword. Search for the matches that do not contain the value
                        group_name:
                          type: string
                          title: Filter the search by group_name. Search for an exact match
                        group_name.keyword:
                          type: string
                          title: Filter the search by group_name.keyword. Search for the matches that contain the value
                        not.group_name:
                          type: string
                          title: Filter the search by not.group_name. Search for the matches that are not equal to the value
                        not.group_name.keyword:
                          type: string
                          title: Filter the search by not.group_name.keyword. Search for the matches that do not contain the value
                        object_guid:
                          type: string
                          title: Filter the search by object_guid. Search for an exact match
                        object_guid.keyword:
                          type: string
                          title: Filter the search by object_guid.keyword. Search for the matches that contain the value
                        not.object_guid:
                          type: string
                          title: Filter the search by not.object_guid. Search for the matches that are not equal to the value
                        not.object_guid.keyword:
                          type: string
                          title: Filter the search by not.object_guid.keyword. Search for the matches that do not contain the value
                        host_name:
                          type: string
                          title: Filter the search by host_name. Search for an exact match
                        host_name.keyword:
                          type: string
                          title: Filter the search by host_name.keyword. Search for the matches that contain the value
                        not.host_name:
                          type: string
                          title: Filter the search by not.host_name. Search for the matches that are not equal to the value
                        not.host_name.keyword:
                          type: string
                          title: Filter the search by not.host_name.keyword. Search for the matches that do not contain the value
                        fully_qualified_host_name:
                          type: string
                          title: Filter the search by fully_qualified_host_name. Search for an exact match
                        fully_qualified_host_name.keyword:
                          type: string
                          title: Filter the search by fully_qualified_host_name.keyword. Search for the matches that contain the value
                        not.fully_qualified_host_name:
                          type: string
                          title: Filter the search by not.fully_qualified_host_name. Search for the matches that are not equal to the value
                        not.fully_qualified_host_name.keyword:
                          type: string
                          title: Filter the search by not.fully_qualified_host_name.keyword. Search for the matches that do not contain the value
                        domain_name:
                          type: string
                          title: Filter the search by domain_name. Search for an exact match
                        domain_name.keyword:
                          type: string
                          title: Filter the search by domain_name.keyword. Search for the matches that contain the value
                        not.domain_name:
                          type: string
                          title: Filter the search by not.domain_name. Search for the matches that are not equal to the value
                        not.domain_name.keyword:
                          type: string
                          title: Filter the search by not.domain_name.keyword. Search for the matches that do not contain the value
                        display_name:
                          type: string
                          title: Filter the search by display_name. Search for an exact match
                        display_name.keyword:
                          type: string
                          title: Filter the search by display_name.keyword. Search for the matches that contain the value
                        not.display_name:
                          type: string
                          title: Filter the search by not.display_name. Search for the matches that are not equal to the value
                        not.display_name.keyword:
                          type: string
                          title: Filter the search by not.display_name.keyword. Search for the matches that do not contain the value
                        vendor:
                          type: string
                          title: Filter the search by vendor. Search for an exact match
                        vendor.keyword:
                          type: string
                          title: Filter the search by vendor.keyword. Search for the matches that contain the value
                        not.vendor:
                          type: string
                          title: Filter the search by not.vendor. Search for the matches that are not equal to the value
                        not.vendor.keyword:
                          type: string
                          title: Filter the search by not.vendor.keyword. Search for the matches that do not contain the value
                        product:
                          type: string
                          title: Filter the search by product. Search for an exact match
                        product.keyword:
                          type: string
                          title: Filter the search by product.keyword. Search for the matches that contain the value
                        not.product:
                          type: string
                          title: Filter the search by not.product. Search for the matches that are not equal to the value
                        not.product.keyword:
                          type: string
                          title: Filter the search by not.product.keyword. Search for the matches that do not contain the value
                        os_info.os_type:
                          type: string
                          title: Filter the search by os_info.os_type. Search for an exact match
                        os_info.os_type.keyword:
                          type: string
                          title: Filter the search by os_info.os_type.keyword. Search for the matches that contain the value
                        not.os_info.os_type:
                          type: string
                          title: Filter the search by not.os_info.os_type. Search for the matches that are not equal to the value
                        not.os_info.os_type.keyword:
                          type: string
                          title: Filter the search by not.os_info.os_type.keyword. Search for the matches that do not contain the value
                        os_info.os_version:
                          type: string
                          title: Filter the search by os_info.os_version. Search for an exact match
                        os_info.os_version.keyword:
                          type: string
                          title: Filter the search by os_info.os_version.keyword. Search for the matches that contain the value
                        not.os_info.os_version:
                          type: string
                          title: Filter the search by not.os_info.os_version. Search for the matches that are not equal to the value
                        not.os_info.os_version.keyword:
                          type: string
                          title: Filter the search by not.os_info.os_version.keyword. Search for the matches that do not contain the value
                        os_info.os_platform:
                          type: string
                          title: Filter the search by os_info.os_platform. Search for an exact match
                        os_info.os_platform.keyword:
                          type: string
                          title: Filter the search by os_info.os_platform.keyword. Search for the matches that contain the value
                        not.os_info.os_platform:
                          type: string
                          title: Filter the search by not.os_info.os_platform. Search for the matches that are not equal to the value
                        not.os_info.os_platform.keyword:
                          type: string
                          title: Filter the search by not.os_info.os_platform.keyword. Search for the matches that do not contain the value
                        os_info.os_architecture:
                          type: string
                          title: Filter the search by os_info.os_architecture. Search for an exact match
                        os_info.os_architecture.keyword:
                          type: string
                          title: Filter the search by os_info.os_architecture.keyword. Search for the matches that contain the value
                        not.os_info.os_architecture:
                          type: string
                          title: Filter the search by not.os_info.os_architecture. Search for the matches that are not equal to the value
                        not.os_info.os_architecture.keyword:
                          type: string
                          title: Filter the search by not.os_info.os_architecture.keyword. Search for the matches that do not contain the value
                        os_info.os_release_name:
                          type: string
                          title: Filter the search by os_info.os_release_name. Search for an exact match
                        os_info.os_release_name.keyword:
                          type: string
                          title: Filter the search by os_info.os_release_name.keyword. Search for the matches that contain the value
                        not.os_info.os_release_name:
                          type: string
                          title: Filter the search by not.os_info.os_release_name. Search for the matches that are not equal to the value
                        not.os_info.os_release_name.keyword:
                          type: string
                          title: Filter the search by not.os_info.os_release_name.keyword. Search for the matches that do not contain the value
                        severity:
                          type: string
                          title: Filter the search by severity. Search for an exact match
                        severity.keyword:
                          type: string
                          title: Filter the search by severity.keyword. Search for the matches that contain the value
                        not.severity:
                          type: string
                          title: Filter the search by not.severity. Search for the matches that are not equal to the value
                        not.severity.keyword:
                          type: string
                          title: Filter the search by not.severity.keyword. Search for the matches that do not contain the value
                        title:
                          type: string
                          title: Filter the search by title. Search for an exact match
                        title.keyword:
                          type: string
                          title: Filter the search by title.keyword. Search for the matches that contain the value
                        not.title:
                          type: string
                          title: Filter the search by not.title. Search for the matches that are not equal to the value
                        not.title.keyword:
                          type: string
                          title: Filter the search by not.title.keyword. Search for the matches that do not contain the value
                        description:
                          type: string
                          title: Filter the search by description. Search for an exact match
                        description.keyword:
                          type: string
                          title: Filter the search by description.keyword. Search for the matches that contain the value
                        not.description:
                          type: string
                          title: Filter the search by not.description. Search for the matches that are not equal to the value
                        not.description.keyword:
                          type: string
                          title: Filter the search by not.description.keyword. Search for the matches that do not contain the value
                        category:
                          type: string
                          title: Filter the search by category. Search for an exact match
                        category.keyword:
                          type: string
                          title: Filter the search by category.keyword. Search for the matches that contain the value
                        not.category:
                          type: string
                          title: Filter the search by not.category. Search for the matches that are not equal to the value
                        not.category.keyword:
                          type: string
                          title: Filter the search by not.category.keyword. Search for the matches that do not contain the value
                        security_update_id:
                          type: string
                          title: Filter the search by security_update_id. Search for an exact match
                        security_update_id.keyword:
                          type: string
                          title: Filter the search by security_update_id.keyword. Search for the matches that contain the value
                        not.security_update_id:
                          type: string
                          title: Filter the search by not.security_update_id. Search for the matches that are not equal to the value
                        not.security_update_id.keyword:
                          type: string
                          title: Filter the search by not.security_update_id.keyword. Search for the matches that do not contain the value
                        patch_id:
                          type: string
                          title: Filter the search by patch_id. Search for an exact match
                        patch_id.keyword:
                          type: string
                          title: Filter the search by patch_id.keyword. Search for the matches that contain the value
                        not.patch_id:
                          type: string
                          title: Filter the search by not.patch_id. Search for the matches that are not equal to the value
                        not.patch_id.keyword:
                          type: string
                          title: Filter the search by not.patch_id.keyword. Search for the matches that do not contain the value
                        kb_id:
                          type: string
                          title: Filter the search by kb_id. Search for an exact match
                        kb_id.keyword:
                          type: string
                          title: Filter the search by kb_id.keyword. Search for the matches that contain the value
                        not.kb_id:
                          type: string
                          title: Filter the search by not.kb_id. Search for the matches that are not equal to the value
                        not.kb_id.keyword:
                          type: string
                          title: Filter the search by not.kb_id.keyword. Search for the matches that do not contain the value
                        reboot_required:
                          type: boolean
                          title: Filter the search by reboot_required
                        preview_patch:
                          type: boolean
                          title: Filter the search by preview_patch
                        not.preview_patch:
                          type: boolean
                          title: Filter the search by not.preview_patch
                        size:
                          type: integer
                          title: Filter the search by exact size
                        size_lt:
                          type: integer
                          title: Filter the search by size_lt. Search for the documents that are less than the value
                        size_lte:
                          type: integer
                          title: Filter the search by size_lte. Search for the documents that are less than the value
                        size_gt:
                          type: integer
                          title: Filter the search by size_gt. Search for the documents that are greater than the value
                        size_gte:
                          type: integer
                          title: Filter the search by size_gte. Search for the documents that are greater than the value
                        created_at_after:
                          type: string
                          title: Filter search with created_at_after ISO date string (Ex. "2020-03-23T17:23:17.860482Z")
                          pattern: ^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(([Zz])|([\+|\-]([01][0-9]|2[0-3]):[0-5][0-9]))$
                          examples:
                          - '2020-02-01T17:23:17.860482Z'
                        created_at_before:
                          type: string
                          title: Filter search with created_at_before ISO date string (Ex. "2020-03-23T17:23:17.860482Z")
                          pattern: ^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(([Zz])|([\+|\-]([01][0-9]|2[0-3]):[0-5][0-9]))$
                          examples:
                          - '2020-03-23T17:23:17.860482Z'
                        released_at_after:
                          type: string
                          title: Filter search with released_at_after ISO date string (Ex. "2020-03-23T17:23:17.860482Z")
                          pattern: ^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(([Zz])|([\+|\-]([01][0-9]|2[0-3]):[0-5][0-9]))$
                          examples:
                          - '2020-03-23T17:23:17.860482Z'
                        released_at_before:
                          type: string
                          title: Filter search with released_at_before ISO date string (Ex. "2020-03-23T17:23:17.860482Z")
                          pattern: ^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(([Zz])|([\+|\-]([01][0-9]|2[0-3]):[0-5][0-9]))$
                          examples:
                          - '2020-03-23T17:23:17.860482Z'
                        update_ignored:
                          type: boolean
                          title: Filter the search by update_ignored os patches
                        exists:
                          type: array
                          title: Filter the results for records that have these fields
                          items:
                            type: string
                            enum:
                            - domain_name
                            - product_signature
                        not.exists:
                          type: array
                          title: Filter the results for records that do not have these fields
                          items:
                            type: string
                            enum:
                            - domain_name
                            - product_signature
                        sort_field:
                          type: string
                          title: Sort field
                          enum:
                          - account_id
                          - account_name
                          - parent_account_id
                          - machine_id
                          - group_id
                          - root_group_id
                          - object_guid
                          - host_name
                          - fully_qualified_host_name
                          - display_name
                          - vendor
                          - product
                          - os_info.os_type
                          - os_info.os_version
                          - os_info.os_platform
                          - os_info.os_architecture
                          - os_info.os_release_name
                          - severity
                          - title
                          - description
                          - category
                          - security_update_id
                          - patch_id
                          - kb_id
                          - created_at
                          - released_at
                          - reboot_required
                          - preview_patch
                          - size
                          - domain_name
                          - active_directory.user.display_name
                          - active_directory.machine.display_name
                          - active_directory.user.ou
                          - active_directory.machine.ou
                          - active_directory.user.sam_account_name
                          - active_directory.machine.sam_account_name
                          - ignored_until
                        sort_order:
                          type: string
                          title: Sorting direction
                          default: asc
                          enum:
                          - asc
                          - desc
                        populate:
                          type: object
                          title: The populate object Schema
                          properties:
                            group:
                              type: boolean
                              title: Populates group data (group name, policy name, policy id)
                            endpoint:
                              type: boolean
                              title: Populate with the endpoint data (last day seen, last user)
                        page_size:
                          type: number
                          title: The size of the page. If you only need aggregations, set it to 0
                          minimum: 0
                          default: 50
                          maximum: 2000
                        aggregations:
                          type: array
                          title: The Aggregations Schema
                          items:
                            type: string
                            title: Aggregations
                            default: []
                       

# --- truncated at 32 KB (373 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/malwarebytes/refs/heads/main/openapi/malwarebytes-os-patches-api-openapi.yml