How to read barcode from URL asynchronously for barcode reader API in PowerShell with PDF.co Web API

See how to read barcode from URL asynchronously to have barcode reader API in PowerShell

Today you are going to learn how to read barcode from URL asynchronously in PowerShell. PDF.co Web API helps with barcode reader API in PowerShell. PDF.co Web API is the Web API with a set of tools for documents manipulation, data conversion, data extraction, splitting and merging of documents. Includes image recognition, built-in OCR, barcode generation and barcode decoders to decode bar codes from scans, pictures and pdf.

The SDK samples like this one below explain how to quickly make your application do barcode reader API in PowerShell with the help of PDF.co Web API. For implimentation of this functionality, please copy and paste code below into your app using code editor. Then compile and run your app. Code testing will allow the function to be tested and work properly with your data.

PDF.co Web API – free trial version is on available our website. Also, there are other code samples to help you with your PowerShell application included into trial version.

Try PDF.co Web API today:  60 Day Free Trial (on-premise) or  Web API (on-demand version)

ReadBarcodeFromUrlAsynchronously.ps1
      
# Cloud API asynchronous "Barcode Reader" job example. # Allows to avoid timeout errors when processing huge or scanned PDF documents. # 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 = "" # (!) Make asynchronous job $Async = $true # Prepare URL for `Barcode Reader` API call $query = "https://api.pdf.co/v1/barcode/read/from/url?types=$($BarcodeTypes)&pages=$($Pages)&url=$($SourceFileURL)&async=$($Async)" $query = [System.Uri]::EscapeUriString($query) try { # Execute request $jsonResponse = Invoke-RestMethod -Method Get -Headers @{ "x-api-key" = $API_KEY } -Uri $query if ($jsonResponse.error -eq $false) { # Asynchronous job ID $jobId = $jsonResponse.jobId # URL of generated JSON file with decoded barcodes that will available after the job completion $resultFileUrl = $jsonResponse.url # Check the job status in a loop. # If you don't want to pause the main thread you can rework the code # to use a separate thread for the status checking and completion. do { $statusCheckUrl = "https://api.pdf.co/v1/job/check?jobid=" + $jobId $jsonStatus = Invoke-RestMethod -Method Get -Headers @{ "x-api-key" = $API_KEY } -Uri $statusCheckUrl # Display timestamp and status (for demo purposes) Write-Host "$(Get-date): $($jsonStatus.status)" if ($jsonStatus.status -eq "success") { # Download JSON file with decoded barcodes $jsonFoundBarcodes = Invoke-RestMethod -Method Get -Headers @{ "x-api-key" = $API_KEY } -Uri $resultFileUrl # Display found barcodes in console foreach ($barcode in $jsonFoundBarcodes) { 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 "" } break } elseif ($jsonStatus.status -eq "working") { # Pause for a few seconds Start-Sleep -Seconds 3 } else { Write-Host $jsonStatus.status break } } while ($true) } else { # Display service reported error Write-Host $jsonResponse.message } } catch { # Display request error Write-Host $_.Exception }

Try PDF.co Web API today:  60 Day Free Trial (on-premise) or  Web API (on-demand version)

run.bat
      
@echo off powershell -NoProfile -ExecutionPolicy Bypass -Command "& .\ReadBarcodeFromUrlAsynchronously.ps1" echo Script finished with errorlevel=%errorlevel% pause

Try PDF.co Web API today:  60 Day Free Trial (on-premise) or  Web API (on-demand version)

VIDEO

ON-PREMISE VERSION INFORMATION

Get 60 Day Free Trial or Visit PDF.co Web API Home Page

Explore PDF.co Web API Documentation

Get PDF.co Web API Free Training

WEB API

Get Your Free API Key

Explore Web API Documentation

Related Samples: