sensible-so logo

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...

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

Resources

🔗
PostmanWorkspace
PostmanWorkspace
🔗
ArazzoWorkflows
ArazzoWorkflows
🌐
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
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
🔗
Samples
Samples
🔗
Samples
Samples
🔗
Postman
Postman
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
Vocabulary
Vocabulary
🔗
SpectralRules
SpectralRules

Sources

Raw ↑
aid: sensible-so
url: https://raw.githubusercontent.com/api-evangelist/sensible-so/refs/heads/main/apis.yml
apis:
  - aid: sensible-so:sensible-extractions-api
    name: Sensible Extractions API
    tags:
      - Document Extraction
      - IDP
      - Extractions
      - Async
      - Webhooks
    humanURL: https://docs.sensible.so/reference/extract-data-from-a-document
    properties:
      - url: https://docs.sensible.so/reference/extract-data-from-a-document
        type: Documentation
      - url: https://docs.sensible.so/reference/extract-from-url
        type: Documentation
      - url: https://docs.sensible.so/reference/generate-an-upload-url
        type: Documentation
      - url: https://docs.sensible.so/reference/retrieving-results
        type: Documentation
      - url: https://docs.sensible.so/docs/api-tutorial-webhook
        type: Documentation
      - url: openapi/sensible-extractions-api-openapi.yml
        type: OpenAPI
      - url: json-schema/sensible-so-extraction-schema.json
        type: JSONSchema
      - url: json-ld/sensible-so-context.jsonld
        type: JSONLD
      - type: Example
        url: examples/sensible-so-extract-sync-example.json
      - type: Example
        url: examples/sensible-so-extract-from-url-example.json
      - type: Example
        url: examples/sensible-so-list-extractions-example.json
    description: >-
      Extract structured data from documents synchronously or asynchronously. Supports sync `POST
      /extract/{document_type}`, async `POST /extract_from_url`, async via Sensible-signed `POST /generate_upload_url`,
      portfolio (multi-document) extractions, CSV and Excel output, `/extractions` listing and `/documents/{id}`
      retrieval, daily coverage statistics, and review auth-token issuance for human-in-the-loop workflows. All
      endpoints are bearer-auth and webhook-capable.
  - aid: sensible-so:sensible-classification-api
    name: Sensible Classification API
    tags:
      - Document Extraction
      - Classification
      - Routing
    humanURL: https://docs.sensible.so/reference/classify-document
    properties:
      - url: https://docs.sensible.so/reference/classify-document
        type: Documentation
      - url: https://docs.sensible.so/reference/classify-document-sync
        type: Documentation
      - url: https://docs.sensible.so/docs/classify
        type: Documentation
      - url: openapi/sensible-classification-api-openapi.yml
        type: OpenAPI
      - type: Example
        url: examples/sensible-so-classify-async-example.json
    description: >-
      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 extraction workflow and as a standalone labeling
      service.
  - aid: sensible-so:sensible-document-types-api
    name: Sensible Document Types and Configurations API
    tags:
      - Document Extraction
      - Document Types
      - Configurations
      - SenseML
      - Versioning
    humanURL: https://docs.sensible.so/reference/list-document-types
    properties:
      - url: https://docs.sensible.so/reference/list-document-types
        type: Documentation
      - url: https://docs.sensible.so/reference/create-configuration
        type: Documentation
      - url: https://docs.sensible.so/reference/publish-configuration-by-version
        type: Documentation
      - url: https://docs.sensible.so/docs/senseml-reference-introduction
        type: Documentation
      - url: https://schema.sensible.so/configuration.schema.json
        type: JSONSchema
      - url: openapi/sensible-document-types-api-openapi.yml
        type: OpenAPI
      - url: json-schema/sensible-so-document-type-schema.json
        type: JSONSchema
      - type: Example
        url: examples/sensible-so-create-document-type-example.json
    description: >-
      Manage Sensible document types and SenseML configurations. Create, list, fetch, update, and delete document types;
      create, list, fetch, update, publish, version, and delete SenseML configurations; list versions for a
      configuration; promote drafts through development and production environments.
  - aid: sensible-so:sensible-reference-documents-api
    name: Sensible Reference Documents API
    tags:
      - Document Extraction
      - Reference Documents
      - Goldens
    humanURL: https://docs.sensible.so/reference/list-reference-documents
    properties:
      - url: https://docs.sensible.so/reference/list-reference-documents
        type: Documentation
      - url: https://docs.sensible.so/reference/create-reference-document
        type: Documentation
      - url: https://docs.sensible.so/reference/extract-all-text-from-reference-document
        type: Documentation
      - url: openapi/sensible-reference-documents-api-openapi.yml
        type: OpenAPI
    description: >-
      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 a configuration, and extract all standardized
      text lines from a reference document for layout tuning.
common:
  - type: PostmanWorkspace
    url: https://www.postman.com/kinlaneapi/sensible-so/overview
  - type: ArazzoWorkflows
    url: arazzo/
    workflows:
      - url: arazzo/sensible-so-classify-then-extract-workflow.yml
        name: Sensible Classify Then Extract
        summary: >-
          Classify a document to discover its best-fit document type, then submit an asynchronous extraction against
          that type.
      - url: arazzo/sensible-so-config-versions-then-get-by-version-workflow.yml
        name: Sensible Config Versions Then Get By Version
        summary: List the version history of a configuration, then fetch one specific version of that configuration in full.
      - url: arazzo/sensible-so-create-document-type-and-configuration-workflow.yml
        name: Sensible Create Document Type And Configuration
        summary: Create a new document type and then add a SenseML configuration to it in one pass.
      - url: arazzo/sensible-so-create-reference-document-and-list-workflow.yml
        name: Sensible Create Reference Document And List
        summary: >-
          Register a reference document in a document type, then list the type's reference documents to confirm
          registration.
      - url: arazzo/sensible-so-extract-from-url-and-poll-workflow.yml
        name: Sensible Extract From URL And Poll
        summary: >-
          Kick off an asynchronous extraction from a document URL with a chosen config, poll until it completes, then
          read the parsed results.
      - url: arazzo/sensible-so-extract-from-url-poll-then-csv-workflow.yml
        name: Sensible Extract From URL Poll Then CSV
        summary: Asynchronously extract a document from a URL, poll until complete, then export the extraction as a CSV file.
      - url: arazzo/sensible-so-extract-reference-text-then-list-workflow.yml
        name: Sensible Extract Reference Text Then List
        summary: Pull all standardized text from a reference document, then list the document type's reference documents.
      - url: arazzo/sensible-so-get-document-type-then-list-configurations-workflow.yml
        name: Sensible Get Document Type Then List Configurations
        summary: Fetch a document type by id and then enumerate the configurations defined inside it.
      - url: arazzo/sensible-so-list-configurations-then-get-workflow.yml
        name: Sensible List Configurations Then Get
        summary: List the configurations in a document type, then fetch the full stringified JSON of one named configuration.
      - url: arazzo/sensible-so-list-document-types-then-extract-workflow.yml
        name: Sensible List Document Types Then Extract
        summary: Confirm a document type exists in the account before submitting an asynchronous extraction against it.
      - url: arazzo/sensible-so-list-extractions-then-retrieve-workflow.yml
        name: Sensible List Extractions Then Retrieve
        summary: List recent extractions with filters, then retrieve the full result of the most recent matching extraction.
      - url: arazzo/sensible-so-portfolio-extract-from-url-and-poll-workflow.yml
        name: Sensible Portfolio Extract From URL And Poll
        summary: >-
          Segment and extract a multi-document portfolio at a URL, then poll until every sub-document extraction
          completes.
      - url: arazzo/sensible-so-portfolio-upload-url-and-poll-workflow.yml
        name: Sensible Portfolio Upload URL And Poll
        summary: >-
          Generate a Sensible-signed upload URL for a multi-document portfolio, then poll the portfolio extraction to
          completion.
      - url: arazzo/sensible-so-sync-extract-then-spreadsheet-workflow.yml
        name: Sensible Sync Extract Then Spreadsheet
        summary: Synchronously extract a document, then convert that extraction to a downloadable Excel spreadsheet.
      - url: arazzo/sensible-so-upload-url-extract-and-poll-workflow.yml
        name: Sensible Upload URL Extract And Poll
        summary: >-
          Generate a Sensible-signed upload URL for a document type, then poll the extraction id until results are
          ready.
  - url: https://www.sensible.so
    type: Portal
  - url: https://docs.sensible.so
    type: Documentation
  - url: https://docs.sensible.so/reference
    type: Documentation
  - url: https://docs.sensible.so/changelog
    type: ChangeLog
  - url: https://docs.sensible.so/reference/authentication
    type: Authentication
  - url: https://docs.sensible.so/docs/quickstart
    type: GettingStarted
  - url: https://docs.sensible.so/docs/api-tutorial
    type: GettingStarted
  - url: https://docs.sensible.so/llms.txt
    name: llms.txt
    type: Documentation
  - url: https://sensible.statuspage.io
    type: StatusPage
  - url: https://app.sensible.so/register
    type: SignUp
  - url: https://app.sensible.so/account
    type: Account
  - url: https://www.sensible.so/pricing
    type: Pricing
  - url: https://docs.sensible.so/reference/mcp
    name: Sensible MCP Server
    type: Documentation
  - url: https://docs.sensible.so/mcp
    name: Sensible MCP Endpoint
    type: MCPServer
  - url: https://github.com/sensible-hq
    name: Sensible GitHub Organization
    type: GitHubOrganization
  - url: https://github.com/sensible-hq/sensible-api-py
    name: Python SDK
    type: SDK
  - url: https://github.com/sensible-hq/sensible-api-js
    name: JavaScript / TypeScript SDK
    type: SDK
  - url: https://github.com/sensible-hq/sensible-code-examples
    name: Code Examples
    type: SDK
  - url: https://github.com/sensible-hq/sensible-configuration-library
    name: SenseML Configuration Library (150+ document types)
    type: Samples
  - url: https://github.com/sensible-hq/sensible-sample-documents
    name: Sample Documents
    type: Samples
  - url: https://github.com/sensible-hq/sensible-salesforce-py
    name: Salesforce Integration Example
    type: Integrations
  - url: https://github.com/sensible-hq/sensible-quickbooks-py
    name: QuickBooks Integration Example
    type: Integrations
  - url: https://god.gw.postman.com/run-collection/16839934-45339059-3fec-4c31-a891-9a12a3e1c22b
    name: Postman Collection
    type: Postman
  - url: https://docs.sensible.so/docs/zapier
    name: Zapier
    type: Integrations
  - url: plans/sensible-so-plans-pricing.yml
    type: Plans
  - url: rate-limits/sensible-so-rate-limits.yml
    type: RateLimits
  - url: finops/sensible-so-finops.yml
    type: FinOps
  - url: vocabulary/sensible-so-vocabulary.yml
    type: Vocabulary
  - url: rules/sensible-so-rules.yml
    type: SpectralRules
  - type: Features
    data:
      - >-
        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
    sources:
      - https://www.sensible.so
      - https://docs.sensible.so
      - https://docs.sensible.so/reference
      - https://docs.sensible.so/llms.txt
      - https://www.sensible.so/pricing
      - https://github.com/sensible-hq
    updated: '2026-05-25'
created: '2026-05-25T00:00:00.000Z'
modified: '2026-05-25'
position: Consuming
description: >-
  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.
maintainers:
  - FN: Kin Lane
    email: info@apievangelist.com
    X: apievangelist
    url: https://apievangelist.com
specificationVersion: '0.16'