Para desarrolladores
API de códigos QR
Genera códigos QR y lee analíticas de escaneo directamente desde tu propio código. La API de CodesQR es una interfaz REST pequeña y predecible que devuelve JSON, disponible en cualquier cuenta de CodesQR.
Autenticación
Cada solicitud se autentica con una clave de API secreta enviada como token bearer. Crea una clave desde tu panel en Ajustes, guárdala en el servidor y no la expongas nunca en el código del cliente. Todas las solicitudes van por HTTPS a https://api.codesqr.com.
Authorization: Bearer sk_live_your_api_key
Endpoints
/v1/qr
Crea un código QR estático o dinámico.
/v1/qr/{id}
Recupera un único código QR y las URL de sus imágenes.
/v1/qr/{id}
Cambia el destino o el título de un código dinámico.
/v1/qr/{id}/stats
Lee las analíticas de escaneo de un código dinámico.
/v1/qr
Lista los códigos QR de tu cuenta.
/v1/qr/{id}
Elimina un código QR.
Crear un código QR
Envía un POST a /v1/qr con el tipo y el destino. Establece dynamic: true para obtener un código editable y con seguimiento que puedes actualizar más adelante. La respuesta incluye URL de imagen PNG y SVG listas para usar.
Solicitud
curl https://api.codesqr.com/v1/qr \
-H "Authorization: Bearer sk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"type": "url",
"target": "https://example.com/spring-sale",
"dynamic": true,
"title": "Spring Sale Poster",
"color": { "dark": "#059669", "light": "#ffffff" },
"format": "png"
}'
Respuesta
{
"id": "qr_8fK2p1Qz",
"type": "url",
"target": "https://example.com/spring-sale",
"dynamic": true,
"short_url": "https://csqr.io/8fK2p1Qz",
"image_url": "https://cdn.codesqr.com/qr/8fK2p1Qz.png",
"svg_url": "https://cdn.codesqr.com/qr/8fK2p1Qz.svg",
"scans": 0,
"created_at": "2026-07-18T10:24:00Z"
}
Actualizar un código dinámico
Como un código QR dinámico mantiene el mismo patrón impreso, puedes apuntarlo a un nuevo sitio cuando quieras con un PATCH. Los códigos ya impresos siguen funcionando, sin reimprimir.
Solicitud
curl -X PATCH https://api.codesqr.com/v1/qr/qr_8fK2p1Qz \
-H "Authorization: Bearer sk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "target": "https://example.com/summer-sale" }'
Leer estadísticas de escaneo
Para códigos dinámicos, obtén las analíticas de escaneo con un GET a /v1/qr/{id}/stats. Obtienes totales, un desglose diario y un reparto por dispositivo que puedes representar o exportar.
Solicitud
curl https://api.codesqr.com/v1/qr/qr_8fK2p1Qz/stats \
-H "Authorization: Bearer sk_live_your_api_key"
Respuesta
{
"id": "qr_8fK2p1Qz",
"total_scans": 1842,
"unique_scans": 1310,
"range": "last_30_days",
"by_day": [
{ "date": "2026-07-16", "scans": 74 },
{ "date": "2026-07-17", "scans": 91 },
{ "date": "2026-07-18", "scans": 63 }
],
"by_device": { "mobile": 1521, "desktop": 248, "tablet": 73 }
}
Límites de frecuencia y errores
La API devuelve códigos de estado HTTP estándar: 200 en caso de éxito, 400 para una solicitud mal formada, 401 para una clave incorrecta, y 429 cuando superas el límite de frecuencia de tu plan. Las respuestas de error incluyen un code legible por máquina y un message legible por humanos. ¿Prefieres no escribir código? Puedes crear y gestionar todo a mano en la app, o explorar primero todos los tipos de código QR.
¿Listo para construir?
Crea una cuenta gratuita de CodesQR, genera una clave de API en Ajustes y crea tu primer código QR con una sola solicitud.
Crear una cuenta gratuitaTu código QR con seguimiento está a un minuto de distancia
Apunta un código a cualquier enlace o archivo, mide cada escaneo y cambia el destino cuando lo necesites.
Crear mi código QR gratis- Gratis para siempre
- Sin tarjeta de crédito
- Listo en minutos