Node.js SDK for the Nanonets API: OCR, document extraction, and workflow automation.

> Node.js SDK for the Nanonets API
---
Nanonets is an AI-powered Intelligent Document Processing platform that helps you:
- Extract structured data from invoices, receipts, forms, and more documents
- Supports PDF, images (jpg, png, tiff), Excel files, scanned documents, and photos
- Automate data entry and document workflows
- Convert unstructured documents into machine-readable formats
- Integrate advanced OCR and table extraction into your apps
Keywords: OCR, document extraction, invoice processing, receipt OCR, table extraction, data capture, workflow automation, AI document processing, unstructured to structured data, Node.js SDK, Nanonets API
---
Sign up and get your API key from your Nanonets dashboard.
---
``bash`
npm install nanonets
Set your API key as an environment variable:
`bash`
export NANONETS_API_KEY='your_api_key'
Or pass it directly when initializing the client:
`js`
const NanonetsClient = require('nanonets');
const client = new NanonetsClient('your_api_key');
`js
const NanonetsClient = require('nanonets');
const client = new NanonetsClient('your_api_key');
(async () => {
// 1. Create a workflow
const workflow = await client.workflows.create({
description: 'SDK Example Workflow',
workflow_type: '' // Instant learning
});
const workflowID = workflow.workflow_id || workflow.id;
// 2. Configure fields and table headers
const fields = [
{ name: 'invoice_number' },
{ name: 'total_amount' },
{ name: 'invoice_date' }
];
const table_headers = [
{ name: 'item_description' },
{ name: 'quantity' },
{ name: 'unit_price' },
{ name: 'total' }
];
await client.workflows.setFields(workflowID, { fields, table_headers });
// 3. Upload a document to process
const uploadResult = await client.documents.upload(workflowID, {
file: '/path/to/document.pdf',
async: false,
metadata: { test: 'true' }
});
console.log('Upload result:', uploadResult);
})();
`
Workflow Management
- createget
- list
- setFields
- updateField
- deleteField
- updateMetadata
- updateSettings
-
Document Processing
- uploadget
- list
- delete
- getFields
- getTables
-
Document Moderation
- updateFieldaddField
- deleteField
- addTable
- deleteTable
- updateTableCell
- addTableCell
- deleteTableCell
- verifyField
- verifyTableCell
- verifyTable
- verifyDocument
-
For full documentation and advanced usage, visit:
https://apidocs.nanonets.com/docs/sdk/node-sdk/
MIT
All endpoints from the Go SDK are supported. See nanonetsdk.js` for the full list of methods.