For the complete documentation index, see llms.txt. This page is also available as Markdown.

Overview

Drive document extraction, classification and generation from your own systems.

Everything the Document AI product does to a document — read it, identify it, produce it — is reachable over HTTP. The API is how you put those capabilities inside your own intake pipeline, loan origination system, or back-office workflow, instead of asking someone to upload files through the portal.

New to the API? Start with Getting started to authenticate, submit an extraction, and receive results.

The surface is deliberately small. Fourteen operations across four groups, one authentication header, and a single decision that shapes most integrations: whether you wait for the answer or collect it later.

The four groups

Group
What it does
Start here

Turn a document into structured fields

Identify what a document is

Produce a finished document from data

Look up supported types and formats

Base URL

https://api-docai-uat.uptiq.ai

Note that the API host is a different hostname from the portal you sign in to (docai-uat.uptiq.ai). Requests go to api-docai-uat, not to the portal.

Your first call

One operation needs no credentials at all, which makes it a good way to prove connectivity before you introduce authentication as a variable:

curl "https://api-docai-uat.uptiq.ai/listSupportedDocuments"

A 200 with a JSON body of document types means you can reach the platform. Everything after that needs an API key — see Authentication.

Choosing sync or async

Extraction, classification and generation each come in both forms, and the choice is about how long you are willing to hold a connection open.

Synchronous
Asynchronous

Endpoint

/extract/sync

/extract

Returns

The finished result

An ID, immediately

Observed latency

~90s for a one-page PDF

~0.6s to accept

Get the result by

The response body

Polling, or a webhook

Suits

Interactive flows, small volumes, prototyping

Batches, long documents, production pipelines

Extraction is genuinely slow — the synchronous call in our testing took 92 seconds for a single page, because the work is real OCR plus model inference rather than a lookup. Classification is much quicker at around 13 seconds. Size your timeouts accordingly, and prefer the asynchronous path for anything user-facing.

Moving between the two is usually just a change of URL. The request body is the same, so you can prototype against /extract/sync and switch to /extract for production without rewriting the payload.

What is not in the API yet

The API covers document processing. It does not currently expose account administration, and a few things you can do in the portal have no documented endpoint:

Not available over the API
Do it here instead

Creating and revoking API keys

Settings → API Keys — see User Management

Configuring webhook endpoints

Settings → Edit Account Information — see Webhook payloads

Listing your extractions or classifications

The Extractions and Classifications screens — see Document Extraction

Correcting an extracted field

The extraction detail view — see Document Extraction

Managing users and roles

Settings → Users — see User Management

Configuring fraud rules

Document Types → Fraud Detection — see Fraud Detection. Fraud results can be read from an extraction record

This list reflects what is documented and supported today, not a judgement about what exists internally. If you need one of these programmatically, raise it with your Uptiq contact rather than working from an undocumented route.

  • Authentication — the X-Api-Key header and how to get one.

  • Conventions — envelopes, the status lifecycle, and the rules the schema does not enforce.

  • Errors — what each status code means, including the ones that are not what they look like.

  • Webhook payloads — the completion callbacks and how to verify them.

  • Cookbooks — task-shaped recipes built on these endpoints.

Last updated