---
title: "Update Network Device Diagnostic"
method: PUT
path: "/network-device-diagnostic/{id}"
tags: ["Network Device Diagnostic"]
---

# Update Network Device Diagnostic

`PUT /network-device-diagnostic/{id}`

## Request

- Base URL: `https://oneuptime.com/api`
- URL: `https://oneuptime.com/api/network-device-diagnostic/{id}`
- Auth: API key in header `APIKey`
- TypeScript: <https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/docs/network-device-diagnostic/:id/put.ts> (a function with typed inputs; its response is checked against the schema)

Endpoint to update an existing Network Device Diagnostic

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `data` NetworkDeviceDiagnosticUpdateSchema, required: Update schema for NetworkDeviceDiagnostic model. Update

## Response `200`

Updated successfully

- object
  - `data` NetworkDeviceDiagnosticReadSchema: Read schema for NetworkDeviceDiagnostic model. Read
    - `_id` string, uuid: ID of this object. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Edit Network Device Diagnostic]
    - `createdAt` object: Date and Time when the object was created. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Edit Network Device Diagnostic]
    - `updatedAt` object: Date and Time when the object was updated. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Edit Network Device Diagnostic]
    - `deletedAt` object: Date and Time when the object was deleted. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Edit Network Device Diagnostic]
    - `projectId` string, uuid: ID of your OneUptime Project in which this object belongs. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `networkDeviceId` string, uuid, required: ID of the Network Device this diagnostic runs against. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `probeId` string, uuid: ID of the Probe that runs this diagnostic. Defaults to the device's assigned probe. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `diagnosticType` string, required: What to run against the device: "Ping" (ICMP echo: reachability, round-trip time, jitter, packet loss), "Traceroute" (the hop-by-hop path from the probe to the device) or "SNMP Walk" (every OID the device answers under a starting OID, read with its SNMP credentials). Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `hostname` string: The hostname or IP address the probe reaches, copied from the device when the diagnostic is created. Managed by the server. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `status` string: Where this diagnostic is in its run: "Pending" (waiting for the probe), "In Progress" (claimed by the probe), "Completed" (a result is stored) or "Failed" (the probe could not run it; see Status Message). Managed by the server and the probe. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `statusMessage` string: Why a diagnostic Failed, e.g. the device has no usable hostname or the probe does not support this diagnostic. Managed by the probe. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `pingResult` object: For a Ping diagnostic: whether the device answered, the failure cause when it did not, and the packet statistics (min/avg/max round-trip time, jitter, packet loss). Managed by the probe. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `traceRouteResult` object: For a Traceroute diagnostic: the DNS lookup and the hop-by-hop path from the probe to the device, in the same shape the Network monitor records. Managed by the probe. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `snmpWalkRootOid` string: For an SNMP Walk: the OID whose subtree is walked, such as 1.3.6.1.2.1.2 for the interfaces. Defaults to 1.3.6.1, everything the device exposes. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `snmpWalkAfterOid` string: For an SNMP Walk that continues an earlier one: the last OID the earlier walk read. The walk reads what follows it under the start OID. Permissions - Create: [Project Owner, Project Admin, Project Member, Settings Admin, Settings Member, Create Network Device Diagnostic], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `snmpWalkResult` object: For an SNMP Walk: each OID the device answered with its type and value, why the walk stopped, where to continue from, and, when the device refused or did not answer, why. Managed by the probe. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `startedAt` object: When the probe claimed this diagnostic. Managed by the server. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `completedAt` object: When the probe reported a result (or a failure) for this diagnostic. Managed by the server. Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `createdByUserId` string, uuid: User ID who created this object (if this object was created by a User). Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]
    - `deletedByUserId` string, uuid: User ID who deleted this object (if this object was deleted by a User). Permissions - Create: [No access - you don't have permission for this operation], Read: [Project Owner, Project Admin, Project Member, Viewer, Settings Admin, Settings Member, Settings Viewer, Read Network Device Diagnostic], Update: [No access - you don't have permission for this operation]

## Other responses

- `400`: Bad request. This response indicates that the request was malformed or contained invalid data.
- `401`: Unauthorized. This response indicates that the request requires user authentication.
- `402`: Payment Required. This response indicates that the request requires payment or a valid subscription.
- `403`: Forbidden. This response indicates that the server understood the request, but refuses to authorize it.
- `404`: Not found. The record does not exist, belongs to another project, or is one you may not read - the same answer for each.
- `405`: Project not found. This response indicates that the requested project does not exist or is not accessible.
- `408`: Request Timeout. This response indicates that the server timed out waiting for the request.
- `415`: Unable to reach server. This response indicates that the server is currently unreachable or down.
- `422`: Not authorized. This response indicates that the user does not have permission to access the requested resource.
- `500`: Internal Server Error. This response indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.

---

[API](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification.md) - [All operations](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/oneuptime/apis/oneuptime-openapi-specification/revisions/ba3307d00304?raw)
