> This page is for version 2023-04-25.
> For other versions, use one of these documentation indexes:
> - 2025-09-18 (default): https://apidocs.polytomic.com/2025-09-18/llms.txt
> - 2024-02-08: https://apidocs.polytomic.com/2024-02-08/llms.txt
> - 2023-04-25: https://apidocs.polytomic.com/2023-04-25/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://apidocs.polytomic.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://apidocs.polytomic.com/_mcp/server.

# ingestion.stalled

Fires when ingestion from a source Connection has been unhealthy for one hour by default. Ingestion is unhealthy when its runs fail or stop advancing toward the source's latest position. Polytomic checks when an ingestion run finishes and sends this event once per stall. `stalled_since` can be well before the event's `created_at`. The `sync_id` and `sync_name` fields are absent when ingestion belongs to the Connection.

## Payload fields

| Field | Type | Always present | Description |
| --- | --- | --- | --- |
| `organization_id` | string (UUID) | Yes | Organization ID |
| `source_connection_id` | string (UUID) | Yes | Source connection ID |
| `source_connection_name` | string | Yes | Name of the source Connection |
| `sync_id` | string (UUID) | No | Bulk Sync ID, absent when ingestion belongs to the Connection |
| `sync_name` | string | No | Name of the Bulk Sync, absent when ingestion belongs to the Connection |
| `stalled_since` | string (RFC 3339 timestamp) | Yes | When ingestion became unhealthy |
| `error` | string | No | Most recent ingestion error |

## Example

This example shows a webhook delivery, with the fields above in `event`. See the
[events overview](/2023-04-25/events/overview) for the delivery format.

```json
{
  "id": "f4b95203-e037-53a5-b3df-811ec0bdbe10",
  "created_at": "2024-01-01T02:00:00Z",
  "type": "ingestion.stalled",
  "event": {
    "organization_id": "be80a27e-0e80-4dcb-bee9-1666f02eeb83",
    "source_connection_id": "ad56197c-1bca-4256-a410-fb1ffde295c0",
    "source_connection_name": "Production Postgres",
    "sync_id": "dcc891b3-4a25-4b8b-bba8-48104cd66525",
    "sync_name": "Postgres to Snowflake",
    "stalled_since": "2024-01-01T00:00:00Z",
    "error": "replication slot not found"
  }
}
```