https://github.com/eansearch/gtin-lookup
A Javascript modult to lookup GTIN, EAN or ISBN codes
https://github.com/eansearch/gtin-lookup
barcode ean ean-13 ean-code ean13 gtin isbn isbn-10 isbn-13 upc
Last synced: about 2 months ago
JSON representation
A Javascript modult to lookup GTIN, EAN or ISBN codes
- Host: GitHub
- URL: https://github.com/eansearch/gtin-lookup
- Owner: eansearch
- License: gpl-3.0
- Created: 2024-04-24T11:37:06.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-24T13:14:07.000Z (about 1 year ago)
- Last Synced: 2024-04-24T15:53:24.430Z (about 1 year ago)
- Topics: barcode, ean, ean-13, ean-code, ean13, gtin, isbn, isbn-10, isbn-13, upc
- Language: JavaScript
- Homepage: https://www.ean-search.org/ean-database-api.html
- Size: 26.4 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gtin-lookup
A Javascript module to lookup GTIN, EAN or ISBN codes using the API on https://www.ean-search.org
## Install
`npm install gtin-lookup`
## Obtain an API key
To use the module, you need an API access token from
https://www.ean-search.org/ean-database-api.html## Usage
```javascript
var GTINLookup = require("gtin-lookup");
const apiToken = "abcdef";
var gtinLookup = new GTINLookup(apiToken);// lookup GTIN, prefer English (1) name
const gtin = "5099750442227";
gtinLookup.gtinLookup(gtin, 1, function(response){
if (!response.serverError) {
console.log("gtinLookup()");
if (response.product != undefined) {
console.log("GTIN " + gtin + " is " + response.product[0].name + " category: " + response.product[0].categoryName);
} else {
console.log("GTIN " + gtin + " not found in database");
}
} else {
console.log('Server error: ' + resp.statusCode);
}
});// lookup book data using ISBN-10 or ISBN-13
const isbn = "1119578884";
gtinLookup.isbnLookup(isbn, function(response){
if (!response.serverError) {
console.log("isbnLookup()");
if (response.product != undefined) {
console.log("ISBN " + isbn + " is " + response.product[0].name);
} else {
console.log("ISBN " + isbn + " not found in database");
}
} else {
console.log('Server error: ' + resp.statusCode);
}
});// search for product name (exact match), prefer English (1)
let name = "Bananaboat";
gtinLookup.gtinSearch(name, 1, function(response){
if (!response.serverError) {
console.log("gtinSearch()");
if (response.product.productlist != undefined) {
for (let i = 0; i < response.product.productlist.length; i++) {
console.log(response.product.productlist[i].ean + " is " + response.product.productlist[i].name);
}
} else {
console.log("Name " + name + " not found in database");
}
} else {
console.log('Server error: ' + resp.statusCode);
}
});// search for product with a similar name
gtinLookup.gtinSimilarSearch("Apple iPhone 16GB robust", 1, function(response){
if (!response.serverError) {
console.log("gtinSimilarSearch()");
if (response.product.productlist != undefined) {
for (let i = 0; i < response.product.productlist.length; i++) {
console.log(response.product.productlist[i].ean + " is " + response.product.productlist[i].name);
}
} else {
console.log("Name " + name + " not found in database");
}
} else {
console.log('Server error: ' + resp.statusCode);
}
});// search for name, but restrict to Fashion category (20), prefer English (1)
gtinLookup.gtinCategorySearch(name, 20, 1, function(response){
if (!response.serverError) {
console.log("gtinCategorySearch()");
if (response.product.productlist != undefined) {
for (let i = 0; i < response.product.productlist.length; i++) {
console.log("Fashion: " + response.product.productlist[i].ean + " is " + response.product.productlist[i].name);
}
} else {
console.log("Name " + name + " not found in database");
}
} else {
console.log('Server error: ' + resp.statusCode);
}
});// find all GTINs starting with "5099750442", prefer English (1), just fetch page 0
gtinLookup.gtinPrefixSearch("5099750442", 1, 0, function(response){
if (!response.serverError) {
console.log("gtinPrefixSearch()");
if (response.product.productlist != undefined) {
for (let i = 0; i < response.product.productlist.length; i++) {
console.log(response.product.productlist[i].ean + " is " + response.product.productlist[i].name);
}
} else {
console.log("Name " + name + " not found in database");
}
} else {
console.log('Server error: ' + resp.statusCode);
}
});// lookup the country where a GTIN barcode was registered
gtinLookup.gtinIssuingCountryLookup(gtin, function(response){
if (!response.serverError) {
console.log("gtinIssuingCountryLookup()");
console.log("GTIN " + gtin + " was issued in " + response.product[0].issuingCountry);
} else {
console.log('Server error: ' + resp.statusCode);
}
});// verify the checksum of a GTIN
gtinLookup.gtinVerifyChecksum(gtin, function(response){
if (!response.serverError) {
console.log("gtinVerifyChecksum()");
console.log("Checksum of GTIN " + gtin + " is " + (response.product[0].valid ? "OK" : "Invalid"));
} else {
console.log('Server error: ' + resp.statusCode);
}
});// generate a PNG barcode image for a GTIN
var width = 200; // PNG width
var height = 100; // PNG height
gtinLookup.gtinBarcodeImage(gtin, width, height, function(response){
if (!response.serverError) {
console.log("gtinBarcode()");
console.log("Base64 encoded PNG image of GTIN " + gtin + " barcode: " + response.product[0].barcode);
} else {
console.log('Server error: ' + resp.statusCode);
}
});