EDR / Endpoint Protection
Integration setup guides for endpoint detection and response platforms.
Connect your EDR platform to Zaun so Ember can detect, respond, and tune custom rules across your endpoints.
SentinelOne
Category: EDR | Auth: API Key
Required Credentials
| Field | Description | Example |
|---|---|---|
| Management Console URL | Your SentinelOne tenant base URL | https://usea1.sentinelone.net |
| API Token | Service User token (Bearer auth) | eyJhbGci... |
Auth header: Authorization: ApiToken <your-token>
Recommended Permissions
| Data | Minimum Role | Endpoint |
|---|---|---|
| Alerts | Viewer | /web/api/v2.1/cloud-detection/alerts |
| Threats | Viewer | /web/api/v2.1/threats |
| Agents / Endpoints | Viewer | /web/api/v2.1/agents |
| Applications & CVEs | Viewer | /web/api/v2.1/installed-applications |
| Activity Logs | Viewer | /web/api/v2.1/activities |
| Deep Visibility (EDR) | SOC / IR Team | /web/api/v2.1/dv/init-query |
For read-only ingestion, assign the Viewer role at Account scope. For response actions, use IR Team or a custom RBAC role.
Setup Steps
- Log in to the SentinelOne Console as an Admin.
- Go to Settings > USERS > Service Users.
- Click Actions > Create New Service User. Name it (e.g.
zaun-ember-integration). - Set Access Level to Account and assign the Viewer role.
- Click Create User. Copy the API token immediately - it is shown only once.
- Paste the Console URL and API Token into Zaun.
The API token cannot be retrieved after closing the dialog. If lost, delete the service user and create a new one.
CrowdStrike Falcon
Category: EDR / XDR | Auth: OAuth2
Required Credentials
| Field | Description |
|---|---|
| Client ID | UUID identifier for your API client |
| Client Secret | Secret key (shown once at creation) |
| Cloud Region | Determines API base URL |
| Member CID (optional) | For MSSP/Flight Control multi-tenant |
Regional Endpoints
| Region | API Base URL | Console URL |
|---|---|---|
| US-1 | https://api.crowdstrike.com | falcon.crowdstrike.com |
| US-2 | https://api.us-2.crowdstrike.com | falcon.us-2.crowdstrike.com |
| EU-1 | https://api.eu-1.crowdstrike.com | falcon.eu-1.crowdstrike.com |
| US-GOV-1 | https://api.laggar.gcw.crowdstrike.com | falcon.laggar.gcw.crowdstrike.com |
Required OAuth2 Scopes
| Scope | Permission | Purpose |
|---|---|---|
alerts:read | Read | Query and get alert details |
detects:read | Read | Query legacy detections |
incidents:read | Read | Query incidents, CrowdScore |
hosts:read | Read | Query devices, host details |
spotlight-vulnerabilities:read | Read | Vulnerability data |
event-streams:read | Read | Real-time event feed |
alerts:write | Write | Update alert status (optional) |
hosts:write | Write | Contain/lift containment (optional) |
real-time-response:write | Write | RTR sessions (optional) |
Setup Steps
- Log in to Falcon (requires Falcon Administrator role).
- Menu > Support & Resources > API Clients and Keys > Add new API client.
- Name it (e.g.
Zaun-Ember), toggle the required scopes above. - Click Create. Copy Client ID and Client Secret immediately.
- Select your Cloud Region and paste credentials into Zaun.
Client Secret is shown only once. If lost, you must reset it (invalidates all tokens using the old secret).
Rate limit: 6,000 req/min per account. Tokens expire after 30 minutes (auto-refreshed by Zaun).
Microsoft Defender for Endpoint
Category: EDR | Auth: OAuth2 / Azure AD
Required Credentials
| Field | Description | Where to Find |
|---|---|---|
| Tenant ID | Azure AD directory identifier | Entra ID > Overview |
| Client ID | Application (client) ID | App Registration > Overview |
| Client Secret | Secret key for the app | Certificates & secrets |
Required Permissions
Under APIs my organization uses > search "WindowsDefenderATP" > Application permissions:
| Permission | Purpose |
|---|---|
Alert.Read.All | Pull Defender alerts |
Machine.Read.All | Device/machine inventory |
Vulnerability.Read.All | Vulnerability data |
Software.Read.All | Installed software inventory |
AdvancedQuery.Read.All | KQL advanced hunting |
Score.Read.All | Exposure/secure scores |
Also under Microsoft Graph > Application permissions:
| Permission | Purpose |
|---|---|
SecurityIncident.Read.All | Incidents via Graph |
SecurityAlert.Read.All | Alerts v2 via Graph |
ThreatHunting.Read.All | Advanced hunting via Graph |
You must click "Grant admin consent" after adding permissions.
Setup Steps
- Azure Portal > App registrations > New registration. Name it, select Single tenant.
- Copy Client ID and Tenant ID from Overview.
- API Permissions > Add WindowsDefenderATP + Graph permissions above.
- Click Grant admin consent.
- Certificates & secrets > New client secret. Copy the Value immediately.
- Paste all three credentials into Zaun.
Bitdefender GravityZone
Category: EDR | Auth: API Key
Required Credentials
| Field | Description |
|---|---|
| API Key | Generated in GravityZone Control Center (used as HTTP Basic Auth username with empty password) |
| Control Center URL | Your GravityZone hostname |
Setup Steps
- Log into GravityZone Control Center with a Partner account.
- Click user icon > My Account > API keys.
- Click + Add, enter a description, check desired permissions (Companies, Network, Incidents, Reports).
- Click Generate. Copy the key immediately (shown only once).
- Paste into Zaun. Auth: HTTP Basic with API key as username, empty password.
Rate limit: 10 req/sec per API key.
Cisco Secure Endpoint
Category: EDR (formerly AMP) | Auth: Basic Auth
Required Credentials
| Field | Description |
|---|---|
| 3rd Party API Client ID | From AMP Console |
| API Key | Treat like a password |
Setup Steps
- In AMP Console > Accounts > API Credentials > New API Credential.
- Enter an app name, select scope (Read-only or Read & Write).
- Copy the Client ID and API Key.
- Paste into Zaun. Auth: HTTP Basic (
client_id:api_key).
ESET Protect
Category: EDR | Auth: OAuth2
Required Credentials
| Field | Description |
|---|---|
| Client ID | OAuth2 client from ESET Connect |
| Client Secret | OAuth2 secret |
On-prem alternative: API username + password with Basic Auth.
Setup Steps
- In ESET Business Account / Protect Hub, go to Users and create a dedicated API user.
- Generate OAuth2 credentials (Client ID + Secret) for the user.
- Create a permission set with minimal required access and assign to the user.
- Paste credentials into Zaun.
Fortinet FortiEDR
Category: EDR | Auth: Token Auth
Required Credentials
| Field | Description |
|---|---|
| Central Manager URL | Your FortiEDR Central Manager address |
| Username | User with REST API role assigned |
| Password | User password |
The user must have the REST API role (not Admin). Standard Admin does NOT include REST API access.
Setup Steps
- In FortiEDR Central Manager > Administration > Users.
- Create a new user and assign the REST API role.
- The user must log in once and change their password before API use.
- Paste credentials into Zaun.
Sophos Central
Category: EDR | Auth: OAuth2
Required Credentials
| Field | Description |
|---|---|
| Client ID | From Sophos Central API Credentials |
| Client Secret | Shown once at creation |
Partner, Enterprise, or Tenant-level credentials supported.
Setup Steps
- In Sophos Central > Settings & Policies > API Credentials > Add.
- Name the credential, copy Client ID and Client Secret.
- Paste into Zaun. We auto-discover your entity ID and data region via the
/whoamiendpoint.
ThreatLocker
Category: Endpoint / Application Control | Auth: API Key
Required Credentials
| Field | Description |
|---|---|
| API Token | Bearer token from ThreatLocker Console |
| Organization ID(s) | Scoped per-organization |
Setup Steps
- In ThreatLocker Console > Administrators > API Users > Create New User.
- Name it, click Generate API Token, copy immediately (shown only once).
- Select which organizations the token can access and set expiry.
- Paste into Zaun.
WatchGuard EDR
Category: EDR (Panda) | Auth: OAuth2
Required Credentials
| Field | Description |
|---|---|
| API Key | Identifies your WatchGuard account |
| Access ID | Read-only or Read-Write |
| Password | Paired with Access ID |
Setup Steps
- In WatchGuard Cloud > Administration > Managed Access, enable API access.
- Note the generated Access IDs, Passwords, and API Key.
- Paste into Zaun.
Webroot
Category: EDR | Auth: OAuth2
Required Credentials
| Field | Description |
|---|---|
| Client ID | From Webroot Unity API portal |
| Client Secret | Paired with Client ID |
| GSM Username | GSM Console admin username |
| GSM Password | GSM Console admin password |
| GSM Parent Keycode | Found in Settings > Account Information |
Setup Steps
- Obtain API Client ID and Secret from Webroot (Unity API portal or your TAM).
- Find your GSM Parent Keycode in the Webroot console under Settings > Account Information.
- Paste all credentials into Zaun. We use the
Console.GSMscope for access.