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.
-
🖨️ 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)
- Windows: Dynamsoft-Service-Setup.msi
- macOS: Dynamsoft-Service-Setup.pkg
- Linux:
Request a free trial license for the Dynamic Web TWAIN Service.
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
).
https://www.dynamsoft.com/web-twain/docs/info/api/restful.html
-
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.
-
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.
-
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.
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
}
};
Set the LICENSE-KEY
before running the examples.