Przewodnik po API kodów QR dla deweloperów
API kodów QR pozwala użytkownikom programowo generować wysokiej jakości kody QR lub integrować szybkie generowanie dużej ilości kodów QR. Zapewnia prosty i wydajny sposób tworzenia kodów QR do różnych zastosowań, takich jak automatyczne płatności, integracja z aplikacjami, generowanie etykiet produktów i wiele innych. API obsługuje różne opcje dostosowywania, w tym rozmiar, kolor, kształt, obramowanie, typ itp. Deweloperzy mogą zintegrować je ze swoimi aplikacjami, wysyłając żądania HTTP i podając klucz API do uwierzytelnienia lub korzystając z naszych bibliotek.
Klucz API
Klucz API dla Twojego konta można utworzyć na stronie konta. Klucz API można dołączyć do żądań jako parametr URL, na przykład: https://genqrcode.com/api/public/generate?apikey=YOUR_API_KEY, lub w nagłówku `GenQRCode-apikey`. W dalszej części tego przewodnika zakładamy użycie nagłówka, ponieważ jest to bezpieczniejsza opcja, ale obie metody można stosować zamiennie. Klucz API powinien być traktowany jako poufny i nie należy go udostępniać innym osobom.
Ograniczenie liczby żądań
Ograniczenie liczby żądań jest stosowane w celu zapewnienia uczciwego korzystania z API. Darmowy plan obejmuje 180 tokenów na godzinę. Standardowe kody QR kosztują 1 token każdy, z maksymalnym limitem 180 tokenów na godzinę, co odpowiada 1 kodowi QR co 20 sekund. Dodatkowo, szybkie punkty końcowe zużywają 1/50 tokena, co odpowiada 2,5 kodu QR na sekundę. Te szybkie punkty końcowe są zalecane, gdy nie jest wymagana personalizacja kodu QR. Jeśli limit tokenów zostanie przekroczony, zwrócony zostanie kod statusu 429, informujący o ograniczeniu liczby żądań.
Korzystanie z wielu kont w celu obejścia tych ograniczeń jest zabronione. Jeśli potrzebujesz wyższych limitów, skontaktuj się z nami w sprawie cennika.
Biblioteki
API statycznych kodów QR
Typy kodów QR
Typ kodu QR to podstawa każdego kodu QR. Określa sposób kodowania danych i zachowanie kodu QR po zeskanowaniu. Wybór odpowiedniego typu jest kluczowy, ponieważ wpływa na funkcjonalność kodu QR. Poniżej znajdziesz wszystkie dostępne typy do wyboru.
Text
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 0 For a Text QR Code |
text | String | false | Tekst wewnątrz kodu QR. |
WiFi
Parametr | Typ | Opcjonalne | Opis | ||||||
---|---|---|---|---|---|---|---|---|---|
type | Int | false | Use 1 For a WiFi QR Code | ||||||
network | String | false | Nazwa sieci Wi-Fi. | ||||||
password | String | true | Hasło do sieci Wi-Fi. | ||||||
hidden | String | true | Czy sieć Wi-Fi jest ukryta. | ||||||
encryption | String | true |
Rodzaj szyfrowania sieci Wi-Fi.
Możliwe wartości
|
SMS
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 2 For a SMS QR Code |
text | String | false | Treść wiadomości SMS. |
number | String | false | Numer telefonu. |
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 3 For a Email QR Code |
String | true | Adres e-mail w polu „Do”. | |
subject | String | true | Temat e-maila. |
message | String | true | Treść wiadomości e-mail. |
Phone
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 4 For a Phone QR Code |
number | String | false | Numer telefonu. |
Crypto
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 5 For a Crypto QR Code |
cryptotype | String | false | Typ kryptowaluty do wysłania. |
address | String | false | Adres kryptowaluty odbiorcy. |
amount | String | true | Kwota kryptowaluty do wysłania. |
vCard
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 6 For a vCard QR Code |
vc_first_name | String | false | Imię w vCard. |
vc_last_name | String | false | Nazwisko w vCard. |
vc_company | String | true | Firma. |
vc_job | String | true | Stanowisko. |
vc_street | String | true | Ulica. |
vc_city | String | true | Miasto. |
vc_state | String | true | Województwo. |
vc_zip | String | true | Kod pocztowy. |
vc_country | String | true | Kraj. |
vc_phone | String | true | Numer telefonu. |
vc_mobile | String | true | Numer telefonu komórkowego. |
vc_fax | String | true | Numer faksu. |
vc_website | String | true | Adres URL strony internetowej. |
vc_email | String | true | Adres e-mail. |
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 7 For a Whatsapp QR Code |
number | String | false | Numer telefonu. |
text | String | true | Wiadomość WhatsApp. |
vEvent
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 8 For a vEvent QR Code |
ve_summary | String | true | Podsumowanie vEvent. |
ve_description | String | true | Opis vEvent. |
ve_location | String | true | Lokalizacja vEvent. |
ve_timezone | String | true | Strefa czasowa początku i końca vEvent. Na przykład użyj „Europe/Warsaw” dla czasu w Warszawie. |
ve_url | String | true | URL vEvent. |
ve_start | String | true | Czas rozpoczęcia vEvent. Na przykład „20250101T083000” oznacza 1 stycznia 2025 o 8:30. |
ve_end | String | true | Czas zakończenia vEvent. Na przykład „20250101T093000” oznacza 1 stycznia 2025 o 9:30. |
Geo
Parametr | Typ | Opcjonalne | Opis |
---|---|---|---|
type | Int | false | Use 9 For a Geo QR Code |
ge_latitude | String | false | Szerokość geograficzna do zakodowania. |
ge_longitude | String | false | Długość geograficzna do zakodowania. |
Przykładowy kod QR z tekstem
URL | https://api.genqrcode.com/public/generate |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "type": 0, "text": "https://genqrcode.com" } |
Odpowiedź | ![]() |
Przykładowy kod QR Wi-Fi
URL | https://api.genqrcode.com/public/generate |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "type": 1, "network": "GenQRCode", "password": false, "hidden": false, "encryption": "wpa" } |
Odpowiedź | ![]() |
Ogólne parametry
Oto wszystkie konfigurowalne ogólne parametry wraz z opisem ich użycia.
Parametr | Typ | Wartość domyślna | Opis | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
imageformat | String | png |
Format obrazu kodu QR.
Możliwe wartości
|
||||||||||||||||||||
bordersize | Int | 4 | Rozmiar obramowania wokół kodu QR. | ||||||||||||||||||||
width | Int | 500 | Szerokość kodu QR. Maksymalny rozmiar: 2000. | ||||||||||||||||||||
height | Int | 500 | Wysokość kodu QR. Maksymalny rozmiar: 2000. |
Parametry kolorów
Oto wszystkie konfigurowalne parametry kolorów wraz z opisem ich użycia.
Parametr | Typ | Wartość domyślna | Opis |
---|---|---|---|
color | String | #000000 | Kolor kodu QR. Format powinien być #RRGGBB lub #RRGGBBAA. Wartości RGBA są zapisane w formacie szesnastkowym (od 00 do FF). |
custom_color_pattern | String | 1 | Wzór kolorów do użycia. Na przykład, jeśli kolory to #ff0000, #00ff00, #0000ff, a wzór to 1,2,3,3,2,1, kolory będą zmieniać się zgodnie z tym wzorem. Przykład zostanie podany później w przewodniku. |
background_color | String | #FFFFFF | Kolor tła kodu QR. Aby ustawić przezroczyste tło, ustaw kanał alfa na 00, np. #00000000. |
inner_eye_color | String | #000000 | Kolor wewnętrznych oczu kodu QR. |
outer_eye_color | String | #000000 | Kolor zewnętrznych oczu kodu QR. |
frame_color | String | #000000 | Kolor ramki wokół kodu QR. Ramka musi być włączona, aby to ustawienie miało efekt. |
Przykładowy kod QR z kolorem
URL | https://api.genqrcode.com/public/generate |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "type": 0, "text": "https://genqrcode.com", "color": "#ff0000", "background_color": "#aaffaa", "inner_eye_color": "#ffaaaa", "outer_eye_color": "#ffaaff" } |
Odpowiedź | ![]() |
Przykładowy kod QR ze wzorem kolorystycznym
URL | https://api.genqrcode.com/public/generate |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "type": 0, "text": "https://genqrcode.com", "color": "#e81416,#faeb36,#79c314,#487de7,#4b369d,#70369d", "custom_color_pattern": "1,1,2,2,3,3,4,4,5,5,6,6" } |
Odpowiedź | ![]() |
Parametry ramki, kształtu i logo
Oto wszystkie konfigurowalne parametry ramki, kształtu i logo wraz z opisem ich użycia.
Parametr | Typ | Wartość domyślna | Opis |
---|---|---|---|
style | Int | 0 |
Styl kwadratów kodu QR.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
inner_eye_style | Int | 0 |
Styl wewnętrznych oczu kodu QR.
0
1
2
3
4
5
6
7
|
outer_eye_style | Int | 0 |
Styl zewnętrznych oczu kodu QR.
0
1
2
3
4
5
6
|
frame_style | Int | 0 |
Styl ramki wokół kodu QR.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
|
frame_text | String | SCAN ME | Tekst wewnątrz ramki. Aby to było widoczne, musi być skonfigurowana ramka z tekstem. |
logo | String |
Logo do użycia wewnątrz kodu QR.
youtube
![]()
wifi
![]()
google-maps
![]()
facebook
![]()
spotify
![]()
threads
![]()
zoom
![]()
instagram
![]()
linkedin
![]()
genqrcode
![]()
google-drive
![]()
airbnb
![]()
skype
![]()
snapchat
![]()
twitter
![]()
x-twitter
![]()
reddit
![]() |
|
logo_remove_background | Boolean | false | Czy usunąć tło za logo. |
Przykładowy kod QR z logo i kształtem
URL | https://api.genqrcode.com/public/generate |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "type": 0, "text": "https://x.com/genqrcode", "style": 22, "inner_eye_style": 1, "outer_eye_style": 4, "frame": 10, "frame_text": "My X Page", "logo": "x-twitter", "logo_remove_background":true } |
Odpowiedź | ![]() |
Przykładowe niestandardowe logo
Aby użyć niestandardowego logo, należy przesłać je za pomocą żądania multipart form data. Wynik można wykorzystać w polu logo.
URL | https://api.genqrcode.com/public/upload/logo |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY Content-Type: multipart/form-data |
Odpowiedź | 586d0136af8a06e4a2b50cf9f2af0b72 |
API szybkich kodów QR
API szybkich kodów QR kosztuje jedynie 1/50 tokena standardowego API. Kody QR są zoptymalizowane pod kątem szybkości i rozmiaru pobierania. Chociaż obsługuje wszystkie typy kodów QR, wspiera jedynie kilka parametrów dostosowywania.
Parametry szybkich kodów QR
Oto wszystkie parametry szybkich kodów QR wraz z opisem ich użycia.
Parametr | Typ | Wartość domyślna | Opis | ||||
---|---|---|---|---|---|---|---|
imageformat | String | png |
Format obrazu kodu QR.
Możliwe wartości
|
||||
bordersize | Int | 4 | Rozmiar obramowania wokół kodu QR. | ||||
width | Int | 500 | Szerokość kodu QR. Automatycznie dostosuje się do najbliższego skonfigurowanego rozmiaru, aby uniknąć artefaktów skalowania. Maksymalny rozmiar: 4000. | ||||
height | Int | 500 | Wysokość kodu QR. Automatycznie dostosuje się do najbliższego skonfigurowanego rozmiaru, aby uniknąć artefaktów skalowania. Maksymalny rozmiar: 4000. |
Przykładowy szybki kod QR z tekstem
URL | https://api.genqrcode.com/public/fastgenerate |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "imageformat": "png", "type": 0, "text": "https://genqrcode.com" } |
Odpowiedź | ![]() |
API szybkiej partii kodów QR
Przykładowy szybki kod QR z tekstem w partii
URL | https://api.genqrcode.com/public/fastbatch |
---|---|
Metoda żądania | POST |
Nagłówki | GenQRCode-apikey: API_KEY |
Treść żądania | { "QR Code 1": { "text": "https://genqrcode.com", "type": 0, "width": 500, "bordersize": 4, "imageformat": "png", "height": 500 }, "QR Code 2": { "text": "https://genqrcode.com/dynamicview", "type": 0, "width": 500, "bordersize": 4, "imageformat": "png", "height": 500 }, "QR Code 3": { "text": "https://genqrcode.com/pricing", "type": 0, "width": 500, "bordersize": 4, "imageformat": "png", "height": 500 } } |
Odpowiedź | QR Codes in a zip file. |