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

# Overview

> Complete reference for the mintfax v1 API

## Base URL

All API requests use the following base URL:

```
https://api.mintfax.com/v1
```

## Authentication

Include your API key as a Bearer token in the `Authorization` header:

```
Authorization: Bearer mfx_test_abc123...
```

Sandbox keys start with `mfx_test_`, live keys with `mfx_live_`. The registration endpoints (`POST /account/register` and `POST /account/register/verify`) do not require authentication.

## Request Format

* **JSON** for request bodies (`Content-Type: application/json`)
* **Multipart** for file uploads (`Content-Type: multipart/form-data`)

## Response Format

All responses return JSON. Successful responses return the resource directly. Error responses follow a consistent structure:

```json theme={null}
{
  "error": "insufficient_balance",
  "message": "Insufficient balance to submit fax",
  "action": "top_up_balance",
  "docs": "/docs/errors#insufficient-balance"
}
```

## Idempotency

`POST /fax` accepts an optional `idempotency_key` form field. Duplicate requests with the same key return the original response without re-executing. Keys expire after 24 hours. See the [Idempotency guide](/docs/idempotency) for details.

## Rate Limits

Rate limits are applied per API key. Current limits are returned in response headers:

* `X-RateLimit-Limit` - requests per minute
* `X-RateLimit-Remaining` - requests remaining in current window
* `X-RateLimit-Reset` - seconds until the window resets

## Pagination

List endpoints return paginated results with 20 items per page. Use the `page` query parameter to navigate:

```
GET /v1/faxes?page=2
```

## OpenAPI Spec

The machine-readable OpenAPI 3.1 spec is available at:

* [mintfax.com/docs/openapi.json](https://mintfax.com/docs/openapi.json)
