We regularly create and update our sample code library so you may quickly learn barcode reader API and the step-by-step process in C#. Barcode reader API in C# can be applied with ByteScout Cloud API Server. ByteScout Cloud API Server is API server that is ready to use and can be installed and deployed in less than 30 minutes on your own Windows server or server in a cloud. It can save data and files on your local server-based file storage or in Amazon AWS S3 storage. Data is processed solely on the API server and is powered by ByteScout engine, no cloud services or Internet connection is required for data processing..
C# code snippet like this for ByteScout Cloud API Server works best when you need to quickly implement barcode reader API in your C# application. This sample code in C# is all you need. Just copy-paste it to the code editor, then add a reference to ByteScout Cloud API Server and you are ready to try it! Writing C# application mostly includes various stages of the software development so even if the functionality works please check it with your data and the production environment.
Free! Free! Free! ByteScout free trial version is available for FREE download from our website. Programming tutorials along with source code samples are assembled.
On-demand (REST Web API) version:
Web API (on-demand version)
On-premise offline SDK for Windows:
60 Day Free Trial (on-premise)
using System; using System.IO; using System.Net; using Newtonsoft.Json.Linq; // Please NOTE: In this sample we're assuming Cloud Api Server is hosted at "https://localhost". // If it's not then please replace this with with your hosting url. namespace ByteScoutWebApiExample { class Program { // Source file name const string SourceFile = @".\sample.pdf"; // Comma-separated list of barcode types to search. // barcode types const string 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-'. const string Pages = ""; static void Main(string[] args) { // Create standard .NET web client instance WebClient webClient = new WebClient(); // 1. RETRIEVE THE PRESIGNED URL TO UPLOAD THE FILE. // * If you already have a direct file URL, skip to the step 3. // Prepare URL for `Get Presigned URL` API call string query = Uri.EscapeUriString(string.Format( "https://localhost/file/upload/get-presigned-url?contenttype=application/octet-stream&name={0}", Path.GetFileName(SourceFile))); try { // 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(); // 2. UPLOAD THE FILE TO CLOUD. webClient.Headers.Add("content-type", "application/octet-stream"); webClient.UploadFile(uploadUrl, "PUT", SourceFile); // You can use UploadData() instead if your file is byte[] or Stream // 3. READ BARCODES FROM UPLOADED FILE // Prepare URL for `Barcode Reader` API call query = Uri.EscapeUriString(string.Format( "https://localhost/barcode/read/from/url?types={0}&pages={1}&url={2}", BarcodeTypes, Pages, uploadedFileUrl)); // Execute request response = webClient.DownloadString(query); // Parse JSON response json = JObject.Parse(response); if (json["error"].ToObject<bool>() == false) { // Display found barcodes in console foreach (JToken token in json["barcodes"]) { Console.WriteLine("Found barcode:"); Console.WriteLine(" Type: " + token["TypeName"]); Console.WriteLine(" Value: " + token["Value"]); Console.WriteLine(" Document Page Index: " + token["Page"]); Console.WriteLine(" Rectangle: " + token["Rect"]); Console.WriteLine(" Confidence: " + token["Confidence"]); Console.WriteLine(); } } else { // Display service reported error Console.WriteLine(json["message"].ToString()); } } else { // Display service reported error Console.WriteLine(json["message"].ToString()); } } catch (WebException e) { // Display request error Console.WriteLine(e.ToString()); } webClient.Dispose(); Console.WriteLine(); Console.WriteLine("Press any key..."); Console.ReadKey(); } } }
60 Day Free Trial or Visit ByteScout Cloud API Server Home Page
Explore ByteScout Cloud API Server Documentation
Explore Samples
Sign Up for ByteScout Cloud API Server Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
<?xml version="1.0" encoding="utf-8"?> <packages> <package id="Newtonsoft.Json" version="10.0.3" targetFramework="net40" /> </packages>
60 Day Free Trial or Visit ByteScout Cloud API Server Home Page
Explore ByteScout Cloud API Server Documentation
Explore Samples
Sign Up for ByteScout Cloud API Server Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
60 Day Free Trial or Visit ByteScout Cloud API Server Home Page
Explore ByteScout Cloud API Server Documentation
Explore Samples
Sign Up for ByteScout Cloud API Server Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples