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

# API overview

> Introduction to the Ingestly API for programmatic document processing.

The Ingestly API lets you submit documents for processing programmatically using API keys.

## Base URL

<Snippet file="base-url.mdx" />

## Authentication

All API requests require authentication using an API key passed in the `X-Api-Key` header.

```bash theme={null}
X-Api-Key: ing_your_api_key_here
```

See [authentication](/api-reference/authentication) for details on creating and managing API keys.

## Workspace scoping

To scope an API request to a specific workspace, include the `X-Workspace-Id` header:

```bash theme={null}
X-Workspace-Id: your-workspace-id
```

If omitted, the request targets the default workspace. See [workspaces](/admin/workspaces) for more on how workspaces organize your resources.

## Available endpoints

The Ingestly API currently exposes one endpoint for external use:

| Method | Path                              | Description                                    |
| ------ | --------------------------------- | ---------------------------------------------- |
| `POST` | `/pipelines/{pipelineId}/trigger` | Submit a document to a pipeline for processing |

See the [webhook trigger endpoint](/api-reference/trigger-webhook) for the full specification.

## Request format

The webhook trigger endpoint accepts `multipart/form-data` requests with the document file.

```bash theme={null}
curl -X POST "https://api.ingestly.ai/pipelines/{pipelineId}/trigger" \
  -H "X-Api-Key: ing_your_api_key_here" \
  -F "file=@document.pdf"
```

Pass an optional `Idempotency-Key` (a GUID) to make a retry safe, and read the `X-Correlation-ID` response header to trace a request. See the [trigger endpoint](/api-reference/trigger-webhook) for the full contract.

## Response format

Successful responses return JSON. Error responses follow the RFC 7807 Problem Details format.

### Success response

A successful trigger returns **202 Accepted** with the created document's id and status. The document is then processed asynchronously.

### Error response

<Snippet file="error-response.mdx" />

## Rate limits

API requests are subject to rate limits based on your subscription plan. See [rate limits](/api-reference/rate-limits) for details.

## SDKs and libraries

Ingestly does not currently provide official SDK libraries. Use the HTTP API directly with your preferred HTTP client. See the [webhook trigger guide](/guides/webhook-trigger) for code examples in cURL, JavaScript, Python, and C#.
