apiverve / barcodereader
Barcode Reader decodes 1D barcodes from an uploaded image or an image URL, including EAN-13, EAN-8, UPC-A, UPC-E, Code 128, Code 39, Code 93, ITF, Codabar and GS1 DataBar. It returns the decoded value and the symbology. Paid plans add the GTIN, the barcode's orientation and corners, and every barcod
Requires
- php: >=7.4
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
- phpunit/phpunit: ^9.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Barcode Reader decodes 1D barcodes from an uploaded image or an image URL, including EAN-13, EAN-8, UPC-A, UPC-E, Code 128, Code 39, Code 93, ITF, Codabar and GS1 DataBar. It returns the decoded value and the symbology. Paid plans add the GTIN, the barcode's orientation and corners, and every barcode found in the image.
The Barcode Reader API provides a simple, reliable way to integrate barcode reader functionality into your applications. Built for developers who need production-ready barcode reader capabilities without the complexity of building from scratch.
Quick Start
Using JavaScript
async function callBarcodeReaderAPI() { try { const requestBody = { "image": "https://raw.githubusercontent.com/zxing/zxing/master/core/src/test/resources/blackbox/ean13-1/2.png" }; const response = await fetch('https://api.apiverve.com/v1/barcodereader', { method: 'POST', headers: { 'x-api-key': 'YOUR_API_KEY_HERE', 'Content-Type': 'application/json' }, body: JSON.stringify(requestBody) }); const data = await response.json(); console.log(data); } catch (error) { console.error('Error:', error); } } callBarcodeReaderAPI();
Using cURL
curl -X POST "https://api.apiverve.com/v1/barcodereader" \ -H "x-api-key: YOUR_API_KEY_HERE" \ -F "image=@/path/to/your-file" # Accepted formats: .jpg, .jpeg, .png, .gif, .webp, .bmp (max 10MB)
Get your API key: https://apiverve.com
📁 For more examples, see the examples folder
Installation
Choose your preferred programming language:
📦 NPM (JavaScript/Node.js)
npm install @apiverve/barcodereader
View NPM Package → | Package Code →
🔷 NuGet (.NET/C#)
dotnet add package APIVerve.API.BarcodeReader
View NuGet Package → | Package Code →
🐍 Python (PyPI)
pip install apiverve-barcodereader
View PyPI Package → | Package Code →
💎 Ruby (RubyGems)
gem install apiverve_barcodereader
View RubyGems Package → | Package Code →
🐘 PHP (Packagist)
composer require apiverve/barcodereader
View Packagist Package → | Package Code →
🎯 Dart (pub.dev)
dart pub add apiverve_barcodereader
View pub.dev Package → | Package Code →
🤖 Android (JitPack)
implementation 'com.github.apiverve:barcodereader-api:1.0.0'
🐹 Go
go get github.com/apiverve/barcodereader-api/go
Why Use This API?
| Feature | Benefit |
|---|---|
| Multi-language SDKs | Native packages for JavaScript, Python, C#, Go, and Android |
| Simple Integration | Single API key authentication, consistent response format |
| Production Ready | 99.9% uptime SLA, served from 24 global regions |
| Comprehensive Docs | Full examples, OpenAPI spec, and dedicated support |
Documentation
- 🏠 API Home: Barcode Reader API
- 📚 API Reference: docs.apiverve.com/ref/barcodereader
- 📖 OpenAPI Spec: openapi.yaml
- 💡 Examples: examples/
What Can You Build?
The Barcode Reader API is commonly used for:
- Web Applications - Add barcode reader features to your frontend or backend
- Mobile Apps - Native SDKs for Android development
- Automation - Integrate with n8n, Zapier, or custom workflows
- SaaS Products - Enhance your product with barcode reader capabilities
- Data Pipelines - Process and analyze data at scale
API Reference
Authentication
All requests require an API key in the header:
x-api-key: YOUR_API_KEY_HERE
Get your API key: https://apiverve.com
Response Format
Every APIVerve endpoint returns the same envelope — check status, then read data:
{
"status": "ok",
"error": null,
"data": { ... }
}
Example Response
A real response from the Barcode Reader API:
{
"status": "ok",
"error": null,
"data": {
"text": "8480010092271",
"format": "EAN-13",
"isRetail": true,
"gtin": "8480010092271",
"orientation": 0,
"position": {
"topLeft": {
"x": 565,
"y": 366
},
"topRight": {
"x": 1132,
"y": 366
},
"bottomRight": {
"x": 1145,
"y": 734
},
"bottomLeft": {
"x": 558,
"y": 734
}
},
"barcodeCount": 1,
"barcodes": [
{
"text": "8480010092271",
"format": "EAN-13",
"gtin": "8480010092271",
"orientation": 0,
"position": {
"topLeft": {
"x": 565,
"y": 366
},
"topRight": {
"x": 1132,
"y": 366
},
"bottomRight": {
"x": 1145,
"y": 734
},
"bottomLeft": {
"x": 558,
"y": 734
}
}
}
]
}
}
Support & Community
- 🏠 API Home: Barcode Reader API
- 💬 Support: https://apiverve.com/contact
- 🐛 Issues: GitHub Issues
- 📖 Documentation: https://docs.apiverve.com
- 🌐 Website: https://apiverve.com
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Security
For security concerns, please review our Security Policy.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
Built with ❤️ by APIVerve
Copyright © 2026 APIVerve. All rights reserved.