# API concepts

[HTML](https://pdfcraft.ai/en/docs/api/overview/) · [Site index](https://pdfcraft.ai/llms.txt)

Understand authentication, asynchronous tasks, and the document conversion API lifecycle.


The PDF Craft API is REST-based, uses JSON requests and responses, and authenticates each request with a bearer API key.

## Base URL and authentication

All endpoints are available below `https://fusion-api.oomol.com/v1`. Send the API key through the `Authorization` request header.

```text
Authorization: Bearer YOUR_API_KEY
```

Do not expose this key in frontend code. Route browser-originated work through your own backend when an end user starts a conversion.

## Asynchronous task lifecycle

Document conversion is asynchronous. A submit endpoint returns `sessionID`, the task identifier, and a corresponding result endpoint reports one of these states:

- `processing`: the file is waiting or being converted.
- `completed`: the result contains the generated output URL in `data.downloadURL` and its metadata.
- `failed`: the result contains a failure reason that your application should surface or log.

Your integration should stop polling on a terminal state, use bounded retries, and preserve the task ID for support and recovery.

## Endpoints

The current API supports PDF-to-Markdown and PDF-to-EPUB conversion. Use the complete [API Reference](https://pdfcraft.ai/en/api/) for endpoint paths, parameters, sample payloads, Python SDK guidance, and TypeScript SDK guidance.
