統合のために
単一のリクエストでQRコード
サービスに QR コードの生成を追加します. GET を介してコンテンツとデザインの設定を送信し、追加のスキャンチェックなしに PNG または SVG を受け取ります。
自由、永遠。PNG、SVG、API - 料金やサブスクリプションはありません。
直接QRコード リダイレクトなし 終了なし
GEThttps://qivo.umind.group/
要求と認証
X-API-キーヘッダーにキーを入力します. 編集セッションやクッキーは必要ありません. 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のみを受け入れる場合は、キーパラメーターにキーを入力します。
https://qivo.umind.group/?key=YOUR_SECRET_KEY&data=https%3A%2F%2Fumind.group&format=png&size=1024タイトルはキーパラメーターを上回る。URLコードパラメーター値: # → %23, + → %2B, and & within a value → %26.
HTTPS を使用してサーバーにキーを保持します. 公開 JavaScript に置かないでください. GET URL のキーとデータは、ブラウザの歴史やサーバーのログに表示される可能性があります. キーのタイトルを好む。
コード例
QIVO_API_KEY 環境変数にキーを保存し、ページコードに掲載しないでください。
<?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);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()));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 / key | string | 必要 | 秘密キー:ヘッダーまたはGETパラメーター |
data | string | テキストとURL | テキスト/URLに必要なコンテンツ |
contentType | string | 選択肢 | texturlwifivcardwhatsapptelegramphoneviberemailsmsデフォルト: text |
format | string | 選択肢 | pngsvgデフォルト: png |
size | integer | 選択肢 | 25651210242048デフォルト: 1024 |
shape | string | 選択肢 | squaresoftroundeddotsleaf-softleafhorizontalverticalpointednotchedstardiamondxx-roundedplusplus-roundedheartsparkleconfettiデフォルト: square |
border | string | 選択肢 | squarecircleroundedskewdrop-tldrop-brleafleaf-inner-brleaf-circleleaf-inner-tlsquare-circlesoft-tlsoft-brsoft-leafroughデフォルト: square |
center | string | 選択肢 | squarecircleroundedskewroughdrop-tldrop-brleafgearstardiamondxx-roundedplusplus-roundedheartデフォルト: square |
foreground / eyeColor | string | 選択肢 | #RRGGBB デフォルト: #192b39 |
background | string | 選択肢 | #RRGGBB デフォルト: #ffffff |
level | string | 選択肢 | LMQHデフォルト: M |
quietZone | integer | 選択肢 | 0~12 モジュール デフォルト: 4 |
logo | string | 選択肢 | nonewhatsapplinklocationwificredentialemailscanbellmenuscan-mescan-me-v2paypalbitcoinsparkplusdiamondデフォルト: none |
logoScale | integer | 選択肢 | 12–30 デフォルト: 24 |
ロゴを持つコードは自動的に H レベルを使用します GET は内蔵アイコンをサポートし、ファイルアップロードや外部ロゴ URL はサポートされません。
コンテンツタイプ
フィールドはコンテンツに依存しますURLには、完全な https:// または http:// アドレスを提供します電話番号には、国のコードが含まれます。
| contentType | 必要なフィールド | オプションフィールド |
|---|---|---|
| text / url | data | — |
| phone / viber | phone | — |
| whatsapp / sms | phone | message |
| telegram | telegram | — |
| subject, message | ||
| wifi | ssid; wifiSecurity≠nopass → wifiPassword | wifiSecurity (WPA), wifiHidden (0) |
| vcard | firstName / lastName | organization, jobTitle, phone, email, website, address |
https://qivo.umind.group/?key=YOUR_SECRET_KEY&contentType=phone&phone=%2B380671234567&format=svg火の反応
コンテンツタイプは画像/png または画像/svg+xml です。
{"error":"Invalid API key."}- 200 — イメージ生成。
- 401 — 欠けているか不適切な鍵。
- 405 — GETは必要です。
- 422 — 無効なパラメーターまたは欠けているコンテンツ。
- 429 — 利率制限を超え、退職後:60。
- 503 — API アクセスは設定されていません、または保護は一時的に利用できません。
- 500 — 内世のエラー
制限と認証
デフォルト制限はIPごとに60件のリクエストで、暗号化されたコンテンツは800バイトに制限され、PNG出力は2048×2048pxまでサポートされます。
API は、パラメーター形式、サイズおよび対比を確認しますが、デコーダーを実行したり、QR がスキャンしているかどうかをチェックしたりしません。