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
}
]
}
API de gestión — Códigos QR
Listar códigos 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
}
]
}
Lista o crea códigos QR en el host de la API de gestión (
management.scanova.io), autenticado con tu clave sin procesar de la API de gestión — consulta el resumen si aún no has configurado esto.
GET https://management.scanova.io/qr/
POST https://management.scanova.io/qr/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
GET /qr/ devuelve una lista paginada y filtrable de los códigos QR propiedad de la cuenta a la que pertenece la clave.
Parámetros de consulta
string
Búsqueda de texto libre en el nombre del QR,
qrid, el slug de URL dinámica y el nombre de la carpeta.string
Slugs de categoría separados por comas, p. ej.
url,event. Coincide con cualquiera de las categorías indicadas.string
Nombres de etiquetas separados por comas. Coincide con cualquiera de las etiquetas indicadas.
string
Tipos de QR separados por comas:
dy (Dinámico), st (Estático).integer
ID de carpeta — devuelve solo los códigos QR de esa carpeta.
string
Fecha ISO. Devuelve códigos QR creados en o después de esta fecha.
string
Fecha ISO. Devuelve códigos QR creados en o antes de esta fecha.
string
Uno o más de
name, created, qr_type, category__name, separados por comas. Antepón - a un campo para ordenar de forma descendente, p. ej. ordering=-created.integer
predeterminado:"1"
Número de página.
integer
predeterminado:"10"
Resultados por página, hasta un máximo de
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 y previous son números de página (o null), no URLs completas — la paginación de esta API difiere en ese aspecto de la PageNumberPagination estándar de DRF. Obtén la página siguiente con ?page=2, no siguiendo una URL de la respuesta.category es el objeto de categoría completo — los campos mostrados arriba son un subconjunto representativo; el mismo objeto también incluye tags, is_new, has_landing_page, helpdesk_link, qr_name_pattern, created y modified. dynamic_url_object solo está presente para códigos QR Dinámicos (dy).Relacionado
- Crear un código QR — la otra operación de este mismo endpoint.
- Obtener — opera sobre un único código QR devuelto por esta lista.
- Actualizar — opera sobre un único código QR devuelto por esta lista.
- Eliminar — opera sobre un único código QR devuelto por esta lista.
- Descargar la imagen de un código QR — renderiza uno de estos códigos QR como PNG/SVG/PDF/etc.
- Listar códigos QR en la papelera — a dónde va un código QR después de eliminarse de esta lista.
- Resumen de la API de gestión — el esquema de autenticación y las reglas de cuota que se aplican a este endpoint.
Autorizaciones
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.
Respuesta
200
List of QR codes
¿Esta página le ayudó?
⌘I