Glossary
Account
Your organization’s top-level workspace within Invofox. Contains one or more Environments.
Environment
A workspace within your Account used to organize document processing workflows. Each one can be configured as a TEST or PRODUCTION environment, each with its own configuration. API keys are scoped to an Environment.
API Key
The credential used to authenticate API requests. Created and managed in Environment Settings, and scoped to a single Environment.
Roles & permissions
Access is granted per Account and per Environment through three roles, each one building on the one before it:
- User — works with documents (review, correct, modify…) but can’t change Account or Environment configuration.
- Developer — everything a User can do, plus configuration: API keys, webhooks and the rest of the settings.
- Admin — full access, including all Account and Environment configuration.
Import
The upload operation and the top-level container. Every upload (via API, web, or email) creates one Import that groups one or more Files. You track progress by polling the Import through its importId.
File
A single uploaded file inside an Import. Once processed, each File produces one or more Documents — one for a simple PDF, or several when a multi-document PDF is split or a ZIP is expanded.
Document
The extracted result produced from a File: the structured data (Fields). A single File can yield several Documents. Identified by a documentId and fetched with GET /documents/{documentId}.
Compressed File (ZIP)
An archive file (application/zip) containing multiple files. It is accepted by the upload endpoints, extracted asynchronously, and each extracted child File then follows its own lifecycle. The parent File is marked compressed: true.
clientData
An optional metadata object you attach when uploading. Invofox never processes it — it is returned verbatim in API responses and webhook events. It’s particularly useful for:
- Internal reference tracking — store your own IDs, reference numbers, or metadata.
- Webhook integration — the data is returned in webhook notifications, for easy correlation with your internal systems.
- Information retrieval — access your custom data when retrieving extracted document information through the API.
Document Type
The configuration that defines how a specific kind of document is processed and which Fields are extracted from it. Can be assigned manually at upload or detected automatically by the Classifier.
Field
A single data point extracted from a document — for example an invoice number, a total amount, or a date. Which Fields are extracted is determined by the Document Type.
Processing state
The internal lifecycle status of an Import, File, or Document. Common values include pending, processing, processed, and rejected (the exact set depends on the entity). State changes are what trigger webhook events.
Public state
A separate, business-workflow status assigned to a Document, independent of the internal processing state. It is one of:
pendingCorrection— awaiting human review.approved— reviewed and accepted.discarded— rejected or not valid.
Corrections
Sending corrected Field values (or the right Document Type) back to Invofox via PUT /documents/{id} after a Document has been processed. Each correction feeds model training, so extraction accuracy improves over time. See the Feedback loop page.
Error code
The value returned in a File’s error field when it is rejected (for example, ERR_UNSUPPORTED_FILE_FORMAT). Returned as a string for programmatic handling.
Webhook
An HTTP callback that Invofox sends to your endpoint when an event occurs, so you receive updates in real time instead of polling.
Webhook event
The payload Invofox delivers to your endpoint. It always includes type, id, timestamp, data, and version. The type matches a state transition (e.g. document.processed). See the Webhooks Reference → for the full event list and payload schemas.
HMAC signature
An optional signature Invofox adds to webhook requests so you can verify they genuinely came from Invofox. You configure a shared secret and validate the signature on your endpoint.
Idempotency
Processing each webhook event exactly once, using its unique id. Because delivery may be retried, your handler should ignore an event id it has already processed.
Polling
Repeatedly calling the API to check whether something is ready, instead of letting a Webhook notify you. Discouraged in production — it creates many “empty” requests and adds latency; if it’s unavoidable, space the calls out with exponential backoff. Webhooks are the recommended alternative.
Splitter
A feature that automatically separates a multi-document File into individual Documents, detecting document boundaries with AI. Removes the need to split batched files manually.
Classifier
A feature that automatically identifies a document’s type, assigning the right Document Type so you don’t have to set it at upload. Combined with the Splitter, it enables fully automated processing of mixed-document batches.