QivoQR کوڈ سٹیڈیو
QR کوڈ بنائیں

انضمام کے لئے

ایک درخواست میں ایک QR کوڈ

آپ کی خدمت میں QR کوڈ کی پیداوار شامل کریں۔ GET کے ذریعے مواد اور ڈیزائن کی ترتیبات بھیجیں اور کوئی اضافی اسکین چیک کے بغیر ایک PNG یا SVG حاصل کریں۔

مفت ۔ ہمیشہ کے لئےPNG، SVG اور API - کوئی ادائیگی یا رکنیت نہیں.

براہ راست QR کوڈ کوئی ٹرانسمیشن نہیں، کوئی ختم نہیں

GEThttps://qivo.umind.group/

درخواست اور تصدیق

X-API-Key ہیڈر میں اپنے کلید کو داخل کریں۔ ایڈیٹر سیشن اور کوکیز کی ضرورت نہیں ہے۔ اس مثال میں QIVO_API_KEY ایک کلائنٹ ماحول متغیر ہے جس میں آپ کا کلید شامل ہے۔

مثال کے طور پر
curl --fail --show-error --get 'https://qivo.umind.group/' \
  --header "X-API-Key: $QIVO_API_KEY" \
  --data-urlencode 'data=https://umind.group' \
  --data-urlencode 'contentType=url' \
  --data-urlencode 'format=svg' \
  --data-urlencode 'shape=rounded' \
  --data-urlencode 'size=1024' \
  --output qr-code.svg

اگر آپ کا انضمام صرف ایک URL قبول کرتا ہے تو کلید کو کلید پیرامیٹر میں منتقل کریں:

مثال کے طور پر URL
https://qivo.umind.group/?key=YOUR_SECRET_KEY&data=https%3A%2F%2Fumind.group&format=png&size=1024

آپ کے کلید کے ساتھ YOUR_SECRET_KEY کو تبدیل کریں۔ عنوان کلید پیرامیٹر سے زیادہ ترجیح دیتا ہے۔ URL کوڈ پیرامیٹر کے معیار: # → %23, + → %2B، اور & ایک معیار کے اندر → %26.

HTTPS کا استعمال کریں اور سرور پر کلید رکھیں. اسے عوامی جاوا اسکرپٹ میں نہ رکھیں. GET URLs میں کلید اور اعداد و شمار براؤزر کی تاریخ یا سرور کے ریکارڈ میں ظاہر ہوسکتے ہیں.

مثالیں کوڈ

آپ کے سرور پر ان مثالوں کو چلائیں۔ کلید کو QIVO_API_KEY ماحول کی متغیر میں ذخیرہ کریں۔ اسے صفحہ کوڈ میں شائع نہ کریں۔

qr-code.php
<?php
$key = getenv('QIVO_API_KEY');
if (!$key) throw new RuntimeException('Set QIVO_API_KEY');
$query = http_build_query([
    'data' => 'https://umind.group', 'format' => 'svg',
    'shape' => 'rounded', 'size' => 1024,
], '', '&', PHP_QUERY_RFC3986);
$curl = curl_init('https://qivo.umind.group/?' . $query);
curl_setopt_array($curl, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ['X-API-Key: ' . $key],
    CURLOPT_TIMEOUT => 30,
]);
$image = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_RESPONSE_CODE);
curl_close($curl);
if ($image === false || $status !== 200) {
    throw new RuntimeException('Qivo request failed: ' . $status);
}
file_put_contents('qr-code.svg', $image);
qr-code.mjs
import { writeFile } from 'node:fs/promises';
const key = process.env.QIVO_API_KEY;
if (!key) throw new Error('Set QIVO_API_KEY');
const url = new URL('https://qivo.umind.group/');
url.search = new URLSearchParams({
  data: 'https://umind.group', format: 'svg',
  shape: 'rounded', size: '1024'
});
const response = await fetch(url, {
  headers: { 'X-API-Key': key },
  signal: AbortSignal.timeout(30000)
});
if (!response.ok) throw new Error(`Qivo request failed: ${response.status}`);
await writeFile('qr-code.svg', Buffer.from(await response.arrayBuffer()));
qr-code.py
import os
from pathlib import Path
from urllib.parse import urlencode
from urllib.request import Request, urlopen

key = os.environ['QIVO_API_KEY']
query = urlencode({
    'data': 'https://umind.group', 'format': 'svg',
    'shape': 'rounded', 'size': 1024,
})
request = Request('https://qivo.umind.group/?' + query,
                  headers={'X-API-Key': key})
# urlopen raises HTTPError for unsuccessful HTTP responses.
with urlopen(request, timeout=30) as response:
    Path('qr-code.svg').write_bytes(response.read())

ڈیزائن پیرامیٹرز

پارمیٹرقسممطالبہقیمتیں
X-API-Key / keystringمطلوبہ
رازداری کا کلید: header یا GET parameter
datastringمتن اور URL کے لئے
متن / URL کے لئے ضروری مواد
contentTypestringاختیاری
texturlwifivcardwhatsapptelegramphoneviberemailsms
ڈیفالٹ: text
formatstringاختیاری
pngsvg
ڈیفالٹ: png
sizeintegerاختیاری
25651210242048
ڈیفالٹ: 1024
shapestringاختیاری
squaresoftroundeddotsleaf-softleafhorizontalverticalpointednotchedstardiamondxx-roundedplusplus-roundedheartsparkleconfetti
ڈیفالٹ: square
borderstringاختیاری
squarecircleroundedskewdrop-tldrop-brleafleaf-inner-brleaf-circleleaf-inner-tlsquare-circlesoft-tlsoft-brsoft-leafrough
ڈیفالٹ: square
centerstringاختیاری
squarecircleroundedskewroughdrop-tldrop-brleafgearstardiamondxx-roundedplusplus-roundedheart
ڈیفالٹ: square
foreground / eyeColorstringاختیاری
#RRGGBB
ڈیفالٹ: #192b39
backgroundstringاختیاری
#RRGGBB
ڈیفالٹ: #ffffff
levelstringاختیاری
LMQH
ڈیفالٹ: M
quietZoneintegerاختیاری
0 - 12 ماڈیول
ڈیفالٹ: 4
logostringاختیاری
nonewhatsapplinklocationwificredentialemailscanbellmenuscan-mescan-me-v2paypalbitcoinsparkplusdiamond
ڈیفالٹ: none
logoScaleintegerاختیاری
12–30
ڈیفالٹ: 24

ایک لوگو کے ساتھ کوڈز خود کار طریقے سے سطح H کا استعمال کرتے ہیں GET انضمام آیکونوں کی حمایت کرتا ہے؛ فائل اپ لوڈ اور بیرونی لوگو URLs کی حمایت نہیں کی جاتی ہے.

مواد کی اقسام

فیلڈز مواد پر منحصر ہے. URLs کے لئے، ایک مکمل https:// یا http:// ایڈریس فراہم کریں. فون نمبر کے لئے، ملک کوڈ شامل کریں.

contentTypeمطلوبہ میداناختیاری میدان
text / urldata
phone / viberphone
whatsapp / smsphonemessage
telegramtelegram
emailemailsubject, message
wifissid; wifiSecurity≠nopass → wifiPasswordwifiSecurity (WPA), wifiHidden (0)
vcardfirstName / lastNameorganization, jobTitle, phone, email, website, address
ٹیلی فون مثال
https://qivo.umind.group/?key=YOUR_SECRET_KEY&contentType=phone&phone=%2B380671234567&format=svg

آگ کا جواب

ایک کامیاب جواب یہ ہے کہ تصویر فائل خود، کوئی JSON وراپر کے بغیر. Content-Type تصویر/png یا تصویر/svg+xml ہے.

JSON
{"error":"Invalid API key."}
  • 200 — تصویر پیدا کی گئی ہے.
  • 401 — گمشدہ یا ناکام کلید
  • 405 — حاصل کرنے کی ضرورت ہے.
  • 422 — مندرجہ ذیل وجوہات یا مندرجہ ذیل مندرجہ ذیل مندرجہ ذیل ہیں:
  • 429 — فائدہ اٹھانے کے بعد: 60
  • 503 — API تک رسائی کی ترتیب نہیں ہے یا حفاظت موقتاً دستیاب نہیں ہے.
  • 500 — اندرونی نسل کی غلطی

محدودیت اور تصدیق

ڈیفالٹ حد 60 درخواستوں فی منٹ ہے IP. کوڈ کردہ مواد 800 بائٹ تک محدود ہے. PNG پیداوار 2048 × 2048 px تک کی حمایت کرتا ہے. SVG ویکٹر شکلوں کو برقرار رکھتا ہے.

API پیرامیٹر فارمیٹس، سائز اور کنٹرول کی تصدیق کرتا ہے، لیکن ایک ڈکوڈر چلتا نہیں ہے یا چیک کرتا ہے کہ QR اسکن کیا جاتا ہے.

تک رسائی حاصل کریں

API مفت ہے اور ہمیشہ مفت رہیں گے.ایک خفیہ کلید کی درخواست کے لئے مختصر فارم مکمل کریں.

تمام تین میدانوں کی ضرورت ہوتی ہے ۔ فارم کی تفصیلات آپ کی درخواست اور جواب کا جائزہ لینے کے لئے Qivo ٹیم کو بھیجے جائیں گی ۔