Integration guide

This guide shows how to integrate Eagle Doc as a business and process documents on behalf of your clients. You keep calling the same receipt, invoice, any-document, split and RAG endpoints — you simply authenticate with a business API key and, optionally, tag each request with the client it belongs to.

Fully backward compatible

Nothing about personal API-… keys changes. The business features below are purely additive — existing integrations keep working untouched.

What is new for integrators

Two additive mechanics turn any Eagle Doc integration into a multi-client one:

  • Business API keys — prefixed APIB-… and sent in the same api-key header. Usage is billed to the business subscription, not to any individual person.
  • Per-client attribution — an optional header tags each request with one of your clients (a “sub-business”), so usage, documents and learned RAG examples are separated per client.

Core concepts

Your organization
Business

Your organization on Eagle Doc: it owns the subscription, the API keys and the clients. All usage rolls up to it.

Sub-business
Client

A customer you serve. A pure attribution label — no login, no key, no separate bill. Usage and RAG examples can be split per client.

Authentication
Business API key

An APIB-… key that authenticates machine calls as the business. Create as many as you need; revoke any individually.

Billing
Rolled-up usage

Every client’s pages count against the one business subscription. You still see a per-client breakdown for your own reporting.

Quick start

Go from zero to a client-attributed extraction in five steps.

  1. Create a business and a business API key

    In the dashboard, create a business, then open Settings → API keys and copy a new APIB-… key. You can also automate this — see Authentication.

  2. Authenticate with the business key

    Send it in the same api-key header you already use — the APIB- prefix is what makes the call business-scoped.

  3. Tag the client (zero-touch)

    Add x-sub-business-ref with your own client number. On first use Eagle Doc creates the client automatically — you never pre-register anything.

  4. Call any extraction endpoint

    Everything else is identical to a personal-key integration. Here is a receipt extraction attributed to client A-1023:

    curl --location 'https://de.eagle-doc.com/api/receipt/v3/processing' \
      --header 'api-key: APIB-your-business-key' \
      --header 'x-sub-business-ref: A-1023' \
      --form 'file=@"receipt.jpeg"'
    import requests
    
    resp = requests.post(
        "https://de.eagle-doc.com/api/receipt/v3/processing",
        headers={
            "api-key": "APIB-your-business-key",
            "x-sub-business-ref": "A-1023",   # your own client number
        },
        files={"file": open("receipt.jpeg", "rb")},
    )
    print(resp.json())
    import fs from "node:fs";
    
    const form = new FormData();
    form.append("file", new Blob([fs.readFileSync("receipt.jpeg")]), "receipt.jpeg");
    
    const resp = await fetch("https://de.eagle-doc.com/api/receipt/v3/processing", {
      method: "POST",
      headers: {
        "api-key": "APIB-your-business-key",
        "x-sub-business-ref": "A-1023", // your own client number
      },
      body: form,
    });
    console.log(await resp.json());
  5. Check usage

    Call GET /api/usage/v1/current with the business key for the rolled-up quota, or view the per-client breakdown in the dashboard. See Usage & quota.

Explore the guides

Support

We are here to help

Building your multi-client integration and something is unclear? We are glad to help so your project succeeds.

Reach us at support@eagle-doc.com