Progress Software Device Group API

The Device Group API from Progress Software — 18 operation(s) for device group.

Operations 23

GET /api/v1/device-groups/- Return a list of groups #
GET /api/v1/device-groups/{groupId} Returns the summary data for a given device group #
DELETE /api/v1/device-groups/{groupId} Delete a group. Group must have no child groups or devices #
GET /api/v1/device-groups/{groupId}/definition Retrieve a device group definition #
PUT /api/v1/device-groups/{groupId}/definition Update the device group definition #
POST /api/v1/device-groups/{groupId}/child Add a new child device group to a parent group #
GET /api/v1/device-groups/{groupId}/children Return the child groups given a device group #
PUT /api/v1/device-groups/{groupId}/poll-now Request the polling service to poll all devices in a group immediately #
PUT /api/v1/device-groups/{groupId}/refresh Request the discovery service to refresh all devices in a group immediately #
PUT /api/v1/device-groups/{groupId}/newDevice Add a new device to be monitored #
PATCH /api/v1/device-groups/{groupId}/newDevice Bulk add of new devices to be monitored #
GET /api/v1/device-groups/{groupId}/status Returns the overall status summary across all devices in a group #
GET /api/v1/device-groups/{groupId}/devices Returns the summary data for a given device group #
GET /api/v1/device-groups/{groupId}/devices/- Returns the summary data for a given device group #
POST /api/v1/device-groups/{groupId}/devices/- Add a set of devices to a group #
DELETE /api/v1/device-groups/{groupId}/devices/- Remove a set of devices from a group #
DELETE /api/v1/device-groups/{groupId}/devices/{deviceId} Remove a device from group #
GET /api/v1/device-groups/{groupId}/devices/-/config/template Returns the device templates for the devices in a group #
GET /api/v1/device-groups/{groupId}/devices/-/credentials Return the child groups given a device group #
PUT /api/v1/device-groups/{groupId}/roles/brand Assign a brand to a device #
PUT /api/v1/device-groups/{groupId}/roles/os Assign operating system to a device #
PUT /api/v1/device-groups/{groupId}/roles/primary Assign primary role to a device #
PUT /api/v1/device-groups/{groupId}/roles/sub-role Sub role operations on a device #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/progress-software-device-group-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

progress-software-device-group-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v1
  title: WhatsUp Gold Device Group API
  x-logo:
    url: images/wug_logo.svg
  description: '**Version 2026.0**


    *Use WhatsUp Gold REST API to deploy network and device monitoring and management scripts.*


    !'
servers:
- url: https://10.40.67.158:9644
tags:
- name: Device Group
paths:
  /api/v1/device-groups/-:
    get:
      tags:
      - Device Group
      summary: Return a list of groups
      operationId: DeviceGroup_ListGroups
      parameters:
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name
        required: false
        schema:
          type: string
      - name: view
        in: query
        description: The view to use for the returned data. default=summary
        required: false
        schema:
          type: string
          enum:
          - summary
          - detail
      - name: groupType
        in: query
        description: return groups of only given type; default=all
        required: false
        schema:
          type: string
          enum:
          - all
          - static_group
          - dynamic_group
          - layer2
      - name: limit
        in: query
        description: The limit for the page
        required: false
        schema:
          type: integer
          format: int32
      - name: pageId
        in: query
        description: The pageId
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceGroupList'
            text/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceGroupList'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}:
    get:
      tags:
      - Device Group
      summary: Returns the summary data for a given device group
      operationId: DeviceGroup_GetDeviceGroup
      parameters:
      - name: groupId
        in: path
        description: The id of the group.
        required: true
        schema:
          type: string
      - name: view
        in: query
        description: The view to use for the returned data. default=summary
        required: false
        schema:
          type: string
          enum:
          - summary
          - detail
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_DeviceGroupSummary'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_DeviceGroupSummary'
      security:
      - oauth2: []
    delete:
      tags:
      - Device Group
      summary: Delete a group. Group must have no child groups or devices
      operationId: DeviceGroup_DeleteDeviceGroup
      parameters:
      - name: groupId
        in: path
        description: Group being deleted
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/SuccessResult'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/definition:
    get:
      tags:
      - Device Group
      summary: Retrieve a device group definition
      operationId: DeviceGroup_GetDeviceGroupDefinition
      parameters:
      - name: groupId
        in: path
        description: The id of the device group.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_DeviceGroupDefinition'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_DeviceGroupDefinition'
      security:
      - oauth2: []
    put:
      tags:
      - Device Group
      summary: Update the device group definition
      operationId: DeviceGroup_UpdateDeviceGroupDefinition
      parameters:
      - name: groupId
        in: path
        description: The id of the device group.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/SuccessResult'
      security:
      - oauth2: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDeviceGroup'
          text/json:
            schema:
              $ref: '#/components/schemas/UpdateDeviceGroup'
        description: Update for group definition
        required: true
  /api/v1/device-groups/{groupId}/child:
    post:
      tags:
      - Device Group
      summary: Add a new child device group to a parent group
      operationId: DeviceGroup_AddDeviceGroup
      parameters:
      - name: groupId
        in: path
        description: The id of the parent group.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_DeviceGroupSummary'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_DeviceGroupSummary'
      security:
      - oauth2: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceGroupCreation'
          text/json:
            schema:
              $ref: '#/components/schemas/DeviceGroupCreation'
        description: Information for creating a new group object
        required: true
  /api/v1/device-groups/{groupId}/children:
    get:
      tags:
      - Device Group
      summary: Return the child groups given a device group
      operationId: DeviceGroup_SearchChildren
      parameters:
      - name: groupId
        in: path
        description: the id of the group
        required: true
        schema:
          type: string
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name
        required: false
        schema:
          type: string
      - name: view
        in: query
        description: The view to use for the returned data. default=summary
        required: false
        schema:
          type: string
          enum:
          - summary
          - detail
      - name: returnHierarchy
        in: query
        description: return all descendant groups of the parent group. default=false
        required: false
        schema:
          type: boolean
      - name: groupType
        in: query
        description: return groups of only given type; default=all
        required: false
        schema:
          type: string
          enum:
          - all
          - static_group
          - dynamic_group
          - layer2
      - name: limit
        in: query
        description: The limit for the page
        required: false
        schema:
          type: integer
          format: int32
      - name: pageId
        in: query
        description: The pageId
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceGroupSummaryList'
            text/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceGroupSummaryList'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/poll-now:
    put:
      tags:
      - Device Group
      summary: Request the polling service to poll all devices in a group immediately
      description: 'This request notifies the polling service for each device in the group to ignore its set polling interval and be polled immediately.

        Device will return to normal polling interval for next cycle.


        **Note:** This request might still be limited by the service.'
      operationId: DeviceGroup_PollNow
      parameters:
      - name: groupId
        in: path
        description: the id of the group
        required: true
        schema:
          type: string
      - name: immediateChildren
        in: query
        description: limit request to immediate children if true, all children if false. Default=true
        required: false
        schema:
          type: boolean
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name, host name and primary ip address
        required: false
        schema:
          type: string
      - name: limit
        in: query
        description: Number of request limit, zero is unlimited
        required: false
        schema:
          type: integer
          format: int32
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/refresh:
    put:
      tags:
      - Device Group
      summary: Request the discovery service to refresh all devices in a group immediately
      operationId: DeviceGroup_Refresh
      parameters:
      - name: groupId
        in: path
        description: the id of the group
        required: true
        schema:
          type: string
      - name: immediateChildren
        in: query
        description: limit request to immediate children if true, all children if false. Default=true
        required: false
        schema:
          type: boolean
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name, host name and primary ip address
        required: false
        schema:
          type: string
      - name: updateNamesForInterfaceActiveMonitor
        in: query
        description: 'Update the comments for interface active monitors based on device. Default: false'
        required: false
        schema:
          type: boolean
      - name: updateEnableSettingsForInterfaceActiveMonitor
        in: query
        description: 'Update the enabled state for interface active monitors based on device. Default: false'
        required: false
        schema:
          type: boolean
      - name: addUseInRescanActiveMonitors
        in: query
        description: 'test and apply passing active monitors mark for ''use in rescon'' to device. Default: false'
        required: false
        schema:
          type: boolean
      - name: includeAssignedRoles
        in: query
        description: 'include assinged role, subrole, brand and OS as matching, collect data for all roles and apply to device. Default: false'
        required: false
        schema:
          type: boolean
      - name: resetOptions
        in: query
        description: 'reset device using newly collected data. Adjust netwok interfaces, inventory, fingerprint, mac address, roles, os and brand to match current hardware. Default: empty list equal disabled'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: dropDataOlderThanHours
        in: query
        description: 'remove data discovered prior to x hours ago, min value 1, less than 0 ignored, 0 will use system default hours, Defaut: -1'
        required: false
        schema:
          type: integer
          format: int32
      - name: limit
        in: query
        description: 'Number of request limit, zero is max limited as set by the server. Default: 0'
        required: false
        schema:
          type: integer
          format: int32
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_NamedResourceSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_NamedResourceSuccessResult'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/newDevice:
    put:
      tags:
      - Device Group
      summary: Add a new device to be monitored
      operationId: DeviceGroup_NewDevice
      parameters:
      - name: groupId
        in: path
        description: Static device group which new devices will be added
        required: true
        schema:
          type: string
      - name: ipOrName
        in: query
        description: IP Address, Host Name, DNS Name for new device
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_NamedResourceSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_NamedResourceSuccessResult'
      security:
      - oauth2: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewDeviceOptions'
          text/json:
            schema:
              $ref: '#/components/schemas/NewDeviceOptions'
        description: Options used in creating new device
        required: true
    patch:
      tags:
      - Device Group
      summary: Bulk add of new devices to be monitored
      operationId: DeviceGroup_BulkNewDevice
      parameters:
      - name: groupId
        in: path
        description: Static device group which new devices will be added
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_NamedResourceSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_NamedResourceSuccessResult'
      security:
      - oauth2: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkNewDeviceOptions'
          text/json:
            schema:
              $ref: '#/components/schemas/BulkNewDeviceOptions'
        description: Bulk options used in creating new devices
        required: true
  /api/v1/device-groups/{groupId}/status:
    get:
      tags:
      - Device Group
      summary: Returns the overall status summary across all devices in a group
      description: A list of accessible device groups can be retrieved using the 'GET /api/v1/device-groups/-'.
      operationId: DeviceGroup_GetDeviceGroupStatus
      parameters:
      - name: groupId
        in: path
        description: The id of the group. A value of - means all.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Result_OverallStatusSummary'
            text/json:
              schema:
                $ref: '#/components/schemas/Result_OverallStatusSummary'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/devices:
    get:
      tags:
      - Device Group
      summary: Returns the summary data for a given device group
      description: A list of accessible device groups can be retrieved using the 'GET /api/v1/device-groups/-'.
      operationId: DeviceGroup_SearchDevices
      parameters:
      - name: groupId
        in: path
        description: The id of the group.
        required: true
        schema:
          type: string
      - name: returnHierarchy
        in: query
        description: return all descendant groups of the parent group. default=true
        required: false
        schema:
          type: boolean
      - name: view
        in: query
        description: The view to use for the returned data. Default=card
        required: false
        schema:
          type: string
          enum:
          - id
          - basic
          - card
          - overview
      - name: state
        in: query
        description: The optional state to search.
        required: false
        schema:
          type: string
          enum:
          - Unknown
          - Up
          - Down
          - Maintenance
          - Any
          - UpWithDownMonitors
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name, hostname and network address
        required: false
        schema:
          type: string
      - name: pageId
        in: query
        description: The pageId
        required: false
        schema:
          type: string
      - name: limit
        in: query
        description: The limit for the page
        required: false
        schema:
          type: integer
          format: int32
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceSummaryList'
            text/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceSummaryList'
      deprecated: true
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/devices/-:
    get:
      tags:
      - Device Group
      summary: Returns the summary data for a given device group
      description: A list of accessible device groups can be retrieved using the 'GET /api/v1/device-groups/-'.
      operationId: DeviceGroup_SearchDevicesByGroup
      parameters:
      - name: groupId
        in: path
        description: The id of the group.
        required: true
        schema:
          type: string
      - name: returnHierarchy
        in: query
        description: return all descendant groups of the parent group. default=true
        required: false
        schema:
          type: boolean
      - name: view
        in: query
        description: The view to use for the returned data. Default=card
        required: false
        schema:
          type: string
          enum:
          - id
          - basic
          - card
          - overview
      - name: state
        in: query
        description: The optional state to search.
        required: false
        schema:
          type: string
          enum:
          - Unknown
          - Up
          - Down
          - Maintenance
          - Any
          - UpWithDownMonitors
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name, hostname and network address
        required: false
        schema:
          type: string
      - name: pageId
        in: query
        description: The pageId
        required: false
        schema:
          type: string
      - name: limit
        in: query
        description: The limit for the page
        required: false
        schema:
          type: integer
          format: int32
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceSummaryList'
            text/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceSummaryList'
      security:
      - oauth2: []
    post:
      tags:
      - Device Group
      summary: Add a set of devices to a group
      operationId: DeviceGroup_AddGroupMembership
      parameters:
      - name: groupId
        in: path
        description: ''
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
      security:
      - oauth2: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkDeviceBatch'
          text/json:
            schema:
              $ref: '#/components/schemas/BulkDeviceBatch'
        required: true
    delete:
      tags:
      - Device Group
      summary: Remove a set of devices from a group
      operationId: DeviceGroup_RemoveGroupMembership
      parameters:
      - name: groupId
        in: path
        description: ''
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
      security:
      - oauth2: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkDeviceBatch'
          text/json:
            schema:
              $ref: '#/components/schemas/BulkDeviceBatch'
        required: true
  /api/v1/device-groups/{groupId}/devices/{deviceId}:
    delete:
      tags:
      - Device Group
      summary: Remove a device from group
      operationId: DeviceGroup_RemoveSingleGroupMembership
      parameters:
      - name: groupId
        in: path
        description: ''
        required: true
        schema:
          type: string
      - name: deviceId
        in: path
        description: ''
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/CountedSuccessResult'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/devices/-/config/template:
    get:
      tags:
      - Device Group
      summary: Returns the device templates for the devices in a group
      description: 'A list of accessible device groups can be retrieved using the ''GET /api/v1/device-groups/-''.


        Options:

        * all: all basic options are included. (default)

        * l2: include layer 2 data such as inventory, links and other information used by the system

        * tempip: use ip address as the template id instead of the database identifier.

        * simple: return all data in it simplest form, dropping items like parents, classid, etc.


        Basic Options:

        * action: include device action

        * active: include active monitors

        * attribute: include device attributes

        * brand: include brand

        * collect-wireless: include wireless collection information

        * creds: include credentials

        * custom: include custom links

        * dependency: include dependencies

        * devicetype: include device type

        * groups: include group memberships

        * interface: include network interfaces

        * note: include device note

        * oid: include SNMP system oid

        * os: include OS Role

        * passive: include passive monitors

        * perf: include performance monitors

        * polling-interval: include Device Level polling interval

        * refresh: include refresh settings

        * roles: include device roles and sub roles.

        * task: include NCM tasks'
      operationId: DeviceGroup_DeviceTemplates
      parameters:
      - name: groupId
        in: path
        description: The id of the group.
        required: true
        schema:
          type: string
      - name: includeHierarchy
        in: query
        description: include nested group's devices, default=false
        required: false
        schema:
          type: boolean
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name, hostname and network address
        required: false
        schema:
          type: string
      - name: options
        in: query
        description: Options to be used in creating device templates
        required: false
        schema:
          type: string
      - name: limit
        in: query
        description: The limit for the page
        required: false
        schema:
          type: integer
          format: int32
      - name: pageId
        in: query
        description: The pageId
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceTemplateReadResults'
            text/json:
              schema:
                $ref: '#/components/schemas/PageResult_DeviceTemplateReadResults'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/devices/-/credentials:
    get:
      tags:
      - Device Group
      summary: Return the child groups given a device group
      operationId: DeviceGroup_AssignedCredentials
      parameters:
      - name: groupId
        in: path
        description: the id of the group
        required: true
        schema:
          type: string
      - name: returnHierarchy
        in: query
        description: return all descendant groups of the parent group. default=false
        required: false
        schema:
          type: boolean
      - name: search
        in: query
        description: optional search text ; case-insensitive ; searches the display name
        required: false
        schema:
          type: string
      - name: deviceView
        in: query
        description: the view to use for device data. default=id
        required: false
        schema:
          type: string
          enum:
          - id
          - basic
          - card
          - overview
      - name: credentialView
        in: query
        description: The view to use for credential data. default=id
        required: false
        schema:
          type: string
          enum:
          - id
          - basic
          - summary
          - details
      - name: type
        in: query
        description: type of credential being looked for. default=all
        required: false
        schema:
          type: string
          enum:
          - all
          - snmp
          - windows
          - ado
          - telnet
          - ssh
          - vmware
          - jmx
          - smis
          - aws
          - azure
          - meraki
          - restapi
          - ubiquiti
          - redfish
      - name: pageId
        in: query
        description: The pageId
        required: false
        schema:
          type: string
      - name: limit
        in: query
        description: The limit for the page
        required: false
        schema:
          type: integer
          format: int32
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResult_List_CredentialsByDevice'
            text/json:
              schema:
                $ref: '#/components/schemas/PageResult_List_CredentialsByDevice'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/roles/brand:
    put:
      tags:
      - Device Group
      summary: Assign a brand to a device
      operationId: DeviceGroup_DeviceAssignBrandRole
      parameters:
      - name: groupId
        in: path
        description: ID of device
        required: true
        schema:
          type: string
      - name: brand
        in: query
        description: Brand name or identifier to assign
        required: true
        schema:
          type: string
      - name: includeHierarchy
        in: query
        description: 'include all devices in group and subgroups, default: true'
        required: false
        schema:
          type: boolean
      - name: Authorization
        in: header
        description: oauth2 access_token
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResult'
            text/json:
              schema:
                $ref: '#/components/schemas/SuccessResult'
      security:
      - oauth2: []
  /api/v1/device-groups/{groupId}/roles/os:
    put:
      tags:
      - Device Group
      summary: Assign operating system to a device
      operationId: DeviceGroup_DeviceAssignOsRole
      parameters:
      - name: groupId
        in: path
        description: identifier of device
        required: true
        schema:
          type: string
      - name: osName
        in: query
        description: Operating system name or identifier to assign
        required: true
        schema:
          type: string
      

# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/progress-software/refs/heads/main/openapi/progress-software-device-group-api-openapi.yml