How to merge PDF documents from uploaded files for PDF merging API in C# with PDF.co Web API

Step By Step Tutorial: how to merge PDF documents from uploaded files for PDF merging API in C#

ByteScout tutorials explain the code material for beginners and advanced programmers who are using C#. PDF.co Web API was made to help with PDF merging API in C#. 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 C# plus the instruction and the code below will help to learn how to merge PDF documents from uploaded files. Sample code in C# is all you need. Copy-paste it to your the code editor, then add a reference to PDF.co Web API and you are ready to try it! Enjoy writing a code with ready-to-use sample C# codes to implement PDF merging API using PDF.co Web API.

Our website provides free trial version of PDF.co Web API that includes source code samples to help with your C# project.

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

Program.cs
      
using System; using System.Collections.Generic; using System.IO; using System.Net; using Newtonsoft.Json.Linq; namespace ByteScoutWebApiExample { class Program { // The authentication key (API Key). // Get your own by registering at https://app.pdf.co/documentation/api const String API_KEY = "***********************************"; // Source PDF files static string[] SourceFiles = new string[] { @".\sample1.pdf", @".\sample2.pdf" }; // Destination PDF file name const string DestinationFile = @".\result.pdf"; static void Main(string[] args) { // Create standard .NET web client instance WebClient webClient = new WebClient(); // Set API Key webClient.Headers.Add("x-api-key", API_KEY); // 1. UPLOAD FILES TO CLOUD List<string> uploadedFiles = new List<string>(); try { foreach (string pdfFile in SourceFiles) { // 1a. RETRIEVE THE PRESIGNED URL TO UPLOAD THE FILE. // Prepare URL for `Get Presigned URL` API call string query = Uri.EscapeUriString(string.Format( "https://api.pdf.co/v1/file/upload/get-presigned-url?contenttype=application/octet-stream&name={0}", Path.GetFileName(pdfFile))); // Execute request string response = webClient.DownloadString(query); // Parse JSON response JObject json = JObject.Parse(response); if (json["error"].ToObject<bool>() == false) { // Get URL to use for the file upload string uploadUrl = json["presignedUrl"].ToString(); // Get URL of uploaded file to use with later API calls string uploadedFileUrl = json["url"].ToString(); // 1b. UPLOAD THE FILE TO CLOUD. webClient.Headers.Add("content-type", "application/octet-stream"); webClient.UploadFile(uploadUrl, "PUT", pdfFile); // You can use UploadData() instead if your file is byte[] or Stream uploadedFiles.Add(uploadedFileUrl); } else { Console.WriteLine(json["message"].ToString()); } } if (uploadedFiles.Count > 0) { // 2. MERGE UPLOADED PDF DOCUMENTS // Prepare URL for `Merge PDF` API call string query = Uri.EscapeUriString(string.Format( "https://api.pdf.co/v1/pdf/merge?name={0}&url={1}", Path.GetFileName(DestinationFile), string.Join(",", uploadedFiles))); // Execute request string response = webClient.DownloadString(query); // Parse JSON response JObject json = JObject.Parse(response); if (json["error"].ToObject<bool>() == false) { // Get URL of generated PDF file string resultFileUrl = json["url"].ToString(); // Download PDF file webClient.DownloadFile(resultFileUrl, DestinationFile); Console.WriteLine("Generated PDF file saved as \"{0}\" file.", DestinationFile); } else { Console.WriteLine(json["message"].ToString()); } } } catch (WebException e) { Console.WriteLine(e.ToString()); } webClient.Dispose(); Console.WriteLine(); Console.WriteLine("Press any key..."); Console.ReadKey(); } } }

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

packages.config
      
<?xml version="1.0" encoding="utf-8"?> <packages> <package id="Newtonsoft.Json" version="10.0.3" targetFramework="net40" /> </packages>

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: