ConnectWise
Tidehawk creates ConnectWise Manage service tickets when certificates or domains approach expiry.
Before you start
Section titled “Before you start”- You need the owner or admin role in Tidehawk.
- Create an API member and its key pair in ConnectWise under System › Members › API Members.
- Register a Client ID at
developer.connectwise.com. ConnectWise rejects API calls without one. - The API member needs read access to companies and service boards, and rights to create tickets and ticket notes.
What Tidehawk asks for
Section titled “What Tidehawk asks for”| Field | What to enter |
|---|---|
| Company ID | Your ConnectWise company identifier, for example mycompany |
| Site URL | Your ConnectWise host, for example na.myconnectwise.net. Other regions are eu.myconnectwise.net, au.myconnectwise.net and za.myconnectwise.net |
| Client ID (UUID) | The client ID registered at developer.connectwise.com |
| Public Key | The API member’s public key |
| Private Key | The API member’s private key |
Connect
Section titled “Connect”- Open Integrations and select Connect on the ConnectWise card.
- Fill in all five fields and select Connect ConnectWise Manage →. Tidehawk calls your instance to validate the credentials before saving.
- On Configure ticket defaults, choose a Default board. Optionally set a Default status ID, or leave it blank to use the board default.
- Select Save & finish, then Test now. A working connection reports how many companies it can see.
What a Tidehawk ticket looks like
Section titled “What a Tidehawk ticket looks like”A ticket summary of SSL certificate expires in 12 days — mail.example.co.uk (Acme Ltd), or Domain expires in 12 days — example.co.uk (Acme Ltd) for domains.
The initial description is Markdown, which ConnectWise renders. It opens with a bold status line such as CRITICAL · Expires in 5 days, then bold-labelled lines for the client, the certificate or domain and the expiry date, and a View & renew in Tidehawk link. Values taken from your data are escaped, so a client name containing Markdown characters cannot distort the ticket.
The ticket lands on your default board, against the ConnectWise company whose name matches the Tidehawk client exactly. Priority uses the connection’s default priority if one is stored, otherwise the alert’s urgency maps to priority 1 for critical, 2 for high and 4 for normal.
Closing
Section titled “Closing”When the certificate or domain is renewed, Tidehawk posts an internal analysis note on the ticket explaining that it resolved automatically, naming the renewed certificate and its new expiry date where it knows them.
If a closed status ID is stored on the connection, Tidehawk then moves the ticket to that status and the ticket is closed. Without one, the note is posted and the ticket stays open for a human to close.
A ticket that no longer exists in ConnectWise is treated as handled, not as an error.
Tokens and expiry
Section titled “Tokens and expiry”The key pair does not expire on a schedule. Tidehawk re-validates the connection in the background by calling the system information endpoint. If validation keeps failing, the card turns to Connection error and eventually Needs attention, and you reconnect with fresh keys.
Limitations
Section titled “Limitations”- The closed status is not exposed on the configure screen. Without it, closing degrades to a note on an open ticket.
- The default priority is not exposed on the configure screen either, so the alert-derived mapping is what most workspaces get.
- Client matching is an exact, case-insensitive name match against your ConnectWise company list, which is cached for an hour. A company renamed in ConnectWise may take up to an hour to match again.
- Only the first 1000 companies are read when matching a client.