> For the complete documentation index, see [llms.txt](https://docs.monolithforensics.com/monolith/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.monolithforensics.com/monolith/using-monolith/settings/api.md).

# API

Create and manage API keys and webhooks used to integrate Monolith with external systems and workflows.

The **API** settings page provides administrative tools for connecting Monolith with external systems and custom workflows.

From this page, administrators can:

* Create and manage API keys
* Create and manage Webhooks
* Subscribe Webhooks to supported Monolith resource events

For endpoint-specific documentation and examples, see the **Monolith API** documentation.

### API Key Management

API keys are used to authenticate requests made to the Monolith API.

Select **New API Key** to create a key for an application, integration, script, or other approved workflow that needs programmatic access to Monolith.

API keys can be managed and revoked from this page.

{% hint style="warning" %}
Treat API keys as sensitive credentials. Do not share them publicly or include them directly in source code or other locations where they may be exposed.
{% endhint %}

Monolith API requests authenticate using the `X-API-KEY` request header.

See [**Monolith API**](/monolith/monolith-api-and-webhooks/api-access.md) for available resources, endpoints, and request guidance.

### Webhooks

Webhooks allow Monolith to notify another system when supported activity occurs.

Instead of an external application repeatedly checking Monolith for changes, a Webhook can send an HTTP request to a configured URL when a subscribed resource is created, updated, or deleted.

This can support workflows such as:

* Sending information to another business system
* Triggering an automation when Monolith data changes
* Updating an external reporting or case-management workflow
* Sending supported events into an integration platform
* Starting another process when work is created or completed in Monolith

### Create a Webhook

Select **New Webhook** to create a Webhook.

Configure:

* **Webhook Name** — a recognizable name for the integration
* **Webhook URL** — the external endpoint that will receive Webhook requests
* **Webhook Description** — optional context about the purpose of the Webhook
* **Webhook Events** — the Monolith resources the Webhook should subscribe to

After configuring the Webhook, select **Create Webhook**.

### Webhook Events

Webhooks can subscribe to supported resource events in Monolith.

Current resource options include:

* **Cases**
* **Evidence**
* **Storage**
* **Acquisitions**
* **Tasks**
* **Time Entries**

When a create, update, or delete event occurs for a subscribed resource, Monolith sends a Webhook call to the configured URL.

A Webhook can subscribe to more than one resource type when the receiving system needs to respond to several kinds of Monolith activity.

### API vs. Webhooks

The API and Webhooks support different integration patterns.

**Monolith API**

Use the API when an external application needs to request, create, or update supported information in Monolith.

**Webhooks**

Use Webhooks when another system needs to react when supported activity occurs in Monolith.

Many integrations use both approaches: a Webhook can notify the external system that something changed, and the API can then be used to retrieve or work with additional information.

### Integration Planning

Before creating an API key or Webhook, identify:

* Which Monolith resources the integration needs
* Whether the external system needs to read or write information
* Which events should trigger activity
* Where Webhook requests should be delivered
* How credentials will be stored securely
* How the receiving system will process Monolith data

For advanced integrations or workflows that involve multiple systems, contact Monolith Support for additional guidance.

### Related Documentation

* [**Monolith API**](/monolith/monolith-api-and-webhooks/api-access.md)
* [**Cases API**](/monolith/monolith-api-and-webhooks/cases-api.md)
* [**Evidence API**](/monolith/monolith-api-and-webhooks/evidence-api.md)
* [**Acquisitions API**](/monolith/monolith-api-and-webhooks/acquisitions-api.md)
* [**Tasks**](/monolith/using-monolith/dashboard/tasks.md)
* [**Integrations**](/monolith/using-monolith/settings/integrations.md)
