Saltar al contenido principal
La API de GetQR está en beta y solo está disponible para algunos espacios de trabajo. Los detalles pueden cambiar antes del lanzamiento general.
Una creación masiva convierte una lista de nombres y URL en códigos QR de tipo website con un mismo diseño. Se ejecuta en segundo plano: iníciala, consulta su progreso y descarga después el archivo ZIP.

Cómo funciona

1

Inicia la creación masiva

Envía tus filas con Crear desde JSON o Crear desde un archivo CSV. La API responde 202 con la creación masiva y su id.
2

Consulta su progreso

Llama a Obtener una creación masiva cada pocos segundos hasta que status sea completed o failed.
3

Descarga el archivo ZIP

Cuando status sea completed, llama a Descargar el archivo ZIP para obtener un ZIP con las imágenes de los códigos QR.
  • Límite. Hasta 100 filas por creación masiva.
  • Una cada vez. Solo se ejecuta una creación masiva por espacio de trabajo. Si inicias otra mientras una está en curso, se devuelve la que está en curso.
  • Idempotencia. Cada solicitud necesita un idempotencyKey. Si repites una solicitud con la misma clave y el mismo cuerpo, se devuelve la creación masiva ya iniciada. La misma clave con otro cuerpo devuelve 422.
  • Filas. Cada fila necesita un name y una url. Consulta Filas.
  • Plan. La creación masiva no está disponible en el plan Single QR: la solicitud devuelve 403 exceeded_limit.

Filas

  • Nombre. Pasa a ser el título del código QR. Se recortan los espacios y se corta a 40 caracteres. Los nombres repetidos (sin distinguir mayúsculas) reciben un número: Menu, Menu 2, Menu 3.
  • URL. Pasa a ser el destino. Debe ser una dirección http o https con un dominio real, como example.com/menu, y no contener espacios. A una URL sin esquema se le añade https://.
  • Filas vacías. Las filas sin nombre ni URL se omiten. Una fila con solo uno de los dos se rechaza.
Todos los códigos QR son de tipo website con un enlace corto. Consulta Tipos de QR.

Cabeceras

string
requerido
Bearer seguido de tu clave de API. Consulta Autenticación.
string
application/json para Crear desde JSON, multipart/form-data para Crear desde un archivo CSV.

El objeto de creación masiva

string
ID de la creación masiva, por ejemplo cm2k7x9qb0003ax8eb4f6gh2t.
string
queued, processing, packaging o completed. Una creación masiva fallida o cancelada pasa por rollingBack hasta failed.
string
Nombre del archivo de origen.
integer
Número de filas.
integer
Códigos QR creados hasta ahora.
integer
Imágenes de códigos QR generadas hasta ahora.
integer
Progreso total, de 0 a 100. La creación llega hasta 40, la generación de imágenes hasta 90, el empaquetado es 95 y completed es 100.
boolean
true cuando una creación masiva en curso lleva 2 minutos sin avanzar. Sigue consultando: Obtener una creación masiva reinicia una creación masiva detenida.
object | null
Cuando status es failed: code y message. Una creación masiva cancelada tiene el código cancelled_by_user. Una creación masiva fallida se revierte, así que no se conserva ninguno de sus códigos QR.
string | null
Ruta de Descargar el archivo ZIP, cuando status es completed.
string
Fecha de inicio, ISO 8601.
string
Fecha de la última actualización, ISO 8601.
string | null
Fecha de finalización, ISO 8601.
string | null
Fecha del fallo, ISO 8601.

Obtener la creación masiva actual

GET /api/v1/bulk-qr-creations Devuelve la creación masiva que sigue en curso en tu espacio de trabajo. Si no hay ninguna en curso, devuelve la última terminada (completed o failed) hasta que se descarte: descargar su archivo ZIP o descartarla en el panel la descarta. Si no, devuelve null. Úsalo para retomar el seguimiento tras un reinicio.

Crear desde JSON

POST /api/v1/bulk-qr-creations Inicia una creación masiva a partir de una lista de filas. Responde 202 Accepted. La creación masiva se ejecuta en segundo plano.
object[]
requerido
Códigos QR que se crean, hasta 100. Cada fila es { "name": "...", "url": "..." } y no admite otros campos. Consulta Filas.
object
requerido
Diseño que se aplica a todos los códigos QR: styles, frameOptions y logoOptions, todos opcionales. Envía {} para el diseño por defecto. Los demás campos se rechazan. Consulta Personalización.
string
requerido
Nombre que se muestra en el panel y se usa para el archivo ZIP, de 1 a 255 caracteres.
string
requerido
Tu propia clave para esta creación masiva, de 8 a 100 caracteres.

Crear desde un archivo CSV

POST /api/v1/bulk-qr-creations/csv Igual que Crear desde JSON, pero recibe las filas en un archivo CSV enviado como multipart/form-data. Responde 202 Accepted. El archivo debe ser un .csv de como máximo 1.000.000 bytes. Su fila de encabezado debe ser exactamente name,url, seguida de hasta 100 filas de datos. Consulta Formato CSV.
file
requerido
El archivo CSV.
string
requerido
El objeto de diseño, serializado como JSON, por ejemplo {"styles":{"dotsOptions":{"type":"rounded"}}}. Envía {} para el diseño por defecto.
string
requerido
Tu propia clave para esta creación masiva, de 8 a 100 caracteres.
string
Nombre que se muestra en el panel y se usa para el archivo ZIP, hasta 255 caracteres. Por defecto, el nombre del archivo subido.

Obtener una creación masiva

GET /api/v1/bulk-qr-creations/{id} Devuelve el estado y el progreso de una creación masiva. Consúltalo mientras status sea queued, processing o packaging. downloadUrl aparece cuando el archivo ZIP está listo.
string
requerido
ID de la creación masiva. Tómalo de la respuesta de creación o de la creación masiva actual.

Cancelar una creación masiva

DELETE /api/v1/bulk-qr-creations/{id} Detiene una creación masiva en curso y elimina los códigos QR que ya ha creado. La reversión se ejecuta durante la solicitud, así que normalmente la respuesta tiene status failed y error.code cancelled_by_user. Cancelar una creación masiva que ya ha fallado la devuelve sin cambios.
Una creación masiva completada no se puede cancelar: la solicitud devuelve 400. En su lugar, elimina sus códigos QR uno a uno con Códigos QR.
string
requerido
ID de la creación masiva.

Descargar el archivo ZIP

GET /api/v1/bulk-qr-creations/{id}/download Devuelve un archivo ZIP con un JPEG de 1024 px por código QR, con el nombre de su fila: 001-Menu.jpg, 002-Wine list.jpg, etc. El archivo ZIP recibe el nombre de sourceFilename. Disponible cuando status es completed. La descarga descarta la creación masiva, así que Obtener la creación masiva actual deja de devolverla.
string
requerido
ID de la creación masiva.

Problemas habituales

El mensaje indica la fila. Cada URL debe ser una dirección http o https con un dominio real, como example.com/menu. Corrige la fila y vuelve a enviar la solicitud.
La primera fila del CSV debe ser name,url, en ese orden y en minúsculas, sin más columnas.
Las claves no se pueden reutilizar para otro lote. Envía un idempotencyKey nuevo.
La creación masiva todavía no ha terminado. Sigue consultando hasta que status sea completed.
La creación masiva ya ha terminado, así que no se puede revertir.
Tu espacio de trabajo tiene el plan Single QR, que no incluye la creación masiva. Mejora el plan.
Otra creación masiva sigue en curso en tu espacio de trabajo, o has reutilizado un idempotencyKey. Espera a que termine o usa una clave nueva.

Siguientes pasos

Personalización

Códigos QR

Creación masiva en la app

Formato CSV