Select the tab
ESET Connect – Table of Contents

GET List all device groups

Relative path: /v1/device_groups

Hierarchy can be reconstructed from the returned device_groups.

Base URL for Europe, Germany, United States, Canada and Japan regions:






Query parameters

Name

Type

Description

pageSize

integer

Limit for pagination purposes.

If unspecified or 0, the default value is 50. The maximum value is 1000; values above 1000 will be coerced to 1000.

Info: For more information, refer to Paginating Requests in APIs

or Design Patterns: Pagination

pageToken

string

Page token of the current page.

If not given or "", the first page is returned.

Info: For more information, refer to Paginating Requests in APIs

or Design Patterns: Pagination



Responses

Display Schema+Headers instead of an Example or vice-versa

Code

Description and Example

Description, Schema and Headers

200

Successful response.


Response example

{
  "deviceGroups": [
    {
      "displayName": "string",
      "isSecurityGroup": true,
      "linkedEntityType": "DEVICE_GROUP_ENTITY_TYPE_UNSPECIFIED",
      "parentGroupUuid": "string",
      "uuid": "string",
      "etag": "string"
    }
  ],
  "nextPageToken": "string"
}

Successful response.


Response schema

{
  "$ref": "v1ListGroupsResponse",
  "deviceGroups": [
    {
      "$ref": "v1DeviceGroup",
      "description": "Migration from EPC: Static groups have is_security_group == true Dynamic groups have is_security_group == false All and Lost&Found are just ordinary groups.",
      "displayName": {
        "title": "Name given by the user to identify the group",
        "type": "string"
      },
      "isSecurityGroup": {
        "type": "boolean",
        "description": "If true, the group represents a security group - a resource group for controlling access rights. Info: Alternative names: - static group (ERA, ESMC, EPC) - access group (ESMC, EPC) - resource group (Azure)"
      },
      "linkedEntityType": {
        "$ref": "v1DeviceGroupEntityType",
        "type": "string",
        "description": "Possible entities that Device Group represents. DEVICE_GROUP_ENTITY_TYPE_UNSPECIFIED: fallback DEVICE_GROUP_ENTITY_TYPE_COMPANY: Group representing [company] DEVICE_GROUP_ENTITY_TYPE_MSP: Group representing [MSP] DEVICE_GROUP_ENTITY_TYPE_SITE: Group representing [site] DEVICE_GROUP_ENTITY_TYPE_HOUSEHOLD: Group representing [household]",
        "default": "DEVICE_GROUP_ENTITY_TYPE_UNSPECIFIED",
        "enum": [
          "DEVICE_GROUP_ENTITY_TYPE_UNSPECIFIED",
          "DEVICE_GROUP_ENTITY_TYPE_COMPANY",
          "DEVICE_GROUP_ENTITY_TYPE_MSP",
          "DEVICE_GROUP_ENTITY_TYPE_SITE",
          "DEVICE_GROUP_ENTITY_TYPE_HOUSEHOLD"
        ]
      },
      "parentGroupUuid": {
        "title": "Reference to parent [group]",
        "type": "string"
      },
      "uuid": {
        "type": "string",
        "description": "Unique identifier of the entity. Must be collision-free - two identifiers created anywhere in the world must not collide within the entity parent scope. Unless a member of aggregate, the entity scope is always global. Although most of the times compliant with RFC 4122: A Universally Unique IDentifier (UUID) URN Namespace, do not rely on it being a RFC UUID. Treat it as an opaque identifier. RFC UUID can be recognized by being formatted according to the template xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, as explained on Wikipedia. UUID is used for referencing an entity, even across domains. Example: '123e4567-e89b-12d3-a456-426614174000'"
      },
      "etag": {
        "type": "string",
        "description": "The entity tag (or ETag) can be thought of as a snapshot of a resource’s state at a given revision and can used for optimistic concurrency control and validating entity freshness. It is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. An entity-tag consists of an opaque quoted string (hash or checksum), possibly prefixed by a weakness indicator as specified in RFC2616, Section 13.3.3 eTag value must follow RFC7232, Section 2.3 and google's specification. Info: eTag can be used as a complementary to mechanism to revisioning, where: - Revisions for tracking history and allowing access to previous versions google's AIP 162 - ETags for concurrency control and validating freshness google's AIP 154 The same resource may expose revision_id that clients can list or roll back to past snapshots and also eTag, which - serve as a practical implementation of revisions for managing resource versions in real-time operations. - ensure that clients operate on the expected version of a resource, preventing conflicts in concurrent scenarios (e.g., two clients trying to update the same resource simultaneously). In contrast to revisions ETags don’t provide a full revision history (like a version control system). However, they enable safe updates and deletes by tying each operation to a specific resource state—effectively a revision."
      }
    }
  ],
  "nextPageToken": {
    "type": "string",
    "description": "Page token of the next page. Empty or '' for the last page. Info: For more information, refer to Paginating Requests in APIs or Design Patterns: Pagination"
  }
}


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

202

Response took too long; request cached. Response can be retrieved later using the response-id header.

Response took too long; request cached. Response can be retrieved later using the response-id header.


Response schema

[]


Headers

{
  "response-id": {
    "description": "Unique ID of a pending request. Used to retrieve cached result.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  },
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

400

One of the errors: 1. Bad or missing authorization. 2. Validation error. Invalid argument provided.

One of the errors: 1. Bad or missing authorization. 2. Validation error. Invalid argument provided.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

401

Token has expired or is invalid.

Token has expired or is invalid.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

403

Access denied. Check permissions.

Access denied. Check permissions.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

404

Requested resource not found.

Requested resource not found.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

429

Rate limit reached. Try again later.

Rate limit reached. Try again later.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

500

Internal server failure. Try again later.

Internal server failure. Try again later.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

502

Internal server failure. Try again later.

Internal server failure. Try again later.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

503

Environment under maintenance. Try again later.

Environment under maintenance. Try again later.


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}

504

Action took too long; timeout reached

Action took too long; timeout reached


Response schema

[]


Headers

{
  "request-id": {
    "description": "Unique ID of the request. Include in support requests.",
    "style": "simple",
    "explode": false,
    "schema": {
      "type": "string",
      "format": "uuid"
    }
  }
}