API-Dokumentation

Verwalten und erstellen Sie Ihre QR Codes und Alias Adressen ganz einfach automatisch mit der leicht zu integrierenden API von QR.is.
Die API von QR.is benötigt keine aufwendige Einbindung in Ihr System, sondern funktioniert ganz simpel mittels URLs (http://qr.is/API-BEFEHL) und ist somit unabhängig von Programmiersprachen. So benötigen Sie keine Einarbeitungszeit und können unsere API leicht in Ihr eigenes Skript integrieren.

/alias

Zur Weiterleitung auf die hinterlegte URL.
"alias" ist durch den entsprechenden Alias zu ersetzen, um zur dazugehörigen URL weitergeleitet zu werden.

Parameter

keine Parameter

Rückgabe

Weiterleitung zur hinterlegten URL.

Beispiel

http://qr.is/1

/qr/alias

Zur Anzeige des QR Codes.
"alias" ist durch den entsprechenden Alias zu ersetzen, um den dazugehörigen QR Code anzuzeigen. Dies ist eine Vereinfachung und Verkürzung der REST-API-Funktion "getQR".

Parameter

  • data (optional) gibt den zu codierenden String an.
    Der String muss URL encoded sein.URL Encoder
  • download=1 (optional) gibt an ob das Bild als Download angeboten werden soll, sonst wird es dargestellt.

Rückgabe

Das QR Code-Bild als PNG.

Beispiel

http://qr.is/qr/1
http://qr.is/qr/?data=Das%20ist%20ein%20Test

/info/alias

Zur Anzeige der Informationen über das Alias
"alias" ist durch den entsprechenden Alias zu ersetzen, um die dazugehörige Information anzuzeigen.

Parameter

keine Parameter

Rückgabe

HTML-Seite mit allen Informationen zu dem Alias

Beispiel

http://qr.is/info/1

Authentifizierung und Parameter

Alle API-Nutzungen benötigen eine Authentifizierung über einen API-Key und die Argumente werden an die URL-Query gehangen. Um die API zu nutzen benötigen Sie einen QR.is-Account und einen API-Key. Jetzt kostenlos anmelden unter: http://qr.is/page/register

Sie finden API-Key auf der Übersichtsseite nach dem Login unten Links. Der API-Key besteht aus einer uID und einem Code getrennt durch einen Punkt. Z.B.:

apiKey=ABCDE.1234567890

Dies ist ein Beispiel-API-Key, er ist nicht funktionsfähig!

Request und Response Formate

Alle QR.is-APIs unterstützen einen optionalen "format"-Parameter. Text (txt) ist das Standardrückgabeformat. XML (xml) und JSON (json) sind ebenfalls möglich. Das QR Code Bild kann sogar base64 zurückgegeben werden.

format=xml

format=xml&weitere_parameter=foo

Hier einige Beispiele:
JSON:
{"errors":[{"code":202,"message":"Wrong API-Key"},{"code":301,"message":"URL exists"}]}

{"data":{"alias":"1","url":"http:\/\/qr.is\/1","qr_img_url":"http:\/\/qr.is\/qr\/1","long_url":"http:\/\/www.basementco.de/qrcode/QR.is-Quick_Response_impressive_simple.html"}}

XML
    <?xml version="1.0" encoding="utf-8"?>
	<response>
		<data>
			...
		</data>
		<errors>
			<error>
				<code>202</code>
				<message>Wrong API-Key</message>
			</error>
		</errors>
	</response>

Base64

Base64 codiert Binärdateien in scheinbar sinnlosen Text, dadurch sind wir in der Lage die QR Code-Bilder mittels XML zu übermitteln, z.B. in gesicherten Digital Signage Umgebungen.

Base64 kann auf "normalen" HTML-Seiten dargestellt werden, dazu stellen wir kurz zwei Möglichkeiten vor und zwar mittels CSS oder im image-Tag. Beim CSS ist es wichtig, dass der gesamte Base64-Code in eine Zeile geschrieben wird.

Hier die Beispiele: ansehen

CSS

<style>
<div.image {
    width:100px;
    height:100px;
    background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHQAAAB0AQMAAABuVIRkAAAABlBMVEX///8AAABVwtN+
    AAAAk0lEQVQ4jeWTQRKFMAxCuQH3v2VukA/xO+oyuJSF7euCsZACn1d3FzlLxPoWu2p2CXvfx5Ky/V4xXvAc4XG/DTtI6ZHvhk/ThxasMu3GlEHb
    qZDTdMtg2xEVshDukykrUkrXfXYsyYv3UDc8Rfp/GhHPPDlPVsYzyM2/XcTy4t1vy/CDqJA9krj62LLzbI8jM/60fqScBlOeaeJlAAAAAElFTkSuQmCC);
}
</style>
<div class="image"></div>

HTML

<img alt="Embedded Image" src="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAAHQAAAB0AQMAAABuVIRkAAAABlBMVEX///8AAABVwtN+AAAAk0lE
QVQ4jeWTQRKFMAxCuQH3v2VukA/xO+oyuJSF7euCsZACn1d3FzlLxPoWu2p2CXvfx5Ky/V4xXvAc
4XG/DTtI6ZHvhk/ThxasMu3GlEHbqZDTdMtg2xEVshDukykrUkrXfXYsyYv3UDc8Rfp/GhHPPDlP
VsYzyM2/XcTy4t1vy/CDqJA9krj62LLzbI8jM/60fqScBlOeaeJlAAAAAElFTkSuQmCC" />

REST-API

/v1/shorten

Um lange URLs in kurze URLs zu wandeln.

Parameter

  • url die zu verkürzende URL. Die URL muss URL-encoded sein, sonst werden &, ?, # und andere reservierte Zeichen nicht korrekt übernommen URL Encoder.
  • apiKey gibt den Benutzer API-Key an.
  • format (optional) gibt das geforderte Rückgabeformat an. Unterstützte Formate: txt, json, xml.
  • alias (optional) gibt den gewünschten Alias an
  • base64=1 (optional) Das QR Code-Bild wird dann Base64 encoded

Rückgabe

  • url die verkürzte URL.
  • alias der Alias der der Verkürzung zugrunde liegt
  • qr_img_url die URL über die das QR Code Bild erreichbar ist
  • long_url Dies eine Kontrollrückgabe, damit sie sehen ob Ihre URL verändert wurde.
  • qr_img_width Die Breite des QR Code-Bildes.
  • qr_img_height Die Höhe des QR Code-Bildes.
  • qr_img_base64 Objekt für die Daten des Base64 encodeten QR Code-Bild.
        mimetype Der Mime-Type des Bildes.
        base64_data Das base64-encodete Bild.

Beispiel

http://qr.is/api/v1/shorten?apiKey=ABCDE.1234567890&format=xml&url=http%3A%2F%2Fwww.basementco.de%2Fqrcode%2FQR.is-Quick_Response_impressive_simple.html

XML

    <?xml version="1.0" encoding="utf-8"?>
	<response>
		<data>
			<alias>1</alias>
			<url>http://qr.is/1</url>
			<qr_img_url>http://qr.is/qr/1</qr_img_url>
			<long_url>http://www.basementco.de/qrcode/QR.is-Quick_Response_impressive_simple.html</long_url>
		</data>
	</response>
	

/v1/expand

Um die original URL eines Alias zu erhalten.

Parameter

  • alias gibt den gewünschten Alias an dessen URL geholt werden soll.
  • apiKey gibt den Benutzer API-Key an.
  • format (optional) gibt das geforderte Rückgabeformat an. Unterstützte Formate: txt, json, xml.
  • base64=1 (optional) Das QR Code-Bild wird dann Base64 encoded

Rückgabe

  • url die verkürzte URL.
  • alias der Alias der der Verkürzung zugrunde liegt
  • qr_img_url die URL über die das QR Code Bild erreichbar ist
  • long_url Dies eine Kontrollrückgabe, damit sie sehen ob Ihre URL verändert wurde.
  • qr_img_width Die Breite des QR Code-Bildes.
  • qr_img_height Die Höhe des QR Code-Bildes.
  • qr_img_base64 Objekt für die Daten des Base64 encodeten QR Code-Bild.
        mimetype Der Mime-Type des Bildes.
        base64_data Das base64-encodete Bild.

Beispiel

http://qr.is/api/v1/expand?apiKey=ABCDE.1234567890&format=xml&alias=1

XML

    <?xml version="1.0" encoding="utf-8"?>
	<response>
		<data>
			<alias>1</alias>
			<url>http://qr.is/1</url>
			<qr_img_url>http://qr.is/qr/1</qr_img_url>
			<long_url>http://www.basementco.de/qrcode/QR.is-Quick_Response_impressive_simple.html</long_url>
		</data>
	</response>
	

/v1/delete

Um einen Alias und dessen URL zu löschen.

Parameter

  • alias gibt den zu löschenden Alias an
  • apiKey gibt den Benutzer API-Key an.
  • format (optional) gibt das geforderte Rückgabeformat an. Unterstützte Formate: txt, json, xml.

Rückgabe

  • alias Dies ist eine Kontrollrückgabe.
  • ok Gibt an ob die Daten gelöscht wurden. (true/false)

Beispiel

http://qr.is/api/v1/delete?apiKey=ABCDE.1234567890&format=xml&alias=1

JSON

{"data":{"alias":"10000i","ok":false}}

XML

    <?xml version="1.0" encoding="utf-8"?>
	<response>
		<data>
			<alias>1</alias>
			<ok>true</ok>
		</data>
	</response>
	

/v1/getQR

Um einen QR Code als Bild bzw. Base64 anzuzeigen

Parameter

  • alias gibt den Alias an dessen QR Code-Bild angezeigt werden soll.
  • data gibt den Text an der im QR Code-Bild angezeigt werden soll.
    Der String muss URL encoded sein. URL Encoder
  • apiKey gibt den Benutzer API-Key an.
  • download=1 (optional) gibt an ob das Bild als Download angeboten werden soll, sonst wird es dargestellt.
  • format (optional) gibt das geforderte Rückgabeformat an. Unterstützte Formate: txt, json, xml. Nur bei Base64 oder Fehlern relevant.
  • base64=1 (optional) das QR Code-Bild wird Base64 encoded.
  • qrImageType (optional) gibt das zu generierende Bildformat an (png, jpg, gif, pdf, svg) Default: png.
  • qrModuleSize (optional) gibt die Größe eines QR Code Bits in Pixel an.
  • qrErrorCorrect (optional) gibt den Grad der Fehlerkorrektur an (L, M, Q, H) Default: L .

Rückgabe

  • DIE BILDDATEI wenn alles richtig läuft, bzw. kein base64 angefordert wurde.
  • alias Dies eine Kontrollrückgabe
  • data Dies eine Kontrollrückgabe
  • qr_img_width Die Breite des QR Code-Bildes.
  • qr_img_height Die Höhe des QR Code-Bildes.
  • qr_img_base64 Objekt für die Daten des Base64 encodeten QR Code-Bild.
        mimetype Der Mime-Type des Bildes.
        base64_data Das base64-encodete Bild.

Beispiel

http://qr.is/api/v1/getQR?download=1&qrErrorCorrect=L&qrImageType=jpg&qrModuleSize=5&alias=1&base64=0&apiKey=ABCDE.1234567890&format=xml

/v1/change

Um die Ziel-URL eines bestehenden Alias zu ändern.

Parameter

  • apiKey gibt den Benutzer API-Key an.
  • alias gibt den Alias, dessen Ziel-URL verändert werden soll, an.
  • format (optional) gibt das geforderte Rückgabeformat an. Unterstützte Formate: txt, json, xml.
  • url legt die neue Ziel-URL des Alias fest.

Rückgabe

  • alias Dies ist eine Kontrollrückgabe.
  • url zeigt die verkürzte URL im ganzen.
  • long_url_old Zeigt die Ziel-URL, die bis zur Änderung durch den /change-Befehl aktiv war.
  • long_url_new Zeigt die neue Ziel-URL, die ab der Änderung durch den /change-Befehl aktiv ist.
  • ok Gibt an ob die Daten geändert wurden. (true/false)

Beispiel

http://qr.is/api/v1/change?apiKey=ABCDE.1234567890&alias=agentur&format=xml&url=http://www.bach-partner.com/web/referenz/qris.php

XML

    <?xml version="1.0" encoding="utf-8"?>
	<response>
		<data>
			<alias>agentur</alias>
			<url>http://qr.is/agentur</url>
			<long_url_old>http://www.bach-partner.com/web/online/index.php</long_url_old>
			<long_url_new>http://www.bach-partner.com/web/referenz/qris.php</long_url_new>
			<ok>true</ok>
		</data>
	</response>