Facts

A stateless document-operation API. Send markup or a file over HTTP, get bytes back. Nothing is stored: work happens in a tmpfs workspace that is unlinked before the response is sent. Paid for with one-time credit packs that never expire — no subscription, and no feature gating between tiers.

What is true

Files are never stored.
There is no object storage in the request path. Input is written to a tmpfs workspace held in RAM, the operation runs, the bytes are returned, and the workspace is unlinked before the response completes — including when a request is cancelled part-way.
Credits never expire.
They are bought once, as a pack. There is no subscription, no monthly minimum, and no expiry date. An unused credit bought today is still usable in three years.
There is no feature gating between packs.
Every pack unlocks exactly the same API. A larger pack is cheaper per credit and nothing else. No endpoint, format or option is reserved for a higher tier.
Failures are not charged for.
Credits are held before an operation and settled after it. A failure refunds in full, automatically. In a batch, each item is refunded on its own — one bad file in a folder of two hundred costs nothing.
Rate limits are per key, not per account.
Keys are how a workload is separated, so a runaway script on one key cannot starve production traffic on another. Up to three keys per account.

Pricing

PackPriceCreditsNotes
Free$025one-time grant on signup
Starter$4.99100$0.050 per credit
Standard$14.99500$0.030 per credit
Pro$39.992,000$0.020 per credit
Business$79.995,000$0.016 per credit

Credits never expire. There is no subscription.

Credit cost per operation

OperationEndpointCredits
Render markup to PDFPOST /api/v1/render1 per document, +1 per 10 pages over 10
Render many documentsPOST /api/v1/render/batch1 per document, failures refunded
Render a stored templatePOST /api/v1/render/from-template1 per document
Merge PDFsPOST /api/v1/pdf/merge1 per operation
Split a PDFPOST /api/v1/pdf/split1 per operation, returns a ZIP
Compress a PDFPOST /api/v1/pdf/compress1 per operation
Rotate pagesPOST /api/v1/pdf/rotate1 per operation
Watermark pagesPOST /api/v1/pdf/watermark1 per operation
Reorder pagesPOST /api/v1/pdf/reorder1 per operation
Extract pagesPOST /api/v1/pdf/extract-pages1 per operation
Unlock a PDFPOST /api/v1/pdf/unlock1 per operation, password required
Strip metadataPOST /api/v1/metadata/strip1 per operation
Redact text, patterns or regionsPOST /api/v1/redact2 per operation
Inspect metadataPOST /api/v1/metadata/inspectfree, no API key
Parse a document to markdownPOST /api/v1/parse1 per 10 text pages, 1 per OCR page
Parse many documentsPOST /api/v1/parse/batchsame rates, failures refunded
Convert a documentPOST /api/v1/convert1 per document
Convert one small documentPOST /api/v1/convert/freefree, no API key
Extract tables from a PDFPOST /api/v1/tables3 per table-bearing page
Find the tables and the price firstPOST /api/v1/tables/detectfree, no API key
Capture a URL as evidencePOST /api/v1/capture1, or 5 retained with a timestamp and manifest
Verify a captureGET /api/v1/capture/{id}/verifyfree, no API key
Capture a URL repeatedlyPOST /api/v1/capture/schedulepriced per capture
Read a web pagePOST /api/v1/extract1 per page
Read one page, truncatedPOST /api/v1/extract/previewfree, no API key
Clean a spreadsheetPOST /api/v1/spreadsheet/clean2 plus 1 per 500 rows
Preview what cleaning would changePOST /api/v1/spreadsheet/previewfree, no API key
Turn a chat or mail export into an archivePOST /api/v1/archive2 per export
Get a YouTube transcriptPOST /api/v1/youtube1 per video
Get a transcript, truncatedPOST /api/v1/youtube/previewfree, no API key
Store, list, update, delete templates/api/v1/templatesfree

The 11 products

F148. An agent deciding whether to call an endpoint needs the price of that operation before it spends a customer's credits, not a flat list it has to work back from. Same wallet and same key for all of them, except #9, which has no wallet at all.

1. Markup to PDF

Markdown, HTML or Typst in, PDF bytes out, with stored templates so a repeated document is an id and a data object.

EndpointCredits
POST /api/v1/render1 per document, +1 per 10 pages over 10
POST /api/v1/render/batch1 per document, failures refunded
POST /api/v1/render/from-template1 per document
/api/v1/templatesfree

2. Private document operations

Redaction that removes the glyphs and then proves they are gone, and metadata stripping. Nothing is stored.

EndpointCredits
POST /api/v1/redact2 per operation
POST /api/v1/metadata/strip1 per operation
POST /api/v1/metadata/inspectfree, no API key

3. Any document to markdown

PDFs, Office files and scans to clean markdown with heading-aware chunks. Each page is classified before it is charged, so text pages cost a tenth of a scanned one.

EndpointCredits
POST /api/v1/parse1 per 10 text pages, 1 per OCR page
POST /api/v1/parse/batchsame rates, failures refunded

4. Evidence-grade web capture

A screenshot, PDF, WARC and signed manifest of a page, timestamped with RFC-3161, and a verification URL that needs no account.

EndpointCredits
POST /api/v1/capture1, or 5 retained with a timestamp and manifest
GET /api/v1/capture/{id}/verifyfree, no API key
POST /api/v1/capture/schedulepriced per capture

5. PDF operations

Merge, split, compress, rotate, watermark, reorder, extract pages and unlock, one credit each.

EndpointCredits
POST /api/v1/pdf/merge1 per operation
POST /api/v1/pdf/split1 per operation, returns a ZIP
POST /api/v1/pdf/compress1 per operation
POST /api/v1/pdf/rotate1 per operation
POST /api/v1/pdf/watermark1 per operation
POST /api/v1/pdf/reorder1 per operation
POST /api/v1/pdf/extract-pages1 per operation
POST /api/v1/pdf/unlock1 per operation, password required

6. Web page to markdown or PDF

One named page, rendered with adverts, cookie walls and trackers blocked, then reduced to its main content. Not a crawler: it follows no links.

EndpointCredits
POST /api/v1/extract1 per page
POST /api/v1/extract/previewfree, no API key

7. Document format conversion

Conversion between document formats, where every pair offered was measured rather than advertised.

EndpointCredits
POST /api/v1/convert1 per document
POST /api/v1/convert/freefree, no API key

8. PDF tables to a spreadsheet

Tables out of a PDF as CSV, XLSX or JSON, with no template to configure. Charged per table-bearing page, and the detector says which pages those are before anything is billed.

EndpointCredits
POST /api/v1/tables3 per table-bearing page
POST /api/v1/tables/detectfree, no API key

9. Chat and mail export to an archive

A WhatsApp, Gmail or Slack export turned into something readable. **No account and no credits**: $6 for the export, one payment, however long it is, and the file is deleted on delivery.

EndpointCredits
POST /api/v1/archive2 per export

10. Spreadsheet cleaning

Charsets, delimiters, header rows and column types repaired, with a free preview of every cell that would change before anything is accepted.

EndpointCredits
POST /api/v1/spreadsheet/clean2 plus 1 per 500 rows
POST /api/v1/spreadsheet/previewfree, no API key

11. YouTube transcripts

A video URL in, its transcript out as txt, srt, vtt or json with timings. Captions only: it reads the track YouTube already has and does not transcribe audio, so a video with no captions returns nothing rather than a guess. No video or audio is downloaded on any path.

EndpointCredits
POST /api/v1/youtube1 per video
POST /api/v1/youtube/previewfree, no API key

Published limits

These are the limits the API enforces, not aspirations.

LimitValue
Max upload100 MB
Max pages per document500
Max items per batch200
Request timeout30 s
Rate limit, single requests60 per minute per key
Rate limit, batch requests10 per minute per key
Max API keys per account3

Errors

Every error has the same shape: an error object with a stable code. Branch on the code, never on the HTTP status or the message.

missing_api_key · invalid_api_key · invalid_input · insufficient_credits · unsupported_format · too_large · too_many_pages · render_failed · rate_limited · not_found · internal_error

Machine-readable

Common questions

Do you store the files I send?
No. Work happens in a tmpfs workspace that is unlinked before the response is sent. There is no object storage in the request path.
Do credits expire?
No. Credits are bought once and never expire. There is no subscription.
Am I charged if an operation fails?
No. Credits are held before the operation and refunded in full if it fails, automatically, per item in a batch.
What formats can I render?
Markdown, HTML and Typst, each to PDF, with control over page size, margins, orientation, headers and footers.
Is there a free tier?
New accounts receive 25 credits on signup. No card is required to use them.