Zum Inhalt springen
Tutorial

Barcode-Generator-API: ein POST, SVG-Ausgabe, sechs Formate

| 5 min read

Generieren Sie Barcodes mit einem API-Aufruf. Unterstützt Code128, EAN-13, EAN-8, UPC-A, ITF-14 und MSI. Gibt SVG zurück, das Sie in Etiketten, Rechnungen oder PDFs einbetten können.

Close-up of barcodes on product packaging
Photo by Markus Winkler on Unsplash

Ihre Lager-App druckt Versandetiketten. Jedes Etikett benötigt zur Nachverfolgung einen Code128-Barcode Nummer. Sie könnten eine Barcode-Bibliothek installieren, auf Leinwand rendern, als PNG exportieren und einbetten Ihre Etikettenvorlage. Oder Sie könnten einen POST senden und ein SVG zurückerhalten.

Die Botoi /v1/barcode Endpoint kodiert Daten in sechs Barcode-Formate und gibt sie zurück eine SVG-Zeichenfolge in einer JSON-Antwort. Kein npm-Paket. Kein Build-Schritt. Keine Canvas-Abhängigkeit.

Der API-Aufruf

Senden Sie eine POST-Anfrage mit den Daten und dem Format:

Die Antwort verpackt die SVG-Datei in einen Standard-JSON-Umschlag:

Extrahieren Sie die svg Feld, legen Sie es in ein <img> Tag, inline es in HTML, oder leiten Sie es an eine Datei weiter. Die SVG-Datei wird in jeder Größe scharf dargestellt, da sie vektorbasiert ist. Keine Rasterungsartefakte bei 300 DPI oder höher.

Parameter

Der Endpunkt akzeptiert fünf Parameter. Nur data ist erforderlich:

  • Daten (Zeichenfolge, erforderlich): Der zu kodierende Wert. Übergeben Sie für EAN-13 13 Ziffern. Übergeben Sie für Code128 eine beliebige druckbare ASCII-Zeichenfolge.
  • Format (Zeichenfolge, Standard code128): Einer von code128, ean-13, ean-8, upc-a, itf-14, oder msi.
  • Breite (Zahl, Standard 200): Bildbreite in Pixel. Bereich: 50 bis 2000.
  • Höhe (Zahl, Standard 80): Bildhöhe in Pixel. Bereich: 20 bis 1000.
  • show_text (boolean, Standard true): Ob das gerendert werden soll codierter Wert als Text unterhalb der Balken.

Hier ist ein Code128-Barcode mit allen eingestellten Parametern:

Praxisbeispiele

Erstellung von Versandetiketten

Kodieren Sie eine Sendungsverfolgungsnummer als Code128 für Packzettel und Versandetiketten. Code128-Griffe gemischte alphanumerische Zeichenfolgen, sodass Tracking-Nummern wie „1Z999AA10123456784“ auch ohne funktionieren Vorverarbeitung.

Bestandsverwaltungssystem

Drucken Sie Code128-Etiketten für Lagerbehälter und Regale. Die Mitarbeiter scannen sie mit Handheld-Lesegeräten beim Pick-and-Pack. Der Barcode kodiert den vollständigen Standortpfad: Lager, Regal, Lagerplatz.

Etiketten für Einzelhandelsprodukte (EAN-13)

EAN-13 ist der internationale Standard für Einzelhandelsprodukte. Übergeben Sie die 13-stellige GTIN und die API gibt eine SVG-Größe für Standard-Regalkantenetiketten zurück.

Node.js-Batch-Generierung für einen Produktkatalog

Generieren Sie parallel Barcodes für einen gesamten Produktkatalog. Dieses Skript löst vier Anfragen aus gleichzeitig und sammelt die SVG-Strings:

Ausgabe:

Stapeln Sie bei Katalogen mit Hunderten von Produkten Gruppen von 20 bis 50 Produkten, um die Ratengrenzen einzuhalten. Das kostenlose Kontingent ist auf 5 Anfragen pro Minute begrenzt. Ein API-Schlüssel hebt diese Beschränkung auf.

Node.js-Beispiel: Barcode-Etiketten für die Auftragsabwicklung

Dieser Express-Server stellt a zur Verfügung /labels/:orderId Endpunkt. Wenn deine Erfüllung Wenn das System oder der Etikettendrucker diese URL abruft, erhält es einen SVG-Barcode zurück, der die Bestellung kodiert Tracking-Nummer.

Verwendung:

Der 24-Stunden-Cache-Header verhindert doppelte API-Aufrufe für dieselbe Bestellung. In der Produktion, Fügen Sie vor dieser Route einen CDN- oder Redis-Cache hinzu.

Wann welches Format verwendet werden soll

Code128 ist aus gutem Grund die Standardeinstellung: Er kodiert die größte Bandbreite an Zeichen und funktioniert für die meisten internen Systeme. Wechseln Sie zu EAN-13 oder UPC-A, wenn Ihr Produkt ein für den Einzelhandel scanbares Format benötigt Barcode. Verwenden Sie ITF-14 für Umkartonetiketten in der Logistik. MSI ermöglicht die Kennzeichnung von Lagerregalen wo Sie rein numerische Codes mit einer einfachen Prüfziffer benötigen.

Wichtige Punkte

Das kostenlose Kontingent mit 5 Anfragen pro Minute deckt Entwicklung, Tests und Etikettierung mit geringem Volumen ab Drucken. Für Batch-Generierung oder Fulfillment-Systeme mit hohem Datenverkehr übergeben Sie Ihren API-Schlüssel im Authorization: Bearer Kopfzeile. Überprüfen Sie die API-Dokumente für die vollständige Endpunktreferenz.

FAQ

Benötige ich einen API-Schlüssel, um Barcodes zu generieren?
Nein. Das kostenlose Kontingent ermöglicht anonymen Zugriff mit 5 Anfragen pro Minute mit IP-basierter Ratenbegrenzung. Fügen Sie für Produktions-Workloads einen API-Schlüssel im Authorization-Header hinzu, um den Grenzwert zu erhöhen.
Kann ich ein PNG anstelle von SVG erhalten?
Die API gibt SVG innerhalb einer JSON-Antwort zurück. SVG lässt sich ohne Pixelierung auf jede Auflösung skalieren, was es ideal für Thermoetikettendrucker mit 203 oder 300 DPI macht. Um in PNG zu konvertieren, rastern Sie die SVG-Datei mit Sharp, Inkscape oder einem Browser-Canvas-Element.
Welche Zeichen kann ich in Code128 kodieren?
Code128B unterstützt druckbare ASCII-Zeichen von Leerzeichen (0x20) bis Tilde (0x7E). Dies umfasst Groß- und Kleinbuchstaben, Ziffern, Satzzeichen und gängige Symbole. Für rein numerische Daten wie GTINs verwenden Sie EAN-13, EAN-8 oder UPC-A.
Wie bette ich den SVG-Barcode in ein PDF ein?
Extrahieren Sie das SVG-Feld aus der JSON-Antwort und übergeben Sie es an Ihre PDF-Bibliothek. Bibliotheken wie Puppeteer, wkhtmltopdf und WeasyPrint rendern Inline-SVG nativ. Konvertieren Sie für Reportlab oder jsPDF zunächst die SVG-Datei mit Sharp oder Canvas in PNG.
Was ist die maximale Datenlänge?
Code128 kann Zeichenfolgen mit bis zu etwa 80 Zeichen kodieren, bevor der Barcode für Standard-Etikettendrucker zu breit wird. EAN-13 ist auf 13 Stellen festgelegt, EAN-8 auf 8, UPC-A auf 12 und ITF-14 auf 14. Halten Sie die Daten kurz, um ein zuverlässiges Scannen zu gewährleisten.

Starte mit botoi zu entwickeln

150+ API-Endpunkte für Abfragen, Textverarbeitung, Bildgenerierung und Entwickler-Tools. Kostenloser Tarif, keine Kreditkarte nötig.