docscan4nodejs
v2.0.2
Published
Node.js API for Dynamsoft Document Scanning Service. Supports TWAIN, SANE, ICA, WIA, eSCL scanners.
Maintainers
Readme
Document Scanner SDK for Node.js
The package provides Node.js APIs for invoking the Dynamic Web TWAIN Service REST API. It helps developers create desktop or server-side document scanning and processing applications with ease.
🚀 Key Features
🖨️ Multi-Driver Support
- TWAIN (32-bit & 64-bit)
- WIA (Windows Image Acquisition)
- SANE (Scanner Access Now Easy)
- ICA (Image Capture Architecture)
- eSCL (AirScan/Mopria)
- Wi-Fi Direct
🌐 Cross-Platform Compatibility
- Windows 7+
- macOS 10.15+
- Linux (x64 / ARM64 / MIPS64)
⚙️ Prerequisites
✅ Install Dynamic Web TWAIN Service:
- Windows: Dynamsoft-Service-Setup.msi
- macOS: Dynamsoft-Service-Setup.pkg
- Linux:
🔑 Get a License
Request a free trial license for the Dynamic Web TWAIN Service.
🧩 Configuration
After installation, open http://127.0.0.1:18625/ in your browser to configure the host and port settings.
By default, the service is bound to
127.0.0.1. To access it across the LAN, change the host to your local IP (e.g.,192.168.8.72).
📡 REST API Endpoints
https://www.dynamsoft.com/web-twain/docs/info/api/restful.html
📦 Node.js APIs
🔍 Scanner APIs
getDevices(host, scannerType)
Get available scanners. Returns an array of devices.createJob(host, parameters)
Create a new scan job. Returns a job object.checkJob(host, jobId)
Check job status (e.g., running, canceled, etc.)deleteJob(host, jobId)
Delete a scan job and terminate scanning.updateJob(host, jobId, parameters)
Update job status (e.g., cancel a running job).getScannerCapabilities(host, jobId)
Get scanner capabilities like resolution, color modes.
🖼️ Image Retrieval
getImageFile(host, jobId, directory)
Fetch one image and save to local disk.getImageFiles(host, jobId, directory)
Fetch all images for a job and save to local disk.getImageStream(host, jobId)
Fetch one image as a readable stream.getImageStreams(host, jobId)
Fetch all images as streams.getImageInfo(host, jobId)
Retrieve metadata of the next page.
📄 Document APIs
createDocument(host, parameters)
Create a new empty document (PDF).getDocumentInfo(host, docId)
Get document metadata and structure.deleteDocument(host, docId)
Delete an existing document.getDocumentFile(host, docId, directory)
Download the document and save as a PDF.getDocumentStream(host, docId)
Download document as a stream.insertPage(host, docId, parameters)
Insert a new page into an existing document.deletePage(host, docId, pageId)
Remove a page from an existing document.
⚙️ Scan Job Parameters
The configuration follows Dynamsoft Web TWAIN DeviceConfiguration.
let parameters = {
license: "LICENSE-KEY",
device: devices[0].device,
config: {
IfShowUI: false,
PixelType: 2, // Color
Resolution: 200,
IfFeederEnabled: false,
IfDuplexEnabled: false
}
};🧪 Examples
Set the LICENSE-KEY before running the examples.
🖥️ Command-line App
Discover devices
Scan and save documents
