Nanonets website screenshot

Nanonets

Nanonets is a no-code document AI and OCR platform that combines a custom-model OCR API, pre-built document models (invoices, receipts, purchase orders, bills of lading, passports, driver's licenses, bank statements), image classification, and a visual workflow builder with imports, transformations, lookups, approvals, and ERP/CRM/database exports. The Nanonets OCR-3 model and the open-source docext toolkit power the IDP Leaderboard number-one ranking. Enterprise tier adds SAML SSO, SCIM, role-based access, on-prem and private-cloud deployment, HIPAA, SOC 2 Type II, and ISO 27001.

4 APIs 21 Features
AIArtificial IntelligenceOCRDocument AIIntelligent Document ProcessingData ExtractionWorkflow AutomationComputer VisionNo-Code

APIs

Nanonets OCR API

Synchronous and asynchronous OCR prediction and training endpoints over `app.nanonets.com/api/v2/OCR/Model/{model_id}`. Upload files by local path or public URL, retrieve predic...

Nanonets Image Classification API

Classify images by file upload or by publicly accessible URL against a Nanonets image classification model. Supports batch URL submission for efficient prediction. Base path `/a...

Nanonets File Management API

Approve, unapprove, assign, update, delete, and export files within a Nanonets model. Drives the review-and-approval workflow, PATCH-based field updates, team assignment to spec...

Nanonets External Integrations API

List external integrations connected to a Nanonets account (Postgres, MySQL, MSSQL, MongoDB, and other databases) and execute generic SQL queries against them in the context of ...

Collections

Arazzo Workflows

Nanonets Async OCR Predict and Poll

Submit a large document for async OCR, then poll until the file-level prediction is ready.

ARAZZO

Nanonets Async URL Predict Poll and Approve

Async-predict a document by URL, poll until ready, then approve the file.

ARAZZO

Nanonets Batch Review Pending Files

List a model's recent predictions, then approve the first unmoderated file.

ARAZZO

Nanonets Classify Image and Branch

Classify an uploaded image and branch on whether a top label was predicted.

ARAZZO

Nanonets Page-Level Correct and Approve

Pull a single page's prediction, correct its fields, then approve the file.

ARAZZO

Nanonets Predict and Assign Reviewer

Predict on a file, fetch the file-level result, and assign it to a reviewer.

ARAZZO

Nanonets Predict and Enrich with Database

Extract a document, then validate it against an external database integration.

ARAZZO

Nanonets Predict Correct and Re-export

Predict on a file, correct its extracted fields, and retry the export.

ARAZZO

Nanonets Resolve Integration and Query

List external integrations, pick the first one, and run a SQL-style query.

ARAZZO

Nanonets Sync Predict and Review

Run a sync OCR prediction on a small file, then approve or hold it for review.

ARAZZO

Nanonets Upload Training Images and Train

Upload annotated local training images to an OCR model, then kick off training.

ARAZZO

Nanonets Upload Training URLs and Train

Add training images to an OCR model from public URLs, then start training.

ARAZZO

Pricing Plans

Nanonets Plans Pricing

3 plans

PLANS

Rate Limits

Nanonets Rate Limits

3 limits

RATE LIMITS

FinOps

Features

Nanonets OCR-3 model

Highest-accuracy OCR model on the public IDP Leaderboard, ahead of GPT-5, Gemini, and Claude.

Instant Learning (zero-shot) models

Train an extraction model from a handful of examples or even from a written field description, without large labeled datasets.

Pre-built document models

Ready-to-use models for invoices, receipts, purchase orders, bills of lading, bank statements, passports, and driver's licenses.

Custom-trained OCR models

Upload images, annotate labels and tables, train and retrain a model tied to a unique `model_id`.

Document Classification and Routing

Classify incoming documents and route each to the correct extraction model and workflow.

Table extraction

Multi-page table parsing with per-cell bounding boxes, row/column indices, and OCR text.

Sync and async file processing

Sync endpoints optimized for ≤3-page files; async endpoints for larger documents with polling by `request_file_id`.

Workflow builder

No-code visual pipeline of imports, transformations, lookups, approvals, conditional routing, and exports.

Approval rules and review queues

Field- and cell-level approval rules with reviewer assignment, comments, validation status, and duplicate detection.

Python post-processing blocks

Custom Python blocks inside the workflow for bespoke data transformation and validation logic.

Generative AI blocks

LLM-powered transformation steps for normalization, enrichment, and classification.

PII Masking

Mask personally identifiable information before downstream export.

Confidence scoring

Per-field and per-cell confidence scores feed routing rules and human-in-the-loop review.

On-prem and private cloud deployment

Run the Nanonets OCR stack inside customer infrastructure with the OCR Docker offering.

White-label review and approval UI

Embed the Nanonets review experience under a customer-branded domain.

SAML SSO and SCIM

Enterprise-grade identity and lifecycle management.

Audit logs and SIEM integration

Enterprise audit trail with SIEM-ready export.

Data residency

US, EU, and APAC region choices for enterprise customers.

Open-source extraction toolkit (docext)

On-prem, OCR-free unstructured data extraction and benchmarking toolkit, MIT-licensed.

Document conversion (docstrange)

Convert any document, PDF, image, Word doc, PPT, or URL into Markdown, JSON, CSV, or HTML.

Agentic RAG (nanoindex)

Tree- and graph-based reasoning harness for long-document retrieval with citations down to the pixel.

Use Cases

Accounts Payable automation

Multi-format invoice capture, 3-way matching, approval routing, and ERP posting (claimed 80% cost reduction).

Order management

Extract and reconcile purchase orders across formats and channels.

Logistics and shipping

Bill of lading, packing list, and customs document extraction.

Healthcare revenue cycle

Medical claim, EOB, and patient intake document processing under HIPAA BAA.

Contract analysis

Extract obligations, parties, dates, and renewal terms from contracts.

Claims handling

Insurance claim intake, FNOL document parsing, and adjudication support.

Vendor onboarding

Extract W-9, tax certificate, and KYB document data for vendor master records.

ID and insurance verification

Driver's license, passport, and insurance card capture for identity workflows.

Integrations

SAP

ERP export connector for posting extracted data.

QuickBooks

Accounting export connector for invoices and bills.

Xero

Accounting export connector and lookup data source.

Sage

ERP export connector.

NetSuite

ERP export connector with credential setup guide and lookup support.

Zoho Books

Accounting export connector.

Salesforce

CRM export connector for routing extracted records into Salesforce objects.

HubSpot

CRM destination for extracted data.

Gmail

Email import and inbox-based intake.

Microsoft Outlook / Email

Email import action with run history.

Slack

Notification and collaboration channel.

Microsoft Teams

Notification and collaboration channel.

Jira

Project management destination.

Asana

Project management destination.

Google Drive

Import and export connector for cloud-stored documents.

Dropbox

Import and export connector.

Box

Cloud storage source.

OneDrive

Import and export connector.

SharePoint

Import and export connector.

Google Sheets

Lookup data source and export destination.

Google Docs

Export destination.

Microsoft Excel

Export destination.

Smartsheet

Export destination.

FTP server

Export destination for partner integrations.

Snowflake

Data warehouse destination.

Stripe

Payment and billing data source.

Zendesk

Support workflow integration.

Notion

Document destination.

Zapier

Trigger-based intake for arbitrary SaaS connections.

n8n

Open-source workflow automation via `n8n-nodes-nanonets`.

Webhooks

Push extracted data to any HTTP endpoint with a documented payload structure.

PostgreSQL / MySQL / MSSQL / MongoDB

External database integrations for lookups and execute-query operations.

Solutions

Starter

Free tier with $200 in credits, API access, email import, cloud storage connectors, up to 3 users, and community support.

Growth

Volume-discount tier adding classification AI, barcode and signature detection, generative AI blocks, custom Python blocks, ERP and database integrations, AI reporting, and team-wide credit sharing.

Enterprise

Tailored pricing with SAML SSO, SCIM, RBAC, HIPAA and SOC 2 compliance, private cloud or on-prem deployment, data residency, enterprise connectors (Salesforce, SAP, Oracle), dedicated support and SLAs, audit logs, SIEM integration, and whitelabel UI.

Semantic Vocabularies

Nanonets Context

34 classes · 1 properties

JSON-LD

API Governance Rules

Nanonets API Rules

7 rules · 3 errors 4 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
🌐
Portal
Portal
🌐
Console
Console
🔗
Documentation
Documentation
🚀
GettingStarted
GettingStarted
🔑
Authentication
Authentication
💻
ErrorCodes
ErrorCodes
🔗
RateLimits
RateLimits
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Webhooks
Webhooks
📰
Blog
Blog
📝
Signup
Signup
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🔗
Documentation
Documentation
👥
GitHubOrganization
GitHubOrganization
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
👥
GitHubRepository
GitHubRepository
👥
GitHubRepository
GitHubRepository
👥
GitHubRepository
GitHubRepository
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
💻
CodeExamples
CodeExamples
💻
CodeExamples
CodeExamples
💻
CodeExamples
CodeExamples
💻
CodeExamples
CodeExamples
💻
CodeExamples
CodeExamples
🔧
Tools
Tools
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
SpectralRules
SpectralRules
🔗
Vocabulary
Vocabulary

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Nanonets OCR API
  version: 2.0.0
request:
  auth:
    type: basic
    username: '{{username}}'
    password: '{{password}}'
items:
- info:
    name: OCR Predict
    type: folder
  items:
  - info:
      name: Prediction For Image File
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/LabelFile/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      body:
        type: multipart-form
        data:
        - name: file
          type: text
          value: ''
        - name: request_metadata
          type: text
          value: ''
    docs: 'Upload one or more files from the local filesystem to a Nanonets OCR model

      in sync mode. Optimized for files of 3 pages or fewer.

      '
  - info:
      name: Async Prediction For Image File
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/LabelFile/Async/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      body:
        type: multipart-form
        data:
        - name: file
          type: text
          value: ''
        - name: async
          type: text
          value: ''
        - name: request_metadata
          type: text
          value: ''
    docs: 'Upload one or more files from the local filesystem to a Nanonets OCR model

      in async mode. Recommended for files larger than 3 pages.

      '
  - info:
      name: Prediction For Image URL
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/LabelUrls/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      body:
        type: form-urlencoded
        data:
        - name: urls
          value: ''
        - name: request_metadata
          value: ''
    docs: Send one or more publicly accessible URLs to a Nanonets OCR model in sync mode.
  - info:
      name: Async Prediction For Image URL
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/LabelUrls/Async/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      body:
        type: form-urlencoded
        data:
        - name: urls
          value: ''
        - name: async
          value: ''
        - name: request_metadata
          value: ''
    docs: Send one or more publicly accessible URLs to a Nanonets OCR model in async mode.
- info:
    name: OCR Retrieve
    type: folder
  items:
  - info:
      name: Get Prediction File By File ID
      type: http
    http:
      method: GET
      url: https://app.nanonets.com/api/v2/Inferences/Model/:model_id/InferenceRequest/:request_file_id
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      - name: request_file_id
        value: ''
        type: path
    docs: 'Retrieve prediction results for a single file by `model_id` and

      `request_file_id`. Includes the model prediction, modifications, and the

      final processed outcome plus signed URLs to download the source file.

      '
  - info:
      name: Get Prediction File By Page ID
      type: http
    http:
      method: GET
      url: https://app.nanonets.com/api/v2/Inferences/Model/:model_id/InferenceRequest/:request_file_id/page/:page_id
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      - name: request_file_id
        value: ''
        type: path
      - name: page_id
        value: ''
        type: path
    docs: Retrieve prediction results for a specific page by unique page id.
  - info:
      name: Get All Prediction Files
      type: http
    http:
      method: GET
      url: https://app.nanonets.com/api/v2/Inferences/Model/:model_id/InferenceRequest/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      - name: start_day_interval
        value: ''
        type: query
        description: Number of days back from the current batch day (days since epoch).
      - name: current_batch_day
        value: ''
        type: query
        description: Most recent day-since-epoch boundary for the window.
    docs: 'Get prediction results for all files uploaded to a model within a specified

      timeframe. Pages are bucketed into `moderated_images` (approved) and

      `unmoderated_images` (rejected or not yet approved).

      '
- info:
    name: OCR Train
    type: folder
  items:
  - info:
      name: Upload Training Images By File
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/UploadFile/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      body:
        type: multipart-form
        data:
        - name: file
          type: text
          value: ''
        - name: data
          type: text
          value: ''
    docs: Upload locally-stored training images for a model.
  - info:
      name: Upload Training Images By URL
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/UploadUrls/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
      body:
        type: json
        data: '{}'
    docs: Upload training images for a model via publicly accessible URLs.
  - info:
      name: Train Model
      type: http
    http:
      method: POST
      url: https://app.nanonets.com/api/v2/OCR/Model/:model_id/Train/
      params:
      - name: model_id
        value: ''
        type: path
        description: Unique identifier for the Nanonets model.
    docs: Train or retrain a Nanonets OCR model after training data has been uploaded.
bundled: true