---
title: "Choose what this server reports to Dagu Console"
method: PUT
path: "/license/monitoring"
tags: ["system"]
---

# Choose what this server reports to Dagu Console

`PUT /license/monitoring`

## Request

- Base URL: `http://localhost/api/v1`
- URL: `http://localhost/api/v1/license/monitoring`
- Auth: one of:
  - HTTP bearer
  - HTTP basic
  - none

Sets how much this server reports to Dagu Console. The change applies at once; off stops a report in flight. Admin only.

## Query parameters

- `remoteNode` string

## Request body

- object
  - `level` 'off' | 'health' | 'runs' | 'errors', required: How much this server reports to Dagu Console: off sends nothing but one report saying so after health, runs, or errors, health sends its version and which services run, runs also sends the status of finished DAG runs and the runs in progress, and errors also sends the error messages of failed runs

## Response `200`

What this server reports after the change

- LicenseMonitoring: What this server reports to Dagu Console
  - `level` 'off' | 'health' | 'runs' | 'errors', required: How much this server reports to Dagu Console: off sends nothing but one report saying so after health, runs, or errors, health sends its version and which services run, runs also sends the status of finished DAG runs and the runs in progress, and errors also sends the error messages of failed runs
  - `configured` boolean, required: Whether cloud.report in the configuration fixes the level
  - `chosen` boolean, required: Whether an administrator chose the level on this server
  - `noticeDismissed` boolean, required: Whether an administrator dismissed the notice that asks what to report
  - `errorsOffered` boolean, required: Whether an administrator was offered to send error messages: they chose a level on this server, or dismissed the notice that offers them
  - `lastReportAt` string: When Dagu Console accepted the last report this server sent
  - `lastReport` string: JSON body of the last report, as sent, with heartbeat_secret replaced by "[redacted]"
  - `runsPausedUntil` string, date-time: When Dagu Console stores this server's finished runs again, after its workspace reached the daily limit; absent when the last accepted report was not told of a pause

## Other responses

- `400`: Unknown level, or license management is not available
- `403`: Insufficient permissions
- `409`: cloud.report in the configuration fixes the level
- `default`: Unexpected error

## Changes

> 208 revisions in range; 1 not diffed.

- **2026-10-21** (v1) `5051462f6f42`: 1 info
  - added the required property `errorsOffered` to the response with the `200` status
- **2026-10-20** (v1) `9e73d150ef9d`: 1 warning, 1 info
  - added the new `errors` enum value to the `level` response property for the response status `200`
  - added the new `errors` enum value to the request property `level`
- **2026-10-11** (v1) `af4dc73843d1`: 1 info
  - added the optional property `runsPausedUntil` to the response with the `200` status
- **2026-10-10** (v1) `3dc41216e8b7`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/dagucloud/apis/dagu/changes/license/monitoring/put.md)

---

[API](https://skmtc.dev/dagucloud/apis/dagu.md) - [All operations](https://skmtc.dev/dagucloud/apis/dagu/llms.txt) - [OpenAPI document](https://skmtc.dev/dagucloud/apis/dagu/revisions/4f7617b01d17?raw)
