## documentscanner : object
Scan documents from flatbed/ADF scanners.
**Kind**: global namespace
* [documentscanner](#documentscanner) : object
* [.discoverScanners()](#documentscanner.discoverScanners) ⇒ Promise.<Array>
* [.scanToPDF(scannerObj, opts)](#documentscanner.scanToPDF) ⇒ Promise.<Blob>
### documentscanner.discoverScanners() ⇒ Promise.<Array>
Get a list of document scanners found on the network. Supports eSCL/AirPrint.
**Kind**: static method of [documentscanner](#documentscanner)
**Example**
```js
await global.apis.documentscanner.discoverScanners();
// Returns:
[{
protocol: "http",
host: "ip or hostname",
port: 80,
rs: "eSCL",
uuid: "1234etc",
icon: "http://hostname/icon.png", // Icon supplied by the scanner to represent itself visually to the user.
name: "ScanTron 9000",
note: "", // Whatever is set as the scanner's human-readable location in its settings
hasAdf: true, // Has an automatic document/page feeder
hasPlaten: true, // Has a flatbed
hasDuplex: false // Can do automatic duplex scanning
}]
```
### documentscanner.scanToPDF(scannerObj, opts) ⇒ Promise.<Blob>
Scan a document to PDF. Supports eSCL/AirPrint.
**Kind**: static method of [documentscanner](#documentscanner)
**Returns**: Promise.<Blob> - PDF file.
| Param | Type | Description |
| --- | --- | --- |
| scannerObj | Object | A scanner object from discoverScanners() |
| opts | Object | Scanning options |
**Example**
```js
var pdfBlob = await global.apis.documentscanner.scanToPDF(await discoverScanners()[0], {
dpi?: number, // default 300
colorMode?: string, // "RGB24" | "Grayscale8" | "BlackAndWhite1", default "RGB24"
source?: string, // Where the document is physically located: "Platen" or "Feeder". Default is "Feeder" (if scanner has one and it isn't empty) or unset (so scanner can autodetect media).
intent?: string, // default is unset. "Document" | "TextAndGraphic" | "Photo" | "Preview"
duplex?: boolean, // default true if the scanner supports it.
scanHeight?: number, // Height in inches. Default 11.
scanWidth?: number // Width in inches. Default 8.5.
});
```