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

# Introduction

Welcome to **Contractag** — an API for detecting and tagging key fields in real estate contracts. Upload a PDF and get coordinates for fields like purchaser name, signature, deposit, and more.

Contractag turns PDF contracts into structured data. Upload any standard contract and get tagged fields with bounding boxes for search, checks, and signing.

Use the left navigation:

* `Get Started` — overview, quickstart, and base URL.
* `Endpoints` — parameters, responses, and API Playground.
* `Examples` — sample payloads.
* `Guides` — sample contracts and mini app walkthroughs.
* `Reference` — list of supported fields.

<Tip>
  Try the API without code. Every endpoint page has an interactive API
  Playground. Authorize once, send requests to `https://api.contractag.dev`, and
  copy snippets. See the `API Playground` page under **Get Started**.
</Tip>

For privacy, Contractag returns only geometry and confidence scores — overlay them on your PDF.

### What You Get

* Field detection for purchaser, vendor, property, signatures, deposits, and more. See [fields-included](./fields-included) for all supported fields.
* Coordinates and confidence for each tag.
* Simple API for PDFs or images.

Request a key via [support@contractag.dev](mailto:support@contractag.dev) and follow the quickstart guide.

### Early Access Notice

<Warning>
  This API is currently in **preview** and is not production-ready. Response
  data — especially geometry coordinates — may be noisy, inconsistent, or
  incorrect. Do not rely on this output for production workflows.
</Warning>

<Note>
  At this stage, the API is primarily intended to help teams understand the
  response structure and data types. As discussed with partners, we’re working
  with interested teams to secure access to more varied resources, which will
  help us improve accuracy and robustness over time.
</Note>

## Quickstart

**Base URL:** `https://api.contractag.dev`

1. Email [support@contractag.dev](mailto:support@contractag.dev) for an API key.
2. Open API Playground from any endpoint, set token, paste key.
3. Upload a PDF via Fields API.
4. Overlay bounding boxes in your app.

```bash theme={null}
curl -X POST https://api.contractag.dev/fields \
  -H "x-api-key: YOUR_API_KEY" \
  -F file=@/path/to/contract.pdf
```

Response (truncated):

```json theme={null}
{
  "documentId": "doc_123",
  "pages": 12,
  "fields": [
    {
      "name": "purchaser_name",
      "page": 1,
      "bbox": { "x": 142.3, "y": 258.9, "w": 210.5, "h": 24.2 },
      "confidence": 0.97
    }
  ]
}
```

***

## Authentication

Requests need an API key in the `x-api-key` header:

```http theme={null}
x-api-key: YOUR_API_KEY
```

See `quickstart` for details.

***

## Endpoints Overview

* `POST /fields` — Extract all fields from a PDF.
* `GET /fields/{document_id}` — Get fields for a document (optionally filter by page).

Full specs under `Endpoints`.

***

## Example Responses

Each endpoint has a JSON sample under `Examples`:

* `Fields: All` — multi-field payload.
* `Fields: Get` — document fields (with optional page filtering).

Use to mock integrations.

> Contractag returns coordinates and confidence only; text stays in your PDF.

***

## Bounding Boxes

Boxes are in PDF points, origin bottom-left. Format: `{ x, y, w, h }`.

Tip: Match scale and transform when rendering on images.

***

## Next Steps

* Check `quickstart` for checklist.
* Browse `api/endpoints/overview` and endpoints.
* Copy from `api/examples/fields-all`.
* See `fields-included` for supported fields.
* Explore `guides` for samples and walkthroughs.
