sensible-so website screenshot

sensible-so

Sensible is a document-automation API platform that extracts structured data from PDFs, images, spreadsheets, and emails using a hybrid of deterministic layout-based methods and LLM-based query methods. SenseML, Sensible's config language, lets engineers declare what to pull and where. The platform ships with 150+ open-source pre-built configurations across financial services, insurance, logistics, real estate, and healthcare. Sensible exposes sync and async extraction, classification, portfolio segmentation, CSV/Excel export, human review, coverage statistics, configuration versioning, and webhook delivery, all behind a bearer-auth REST surface plus a Postman collection, an MCP server, and Python / JavaScript SDKs.

4 APIs 22 Features

APIs

Sensible Extractions API

Extract structured data from documents synchronously or asynchronously. Supports sync `POST /extract/{document_type}`, async `POST /extract_from_url`, async via Sensible-signed ...

Sensible Classification API

Classify a document into one of the document types defined in the account, either synchronously (testing) or asynchronously (production). Useful both as a routing step in an ext...

Sensible Document Types and Configurations API

Manage Sensible document types and SenseML configurations. Create, list, fetch, update, and delete document types; create, list, fetch, update, publish, version, and delete Sens...

Sensible Reference Documents API

Manage reference PDFs ("goldens") associated with document types. Create with a pre-signed upload URL, list, get metadata, update metadata, delete, associate or unassociate with...

Collections

Arazzo Workflows

Sensible Classify Then Extract

Classify a document to discover its best-fit document type, then submit an asynchronous extraction against that type.

ARAZZO

Sensible Config Versions Then Get By Version

List the version history of a configuration, then fetch one specific version of that configuration in full.

ARAZZO

Sensible Create Document Type And Configuration

Create a new document type and then add a SenseML configuration to it in one pass.

ARAZZO

Sensible Create Reference Document And List

Register a reference document in a document type, then list the type's reference documents to confirm registration.

ARAZZO

Sensible Extract From URL And Poll

Kick off an asynchronous extraction from a document URL with a chosen config, poll until it completes, then read the parsed results.

ARAZZO

Sensible Extract From URL Poll Then CSV

Asynchronously extract a document from a URL, poll until complete, then export the extraction as a CSV file.

ARAZZO

Sensible Extract Reference Text Then List

Pull all standardized text from a reference document, then list the document type's reference documents.

ARAZZO

Sensible Get Document Type Then List Configurations

Fetch a document type by id and then enumerate the configurations defined inside it.

ARAZZO

Sensible List Configurations Then Get

List the configurations in a document type, then fetch the full stringified JSON of one named configuration.

ARAZZO

Sensible List Document Types Then Extract

Confirm a document type exists in the account before submitting an asynchronous extraction against it.

ARAZZO

Sensible List Extractions Then Retrieve

List recent extractions with filters, then retrieve the full result of the most recent matching extraction.

ARAZZO

Sensible Portfolio Extract From URL And Poll

Segment and extract a multi-document portfolio at a URL, then poll until every sub-document extraction completes.

ARAZZO

Sensible Portfolio Upload URL And Poll

Generate a Sensible-signed upload URL for a multi-document portfolio, then poll the portfolio extraction to completion.

ARAZZO

Sensible Sync Extract Then Spreadsheet

Synchronously extract a document, then convert that extraction to a downloadable Excel spreadsheet.

ARAZZO

Sensible Upload URL Extract And Poll

Generate a Sensible-signed upload URL for a document type, then poll the extraction id until results are ready.

ARAZZO

Pricing Plans

Rate Limits

Sensible So Rate Limits

5 limits

RATE LIMITS

FinOps

Features

Hybrid extraction combining layout-based methods (label, region, box, paragraph, fixed_table, row, column, intersection, regex) with LLM-based methods (query_group, list, nlp_table)
SenseML configuration language with version control (draft, development, production) and environment promotion
150+ pre-built configurations in the open-source sensible-configuration-library covering common document types (1040, W-2, 1099, ACORD forms, loss runs, bank statements, rate confirmations)
Synchronous extraction `/extract/{document_type}` (testing) and asynchronous extraction `/extract_from_url`, `/generate_upload_url` (production)
Portfolio extractions — segment a packaged PDF into multiple document types and extract each automatically
Webhook delivery on extraction COMPLETE or human review APPROVED
Document classification (sync + async) into account-defined document types
Confidence scoring and fallback configs for LLM-based methods
Computer vision-enhanced table detection and automatic + selective OCR (handwriting supported)
Document splitting and fingerprinting for multi-document PDFs
CSV and Excel output endpoints (`/generate_csv`, `/generate_excel`) for one or many extractions
Daily coverage statistics per configuration (`/extractions/statistics`) for tuning and FinOps attribution
Reference documents ("goldens") for layout tuning and fingerprinting
Human review workflow with magic-link account auth tokens for non-account reviewers
Validations (warning / error severity) declared inside the document-type schema
Per-document pricing (linear, no token volatility) — Growth $499/mo (750 docs), Scale $1,499/mo (3,200 docs), Enterprise custom
Bearer API key authentication; per-second concurrency limits scale by plan (1 → 10 → 25+)
Python and JavaScript/TypeScript SDKs, Salesforce and QuickBooks integration examples
Postman collection (16839934-45339059-3fec-4c31-a891-9a12a3e1c22b) for hands-on exploration
Zapier app for Airtable, Slack, Google Sheets integrations
Remote MCP server at https://docs.sensible.so/mcp for AI editors (Cursor, Windsurf, Claude Desktop)
HIPAA on Enterprise; SOC 2 Type II

Semantic Vocabularies

Sensible So Context

0 classes · 6 properties

JSON-LD

API Governance Rules

sensible-so API Rules

12 rules · 9 errors 3 warnings

SPECTRAL

Example Payloads

Resources

🔗
PostmanWorkspace
PostmanWorkspace
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
Documentation
Documentation
📄
ChangeLog
ChangeLog
🔑
Authentication
Authentication
🚀
GettingStarted
GettingStarted
🚀
GettingStarted
GettingStarted
🔗
Documentation
Documentation
🟢
StatusPage
StatusPage
📝
Signup
Signup
🔗
Account
Account
💰
Pricing
Pricing
🔗
Documentation
Documentation
🔗
MCPServer
MCPServer
👥
GitHubOrganization
GitHubOrganization
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
🔗
Samples
Samples
🔗
Samples
Samples
🔗
Postman
Postman
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
Vocabulary
Vocabulary
🔗
SpectralRules
SpectralRules

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Sensible Reference Documents API
  version: v0
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Reference document
    type: folder
  items:
  - info:
      name: List all reference documents in a document type
      type: http
    http:
      method: GET
      url: https://api.sensible.so/v0/document_types/:type-id/goldens
      params:
      - name: type-id
        value: ''
        type: path
        description: The unique document type identifier in v4 UUID format. Find IDs using the `/document_types` endpoint.
    docs: List all reference documents in a document type
  - info:
      name: Create reference document
      type: http
    http:
      method: POST
      url: https://api.sensible.so/v0/document_types/:type-id/goldens
      params:
      - name: type-id
        value: ''
        type: path
        description: The unique document type identifier in v4 UUID format. Find IDs using the `/document_types` endpoint.
      body:
        type: json
        data: '{}'
    docs: Specify document metadata in the request, and get back an `upload_url` at which to put the PDF, for example with
      `curl -T ./sample.pdf`.
  - info:
      name: Extract all text from reference document
      type: http
    http:
      method: POST
      url: https://api.sensible.so/v0/extract_text_from_golden/:type-name
      params:
      - name: type-name
        value: ''
        type: path
        description: User-friendly name for a document type
      body:
        type: json
        data: '{}'
    docs: Get all the text (lines) for a reference document as standardized output. The output is an array of pages with metadata
      such as text positioning. If you specify a configuration, Sensible uses preprocessors defined in the configuration to
      process the text.
  - info:
      name: Get reference document metadata
      type: http
    http:
      method: GET
      url: https://api.sensible.so/v0/document_types/:type-id/goldens/:document-name
      params:
      - name: type-id
        value: ''
        type: path
        description: The unique document type identifier in v4 UUID format. Find IDs using the `/document_types` endpoint.
      - name: document-name
        value: best_scan_form_no_1234
        type: path
        description: Unique name for a document. Find it in the Sensible app or from the `/document_types/{type-id}}/goldens`
          endpoint.
    docs: Get download URL and other metadata for a reference document.
  - info:
      name: Update metadata for a reference document
      type: http
    http:
      method: PUT
      url: https://api.sensible.so/v0/document_types/:type-id/goldens/:document-name
      params:
      - name: type-id
        value: ''
        type: path
        description: The unique document type identifier in v4 UUID format. Find IDs using the `/document_types` endpoint.
      - name: document-name
        value: best_scan_form_no_1234
        type: path
        description: Unique name for a document. Find it in the Sensible app or from the `/document_types/{type-id}}/goldens`
          endpoint.
      body:
        type: json
        data: '{}'
    docs: Update metadata for a reference document
  - info:
      name: Delete reference document
      type: http
    http:
      method: DELETE
      url: https://api.sensible.so/v0/document_types/:type-id/goldens/:document-name
      params:
      - name: type-id
        value: ''
        type: path
        description: The unique document type identifier in v4 UUID format. Find IDs using the `/document_types` endpoint.
      - name: document-name
        value: best_scan_form_no_1234
        type: path
        description: Unique name for a document. Find it in the Sensible app or from the `/document_types/{type-id}}/goldens`
          endpoint.
    docs: Delete a reference document and break associations to any configs.
  - info:
      name: Unassociate reference document from configuration
      type: http
    http:
      method: DELETE
      url: https://api.sensible.so/v0/document_types/:type-id/goldens/:document-name/configuration
      params:
      - name: type-id
        value: ''
        type: path
        description: The unique document type identifier in v4 UUID format. Find IDs using the `/document_types` endpoint.
      - name: document-name
        value: best_scan_form_no_1234
        type: path
        description: Unique name for a document. Find it in the Sensible app or from the `/document_types/{type-id}}/goldens`
          endpoint.
    docs: Break the association between a reference document and its configuration.
bundled: true