QR-კოდების გენერაციის API
გენერირება სტატიკური QR-კოდების API-ით თქვენი აპლიკაციების ინტეგრაციისთვის.
გენერაციის API
გენერირება სტატიკური QR-კოდების API-ით: გაგზავნეთ სტრიქონი და design ობიექტი — მიიღეთ წამებში SVG.
დიზაინი და ბრენდინგი
გამოიყენეთ ბრენდის ფერები, მოდულების ფორმები, ჩარჩოები და ლოგოები — ყველაფერი design ობიექტის მეშვეობით.
Endpoints
/v1/generate
სხეული: სავალდებლო data, არჩევითი design. 200 პასუხში SVG — data.qr_code-ში.
POST JSON-ით: სავალდებულო data და არჩევითი design (როგორც კონსტრუქტორში). პასუხი HTTP 200, SVG data.qr_code-ში. WebQR არ ინახავს ჩაწერებს — თქვენი საცავი.
/v1/usage
მხოლოდ წაკითხვა: პერიოდის მრიცხველები, data.items ცარიელი. გენერაციის ლიმიტს არ ხარჯავს.
GET /v1/usage — პერიოდის მრიცხველები; data.items ყოველთვის ცარიელია. used_count-ს არ ზრდის.
API stateless-ია WebQR-ში: სერვერზე ბიბლიოთეკა არ ინახება. შეინახეთ SVG და მეტადატა თქვენს სისტემაში.
უსაფრთხოება პროდაქშენში
API გასაღები განულებას არ უნდა გადასცეთ კლიენტს — იგი სერვერული საიდუმლოა.
- საიდუმლო მხოლოდ სერვერზე; კლიენტებს — თქვენი HTTPS, არა API გასაღები.
- გასაღები შემოიფარგლეთ სერვერების IP-ებით (ან CDN-ის ფიქსირებული გასასვლელით).
- სურვილისამებრ ჩართეთ სავალდებულო HMAC ხელმოწერა გასაღების პარამეტრებში.
ყოველ მოთხოვნაში გამოიყენეთ X-API-Key ჰედერი. გასაღებები იქმნება კაბინეტში.
მოთხოვნის მაგალითები (JSON სხეული)
პროში მოდულები უწყვეტ ფონზე
JSON სხეული
{
"data": "https://webqr.io/",
"design": {
"size": 1024,
"backgroundColor": "#FFFFFF",
"color": "#000000",
"transparent": false,
"styleType": "a7k2m9",
"eyeType": "r2s4t6",
"eyeInnerType": "h7i9j1",
"roundedCorners": true,
"cornerRadius": 20,
"showColorGradient": false
}
}
პასუხი
HTTP 200 იძლევა JSON-ს success-ით, data.qr_code-ში SVG სტრიქონს, contentის ექოს, დანორმალებულ design-სა და usage სექციას.
ფერადი ფონი და სხვა მოდულის ფორმა
JSON სხეული
{
"data": "https://webqr.io/",
"design": {
"size": 1024,
"backgroundColor": "#0E2A47",
"color": "#F8FAFC",
"borderColor": "#58B4FF",
"centerColor": "#58B4FF",
"transparent": false,
"styleType": "m4k6l8",
"eyeType": "x4y6z8",
"eyeInnerType": "n9o1p3",
"roundedCorners": true,
"cornerRadius": 20,
"showColorGradient": false
}
}
მოდულების დიაგონალური გრადიენტი
JSON სხეული
{
"data": "https://webqr.io/",
"design": {
"size": 1024,
"backgroundColor": "#FFFFFF",
"color": "#1e3a5f",
"borderColor": "#2563EB",
"centerColor": "#7C3AED",
"transparent": false,
"styleType": "a7k2m9",
"eyeType": "r2s4t6",
"eyeInnerType": "h7i9j1",
"roundedCorners": true,
"cornerRadius": 20,
"showColorGradient": true,
"fromColor": "#2563EB",
"toColor": "#7C3AED",
"styleColorGradient": "diagonal"
}
}
მოთხოვნის მაგალითი
curl -X POST https://api.webqr.io/v1/generate \
-H "Content-Type: application/json" \\n -H "X-API-Key: wq_xxxxxxxxxx_your_secret" \\n -d @payload.json
JSON მოთავსეთ payload.json ფაილში ან გადაუსწორეთ არგუმენტში -d, ხოლო საიდუმლო გასაღები მხოლოდ სერვერმა იცოდეს — არა ბრაუზერმა და არა მობილურმა აპმა.
დიზაინი
კაბინეტში არის სრული ვიზუალური QR კონსტრუქტორი: დიზაინს აგროვებთ ინტერფეისში, იგივე პარამეტრები აისახება design ობიექტში API მოთხოვნაში — ბოლო JSON-ის შედგენა უფრო მარტივია.
გამოიყენეთ Content-Type: application/json. ROOT-ში data (სავალდებულო) და design (არასავალდებულო). markerOutColor მსგავსი ფსევდონიმები ერწყმება borderColor-ს; დარღვევები — HTTP 422.
ქვემოთ მოცემული ესკიზები ემთხვევა კონსტრუქტორის დიზაინის ნაბიჯს: ფილის ქვეშ წარწერა გამოიყენეთ design.styleType, design.eyeType ან design.eyeInnerType-ში.
იკონები იგივეა, რაც დიზაინის ნაბიჯზე. თითოეულის ქვეშ — კანონიკური კოდი შესაბამისი API ველისთვის.
მოდულის კოდები
გარე იზომები (eyeType)
შიდა იზომები (eyeInnerType)
ხშირად დასმული კითხვები
კალენდარული თვის ჩართული წარმატებული გენერაციები გეგმების მიხედვით: 200 (Starter), 5000 (Premium), 25000 (Business), 100000 (Business Plus). თუ მეტი გჭირდებათ — დაგვიკავშირდით.
დიახ! შეგიძლიათ შექმნათ QR API-ით ან მთავარ კონსტრუქტორში.
დიახ. Starter-ში უკვე შედის Static QR API: კალენდარულ თვეში ჩართული წარმატებული გენერაციების ლიმიტია 200; Premium — 5000; Business — 25000; Business Plus — 100000; ნორმა იხსნება თითო ახალი კალენდარული თვის დასაწყისში. „მხოლოდ API“-ის ცალკე გამოწერა არ გჭირდებათ; საჭიროებისამებრ შეიძლება გადახდადი ოვერეიჯი.
JSON-ში იქნება SVG data.qr_code ველში, იგივე content და design რაც გაგზავნეთ, და usage კვოტისთვის. ნაკადი stateless არის: WebQR თითო API გადაცემას თქვენს QR სიაში პროექტად არ ამატებს და გრძელვადიანი ID პასუხში არ გამოდის — SVG შეინახეთ და მართეთ იქ, სადაც ინტეგრირებთ. იმას, რასაც კონსტრუქტორში შეინახავთ WebQR-ში, სწორედ იმავე კაბინეტის წესები ეხება.
გჭირდებათ მეტი მოთხოვნა?
დაგვიკავშირდით, თუ გჭირდებათ დღიური ლიმიტის გაზრდა პირადი ან კომერციული გამოყენებისთვის.