Skip to content

Data Management Object Models

Objects used to build Data Management device deletion requests and parse responses.

nexthink_api.DataManagement

Classes necessary to represent and manipulate objects used in the Nexthink Data Management API.

NxtDataManagementErrorCode

Bases: str, Enum

Data Management error response code.

EMPTY_REQUEST = 'EMPTY_REQUEST' class-attribute instance-attribute

BATCH_SIZE_EXCEEDED = 'BATCH_SIZE_EXCEEDED' class-attribute instance-attribute

INVALID_REQUEST = 'INVALID_REQUEST' class-attribute instance-attribute

EMPTY_TENANT = 'EMPTY_TENANT' class-attribute instance-attribute

FEATURE_NOT_ENABLED = 'FEATURE_NOT_ENABLED' class-attribute instance-attribute

INTERNAL_ERROR = 'INTERNAL_ERROR' class-attribute instance-attribute

NxtDataManagementErrorResponse

Bases: BaseModel

Error details returned with Data Management 4xx and 5xx responses.

Attributes
code : NxtDataManagementErrorCode
    Stable machine-readable error code identifying the failure reason.
message : str
    Human-readable description of the error.
request_id : str | None
    Optional response correlation identifier from the x-request-id header.

code: NxtDataManagementErrorCode instance-attribute

message: str instance-attribute

request_id: str | None = None class-attribute instance-attribute

NxtDataManagementBatchStatus

Bases: str, Enum

Data Management batch status.

ACCEPTED = 'ACCEPTED' class-attribute instance-attribute

NxtDataManagementDeviceStatus

Bases: str, Enum

Data Management per-device status.

SCHEDULED = 'SCHEDULED' class-attribute instance-attribute

INVALID = 'INVALID' class-attribute instance-attribute

FAILED = 'FAILED' class-attribute instance-attribute

NxtDeviceDeletionResponse

Bases: BaseModel

Scheduling result for a device deletion batch.

Attributes
scheduledCount : NonNegativeInt
    Number of devices successfully queued for deletion.
status : NxtDataManagementBatchStatus
    Overall batch status.
devices : list[NxtDeviceStatus]
    Per-device scheduling outcome, in the same order as the request.
request_id : str | None
    Optional response correlation identifier from the x-request-id header.

scheduledCount: NonNegativeInt instance-attribute

status: NxtDataManagementBatchStatus instance-attribute

devices: list[NxtDeviceStatus] instance-attribute

request_id: str | None = None class-attribute instance-attribute

NxtDeviceDeletionRequest

Bases: BaseModel

Batch of devices to be deleted from the Nexthink inventory.

Attributes
devices : list[NxtDeviceEntry]
    Non-empty list of devices to delete. Maximum 100 devices per request.

devices: conlist(NxtDeviceEntry, min_length=1, max_length=100) instance-attribute

NxtDeviceEntry

Bases: BaseModel

Identify a device scheduled for deletion.

Attributes
uid : str
    UID of the device as reported by the Nexthink Collector.
name : str
    Name of the device as reported by the Nexthink Collector.

uid: str = Field(min_length=1) class-attribute instance-attribute

name: str = Field(min_length=1) class-attribute instance-attribute

NxtDeviceStatus

Bases: BaseModel

Scheduling outcome for a single device.

Attributes
uid : str
    UID of the device as submitted.
name : str
    Name of the device as submitted.
status : NxtDataManagementDeviceStatus
    Per-device scheduling outcome.

uid: str instance-attribute

name: str instance-attribute

status: NxtDataManagementDeviceStatus instance-attribute

NxtUidValidationMode

Bases: str, Enum

UID validation mode for Data Management device deletion calls.

STRICT = 'strict' class-attribute instance-attribute

WARN = 'warn' class-attribute instance-attribute

PERMISSIVE = 'permissive' class-attribute instance-attribute