Retrieve a QR code
curl --request GET \
--url https://management.scanova.io/qrcode/{qrid}/ \
--header 'Authorization: <api-key>'import requests
url = "https://management.scanova.io/qrcode/{qrid}/"
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/qrcode/{qrid}/', 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/qrcode/{qrid}/",
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/qrcode/{qrid}/"
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/qrcode/{qrid}/")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://management.scanova.io/qrcode/{qrid}/")
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{
"id": 88231,
"qrid": "QR7K9M2XN",
"name": "Product launch flyer",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": { "id": 1, "name": "Website URL", "slug": "url" },
"info": "{\"type\":\"url\",\"data\":{\"url\":\"https://example.com\"}}",
"pattern_info": null,
"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,
"published_at": "2026-06-02T14:05:00Z",
"is_currently_draft": false
}
API de gestion — Codes QR
Récupérer
GET /qrcode//
GET
/
qrcode
/
{qrid}
/
Retrieve a QR code
curl --request GET \
--url https://management.scanova.io/qrcode/{qrid}/ \
--header 'Authorization: <api-key>'import requests
url = "https://management.scanova.io/qrcode/{qrid}/"
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/qrcode/{qrid}/', 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/qrcode/{qrid}/",
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/qrcode/{qrid}/"
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/qrcode/{qrid}/")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://management.scanova.io/qrcode/{qrid}/")
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{
"id": 88231,
"qrid": "QR7K9M2XN",
"name": "Product launch flyer",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": { "id": 1, "name": "Website URL", "slug": "url" },
"info": "{\"type\":\"url\",\"data\":{\"url\":\"https://example.com\"}}",
"pattern_info": null,
"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,
"published_at": "2026-06-02T14:05:00Z",
"is_currently_draft": false
}
Récupère, met à jour ou supprime un QR code unique sur l’hôte Management API (
management.scanova.io), authentifié avec votre clé Management API brute.
GET https://management.scanova.io/qrcode/{qrid}/
PUT https://management.scanova.io/qrcode/{qrid}/
PATCH https://management.scanova.io/qrcode/{qrid}/
DELETE https://management.scanova.io/qrcode/{qrid}/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
string
requis
Le
qrid du QR code (par ex. QR7K9M2XN) — l’identifiant lisible renvoyé par GET /qr/, et non l’id numérique.Cette même vue est également accessible via
/qr/{qrid}/ (c’est-à-dire sous le même préfixe de chemin que l’endpoint de liste/création) — les deux chemins pointent vers la vue et le comportement identiques. Cette référence documente /qrcode/{qrid}/ puisque c’est le chemin vérifié pour cet ensemble de documentation, mais les deux fonctionnent.GET renvoie la structure détaillée complète — chaque champ accepté par le serializer de création/mise à jour, plus les champs calculés, mais sans les champs liés à l’assistant IA (ai_qr_code, ai_session_id, ai_chat_history) ni les champs de comptage de réponses inter-bases de données que l’endpoint de liste omet également.
{
"id": 88231,
"qrid": "QR7K9M2XN",
"name": "Product launch flyer",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": { "id": 1, "name": "Website URL", "slug": "url" },
"info": "{\"type\":\"url\",\"data\":{\"url\":\"https://example.com\"}}",
"pattern_info": null,
"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,
"published_at": "2026-06-02T14:05:00Z",
"is_currently_draft": false
}
Portée et erreurs
Chaque méthode ici n’opère que sur les QR codes appartenant au compte auquel appartient la clé — demander unqrid que vous ne possédez pas (ou qui n’existe pas) renvoie 404, et non 403, afin que vous ne puissiez pas utiliser cet endpoint pour sonder l’existence des QR codes d’autres comptes.
Voir aussi
- Mettre à jour — l’autre opération de ce même endpoint.
- Supprimer — l’autre opération de ce même endpoint.
- Lister les QR codes — trouvez un
qridà récupérer ici. - Créer un QR code — la création d’un QR code renvoie cette même structure détaillée complète.
- Télécharger l’image d’un QR code — générez ce QR code en fichier image.
- Lister les QR codes dans la corbeille — où atterrit un QR code après un
DELETEici.
Autorisations
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.
Paramètres de chemin
Réponse
200
QR code detail
Cette page vous a-t-elle été utile ?
⌘I