Skip to main content

Purpose

To integrate Thinkst Canary with AirMDR to retrieve Canary incidents, devices (Birds), and Canarytokens and perform supported incident-response actions.

Supported Versions

The integration communicates with the Canary Console API and is therefore generally independent of the individual hardware, virtual, cloud, or container Canary version.Thinkst states that its Console API requires TLS 1.2 or later.

Authentication

Thinkst Canary authenticates API requests using an API key called an auth_token. AirMDR requires:
  • Base URL: The HTTPS URL of your Canary Console.
  • API Token: A dedicated Canary Global API key.
The role assigned to a Canary API key cannot be changed after creation.
To change its role, create a replacement key, update AirMDR, test the connection, and then remove the previous key.

Pre-requisites

Users must have Administrator access and permission to access Global Settings in the Thinkst Canary Console.
The Canary Console domain hash must be available.

Setup Steps

1

Sign in to the Thinkst Canary Console

  1. Open your organization’s Thinkst Canary Console.
  2. Enter your account credentials.
  3. Complete multi-factor authentication if required.
    A standard Console URL resembles: https://<domain-hash>.canary.tools
2

Open Global Settings and enable the Canary API

  1. Navigate to Canary Console.
  2. Select the gear icon.
  3. Select Global Settings.
  4. From the settings menu, select API.
  5. Check whether the API is enabled.
  6. If it is disabled, select Enable API.
  7. Confirm the action if prompted.
    If the Console API is disabled, it must initially be enabled through the Canary Console UI.
3

Create an API key for AirMDR

  1. In the API section, select the option to add or create an API key.
  2. In the name or note field, enter a descriptive value such as: AirMDR Integration
  3. Select required role (Admin or Analyst) as the API key role.
  4. Create the API key.
    • Record the generated Key ID for auditing and future rotation.
    • Select the eye or reveal icon next to the key, if required.
  5. Copy the displayed Auth Token.
    Copy the token when it is created and store it securely. Thinkst notes that viewing an existing token after creation should be considered deprecated and may not remain available in future versions.
4

Obtain the Base URL

  1. In the same API settings area, locate the Domain Hash displayed in the API section.
    Navigation Path: Canary Console → Gear icon → Global Settings → API
  2. Construct the Base URL using the following format: https://<domain-hash>.canary.tools
    Example: https://abc123def456.canary.tools
    Enter the Console URL only. Do not append  /api/v1/settings/nest/settings, or another API endpoint.
    You can also verify the value by checking your Canary Console browser address. Copy only the URL origin, for example: https://abc123def456.canary.tools

Thinkst Canary Credential Reference Table

Validate Connectivity

Use Thinkst Canary’s ping endpoint to validate the Base URL and API Token:
Sample Successful Response:
Sample Invalid Response:
Using the X-Canary-Auth-Token header helps prevent the token from appearing in URLs and query-string logs.

Configure Thinkst Canary in AirMDR Integrations Dashboard

  1. Navigate to AirMDR, provide the credentials and click Login
  2. Navigate to the AirMDR Integrations Dashboard in the left navigation pane and select ADMIN → Integrations.
  3. Use the search option, enter the keyword “Thinkst Canary”, select the Connections tab, and click + New Connection button.
  4. Use the following values in the AirMDR integration configuration screen:
    • In Remote Agent, select an AirMDR Remote Agent only when the Thinkst Canary Console must be reached through an approved network route or direct outbound access from AirMDR is restricted.
    • In Expiry, select the date on which AirMDR should treat the stored connection credentials as expired, according to your organization’s credential-rotation policy.
    The AirMDR Expiry setting is a connection-management control. It does not automatically expire or rotate the API token in Thinkst Canary.
  5. Click Save.

Skills provided by this Integration

These skills retrieve information without changing data in the Thinkst Canary Console. A Read-Only or higher API key can be used.
These skills change incident data in the Thinkst Canary Console and require an Analyst or Admin API key.
To view the details of Input Parameters and Output for the respective skills

Additional Information

AirMDR monitoring

Monitor the integration from the AirMDR interface for:
  • Connection status.
  • Authentication failures.
  • Skill execution history.
  • API timeouts.
  • Incident retrieval or update failures.
  • Remote Agent availability, when applicable.

Thinkst Canary monitoring

Thinkst Canary generates Audit Trail records when actions are performed on the Console. The API key’s Key ID can help identify which credential performed an API operation.Review the Console Audit Trail for:
  • API actions initiated by AirMDR.
  • Incident-state changes.
  • API key creation or removal.
  • Unexpected or unauthorized actions.
Thinkst provides an Audit Trail endpoint at: GET /api/v1/audit_trail/fetchIllustrative AirMDR log entries
These entries illustrate the information that should be recorded; the exact AirMDR log format may differ.
  • INFO: Successful connection tests, synchronization, and skill execution.
  • WARN: Temporary API failures, retries, incomplete results, or response delays.
  • ERROR: Authentication failures, unreachable endpoints, or failed incident actions.
  • DEBUG: Enable temporarily during troubleshooting and disable afterward to avoid excessive logging.
Never record the complete API Token in logs.

✅ Do

  • Create a dedicated API key for AirMDR.
  • Use the required role (Admin or Analyst) role when incident-response actions are required.
  • Store the API Token in the AirMDR secret field.
  • Use HTTPS and retain TLS certificate validation.
  • Identify the key with a clear name such as AirMDR Integration.
  • Record its Key ID for auditing and rotation.
  • Rotate credentials periodically and after suspected exposure.
  • Enable sensitive-data masking in Canary when appropriate.

**❌ **Avoid

  • Do not use an Admin API key for the standard integration.
  • Do not reuse a personal or shared API key.
  • Do not include the API Token in screenshots or documentation.
  • Do not place the token directly in URLs when a secure header can be used.
  • Do not store credentials in scripts, source control, or plaintext files.
  • Do not disable TLS certificate verification.
  • Do not delete the previous key until the replacement connection has been tested.
  • 📧 Contact AirMDR Support through your designated support channel.
  • 🔁 Rotate credentials regularly. Recommended cadence: Every 90 days or as per internal security policy
  • 🔄 Reconnect in AirMDR immediately when secrets are changed.

Data exchanged

Depending on the enabled AirMDR skills and API role, AirMDR may retrieve:
  • Canary incidents and alert details.
  • Incident timestamps and current status.
  • Source IP addresses and activity details.
  • Canary device or Bird information.
  • Flock information.
  • Canarytoken metadata.
  • Supporting information required for investigation and enrichment.
With an Analyst key, AirMDR may send supported incident-state actions back to Thinkst Canary, including:
  • Acknowledge an incident.
  • Unacknowledge or reopen an incident.
  • Delete an incident when the corresponding AirMDR skill is used.

Encryption

  • AirMDR-to-Canary Console API traffic uses HTTPS.
  • Thinkst requires TLS 1.2 or later for Console API communication.
  • Keep TLS certificate verification enabled.
  • Do not transmit the API Token through email, tickets, chat messages, or documentation.
The public API documentation verifies encryption in transit but does not specify the Console’s at-rest encryption algorithm. Refer to the applicable Thinkst and AirMDR security documentation for contractual at-rest encryption controls.

Ports and endpoints

DNS port 53 is used by Canary devices for their normal Console communication. It is not the protocol used by AirMDR to call the Canary API.