barcode reader API in PowerShell using PDF.co Web API

barcode reader API in PowerShell

Here you may find thousands pre-made source code pieces for easy implementation in your own programming PowerShell projects. Barcode reader API in PowerShell can be implemented with PDF.co Web API. PDF.co Web API is the flexible Web API that includes full set of functions from e-signature requests to data extraction, OCR, images recognition, pdf splitting and pdf splitting. Can also generate barcodes and read barcodes from images, scans and pdf.

You will save a lot of time on writing and testing code as you may just take the code below and use it in your application. In order to implement this functionality, you should copy and paste code below into your app using code editor. Then compile and run your application. Enhanced documentation and tutorials are available along with installed PDF.co Web API if you’d like to dive deeper into the topic and the details of the API.

PDF.co Web API free trial version is available for download from our website. Free trial also includes programming tutorials along with source code samples.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)

ReadBarcodeFromURL.ps1

      
# The authentication key (API Key). # Get your own by registering at https://app.pdf.co/documentation/api $API_KEY = "***********************************" # Direct URL of source file to search barcodes in. $SourceFileURL = "https://bytescout-com.s3.amazonaws.com/files/demo-files/cloud-api/barcode-reader/sample.pdf" # Comma-separated list of barcode types to search. # See valid barcode types in the documentation https://app.pdf.co/documentation/api/1.0/barcode/read_from_url.html $BarcodeTypes = "Code128,Code39,Interleaved2of5,EAN13" # Comma-separated list of page indices (or ranges) to process. Leave empty for all pages. Example: '0,2-5,7-'. $Pages = "" # Some of advanced options available through profiles: # (JSON can be single/double-quoted and contain comments.) # { # "profiles": [ # { # "profile1": { # "ScanArea": "WholePage", // Values: "TopLeftQuarter", "TopRightQuarter", "BottomRightQuarter", "BottomLeftQuarter", "TopHalf", "BottomHalf", "WholePage". # "RequireQuietZones": true, // Whether the quite zone is obligatory for 1D barcodes. Values: true / false # "MaxNumberOfBarcodesPerPage": 0, // 0 - unlimited. # "MaxNumberOfBarcodesPerDocument": 0, // 0 - unlimited. # "ScanStep": 1, // Scan interval for linear (1-dimensional) barcodes. # "MinimalDataLength": 0, // Minimal acceptable length of decoded data. # } # } # ] # } # Sample profile that sets advanced conversion options # Advanced options are properties of Reader class from Bytescout BarCodeReader used in the back-end: # https://cdn.bytescout.com/help/BytescoutBarCodeReaderSDK/html/ba101d21-3db7-eb54-d112-39cadc023d02.htm $Profiles = '{ "profiles": [ { "profile1": { "FastMode": true } } ] }' # Prepare URL for `Barcode Reader` API call $query = "https://api.pdf.co/v1/barcode/read/from/url" # Prepare request body (will be auto-converted to JSON by Invoke-RestMethod) # See documentation: https://apidocs.pdf.co $body = @{ "types" = $BarcodeTypes "pages" = $Pages "url" = $SourceFileURL "profiles" = $Profiles } | ConvertTo-Json try { # Execute request $response = Invoke-WebRequest -Method Post -Headers @{ "x-api-key" = $API_KEY; "Content-Type" = "application/json" } -Body $body -Uri $query $jsonResponse = $response.Content | ConvertFrom-Json if ($jsonResponse.error -eq $false) { # Display found barcodes in console foreach ($barcode in $jsonResponse.barcodes) { Write-Host "Found barcode:" Write-Host " Type: " $barcode.TypeName Write-Host " Value: " $barcode."Value" Write-Host " Document Page Index: " $barcode."Page" Write-Host " Rectangle: " $barcode."Rect" Write-Host " Confidence: " $barcode."Confidence" Write-Host "" } } else { # Display service reported error Write-Host $jsonResponse.message } } catch { # Display request error Write-Host $_.Exception }

run.bat

      
@echo off echo (Get-Location).Path powershell -NoProfile -ExecutionPolicy Bypass -Command "& .\ReadBarcodeFromURL.ps1" echo Script finished with errorlevel=%errorlevel% pause

VIDEO

ON-PREMISE OFFLINE SDK

Get 60 Day Free Trial

See also:

ON-DEMAND REST WEB API

Get Your API Key

See also:

Related Samples: