List QR codes
curl --request GET \
--url https://management.scanova.io/qr/ \
--header 'Authorization: <api-key>'import requests
url = "https://management.scanova.io/qr/"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://management.scanova.io/qr/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://management.scanova.io/qr/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://management.scanova.io/qr/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://management.scanova.io/qr/")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://management.scanova.io/qr/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"count": 214,
"next": 2,
"previous": null,
"results": [
{
"id": 88231,
"qrid": "QR7K9M2XN",
"name": "Product launch flyer",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": {
"id": 1,
"name": "Website URL",
"slug": "url",
"description": "Link a QR code straight to any website.",
"preview_image": "https://cdn.scanova.io/categories/url.png",
"allowed_qr_types": ["dy", "st"],
"allowed_qr_types_display": ["Dynamic", "Static"],
"is_active": true
},
"dynamic_url_object": {
"url_hash": "a1b2c3",
"complete_url": "https://qr.link/a1b2c3",
"visit_count": 1042
},
"thumbnail": "https://cdn.scanova.io/thumbnails/QR7K9M2XN.png",
"is_active": true,
"folder": null,
"created": "2026-06-02T14:03:11Z",
"modified": "2026-08-10T08:41:02Z",
"tags_list": ["campaign-2026", "print"],
"is_password_protected": false,
"is_age_restricted": false,
"created_by": { "full_name": "Jordan Lee" },
"published_at": "2026-06-02T14:05:00Z",
"is_currently_draft": false
}
]
}
واجهة الإدارة — رموز QR
سرد رموز QR
GET /qr/
GET
/
qr
/
List QR codes
curl --request GET \
--url https://management.scanova.io/qr/ \
--header 'Authorization: <api-key>'import requests
url = "https://management.scanova.io/qr/"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://management.scanova.io/qr/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://management.scanova.io/qr/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://management.scanova.io/qr/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://management.scanova.io/qr/")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://management.scanova.io/qr/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"count": 214,
"next": 2,
"previous": null,
"results": [
{
"id": 88231,
"qrid": "QR7K9M2XN",
"name": "Product launch flyer",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": {
"id": 1,
"name": "Website URL",
"slug": "url",
"description": "Link a QR code straight to any website.",
"preview_image": "https://cdn.scanova.io/categories/url.png",
"allowed_qr_types": ["dy", "st"],
"allowed_qr_types_display": ["Dynamic", "Static"],
"is_active": true
},
"dynamic_url_object": {
"url_hash": "a1b2c3",
"complete_url": "https://qr.link/a1b2c3",
"visit_count": 1042
},
"thumbnail": "https://cdn.scanova.io/thumbnails/QR7K9M2XN.png",
"is_active": true,
"folder": null,
"created": "2026-06-02T14:03:11Z",
"modified": "2026-08-10T08:41:02Z",
"tags_list": ["campaign-2026", "print"],
"is_password_protected": false,
"is_age_restricted": false,
"created_by": { "full_name": "Jordan Lee" },
"published_at": "2026-06-02T14:05:00Z",
"is_currently_draft": false
}
]
}
يسرد أو ينشئ رموز QR على مضيف Management API (
management.scanova.io)، مصادَقًا عليها بمفتاح Management API الخام الخاص بك — راجع النظرة العامة إذا لم تُعِدَّ ذلك بعد.
GET https://management.scanova.io/qr/
POST https://management.scanova.io/qr/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
GET /qr/ يعيد قائمة مُرقّمة إلى صفحات وقابلة للتصفية برموز QR المملوكة للحساب الذي يخصه المفتاح.
معلمات الاستعلام
string
بحث نصي حر مقابل اسم رمز QR، و
qrid، وسلاج الرابط الديناميكي، واسم المجلد.string
سلاجات فئات مفصولة بفواصل، مثل
url,event. تُطابق أيًا من الفئات المدرجة.string
أسماء وسوم مفصولة بفواصل. تُطابق أيًا من الوسوم المدرجة.
string
أنواع رموز QR مفصولة بفواصل:
dy (ديناميكي)، st (ثابت).integer
معرّف مجلد — يعيد فقط رموز QR الموجودة في ذلك المجلد.
string
تاريخ بصيغة ISO. يعيد رموز QR التي أُنشئت في هذا التاريخ أو بعده.
string
تاريخ بصيغة ISO. يعيد رموز QR التي أُنشئت في هذا التاريخ أو قبله.
string
واحد أو أكثر من
name، created، qr_type، category__name، مفصولة بفواصل. سبق حقلًا بـ - للترتيب التنازلي، مثل ordering=-created.integer
افتراضي:"1"
رقم الصفحة.
integer
افتراضي:"10"
النتائج لكل صفحة، بحد أقصى
100.{
"count": 214,
"next": 2,
"previous": null,
"results": [
{
"id": 88231,
"qrid": "QR7K9M2XN",
"name": "Product launch flyer",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": {
"id": 1,
"name": "Website URL",
"slug": "url",
"description": "Link a QR code straight to any website.",
"preview_image": "https://cdn.scanova.io/categories/url.png",
"allowed_qr_types": ["dy", "st"],
"allowed_qr_types_display": ["Dynamic", "Static"],
"is_active": true
},
"dynamic_url_object": {
"url_hash": "a1b2c3",
"complete_url": "https://qr.link/a1b2c3",
"visit_count": 1042
},
"thumbnail": "https://cdn.scanova.io/thumbnails/QR7K9M2XN.png",
"is_active": true,
"folder": null,
"created": "2026-06-02T14:03:11Z",
"modified": "2026-08-10T08:41:02Z",
"tags_list": ["campaign-2026", "print"],
"is_password_protected": false,
"is_age_restricted": false,
"created_by": { "full_name": "Jordan Lee" },
"published_at": "2026-06-02T14:05:00Z",
"is_currently_draft": false
}
]
}
next وprevious هما أرقام صفحات (أو null)، وليسا روابط كاملة — ترقيم الصفحات في هذه الـ API يختلف عن PageNumberPagination العادي في DRF من هذه الناحية. اجلب الصفحة التالية عبر ?page=2، لا عبر اتّباع رابط من الاستجابة.category هي كائن الفئة الكامل — الحقول الموضحة أعلاه مجموعة فرعية تمثيلية؛ نفس الكائن يحمل أيضًا tags، is_new، has_landing_page، helpdesk_link، qr_name_pattern، created، وmodified. dynamic_url_object موجود فقط لرموز QR الديناميكية (dy).ذات صلة
- إنشاء رمز QR — العملية الأخرى لنفس نقطة النهاية هذه.
- الاسترجاع — اعمل على رمز QR واحد من هذه القائمة.
- التحديث — اعمل على رمز QR واحد من هذه القائمة.
- الحذف — اعمل على رمز QR واحد من هذه القائمة.
- تنزيل صورة رمز QR — صيّر أحد رموز QR هذه بصيغة PNG/SVG/PDF/إلخ.
- سرد رموز QR في سلة المهملات — إلى أين ينتقل رمز QR بعد حذفه من هذه القائمة.
- نظرة عامة على Management API — مخطط المصادقة وقواعد الحصص التي تنطبق على نقطة النهاية هذه.
التفويضات
Send your Management API key as the raw value of the Authorization header — no "Bearer " or "Token " prefix, and no other characters. Example: Authorization: 401f7ac837da42b97f613d789819ff93537bee6a. A header containing more than one space-separated part is rejected outright. Requests also require the request's Host header to be the management API host (e.g. management.scanova.io) — the same key sent to the regular API host will not authenticate.
الاستجابة
200
List of QR codes
هل كانت هذه الصفحة مفيدة؟
⌘I