---
title: Halcyon
slug: connectors/halcyon
docTags: 
createdAt: 2026-06-09T16:29:39.411Z
---

Halcyon is a security platform that provides advanced threat detection and response capabilities for managing security operations.

Halcyon is a comprehensive platform for asset management and threat detection, offering robust capabilities to manage and secure digital assets. The Halcyon connector for Swimlane Turbine enables seamless integration with Halcyon's services, allowing users to automate asset reporting, alert management, and tenant information retrieval. This integration empowers security teams to efficiently manage assets, respond to threats, and maintain system health, all within the Swimlane Turbine environment.

### Limitations

- None to date.

### Supported Versions

- This Halcyon connector uses the latest Version API.

### Additional Documents

- Documentation [Click Here](https://assets.falcon.crowdstrike.com/support/api/swagger.html#/)

## Prerequisites

Before you can use the Halcyon connector for Turbine, you'll need access to the Halcyon API. This requires the following:

- HTTP Basic authentication using the following parameters:
  - URL: The endpoint URL for accessing Halcyon's API.
  - Username: Your Halcyon account username.
  - Password: Your Halcyon account password.

## Authentication Methods

### HTTP Basic Authentication Method

- URL: The endpoint URL for the Halcyon API.
- Username: Your Halcyon account username.
- Password: Your Halcyon account password.

## Capabilities

This Halcyon Connector provides the following capabilities:

- Export Assets
- Get Alert by ID
- Get Asset by ID
- Get Installer Info
- Get Installer Info V2
- Get Maintenance Token
- Get Tenant by ID
- Healthcheck
- Healthcheck Prism
- List Alerts
- List All Descendants
- List Tenants
- Update Alert
- Update note for Alert

### Export Assets

- Requests the creation of a full or filtered asset report in CSV format [Click Here](https://api.halcyon.ai/docs/index.html#tag/Assets/operation/Export%20Assets).

### Get Alert by ID

- Get the alert matching the given identifier [Click Here](https://api.halcyon.ai/docs/index.html#tag/Alerts/operation/Get%20Alert).

### Get Asset by ID

- Retrieves information about an asset [Click Here](https://api.halcyon.ai/docs/index.html#tag/Assets/operation/Get%20Asset).

### Get Installer Info

- Get the installer information for the current tenant, including install token and download links for the available installer versions [Click Here](https://api.halcyon.ai/docs/index.html#tag/Installers/operation/Get%20Installer%20Info).

### Get Installer Info V2

- Get the installer information for the current tenant, including install token and download links for the available installer versions [Click Here](https://api.halcyon.ai/docs/index.html#tag/Installers/operation/Get%20Installer%20Info%20V2).

### Get Maintenance Token

- Get a maintenance token for asset's installed agent [Click Here](https://api.halcyon.ai/docs/index.html#tag/Assets/operation/Get%20Maintenance%20Token).

### Get Tenant by ID

- Get the tenant information associated with the given identifier [Click Here](https://api.halcyon.ai/docs/index.html#operation/Get%20Tenant).

### Healthcheck

- Reports success if the server is healthy [Click Here](https://api.halcyon.ai/docs/index.html#operation/Healthcheck).

### Healthcheck Prism

- Reports success if the prism proxy service is healthy [Click Here](https://api.halcyon.ai/docs/index.html#tag/Health/operation/Healthcheck%20Prism).

### List Alerts

- Get a paginated list of alerts matching the given criteria [Click Here](https://api.halcyon.ai/docs/index.html#operation/List%20Alerts).

### List All Descendants

- Gets a paginated list of all descendant tenants (across all sub-tiers) for the given tenant [Click Here](https://api.halcyon.ai/docs/index.html#tag/Tenants/operation/List%20All%20Descendants).

### List Tenants

- Get a paginated list of tenants that the current user can access. If the all query parameter is provided, this will return an unpaginated list of all tenants the user can access [Click Here](https://api.halcyon.ai/docs/index.html#operation/List%20Tenants).

### Update Alert

- Update the alert matching the given identifier [Click Here](https://api.halcyon.ai/docs/index.html#operation/Update%20Alert).

### Update note for Alert

- Update an alert's note. Must specify the current note's version in order to update [Click Here](https://api.halcyon.ai/docs/index.html#operation/Update%20note%20for%20Alert.).

# Configurations

## halycyon HTTP Basic Authentication

Authenticates using username and password.

### Configuration Parameters

| **Parameter** | **Description**                    | **Type** | **Required** |
| ------------- | ---------------------------------- | -------- | ------------ |
| url           | A URL to the target host.          | string   | Required     |
| username      | Username                           | string   | Required     |
| password      | Password                           | string   | Required     |
| verify\_ssl   | Verify SSL certificate             | boolean  | Optional     |
| http\_proxy   | A proxy to route requests through. | string   | Optional     |

# Actions

## Export Assets

Request the creation of a full or filtered asset report in CSV format from Halcyon using specified JSON body and headers.

### Endpoint

- **URL:** `v2/assets/export`
- **Method:** `POST`

### Input

| **Argument Name**      | **Type** | **Required** | **Description**                          |
| ---------------------- | -------- | ------------ | ---------------------------------------- |
| `headers`              | object   | Required     | HTTP headers for the request             |
| `headers.X-TenantID`   | string   | Required     | The tenant ID to use for the request.    |
| `operator`             | string   | Optional     | The operator to use for the filters.     |
| `filters`              | array    | Optional     | The filters to apply to the assets.      |
| `filters.operator`     | string   | Optional     | The operator to use for the filter.      |
| `filters.agentVersion` | string   | Optional     | The agent version to filter by.          |
| `resultsLimit`         | number   | Optional     | The maximum number of results to return. |
| `sorting`              | object   | Optional     | The sorting to apply to the assets.      |
| `sorting.sortBy`       | string   | Required     | The field to sort by.                    |
| `sorting.sortOrder`    | string   | Required     | The order to sort by.                    |

### Input Example

`{"json_body":{"operator":"And","filters":[{"operator":"Equals","agentVersion":"string"}],"resultsLimit":0,"sorting":{"sortBy":"RegisteredDate","sortOrder":"Desc"}},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `reportId`    | string   | Unique identifier                |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"reportId":"836df459-dc40-4aa1-972a-6eb0a864dff9"}}`

## Get Alert by ID

Get the alert in Halcyon matching the given alertId using specified path parameters and headers.

### Endpoint

- **URL:** `v2/alerts/{{alertId}}`
- **Method:** `GET`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                       |
| ------------------------- | -------- | ------------ | ------------------------------------- |
| `path_parameters.alertId` | string   | Required     | The ID of the alert to retrieve.      |
| `headers`                 | object   | Required     | HTTP headers for the request          |
| `headers.X-TenantID`      | string   | Required     | The tenant ID to use for the request. |

### Input Example

`{"path_parameters":{"alertId":"497f6eca-6276-4993-bfeb-53cbbbba6f08"},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter**                            | **Type** | **Description**                                      |
| ---------------------------------------- | -------- | ---------------------------------------------------- |
| `status_code`                            | number   | HTTP status code of the response                     |
| `reason`                                 | string   | Response reason phrase                               |
| `id`                                     | string   | Unique identifier                                    |
| `tenantId`                               | string   | Unique identifier                                    |
| `summary`                                | object   | Output field: summary                                |
| `summary.artifact`                       | object   | Output field: summary.artifact                       |
| `summary.artifact.authentihash`          | string   | Output field: summary.artifact.authentihash          |
| `summary.artifact.sha256`                | string   | Output field: summary.artifact.sha256                |
| `summary.artifact.filePath`              | string   | Output field: summary.artifact.filePath              |
| `summary.artifact.classificationType`    | string   | Type of the resource                                 |
| `summary.artifact.classificationDetails` | string   | Output field: summary.artifact.classificationDetails |
| `summary.artifact.kind`                  | string   | Output field: summary.artifact.kind                  |
| `summary.kind`                           | string   | Output field: summary.kind                           |
| `primaryProcess`                         | object   | Output field: primaryProcess                         |
| `primaryProcess.artifact`                | object   | Output field: primaryProcess.artifact                |
| `primaryProcess.artifact.authentihash`   | string   | Output field: primaryProcess.artifact.authentihash   |
| `primaryProcess.artifact.sha256`         | string   | Output field: primaryProcess.artifact.sha256         |
| `primaryProcess.artifact.filePath`       | string   | Output field: primaryProcess.artifact.filePath       |
| `primaryProcess.artifact.kind`           | string   | Output field: primaryProcess.artifact.kind           |
| `primaryProcess.commandLine`             | string   | Output field: primaryProcess.commandLine             |
| `primaryProcess.pid`                     | string   | Unique identifier                                    |
| `primaryProcess.parentPid`               | string   | Unique identifier                                    |
| `primaryProcess.modules`                 | array    | Output field: primaryProcess.modules                 |
| `primaryProcess.modules.authentihash`    | string   | Output field: primaryProcess.modules.authentihash    |
| `primaryProcess.modules.sha256`          | string   | Output field: primaryProcess.modules.sha256          |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"id":"a7b8c9d0-e1f2-4a3b-8c4d-5e6f7a8b9c0d","tenantId":"b7e8f9a0-1c2d-4e3f-a5b6-c7d8e9f0a1b2","summary":{"artifact":{},"kind":"DriverArtifactSummaryResponse"},"primaryProcess":{"artifact":{},"commandLine":"\"C:\\Program Files\\VendorApp\\updater.exe\" --silent --check-updates","pid":"4824","parentPid":"1236","modules":[],"username":"CORP\\j.smith","userId":"S-1-5-21-3842938471-2938475619-3847561923-1847","kind":"DriverProcessRes...`

## Get Asset by ID

Retrieve detailed information about an asset in Halcyon using the asset ID as a path parameter and necessary headers.

### Endpoint

- **URL:** `v2/assets/export{{assetId}}`
- **Method:** `GET`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                       |
| ------------------------- | -------- | ------------ | ------------------------------------- |
| `path_parameters.assetId` | string   | Required     | The ID of the asset to retrieve.      |
| `headers`                 | object   | Required     | HTTP headers for the request          |
| `headers.X-TenantID`      | string   | Required     | The tenant ID to use for the request. |

### Input Example

`{"path_parameters":{"assetId":"497f6eca-6276-4993-bfeb-53cbbbba6f08"},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter**               | **Type** | **Description**                   |
| --------------------------- | -------- | --------------------------------- |
| `status_code`               | number   | HTTP status code of the response  |
| `reason`                    | string   | Response reason phrase            |
| `id`                        | string   | Unique identifier                 |
| `tenantId`                  | string   | Unique identifier                 |
| `name`                      | string   | Name of the resource              |
| `createdDate`               | string   | Date value                        |
| `lastUpdatedDate`           | string   | Date value                        |
| `lastHeartbeatDate`         | string   | Date value                        |
| `deletedAt`                 | object   | Output field: deletedAt           |
| `policyGroup`               | object   | Output field: policyGroup         |
| `policyGroup.id`            | string   | Unique identifier                 |
| `policyGroup.name`          | string   | Name of the resource              |
| `policyGroup.owner`         | string   | Output field: policyGroup.owner   |
| `deploymentGroup`           | object   | Output field: deploymentGroup     |
| `deploymentGroup.id`        | string   | Unique identifier                 |
| `deploymentGroup.name`      | string   | Name of the resource              |
| `macAddresses`              | array    | Output field: macAddresses        |
| `ipAddresses`               | array    | Output field: ipAddresses         |
| `ipAddresses.value`         | string   | Value for the parameter           |
| `ipAddresses.ipAddressType` | string   | Type of the resource              |
| `eppList`                   | array    | Output field: eppList             |
| `eppList.name`              | string   | Name of the resource              |
| `eppList.version`           | string   | Output field: eppList.version     |
| `eppList.lastUpdated`       | string   | Output field: eppList.lastUpdated |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"id":"a3b2c1d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d","tenantId":"b7e8f9a0-1c2d-4e3f-a5b6-c7d8e9f0a1b2","name":"LAPTOP-XR7K92","createdDate":"2024-11-15T09:32:14Z","lastUpdatedDate":"2025-03-22T16:48:03Z","lastHeartbeatDate":"2025-03-23T08:12:41Z","deletedAt":null,"policyGroup":{"id":"c4d5e6f7-a8b9-4c0d-1e2f-3a4b5c6d7e8f","name":"Corporate-Endpoints-Prod","owner":"IT-Security"},"deploymentGroup":{"id":"d5e6f7a8-b9c0-4d1e-2f3a-4b5c6d7e8f9a...`

## Get Installer Info

Retrieve installer details for the current Halcyon tenant, including install token and download links for available versions. Requires headers.

### Endpoint

- **URL:** `v1/tenant/installer`
- **Method:** `GET`

### Input

| **Argument Name**    | **Type** | **Required** | **Description**                       |
| -------------------- | -------- | ------------ | ------------------------------------- |
| `headers`            | object   | Required     | HTTP headers for the request          |
| `headers.X-TenantID` | string   | Required     | The tenant ID to use for the request. |

### Input Example

`{"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter**                    | **Type** | **Description**                         |
| -------------------------------- | -------- | --------------------------------------- |
| `status_code`                    | number   | HTTP status code of the response        |
| `reason`                         | string   | Response reason phrase                  |
| `data`                           | object   | Response data                           |
| `data.download_url`              | string   | Response data                           |
| `data.current_version`           | string   | Response data                           |
| `data.install_token`             | string   | Response data                           |
| `data.other_versions`            | object   | Response data                           |
| `data.other_versions.7.11.18290` | string   | Response data                           |
| `data.other_versions.7.10.17105` | string   | Response data                           |
| `success`                        | boolean  | Whether the operation was successful    |
| `errors`                         | array    | Error message if any                    |
| `errors.file_name`               | string   | Name of the resource                    |
| `errors.file`                    | string   | Error message if any                    |
| `pagination`                     | object   | Output field: pagination                |
| `pagination.total`               | number   | Output field: pagination.total          |
| `pagination.total_pages`         | number   | Output field: pagination.total\_pages   |
| `pagination.previous_page`       | number   | Output field: pagination.previous\_page |
| `pagination.next_page`           | number   | Output field: pagination.next\_page     |
| `pagination.first_page`          | number   | Output field: pagination.first\_page    |
| `pagination.last_page`           | number   | Output field: pagination.last\_page     |
| `pagination.page`                | number   | Output field: pagination.page           |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"data":{"download_url":"https://cdn.example.com/installers/falcon-7.12.19304-windows-x64.msi","current_version":"7.12.19304","install_token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwbGF0Zm9ybSI6IndpbmRvd3MiLCJ0b2tlbiI6ImY...","other_versions":{}},"success":true,"errors":[],"pagination":{"total":156,"total_pages":16,"previous_page":0,"next_page":2,"first_page":1,"last_page":16,"page":1}}}`

## Get Installer Info V2

Get installer information for the current Halcyon tenant, including install token and download links for available versions. Requires headers.

### Endpoint

- **URL:** `v2/installers`
- **Method:** `GET`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                                       |
| ------------------------- | -------- | ------------ | ----------------------------------------------------- |
| `parameters.page`         | number   | Optional     | The page number to retrieve.                          |
| `parameters.pageSize`     | number   | Optional     | The number of items to retrieve per page.             |
| `parameters.allSupported` | boolean  | Optional     | Whether to retrieve all supported installer versions. |
| `headers`                 | object   | Required     | HTTP headers for the request                          |
| `headers.X-TenantID`      | string   | Required     | The tenant ID to use for the request.                 |

### Input Example

`{"parameters":{"page":1,"pageSize":10,"allSupported":true},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter**             | **Type** | **Description**                       |
| ------------------------- | -------- | ------------------------------------- |
| `status_code`             | number   | HTTP status code of the response      |
| `reason`                  | string   | Response reason phrase                |
| `items`                   | array    | Output field: items                   |
| `items.downloadUrl`       | string   | URL endpoint for the request          |
| `items.latestVersion`     | string   | Output field: items.latestVersion     |
| `items.installerType`     | string   | Type of the resource                  |
| `items.installationToken` | string   | Output field: items.installationToken |
| `items.version`           | string   | Output field: items.version           |
| `pagination`              | object   | Output field: pagination              |
| `pagination.totalItems`   | number   | Output field: pagination.totalItems   |
| `pagination.totalPages`   | number   | Output field: pagination.totalPages   |
| `pagination.currentPage`  | number   | Output field: pagination.currentPage  |
| `pagination.nextPage`     | number   | Output field: pagination.nextPage     |
| `pagination.previousPage` | number   | Output field: pagination.previousPage |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"items":[{}],"pagination":{"totalItems":24,"totalPages":3,"currentPage":1,"nextPage":2,"previousPage":0}}}`

## Get Maintenance Token

Get a maintenance token for an asset's installed agent in Halcyon using path parameters and headers, including assetId.

### Endpoint

- **URL:** `v2/assets/export{{assetId}}/maintenance-token`
- **Method:** `GET`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                                            |
| ------------------------- | -------- | ------------ | ---------------------------------------------------------- |
| `path_parameters.assetId` | string   | Required     | The ID of the asset to retrieve the maintenance token for. |
| `headers`                 | object   | Required     | HTTP headers for the request                               |
| `headers.X-TenantID`      | string   | Required     | The tenant ID to use for the request.                      |

### Input Example

`{"path_parameters":{"assetId":"497f6eca-6276-4993-bfeb-53cbbbba6f08"},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `token`       | string   | Output field: token              |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"token":"b5507016-7da2-4777-a161-1e8042a6a377"}}`

## Get Tenant by ID

Get the tenant information associated with the given identifier in Halcyon using the tenantId path parameter.

### Endpoint

- **URL:** `identity/tenants/{{tenantId}}`
- **Method:** `GET`

### Input

| **Argument Name**          | **Type** | **Required** | **Description**                   |
| -------------------------- | -------- | ------------ | --------------------------------- |
| `path_parameters.tenantId` | string   | Required     | The ID of the tenant to retrieve. |

### Input Example

`{"path_parameters":{"tenantId":"497f6eca-6276-4993-bfeb-53cbbbba6f08"}}`

### Output

| **Parameter**        | **Type** | **Description**                  |
| -------------------- | -------- | -------------------------------- |
| `status_code`        | number   | HTTP status code of the response |
| `reason`             | string   | Response reason phrase           |
| `id`                 | string   | Unique identifier                |
| `name`               | string   | Name of the resource             |
| `alias`              | string   | Output field: alias              |
| `idpAlias`           | string   | Unique identifier                |
| `manageTenants`      | boolean  | Output field: manageTenants      |
| `parentId`           | string   | Unique identifier                |
| `createdAt`          | string   | Output field: createdAt          |
| `isNonEnterprise`    | boolean  | Output field: isNonEnterprise    |
| `tier`               | number   | Output field: tier               |
| `maximumDescendants` | number   | Output field: maximumDescendants |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"id":"497f6eca-6276-4993-bfeb-53cbbbba6f08","name":"Acme Corp","alias":"acme-prod","idpAlias":"acme-okta-saml","manageTenants":true,"parentId":"70850378-7d3c-4f45-91b7-942d4dfbbd43","createdAt":"2019-08-24T14:15:22Z","isNonEnterprise":true,"tier":0,"maximumDescendants":0}}`

## Healthcheck

Reports success if the Halcyon server is healthy.

### Endpoint

- **URL:** `healthcheck`
- **Method:** `GET`

### Output

| **Parameter** | **Type** | **Description**                      |
| ------------- | -------- | ------------------------------------ |
| `status_code` | number   | HTTP status code of the response     |
| `reason`      | string   | Response reason phrase               |
| `success`     | boolean  | Whether the operation was successful |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"success":true}}`

## Healthcheck Prism

Report success if the Prism proxy service in Halcyon is healthy.

### Endpoint

- **URL:** `healthcheck/prism`
- **Method:** `GET`

### Output

| **Parameter** | **Type** | **Description**                      |
| ------------- | -------- | ------------------------------------ |
| `status_code` | number   | HTTP status code of the response     |
| `reason`      | string   | Response reason phrase               |
| `success`     | boolean  | Whether the operation was successful |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"success":true}}`

## List Alerts

Retrieve a paginated list of alerts in Halcyon matching specified criteria. Requires headers for authentication.

### Endpoint

- **URL:** `v2/alerts`
- **Method:** `GET`

### Input

| **Argument Name**             | **Type** | **Required** | **Description**                                           |
| ----------------------------- | -------- | ------------ | --------------------------------------------------------- |
| `parameters.page`             | number   | Optional     | The page number to retrieve.                              |
| `parameters.pageSize`         | number   | Optional     | The number of items to retrieve per page.                 |
| `parameters.alertId`          | string   | Optional     | Filter to alert with alertId.                             |
| `parameters.lastSeenAfter`    | string   | Optional     | Datetime used to filter alerts last seen after.           |
| `parameters.lastSeenBefore`   | string   | Optional     | Datetime used to filter alerts last seen before.          |
| `parameters.firstSeenAfter`   | string   | Optional     | Datetime used to filter alerts first seen after.          |
| `parameters.firstSeenBefore`  | string   | Optional     | Datetime used to filter alerts first seen before.         |
| `parameters.type`             | string   | Optional     | Filter to alerts with type.                               |
| `parameters.action`           | string   | Optional     | Filter to alerts with action.                             |
| `parameters.countGreaterThan` | number   | Optional     | Filter to alerts with count greater than the given value. |
| `parameters.countLessThan`    | number   | Optional     | Filter to alerts with count less than the given value.    |
| `parameters.offendingSha256`  | string   | Optional     | Filter to alerts with offendingSha256.                    |
| `parameters.displayStatus`    | string   | Optional     | Filter to alerts with display status.                     |
| `parameters.triageStatus`     | string   | Optional     | Filter to alerts with triage status.                      |
| `parameters.sortBy`           | string   | Optional     | Field to sort the results by.                             |
| `parameters.sortOrder`        | string   | Optional     | Order to sort the results by.                             |
| `headers`                     | object   | Required     | HTTP headers for the request                              |
| `headers.X-TenantID`          | string   | Required     | The tenant ID to use for the request.                     |

### Input Example

`{"parameters":{"page":1,"pageSize":50,"alertId":"a7b8c9d0-e1f2-4a3b-8c4d-5e6f7a8b9c0d","lastSeenAfter":"2025-03-01T00:00:00Z","lastSeenBefore":"2025-03-23T23:59:59Z","firstSeenAfter":"2025-02-15T00:00:00Z","firstSeenBefore":"2025-03-22T23:59:59Z","type":"BadBehavior","action":"Block","countGreaterThan":2,"countLessThan":100,"offendingSha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","displayStatus":"Visible","triageStatus":"New","sortBy":"LastSeen","sortOrder":"Desc"},"headers":{"X-TenantID":"b7e8f9a0-1c2d-4e3f-a5b6-c7d8e9f0a1b2"}}`

### Output

| **Parameter**                                  | **Type** | **Description**                                            |
| ---------------------------------------------- | -------- | ---------------------------------------------------------- |
| `status_code`                                  | number   | HTTP status code of the response                           |
| `reason`                                       | string   | Response reason phrase                                     |
| `items`                                        | array    | Output field: items                                        |
| `items.id`                                     | string   | Unique identifier                                          |
| `items.tenantId`                               | string   | Unique identifier                                          |
| `items.alertType`                              | string   | Type of the resource                                       |
| `items.action`                                 | string   | Output field: items.action                                 |
| `items.firstOccurredAt`                        | string   | Output field: items.firstOccurredAt                        |
| `items.lastOccurredAt`                         | string   | Output field: items.lastOccurredAt                         |
| `items.totalOccurrences`                       | number   | Output field: items.totalOccurrences                       |
| `items.displayStatus`                          | string   | Status value                                               |
| `items.triageStatus`                           | string   | Status value                                               |
| `items.kind`                                   | string   | Output field: items.kind                                   |
| `items.summary`                                | object   | Output field: items.summary                                |
| `items.summary.artifact`                       | object   | Output field: items.summary.artifact                       |
| `items.summary.artifact.sha256`                | string   | Output field: items.summary.artifact.sha256                |
| `items.summary.artifact.filePath`              | string   | Output field: items.summary.artifact.filePath              |
| `items.summary.artifact.classificationType`    | string   | Type of the resource                                       |
| `items.summary.artifact.classificationDetails` | string   | Output field: items.summary.artifact.classificationDetails |
| `items.summary.artifact.kind`                  | string   | Output field: items.summary.artifact.kind                  |
| `items.summary.badExtension`                   | string   | Output field: items.summary.badExtension                   |
| `items.summary.badCommandLine`                 | string   | Output field: items.summary.badCommandLine                 |
| `items.summary.kind`                           | string   | Output field: items.summary.kind                           |
| `items.primaryProcess`                         | object   | Output field: items.primaryProcess                         |
| `items.primaryProcess.artifact`                | object   | Output field: items.primaryProcess.artifact                |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"items":[{}],"pagination":{"totalItems":127,"totalPages":3,"currentPage":1,"nextPage":2,"previousPage":0}}}`

## List All Descendants

Get a paginated list of all descendant tenants across sub-tiers for a specified tenant in Halcyon. Requires path parameters, headers, and JSON body.

### Endpoint

- **URL:** `v2/tenants/{{id}}/descendants`
- **Method:** `POST`

### Input

| **Argument Name**     | **Type** | **Required** | **Description**                                  |
| --------------------- | -------- | ------------ | ------------------------------------------------ |
| `path_parameters.id`  | string   | Required     | The ID of the tenant to list the descendants of. |
| `headers`             | object   | Required     | HTTP headers for the request                     |
| `headers.X-TenantID`  | string   | Required     | The tenant ID to use for the request.            |
| `operator`            | string   | Optional     | The operator to use for the filters.             |
| `filters`             | array    | Optional     | The filters to apply to the descendants.         |
| `filters.operator`    | string   | Optional     | The operator to use for the filter.              |
| `filters.alias`       | string   | Optional     | The alias to filter by.                          |
| `pagination`          | object   | Optional     | Parameter for List All Descendants               |
| `pagination.page`     | number   | Optional     | The page number to retrieve.                     |
| `pagination.pageSize` | number   | Optional     | The number of items to retrieve per page.        |
| `sorting`             | object   | Optional     | Parameter for List All Descendants               |
| `sorting.sortBy`      | string   | Optional     | Parameter for List All Descendants               |
| `sorting.sortOrder`   | string   | Optional     | Parameter for List All Descendants               |

### Input Example

`{"json_body":{"operator":"And","filters":[{"operator":"Contains","alias":"string"}],"pagination":{"page":1,"pageSize":10},"sorting":{"sortBy":"Alias","sortOrder":"Asc"}},"path_parameters":{"id":"497f6eca-6276-4993-bfeb-53cbbbba6f08"},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter**             | **Type** | **Description**                       |
| ------------------------- | -------- | ------------------------------------- |
| `status_code`             | number   | HTTP status code of the response      |
| `reason`                  | string   | Response reason phrase                |
| `items`                   | array    | Output field: items                   |
| `items.id`                | string   | Unique identifier                     |
| `items.name`              | string   | Name of the resource                  |
| `items.alias`             | string   | Output field: items.alias             |
| `items.parentId`          | string   | Unique identifier                     |
| `items.parentName`        | string   | Name of the resource                  |
| `items.parentAlias`       | string   | Output field: items.parentAlias       |
| `items.createdAt`         | string   | Output field: items.createdAt         |
| `items.tier`              | number   | Output field: items.tier              |
| `items.tenantType`        | string   | Type of the resource                  |
| `items.assetCount`        | number   | Count value                           |
| `assetCounts`             | object   | Output field: assetCounts             |
| `assetCounts.total`       | number   | Output field: assetCounts.total       |
| `assetCounts.active`      | number   | Output field: assetCounts.active      |
| `assetCounts.inactive`    | number   | Output field: assetCounts.inactive    |
| `pagination`              | object   | Output field: pagination              |
| `pagination.totalItems`   | number   | Output field: pagination.totalItems   |
| `pagination.totalPages`   | number   | Output field: pagination.totalPages   |
| `pagination.currentPage`  | number   | Output field: pagination.currentPage  |
| `pagination.nextPage`     | number   | Output field: pagination.nextPage     |
| `pagination.previousPage` | number   | Output field: pagination.previousPage |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"items":[{}],"assetCounts":{"total":827,"active":801,"inactive":26},"pagination":{"totalItems":3,"totalPages":1,"currentPage":1,"nextPage":0,"previousPage":0}}}`

## List Tenants

Retrieve a paginated list of tenants accessible to the current user in Halcyon. Use the 'all' query parameter for an unpaginated list of all accessible tenants.

### Endpoint

- **URL:** `identity/tenants`
- **Method:** `GET`

### Input

| **Argument Name**     | **Type** | **Required** | **Description**                           |
| --------------------- | -------- | ------------ | ----------------------------------------- |
| `parameters.page`     | number   | Optional     | The page number to retrieve.              |
| `parameters.pageSize` | number   | Optional     | The number of items to retrieve per page. |
| `parameters.all`      | boolean  | Optional     | Whether to retrieve all tenants.          |

### Input Example

`{"parameters":{"page":1,"pageSize":10,"all":false}}`

### Output

| **Parameter**             | **Type** | **Description**                       |
| ------------------------- | -------- | ------------------------------------- |
| `status_code`             | number   | HTTP status code of the response      |
| `reason`                  | string   | Response reason phrase                |
| `items`                   | array    | Output field: items                   |
| `items.id`                | string   | Unique identifier                     |
| `items.name`              | string   | Name of the resource                  |
| `items.alias`             | string   | Output field: items.alias             |
| `items.idpAlias`          | string   | Unique identifier                     |
| `items.manageTenants`     | boolean  | Output field: items.manageTenants     |
| `items.parentId`          | string   | Unique identifier                     |
| `items.createdAt`         | string   | Output field: items.createdAt         |
| `items.isNonEnterprise`   | boolean  | Output field: items.isNonEnterprise   |
| `items.tier`              | number   | Output field: items.tier              |
| `pagination`              | object   | Output field: pagination              |
| `pagination.totalItems`   | number   | Output field: pagination.totalItems   |
| `pagination.totalPages`   | number   | Output field: pagination.totalPages   |
| `pagination.currentPage`  | number   | Output field: pagination.currentPage  |
| `pagination.nextPage`     | number   | Output field: pagination.nextPage     |
| `pagination.previousPage` | number   | Output field: pagination.previousPage |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"items":[{}],"pagination":{"totalItems":47,"totalPages":5,"currentPage":1,"nextPage":2,"previousPage":0}}}`

## Update Alert

Update the alert in Halcyon matching the given alertId using specified path parameters, headers, and JSON body.

### Endpoint

- **URL:** `v2/alerts/{{alertId}}`
- **Method:** `PUT`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                          |
| ------------------------- | -------- | ------------ | ---------------------------------------- |
| `path_parameters.alertId` | string   | Required     | The ID of the alert to update.           |
| `headers`                 | object   | Required     | HTTP headers for the request             |
| `headers.X-TenantID`      | string   | Required     | The tenant ID to use for the request.    |
| `displayStatus`           | string   | Optional     | The display status to set for the alert. |
| `triageStatus`            | string   | Optional     | The triage status to set for the alert.  |

### Input Example

`{"json_body":{"displayStatus":"Hidden","triageStatus":"New"},"path_parameters":{"alertId":"497f6eca-6276-4993-bfeb-53cbbbba6f08"},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter** | **Type** | **Description**                      |
| ------------- | -------- | ------------------------------------ |
| `status_code` | number   | HTTP status code of the response     |
| `reason`      | string   | Response reason phrase               |
| `success`     | boolean  | Whether the operation was successful |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"success":true}}`

## Update note for Alert

Update an alert's note in Halcyon by specifying the alertId, current note's version, and new text content.

### Endpoint

- **URL:** `v2/alerts/{{alertId}}/note`
- **Method:** `PUT`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**                             |
| ------------------------- | -------- | ------------ | ------------------------------------------- |
| `path_parameters.alertId` | string   | Required     | The ID of the alert to update the note for. |
| `headers`                 | object   | Required     | HTTP headers for the request                |
| `headers.X-TenantID`      | string   | Required     | The tenant ID to use for the request.       |
| `text`                    | string   | Optional     | The text of the note to update.             |
| `version`                 | number   | Optional     | The version of the note to update.          |

### Input Example

`{"json_body":{"text":"This is a note for the alert.","version":0},"path_parameters":{"alertId":"497f6eca-6276-4993-bfeb-53cbbbba6f08"},"headers":{"X-TenantID":"f97df110-f4de-492e-8849-4a6af68026b0"}}`

### Output

| **Parameter** | **Type** | **Description**                      |
| ------------- | -------- | ------------------------------------ |
| `status_code` | number   | HTTP status code of the response     |
| `reason`      | string   | Response reason phrase               |
| `success`     | boolean  | Whether the operation was successful |

### Output Example

`{"status_code":200,"response_headers":{},"reason":"OK","json_body":{"success":true}}`

# Response Headers

| **Header**   | **Description**                                       | **Example**                   |
| ------------ | ----------------------------------------------------- | ----------------------------- |
| Content-Type | The media type of the resource                        | application/json              |
| Date         | The date and time at which the message was originated | Thu, 01 Jan 2024 00:00:00 GMT |
