Skip to main content

Pricing Catalog

Fetch the public credit pricing catalog: fixed per-unit credit rates, EUR equivalents, the credits-per-EUR conversion, and processing-mode multipliers, so an agent can predict spend before running anything.

The Pricing API exposes the credit catalog that governs what every billable Talonic operation costs. It returns fixed per-unit rates rather than fluctuating token costs, so the price of a planned job is known in advance. An agent can call this endpoint, read the per-page and per-cell rates, and compute the exact credit cost of a workload before spending a single credit.

Pricing is denominated in credits, the universal unit for all platform operations. The catalog also returns the credits-per-EUR conversion rate and the EUR equivalent of each unit, so the same response answers both "how many credits will this cost" and "how much is that in euros". One page of document ingestion costs 100 credits, which is 0.10 EUR at the standard rate of 1,000 credits per EUR.

The catalog separates the operations that carry a cost from the ones that are free. Document page ingestion, structuring cells filled by fresh model reasoning, and intelligence operations (matching, cases, reconciliation) are billable. Field Registry resolved cells, delivery, and validation are free: reusing knowledge the platform already captured, delivering data you already paid to produce, and checking quality should never carry a surcharge.

Processing-mode multipliers apply on top of the per-unit rate. Batch mode runs at half cost (a 0.5x multiplier) in exchange for a 48-hour delivery window, while realtime processing runs at the full 1.0x rate. To quote a batch workload, multiply the per-unit credits by the unit count and then by the batch multiplier. The multipliers are returned in the same response so a caller never has to hardcode them.

This endpoint is public and unauthenticated. An agent can read pricing before it signs up or provisions an API key, which makes it the right first call when deciding whether a workload fits a budget.
GET/v1/pricing

Response

Response fields

currencystringBilling currency for the EUR equivalents. Always EUR.
credits_per_eurnumberConversion rate between credits and EUR (1,000 credits = 1 EUR at the standard rate).
multipliersobjectProcessing-mode multipliers applied on top of per-unit cost, keyed by mode (e.g. realtime: 1, batch: 0.5).
unitsarrayThe per-unit pricing catalog.
units[].unitstringBillable unit identifier (page_ingest, structuring_cell, registry_resolved_cell, intelligence_op, delivery, validation).
units[].labelstringHuman-readable label for the unit.
units[].creditsnumberCredits charged per single unit. Zero for free units.
units[].eurnumberEUR equivalent of one unit at the current conversion rate.
units[].freebooleanWhether the unit is free (credits equal zero).

Response — Pricing catalog

{
  "currency": "EUR",
  "credits_per_eur": 1000,
  "multipliers": { "realtime": 1, "batch": 0.5 },
  "units": [
    { "unit": "page_ingest", "label": "Document page ingestion", "credits": 100, "eur": 0.1, "free": false },
    { "unit": "structuring_cell", "label": "Structuring cell (LLM-reasoned)", "credits": 20, "eur": 0.02, "free": false },
    { "unit": "registry_resolved_cell", "label": "Structuring cell (Field Registry resolved)", "credits": 0, "eur": 0, "free": true },
    { "unit": "intelligence_op", "label": "Intelligence operation (matching, cases, reconciliation)", "credits": 100, "eur": 0.1, "free": false },
    { "unit": "delivery", "label": "Delivery (webhook / export)", "credits": 0, "eur": 0, "free": true },
    { "unit": "validation", "label": "Validation / quality check", "credits": 0, "eur": 0, "free": true }
  ]
}

Estimating a Workload

To estimate the cost of a job, read the relevant unit rate and multiply by the expected unit count, then apply the processing-mode multiplier. A realtime extraction of a 20-page document costs 20 pages times 100 credits, which is 2,000 credits (2.00 EUR). The same workload submitted in batch mode costs 1,000 credits (1.00 EUR) at the 0.5x multiplier. Registry-resolved cells add nothing, so a document whose fields are answered entirely from the Field Registry incurs only its page-ingestion cost.

cURL — Fetch the pricing catalog

curl -X GET "https://api.talonic.ai/v1/pricing"

TypeScript — Predict spend before running

import { Talonic } from "@talonic/node"

const talonic = new Talonic({ apiKey: process.env.TALONIC_API_KEY! })

const pricing = await talonic.pricing.get()
const perPage = pricing.units.find((u) => u.unit === "page_ingest")!

const pages = 20
const realtimeCredits = perPage.credits * pages
const batchCredits = realtimeCredits * pricing.multipliers.batch

console.log(`Realtime: ${realtimeCredits} credits (${realtimeCredits / pricing.credits_per_eur} EUR)`)
console.log(`Batch:    ${batchCredits} credits (${batchCredits / pricing.credits_per_eur} EUR)`)

Errors

Error responses

429rate_limitedToo many requests. Retry after the period indicated in the Retry-After header.