One API for your document work

Send documents for signing, review, extraction or Document to Data from your own systems, and get the results back by webhook. The same modules and credits as the app.

OpenAPI 3.1 specification, for Postman, Insomnia or client generators.

POST /api/v1/documents
# Send a contract for signature
curl https://app.lookdocu.id/api/v1/documents \
  -H "Authorization: Bearer $LOOKDOCU_KEY" \
  -F file=@agreement.pdf \
  -F 'data={
    "signing_order": true,
    "recipients": [{ "email": "budi@example.co.id", "name": "Budi" }],
    "fields": [{ "recipient": "budi@example.co.id", "type": "signature", "anchor": "PIHAK KEDUA" }],
    "send": true
  }'

# Later, on your server:
# POST /webhook/lookdocu
# X-LookDocu-Signature: t=1793024851,v1=5f2b9c…
# { "event": "document.completed", "data": { … } }

Modules

One token, the modules you pick

Each token has module scopes. A call to a module the token is not allowed to use is refused.

ScopeWhat it covers
extractExtract Data, Classify and split, Direct Extract, and Document to Data (Parse)
checkReview Document: automatic checks, the AI analysis and Ask the document
signRequest Signatures and company stamps: create, send, track, download and cancel
any tokenUsage and webhooks, for the events of its own modules

Webhooks

Results pushed to your system

Register a URL and pick the events. Events come for documents from both the API and the app.

  • Every status change

    Sent, signed, completed, declined, cancelled and expired for signatures; done or failed for extraction, review and parsing.

  • Signed with HMAC

    Each call carries an HMAC-SHA256 signature of the timestamp and the body, made with that webhook's secret. Reject a call that does not match or is more than 5 minutes old.

  • Retries and a delivery id

    If your server does not answer with 2xx within 10 seconds, the call is retried 3 times. Every retry carries the same delivery id, so repeats are easy to drop.

  • Public https only

    Webhooks go only to public https addresses, up to 10 per account. Subscribe from the app or from code.

Tokens and monitoring

Built to run in production

  • Tokens you control

    Shown once when created, with an optional expiry, and revocable at any time. Keep them on your server, never in a browser or mobile app.

  • API Analytics

    Usage per token, failed requests with their message, and response times.

  • Usage and credits

    Usage per module per month, from the API and the app together, and the credits left.

  • Clear limits

    Up to 120 requests per minute per token and 50 MB per upload. Errors come back as JSON with a plain message.

  • Your own fields

    Extraction with the fields you define, a good fit for e-invoicing systems.

  • OpenAPI 3.1

    The whole API in one specification file, next to the full documentation.

Get started

Three steps

  1. 1. Sign in and create a token under API Tokens, with the modules you need.
  2. 2. Send a document to the module's endpoint.
  3. 3. Fetch the result, or let a webhook tell you when it is ready.

Try it on your own documents

Sign in with Google and upload a document. The Free plan includes 30 AI credits a month and unlimited signatures.

Talk to sales

Tell us about your documents and we will get back to you by email.

We use these details only to reply to you. See our Privacy Policy.