How to split PDF from URL asynchronously for PDF splitting API in PowerShell with PDF.co Web API

Learn how to split PDF from URL asynchronously to have PDF splitting API in PowerShell

Here you may find thousands pre-made source code pieces for easy implementation in your own programming projects. PDF.co Web API helps with PDF splitting API in PowerShell. PDF.co Web API is the Rest API that provides set of data extraction functions, tools for documents manipulation, splitting and merging of pdf files. Includes built-in OCR, images recognition, can generate and read barcodes from images, scans and pdf.

Fast application programming interfaces of PDF.co Web API for PowerShell plus the instruction and the code below will help to learn how to split PDF from URL asynchronously. Open your PowerShell project and simply copy & paste the code and then run your app! Code testing will allow the function to be tested and work properly with your data.

ByteScout free trial version is available for FREE download from our website. Programming tutorials along with source code samples are included.

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

SplitPdfFromUrlAsynchronously.ps1
      
# Cloud API asynchronous "Split PDF" 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 = "***********************************" # Source PDF file to split $SourceFileUrl = "https://bytescout-com.s3.amazonaws.com/files/demo-files/cloud-api/pdf-split/sample.pdf" # Comma-separated list of page numbers (or ranges) to process. Example: '1,3-5,7-'. $Pages = "1-2,3-" # (!) Make asynchronous job $Async = $true # Prepare URL for `Split PDF` API call $query = "https://api.pdf.co/v1/pdf/split?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 available after the job completion; it will contain URLs of result PDF files. $resultJsonFileUrl = $jsonResponse.url # Check the job status in a loop. 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 URLs of result PDF files $jsonPdfUrls = Invoke-RestMethod -Method Get -Headers @{ "x-api-key" = $API_KEY } -Uri $resultJsonFileUrl # Download generated PDF files $part = 1; foreach ($url in $jsonPdfUrls) { $localFileName = ".\part$($part).pdf" # Download PDF file Invoke-WebRequest -Headers @{ "x-api-key" = $API_KEY } -OutFile $localFileName -Uri $url Write-Host "Downloaded `"$($localFileName)`"" $part++ } 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 "& .\SplitPdfFromUrlAsynchronously.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: