> ## Documentation Index
> Fetch the complete documentation index at: https://docs.myrmex.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Zabbix

> Connect Zabbix to Myrmex over its API — create an API token and add the integration.

import { Note, Steps, Step, CardGroup, Card, Tip } from '@mintlify/components';

Connect your **Zabbix** monitoring server so Myrmex can review hosts, problems, and metrics. Myrmex reaches Zabbix over its **JSON-RPC API** (`/api_jsonrpc.php`) through a [Collector](/documentation/agent-endpoint-security/collector-mode) on your network. Every request runs **live, on demand** — Myrmex returns only what you ask for and copies or stores nothing from Zabbix on its side. Credentials are resolved on your side and never pass through the model.

## What Myrmex Can Do

<CardGroup cols={2}>
  <Card title="Monitor hosts" icon="server">
    List hosts and their availability to see what Zabbix is watching.
  </Card>

  <Card title="Review problems" icon="triangle-exclamation">
    Read current problems and triggers to support [alert](/documentation/detection-response/alerts) triage.
  </Card>

  <Card title="Read metrics" icon="chart-line">
    Query items and their latest values live and return only what you asked for.
  </Card>

  <Card title="Check server health" icon="heart-pulse">
    Read Zabbix status to confirm the monitoring server is healthy.
  </Card>
</CardGroup>

## Before You Start

* A **Collector** that can reach the Zabbix frontend over HTTPS (default port `443`; self-hosted often uses `80` or `8080`). See [Collector mode](/documentation/agent-endpoint-security/collector-mode).
* A **Zabbix user** with a read role and an **API token** (API tokens require Zabbix 5.4 or later).

## Step 1 — Create the Credential in Zabbix

<Steps>
  <Step title="Choose or create a user">
    In **Users → Users**, use or create an account with a read-only role that can see the hosts and problems Myrmex should monitor.
  </Step>

  <Step title="Generate an API token">
    Go to **Users → API tokens**, create a token for that user, set an optional expiry, and copy the value (shown only once). Myrmex sends it as a Bearer token to the Zabbix API (`/api_jsonrpc.php`).
  </Step>
</Steps>

<Tip>
  Assign a read-only role so the token can monitor without changing anything in Zabbix.
</Tip>

## Step 2 — Add the Integration in Myrmex

From the **Directory**, choose **Add Integration → Zabbix**, then fill in:

| Field                     | Description                                                                                 |
| ------------------------- | ------------------------------------------------------------------------------------------- |
| **Name**                  | A unique name for this Zabbix server.                                                       |
| **Description**           | Optional note to identify the server.                                                       |
| **API Token**             | The API token created in Step 1.                                                            |
| **URL**                   | Zabbix frontend host or IP the Collector can reach.                                         |
| **Protocol**              | `https` (or `http` for internal-only deployments).                                          |
| **Port**                  | The frontend port (default `443`).                                                          |
| **Collector**             | The [Collector](/documentation/agent-endpoint-security/collector-mode) that reaches Zabbix. |
| **Authentication Method** | `bearer` (the API token).                                                                   |

## Connect

Click **Connect** to validate the API connection and finish. Zabbix then appears under **Environment → Integrations**, and you can ask about it in the Workspace or through the [Integration Specialist agent](/documentation/multi-agent-system/integration-specialist-agent).

<Note>
  The API lives at `/api_jsonrpc.php` on the Zabbix frontend. Point the URL and Port at the frontend the Collector can reach, not the database or server process.
</Note>
