Spaces:
Running
Running
File size: 15,760 Bytes
82dff21 b4d44b8 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 | <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>HyperAPI by Hyperbots: Document intelligence APIs for finance</title>
<meta name="description" content="HyperAPI turns invoices, receipts, statements and contracts into validated JSON. Parse, Extract, Classify, Split and Redact endpoints with a free tier.">
<style>
:root{--ink:#0f172a;--muted:#475569;--line:#e2e8f0;--bg:#ffffff;--soft:#f8fafc;--brand:#2563eb;--brand2:#0ea5e9;--code:#0b1220;--codeink:#e2e8f0}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
header.hero{background:linear-gradient(135deg,#0b1220 0%,#13254a 55%,#0c3b6e 100%);color:#fff;padding:64px 0 56px}
.badge{display:inline-block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:4px 10px;border-radius:999px}
h1{font-size:44px;line-height:1.1;margin:18px 0 12px;letter-spacing:-.02em}
.lede{font-size:19px;color:#cbd5e1;max-width:720px;margin:0 0 28px}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;padding:11px 18px;border-radius:10px;font-weight:600;font-size:15px}
.btn.primary{background:#fff;color:#0b1220}.btn.ghost{border:1px solid rgba(255,255,255,.4);color:#fff}
.btn:hover{text-decoration:none;opacity:.92}
.facts{display:flex;gap:28px;flex-wrap:wrap;margin-top:34px;color:#cbd5e1;font-size:14px}
.facts b{display:block;color:#fff;font-size:20px}
section{padding:56px 0;border-bottom:1px solid var(--line)}
section.alt{background:var(--soft)}
h2{font-size:28px;margin:0 0 8px;letter-spacing:-.01em}
.sub{color:var(--muted);margin:0 0 28px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.card{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}
.card h3{margin:0 0 6px;font-size:17px}
.card code{font-size:13px;color:var(--brand)}
.card p{margin:8px 0 0;color:var(--muted);font-size:14.5px}
.price{font-size:13px;color:#0f766e;font-weight:600;margin-top:10px}
pre{background:var(--code);color:var(--codeink);padding:18px 20px;border-radius:12px;overflow:auto;font:13.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;margin:0 0 18px}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.c{color:#94a3b8}.k{color:#93c5fd}.s{color:#86efac}
table{width:100%;border-collapse:collapse;font-size:15px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--soft);font-weight:600;font-size:13.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
tr:last-child td{border-bottom:0}
.steps{counter-reset:s;list-style:none;padding:0;margin:0 0 22px}
.steps li{counter-increment:s;position:relative;padding:0 0 12px 40px}
.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.note{border-left:3px solid var(--brand2);background:#f0f9ff;padding:12px 16px;border-radius:0 10px 10px 0;color:#0c4a6e;font-size:14.5px;margin:0 0 18px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:760px){.two{grid-template-columns:1fr}h1{font-size:34px}}
ul.clean{padding-left:18px;margin:0}ul.clean li{margin:0 0 8px}
footer{padding:36px 0 48px;color:var(--muted);font-size:14px}
.links{display:flex;gap:18px;flex-wrap:wrap}
</style>
</head>
<body>
<header class="hero">
<div class="wrap">
<span class="badge">HyperAPI · by Hyperbots</span>
<h1>Turn financial documents into validated JSON</h1>
<p class="lede">HyperAPI is a set of document intelligence APIs for invoices, receipts, bank statements, contracts and other finance documents. You send a PDF or image and get back clean text, typed fields, a document type or redacted pages. It works from a backend service, a dashboard or an AI agent.</p>
<div class="cta">
<a class="btn primary" href="https://apis.hyperbots.com/dashboard/register" target="_blank" rel="noopener">Get a free API key</a>
<a class="btn ghost" href="https://apis.hyperbots.com/docs" target="_blank" rel="noopener">Read the docs</a>
<a class="btn ghost" href="https://apis.hyperbots.com/sandbox" target="_blank" rel="noopener">Try the sandbox</a>
</div>
<div class="facts">
<div><b>5</b>core endpoints</div>
<div><b>30 pages / mo</b>free, no credit card</div>
<div><b>$0.001 / page</b>fast parse</div>
<div><b>Python SDK</b>sync + async, MIT</div>
</div>
</div>
</header>
<section>
<div class="wrap">
<h2>Five endpoints. Call any of them on its own.</h2>
<p class="sub">Each endpoint takes a <code>document_key</code> from a single upload, so you can chain them without uploading the file again.</p>
<div class="grid">
<div class="card"><h3>Parse</h3><code>POST /v1/parse</code><p>OCR to clean text and markdown with page geometry, line and word boxes, layout regions and table parsing. <code>advanced</code> mode adds per-page structured HTML and markdown.</p><div class="price">from $0.001 / page</div></div>
<div class="card"><h3>Extract</h3><code>POST /v1/extract</code><p>Typed entities and line items from invoices and receipts. For any other document, pass your own JSON schema.</p><div class="price">$0.05 / page</div></div>
<div class="card"><h3>Classify</h3><code>POST /v1/classify</code><p>Returns a document type with a confidence score and ranked candidates. You can add your own classes and descriptions.</p><div class="price">$0.05 / page</div></div>
<div class="card"><h3>Split</h3><code>POST /v1/split</code><p>Breaks a bundled PDF into separate logical documents, with a page range, label and confidence for each.</p><div class="price">$0.05 / page</div></div>
<div class="card"><h3>Redact</h3><code>POST /v1/redact</code><p>Covers PII with black boxes or replaces it with synthetic values. You can add your own entity types.</p><div class="price">$0.05 / page</div></div>
</div>
</div>
</section>
<section class="alt" id="quickstart">
<div class="wrap">
<h2>Quickstart</h2>
<p class="sub">Python 3.9+. The official SDK installs from GitHub.</p>
<ol class="steps">
<li>Create a free account and generate a key at <a href="https://apis.hyperbots.com/dashboard/api-keys" target="_blank" rel="noopener">apis.hyperbots.com/dashboard/api-keys</a>. Keys that start with <code>hk_live_</code> are for production and keys that start with <code>hk_test_</code> are for testing.</li>
<li>Install the SDK and set <code>HYPERAPI_KEY</code>.</li>
<li>Parse and extract in a single call.</li>
</ol>
<pre><span class="c"># install (the package installs as hyperapi-sdk and imports as hyperapi)</span>
pip install <span class="s">"hyperapi-sdk @ git+https://github.com/hyprbots/hyperapi-sdk.git"</span>
export HYPERAPI_KEY=hk_test_...</pre>
<pre><span class="k">from</span> hyperapi <span class="k">import</span> HyperAPIClient
<span class="k">with</span> HyperAPIClient() <span class="k">as</span> client: <span class="c"># reads HYPERAPI_KEY</span>
doc = client.process(<span class="s">"invoice.pdf"</span>) <span class="c"># parse + extract in one call</span>
print(doc[<span class="s">"result"</span>])
text = client.parse(<span class="s">"invoice.pdf"</span>) <span class="c"># OCR text + layout</span>
kind = client.classify(<span class="s">"bundle.pdf"</span>) <span class="c"># document type + confidence</span>
parts = client.split(<span class="s">"bundle.pdf"</span>) <span class="c"># page ranges per document</span>
safe = client.redact(<span class="s">"statement.pdf"</span>, mode=<span class="s">"deidentify"</span>)</pre>
<div class="note">Don't run <code>pip install hyperapi</code>. That name on PyPI belongs to an unrelated project. Use the GitHub install above.</div>
<p>For FastAPI, aiohttp or agent loops, use <code>AsyncHyperAPIClient</code> and fan calls out with <code>asyncio.gather</code>. Every endpoint also has a <code>submit_*</code> variant that returns a job for bulk or long-running work. Batches are available through <code>create_batch_from_files</code>.</p>
</div>
</section>
<section id="rest">
<div class="wrap">
<h2>REST, from any language</h2>
<p class="sub">The flow has three steps: request an upload URL, PUT the bytes, then call any endpoint with the <code>document_key</code>. The key is valid for 24 hours.</p>
<pre><span class="c"># 1. request a presigned upload URL</span>
curl -X POST https://apis.hyperbots.com/v1/documents/upload \
-H <span class="s">"X-API-Key: $HYPERAPI_KEY"</span> -H <span class="s">"Content-Type: application/json"</span> \
-d <span class="s">'{"filename":"invoice.pdf","content_type":"application/pdf","content_length":184213}'</span>
<span class="c"># -> {"document_key":"550e8400-...","upload_url":"https://...","expires_in":900}</span>
<span class="c"># 2. upload the file to upload_url with an HTTP PUT (no API key needed)</span>
<span class="c"># 3. extract structured fields</span>
curl -X POST https://apis.hyperbots.com/v1/extract \
-H <span class="s">"X-API-Key: $HYPERAPI_KEY"</span> \
-F <span class="s">"document_key=550e8400-e29b-41d4-a716-446655440000"</span></pre>
<div class="two">
<pre>{
<span class="s">"status"</span>: <span class="s">"success"</span>,
<span class="s">"task"</span>: <span class="s">"extract"</span>,
<span class="s">"model_used"</span>: <span class="s">"HyperLM"</span>,
<span class="s">"result"</span>: {
<span class="s">"entities"</span>: {
<span class="s">"invoice_number"</span>: <span class="s">"INV-2024-0042"</span>,
<span class="s">"date"</span>: <span class="s">"2024-01-15"</span>,
<span class="s">"due_date"</span>: <span class="s">"2024-02-15"</span>,
<span class="s">"vendor_name"</span>: <span class="s">"Acme Supplies Ltd"</span>,
<span class="s">"total_amount"</span>: <span class="s">"1,250.00"</span>,
<span class="s">"currency"</span>: <span class="s">"USD"</span>
},
<span class="s">"line_items"</span>: [ ... ]
}
}</pre>
<pre><span class="c"># any document, your schema</span>
curl -X POST \
<span class="s">"https://apis.hyperbots.com/v1/extract?category=non_financial"</span> \
-H <span class="s">"X-API-Key: $HYPERAPI_KEY"</span> \
-F <span class="s">"document_key=..."</span> \
-F <span class="s">'schema={"patient_name":null,"active":false}'</span>
<span class="c"># dense tables and forms</span>
<span class="c"># add ?parse_mode=advanced (Plus, Pro, Custom)</span>
<span class="c"># process asynchronously and get a job id</span>
-H <span class="s">"X-Async: true"</span></pre>
</div>
</div>
</section>
<section class="alt" id="pricing">
<div class="wrap">
<h2>Pricing</h2>
<p class="sub">Start free. Paid plans charge overage to prepaid credits at the per-page rates shown above. Results are cached per document for 24 hours, and cached results are not billed.</p>
<table>
<tr><th>Plan</th><th>Price</th><th>Pages / month</th><th>Rate limit</th><th>Highlights</th></tr>
<tr><td><b>Free</b></td><td>$0</td><td>30</td><td>1 req/min</td><td>All core APIs, fast parse, no credit card</td></tr>
<tr><td><b>Starter</b></td><td>$1</td><td>300</td><td>10 req/min</td><td>Core APIs, email support</td></tr>
<tr><td><b>Plus</b></td><td>$25</td><td>10,000</td><td>30 req/min</td><td>Advanced parse, team workspace with 3 seats</td></tr>
<tr><td><b>Pro</b></td><td>$99</td><td>50,000</td><td>60 req/min</td><td>Priority routing, up to 10 seats, priority support</td></tr>
<tr><td><b>Custom</b></td><td>Talk to us</td><td>Volume</td><td>Dedicated</td><td>BYOK, IP allowlist, human-in-the-loop review</td></tr>
</table>
<p style="margin-top:14px;color:var(--muted);font-size:14.5px">Current prices and promotions are on the <a href="https://apis.hyperbots.com/pricing" target="_blank" rel="noopener">pricing page</a>.</p>
</div>
</section>
<section id="details">
<div class="wrap two">
<div>
<h2>Inputs and limits</h2>
<ul class="clean">
<li>PDF, PNG, JPEG, WebP, TIFF and HEIC, plus Word, Excel, PowerPoint, CSV, TXT, RTF, JSON and XML.</li>
<li>Uploads up to 50 MB (512 MiB for Custom async).</li>
<li>Fast parse, Classify and Split have no page cap. Advanced parse and advanced Extract allow 60 pages (500 for Custom async). Redact allows 36 pages.</li>
<li><code>GET /v1/limits</code> returns the limits that apply to your key.</li>
</ul>
</div>
<div>
<h2>Data handling</h2>
<ul class="clean">
<li>Files are processed in memory and deleted when a run completes, unless you turn on retention.</li>
<li>Documents are not used for training.</li>
<li>Redact can remove PII before any downstream model sees the document.</li>
<li>Hyperbots is SOC 1 Type 2, SOC 2 Type 2 and ISO 27001 certified.</li>
</ul>
</div>
</div>
</section>
<section class="alt" id="research">
<div class="wrap">
<h2>Research behind it</h2>
<p class="sub">HyperAPI runs on Hyperbots' finance-specific models, including HyperLM and in-house vision-language models.</p>
<div class="grid">
<div class="card"><h3>DocuLite</h3><p>Adapting LLMs and VLMs to invoice extraction without human-annotated training data, using synthetic data generators (InvoicePy and TemplatePy). Accepted at the 4th Deployable AI Workshop, AAAI 2026.</p><p><a href="https://www.hyperbots.com/research/breaking-the-annotation-barrier-with-doculite" target="_blank" rel="noopener">Read the research →</a></p></div>
<div class="card"><h3>Synthetic invoice dataset</h3><p>A synthetic invoice set with HTML, OCR-style text and gold labels in the Extract output format. Use it to benchmark HyperAPI or your own pipeline.</p><p><a href="https://huggingface.co/datasets/hyperbots-inc/synthetic-invoice-extraction" target="_blank" rel="noopener">Open the dataset →</a></p></div>
<div class="card"><h3>Engineering blog</h3><p>Posts on deterministic extraction from financial PDFs, schema-as-contract, and classifying more than 1,400 bank statement templates.</p><p><a href="https://apis.hyperbots.com/blogs" target="_blank" rel="noopener">Read the blog →</a></p></div>
</div>
</div>
</section>
<footer>
<div class="wrap">
<div class="links">
<a href="https://apis.hyperbots.com" target="_blank" rel="noopener">apis.hyperbots.com</a>
<a href="https://apis.hyperbots.com/docs" target="_blank" rel="noopener">Docs</a>
<a href="https://github.com/hyprbots/hyperapi-sdk" target="_blank" rel="noopener">Python SDK</a>
<a href="https://apis.hyperbots.com/docs/status" target="_blank" rel="noopener">Status</a>
<a href="https://huggingface.co/hyperbots-inc" target="_blank" rel="noopener">Hyperbots on Hugging Face</a>
<a href="https://www.hyperbots.com" target="_blank" rel="noopener">hyperbots.com</a>
<a href="mailto:hyperapi-support@hyperbots.com">hyperapi-support@hyperbots.com</a>
</div>
<p style="margin-top:16px">© 2026 Hyperbots Inc. HyperAPI is a product of Hyperbots Inc.</p>
</div>
</footer>
</body>
</html>
|