---
title: "Create business service check"
method: POST
path: "/v1/objects/{object-id}/business-service-checks"
tags: ["Objects"]
---

# Create business service check

`POST /v1/objects/{object-id}/business-service-checks`

Create new check in given business service or business service prototype. Checks created in a
prototype are propagated to all business services created from it. Omitted fields get default
values (type "object", description "Unnamed", no related object, default threshold). Requires
modify access to the object.

## Request body

- BusinessServiceCheckUpdate
  - `type` 'object' | 'dci' | 'script'
  - `description` string
  - `relatedObjectId` integer
  - `relatedDciId` integer
  - `statusThreshold` integer
  - `script` string, nullable — NXSL script source; compiled on save when check type is script, compilation errors are reported as 400

## Response `201`

Check created.

- BusinessServiceCheck
  - `id` integer
  - `serviceId` integer — ID of business service or prototype owning this check
  - `type` 'object' | 'dci' | 'script' | 'none'
  - `description` string
  - `relatedObjectId` integer — Object whose status is checked (object and DCI checks); for script checks, object passed to the script as $object (0 if none)
  - `relatedDciId` integer — DCI whose threshold state is checked (DCI checks)
  - `statusThreshold` integer — Object or DCI status at which check fails; 0 means use server default
  - `script` string, nullable — NXSL script source (script checks)
  - `status` integer — Current check status (0 = normal, 2 = minor, 4 = critical)
  - `failureReason` string — Reason of last failure
  - `prototypeServiceId` integer — ID of prototype this check was created from (equals serviceId for auto-bound checks), 0 for manually created checks
  - `prototypeCheckId` integer — ID of prototype check this check was created from, 0 if none
  - `autoCreated` boolean — True if check was created automatically (from prototype or by auto-binding) and cannot be modified

## Other responses

- `400` — Object is not a business service, invalid request body, or script compilation error.
- `401` — Unauthorized.
- `403` — Access denied.
- `404` — Object or check not found.

## Changes

- **2026-09-30** `da456b470a82` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/netxms/apis/netxms-api/changes/v1/objects/:object-id/business-service-checks/post.md)

---

[API](https://skmtc.dev/netxms/apis/netxms-api.md) · [All operations](https://skmtc.dev/netxms/apis/netxms-api/llms.txt) · [OpenAPI document](https://skmtc.dev/netxms/apis/netxms-api/revisions/129789f8868f?raw)
