ConnectWise Automate client comment
Short answer
Paste an Automate server URL, a username, a password, and a client id. A confirmed outage appends to that client's comment. It does not run a script.
How The Watchbill helps
- A check runs about once a minute.
- Email goes out when a check is down and when it recovers.
- Each client can have a status page that stays private until you publish it.
This guide is what to paste for ConnectWise Automate, which calls are used, and the access limit on the vendor's portal.
On Pro or Business, open the client, then Alerting, then Remote monitoring, and choose ConnectWise Automate. Paste the numeric client id, a server URL ending in /cwa/api/v1 or /api/v1, the username, and the password. Confirm the comment before you enable more clients.
The two-factor code is only for a login that asks for one. Leave the checkbox off until a test comment looks right. A confirmed outage appends a block to that client's Comment. It does not run a script or a command.
What the public pages allow
The Automate product page on developer.connectwise.com showed only a login prompt on 12 October 2026. Getting Started says documentation is gated on registration approval. Its access table marks Automate for Partners and Invent Solutions Partners. The Open Solutions Partners column for Automate is empty on that page. A developer account, when offered, is described there as for integrations that will be public on the ConnectWise Marketplace or The Control Integration Library. That is an access limit on the vendor's portal. It is not a The Watchbill plan. You use a username and password for the Automate server you already run.
The request shapes below are from the published TypeScript schema connectwise-rest@2.0.0-beta.2, read 12 October 2026. That package presents itself as generated from the Automate OpenAPI. These calls were not re-read on developer.connectwise.com. Treat them as unverified against the gated portal.
What you type, and what is sent
POST /api/v1/APIToken sends Username, Password, and TwoFactorPasscode when you filled that box. The response field used is AccessToken. The published schema's token operation does not list a ClientId header. Some Automate servers ask for an integrator client id outside this schema. That header is unverified here and is not sent.
GET /api/v1/Clients/{clientId} reads Comment. PATCH sends a JSON patch that replaces Comment with the previous text plus a Watchbill block. The block names the check, the status URL, and a marker for that outage action. If the marker is already in the comment, it does not patch again. Hosted servers are commonly mounted at /cwa. The saved root must end in /cwa/api/v1 or /api/v1. A URL that is only the host is treated as /cwa/api/v1.
The schema includes script and command operations, including computer command execute. This path does not call them. Those paths are refused before the request is sent.
A numeric rate limit was not in the schema or the public getting-started page. That limit is unverified. HTTP 429 is retried. A 401 is a bad credential. Five terminal failures turn the connection off.
Fields to leave blank
Device id is for NinjaOne. Agent id is for Kaseya. Leave both blank. The client id is the only record id Automate uses here. It has to be digits, up to 12. A client name will not be accepted.
The username and password are stored encrypted. On a later save, leave Access id and Access secret blank to keep the stored secret. Type a new password only when you are rotating it. Clear the two-factor box unless that login asks for a fresh code. A code is not stored as the long-term secret by itself. It is sent with the username and password on the token call when you typed one.
Turn it on for one client
The checkbox is off until you check it. Each client has its own connection. There is no account-wide Automate switch. The trigger is a confirmed outage open and the matching recovery. A single failed minute does not send. A maintenance window does not send.
If the comment does not change, confirm the URL ends in /api/v1, the client id is the numeric id, and the user can read and patch that client. The portal login gate means this guide cannot name a permission checkbox inside Automate. Use a user that can edit the client comment, send one test by turning the connection on for a check you can take down on purpose, and turn it off if the comment is wrong. The PSA ticket mailbox is a different product. That setup is in ConnectWise PSA ticket email.
What the screen shows
Before a row is saved, the line says Off. A saved connection with the checkbox clear stays Off. With the checkbox on, it says On. After failed attempts it says Off after failed attempts and shows the count. Remove deletes that client's connection and the stored username and password. It does not edit the Comment already on the Automate client. Old Watchbill blocks stay until someone clears them in Automate.
The appended block starts with [Watchbill], names the check, and includes the status URL and a marker. If the comment would grow past the size this path keeps, older Watchbill blocks are dropped first. A block that is not from this path is left in place when it fits. If the marker for that open or close is already present, the comment is not patched again, so a retry does not stack the same line.
The URL you paste must be https, with no user or password in the URL itself, and no query string. A private address is rejected. A URL that is only the host, with an empty path, is treated as /cwa/api/v1. Any other path must end in /cwa/api/v1 or /api/v1, or the form rejects it. A different mount is not rewritten. That hosted layout was not re-read on the login-gated portal.
How The Watchbill helps
On Pro and Business, ConnectWise Automate can append a comment on the client when a confirmed outage opens and when it closes. It stays off until that client turns it on. It posts a note. It does not run scripts. The vendor portal was login-gated when these calls were checked, so confirm the comment in your server before you enable the rest of the clients.
Sources
Checked 12 Oct 2026.