Dependencies API
Manage external service dependencies and track their impact on your services.
Dependencies represent external services your application relies on -- databases, caches, third-party APIs, and other infrastructure. When a dependency is reported as unhealthy (via heartbeat payloads), Ionhour can create DEPENDENCY_DOWN incidents for affected checks.
List Dependencies
GET /dependenciesReturns a paginated list of dependencies in the workspace.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
workspaceId | number | Yes | Filter by workspace |
page | number | No | Page number (default: 1) |
limit | number | No | Items per page (default: 10) |
orderBy | string | No | Field to sort by |
order | string | No | Sort direction: ASC or DESC |
Example
curl -H "Authorization: Bearer ionh_your_key" \
"https://api.ionhour.com/api/dependencies?workspaceId=1&limit=20"Get Dependency
GET /dependencies/:idReturns a single dependency with its relations (linked checks and workspace).
curl -H "Authorization: Bearer ionh_your_key" \
https://api.ionhour.com/api/dependencies/5Create Dependency
POST /dependenciesRequest Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Dependency name (1--255 characters) |
description | string | No | Short description (1--255 characters) |
category | string | No | DATABASE, CACHE, API, QUEUE, STORAGE, or OTHER |
url | string | No | Health check or documentation URL (max 2,048 characters) |
workspaceId | number | Yes | Workspace to create the dependency in |
Example
curl -X POST https://api.ionhour.com/api/dependencies \
-H "Authorization: Bearer ionh_your_key" \
-H "Content-Type: application/json" \
-d '{
"name": "PostgreSQL Primary",
"description": "Main relational database",
"category": "DATABASE",
"url": "https://db.example.com/health",
"workspaceId": 1
}'Update Dependency
PATCH /dependencies/:idUpdates a dependency. Only include fields you want to change. Requires ADMIN role or higher.
| Field | Type | Description |
|---|---|---|
name | string | Dependency name (1--255 characters) |
description | string | Short description (1--255 characters) |
category | string | DATABASE, CACHE, API, QUEUE, STORAGE, or OTHER |
url | string | Health check or documentation URL (max 2,048 characters) |
curl -X PATCH https://api.ionhour.com/api/dependencies/5 \
-H "Authorization: Bearer ionh_your_key" \
-H "Content-Type: application/json" \
-d '{"description": "Primary PostgreSQL cluster (us-east-1)"}'Delete Dependency
DELETE /dependencies/:idDeletes a dependency. Requires ADMIN role or higher. Checks linked to this dependency are not deleted but will lose their dependency association.
curl -X DELETE https://api.ionhour.com/api/dependencies/5 \
-H "Authorization: Bearer ionh_your_key"Dependency Categories
| Category | Description |
|---|---|
DATABASE | Relational or document databases (PostgreSQL, MySQL, MongoDB) |
CACHE | Caching layers (Redis, Memcached) |
API | Third-party API services |
QUEUE | Message queues and brokers (RabbitMQ, SQS, Kafka) |
STORAGE | Object storage and file systems (S3, GCS) |
OTHER | Any other external dependency |
To report dependency health from your application, include a dependencies array in your heartbeat payload. See the Signals API for details.