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.
Cada código QR tiene un qrType, y el tipo determina qué debe contener data. Esta guía recoge el formato de cada tipo, un cuerpo de solicitud que funciona y lo que aún puedes cambiar una vez impreso el código. Los ejemplos son cuerpos de solicitud para Crear un código QR. Envíalos así:

Todos los tipos de un vistazo

Cómo se resuelve un código QR

Cada código QR es un enlace corto más una carga útil. El contenido va en dos campos: Reglas para todos los tipos:
  • Valores por defecto. Al crear, un link.url omitido o vacío toma el valor de data, y puedes omitir todo el objeto link. Si envías ambos y son distintos, gana link.url. Envíalos iguales o envía solo data.
  • Qué codifica la imagen. La imagen codifica el enlace corto en todos los tipos excepto wifi. Así puedes cambiar a dónde lleva un código impreso, y sus escaneos se registran. Un código QR WiFi codifica la propia red: no puedes cambiarlo tras imprimirlo y sus escaneos no se registran.
  • Esquemas. link.url solo acepta http:, https:, wifi:, mailto:, sms: y begin:. Cualquier otro, incluidos geo:, smsto:, matmsg: y tel:, devuelve 422 Invalid destination URL, aunque data lo acepte.
  • Data vacío. Un data vacío omite la validación del tipo. En un tipo de redirección, link.url debe estar definido entonces, o la llamada devuelve 400 Missing destination URL.
  • Estructura. Más allá de la validación del tipo, el servidor no valida la carga útil. Un tipo JSON solo tiene que poder analizarse como objeto JSON, y una vCard solo tiene que empezar por BEGIN:VCARD.
Los límites marcados como Editor son los que aplica el editor del panel. La API acepta cargas útiles que no los cumplen, pero pueden verse mal en la página de destino o en el editor.

Website

qrType: "website". Guía del panel: Código QR de Website.
Request body
Errores:
  • 422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".
  • 422 Invalid destination URL

Opiniones

qrType: "feedback". Guía del panel: Código QR de opiniones. data es la URL http(s) del formulario de opinión, por ejemplo un Google Form o una página de reseñas. Todo lo demás funciona como en Website.
Request body

Pago

qrType: "payment". Guía del panel: Código QR de pago. data es la URL de pago del proveedor, por ejemplo:
El editor del panel reconoce estos dominios: paypal.me, paypal.com/paypalme, cash.app, venmo.com, buy.stripe.com, stripe.com, square.link y payoneer.com. En PayPal, el importe es el último segmento de la ruta. Cualquier otra URL http(s) también funciona, pero el editor no la separará en proveedor e importe. Todo lo demás funciona como en Website.
Request body

WhatsApp

qrType: "whatsapp". Guía del panel: Código QR de WhatsApp. data es un enlace wa.me: el número internacional en dígitos sin +, opcionalmente con un texto predefinido.
El servidor solo comprueba que sea una URL http(s). El panel también lee enlaces api.whatsapp.com/send. Todo lo demás funciona como en Website.
Request body

Ubicación

qrType: "location". Guía del panel: Código QR de ubicación. data es la URL de un mapa. Usa este formato para que el código QR siga siendo editable en el panel (query_place_id es opcional):
Cualquier otra URL http(s) también redirige. Una URI geo: supera la validación de data, pero se rechaza como destino, así que no la uses. Todo lo demás funciona como en Website.
Request body
qrType: "app". Guía del panel: Código QR de App Link.
Request body
Errores:
  • 422 Invalid URL
  • 400 Missing destination URL

Correo electrónico

qrType: "email". Guía del panel: Código QR de correo electrónico.
Request body
Errores:
  • 422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".

SMS

qrType: "sms". Guía del panel: Código QR de SMS.
Request body
Errores:
  • 422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".

WiFi

qrType: "wifi". Guía del panel: Código QR de WiFi.
Request body
Errores:
  • 422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".
No cambies el tipo de un código QR WiFi ya impreso. Los códigos impresos mantienen la red antigua.

PDF, imagen y vídeo

qrType: "pdf", "image" o "video". Guías del panel: PDF, Image, Video. Un archivo por código QR: los paquetes de PDF y las galerías de imágenes no están disponibles en la API. Consulta No disponible en la API.
Para subir el archivo y obtener su fileId, consulta Archivos.

vCard

qrType: "vcard". Guía del panel: Código QR de vCard. La página de destino y el editor solo leen las formas de línea siguientes. Otras variantes, como TEL;CELL: o EMAIL;TYPE=INTERNET:, se guardan pero no aparecen en la página.
  • N:<last>;<first>;;;: apellidos y nombre. Editor: ambos obligatorios, hasta 40 caracteres.
  • FN:<first> <last>: la página no lo lee. De aquí sale la etiqueta de la lista del panel.
  • ORG:<company> y TITLE:<role>: empresa y cargo. Editor: hasta 40 caracteres.
  • TEL;TYPE=HOME:, TEL;TYPE=CELL:, TEL;TYPE=WORK:, TEL;TYPE=FAX:: números de teléfono, móvil, trabajo y fax (+ y dígitos).
  • EMAIL:<email>: dirección de correo electrónico.
  • URL:<url>: sitio web.
  • NOTE:<text>: resumen. Escapa \\, \n, \; y \,. Editor: hasta 200 caracteres.
  • ADR:;;<street>;<city>;<state>;<zip>;<country>: dirección.
  • X-SOCIALPROFILE;TYPE=<platform>:<url> o URL;TYPE=<PLATFORM>:<url>: enlaces a redes sociales, una línea por plataforma.
  • PHOTO;VALUE=URI:<url>: URL de la imagen de perfil. Tiene prioridad sobre cualquier ID de archivo.
  • X-GETQR-IMAGE-FILEID:<fileId>: imagen de perfil (target logo).
  • X-GETQR-PAGE-LOGO-FILEID:<fileId>: logotipo de la página (target logo).
  • X-GETQR-LANDING-THEME:p|<0-4> o X-GETQR-LANDING-THEME:c|#RRGGBB|#RRGGBB|#RRGGBB: tema de la página, ya sea un índice de preset (de 0 a 4) o colores personalizados de fondo, botones e iconos.
Redes sociales: facebook, whatsapp, instagram, youtube, tiktok, messenger, snapchat, linkedin, x, reddit, pinterest, telegram, wechat, viber, line.
Request body
Errores:
  • 422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".

Social Media

qrType: "social". Guía del panel: Código QR de Social Media. Campos de data:
Request body
Errores:
  • 422 Expected a JSON object describing the social profile page for qrType "social".
qrType: "multilink". Guía del panel: Código QR de Multi-Link. Los campos de data son los de Social Media, salvo que firstName, lastName y summary se sustituyen por: En customItems, logoFileId es opcional: se muestra un icono alternativo. Editor: al menos un enlace social o un elemento personalizado no vacío.
Request body
Errores:
  • 422 Expected a JSON object describing the multi-link page for qrType "multilink".

Evento

qrType: "event". Guía del panel: Código QR de evento. Campos de data:
conference, seminar, workshop, training, webinar, meetup, networking, corporateEvent, productLaunch, tradeShow, jobFair, fundraiser, charity, wedding, engagement, birthday, anniversary, babyShower, graduation, reunion, party, religious, funeralMemorial, ceremony, concert, festival, clubNight, theater, comedy, filmScreening, exhibition, sports, tournament, raceMarathon, fitnessClass, foodDrink, market, openHouse, community, schoolEvent, kids, travelTour
Request body
Errores:
  • 422 Expected a JSON object describing the event page for qrType "event".

Archivos en códigos QR

Registra un archivo con Archivos, súbelo y pasa después su fileId. Usa el target que corresponda al uso:
  • pdf, image, video. El contenido de un código QR de PDF, imagen o vídeo.
  • logo. Imágenes de perfil, logotipos de página, iconos de enlaces personalizados y logotipos centrales.
Los archivos que nunca se vinculan a un código QR se eliminan tras un periodo de gracia. Errores de fileId, que se devuelven al crear y en PATCH cuando se envía fileId: Los ID de archivo dentro de una carga útil (fileId, pageLogoFileId, customItems[].logoFileId, líneas X-GETQR-*-FILEID) no se validan. Solo se muestran si se subieron con el target logo. El código QR los reclama, así que la limpieza no los toca.

Cambio de tipo

Puedes cambiar qrType con Actualizar un código QR. Envía un data que coincida con el nuevo tipo: la carga útil guardada pertenece al tipo anterior, así que un cambio sin ella se rechaza. Tras una actualización, el destino se resuelve en este orden:
  1. vcard, social, multilink, event: siempre la página alojada.
  2. Un paquete de PDF o una galería de imágenes creados en el panel: su página de destino.
  3. pdf, image, video: la URL del archivo (un fileId nuevo o, si no, el guardado).
  4. link.url, si se envía.
  5. El data modificado.
  6. La URL guardada.
Qué hace cada cambio:
  • Al salir de pdf, image o video. Se borran fileId y cualquier paquete o galería.
  • Al pasar a pdf, image o video. Envía también fileId, o se reutiliza el guardado, que puede ser la foto de una vCard.
  • Al salir de app. Se borran el nombre de la app, link.ios y link.android, así que los móviles siguen el nuevo destino.
  • Al pasar a wifi. La imagen pasa a la carga útil en bruto. Los códigos ya impresos siguen conteniendo el enlace corto, que ahora redirige a una URL wifi:.
  • Al salir de wifi. Los códigos impresos mantienen su red antigua.
  • Al pasar a vcard, social, multilink o event. El enlace corto pasa a apuntar a la nueva página alojada.
  • Al salir de vcard, social, multilink o event. Envía el data nuevo. El destino se ajusta a él.
Los códigos QR estáticos creados en el panel no tienen enlace corto, así que cambiar su link.url devuelve 422.

No disponible en la API

Estas funciones del panel no forman parte de la API v1. Los campos desconocidos se descartan sin error, así que enviarlos no tiene efecto. Los paquetes y galerías creados en el panel se pueden consultar, pausar y eliminar con la API, pero sus archivos no se pueden cambiar con ella.

Problemas habituales

link.url usa un esquema al que el enlace corto no puede redirigir, como geo:, smsto:, matmsg: o tel:. Usa los formatos de esta página.
data está vacío y no hay link.url. En app, define al menos uno de link.ios, link.android, link.url o data.
En los tipos de enlace, el data guardado es el enlace corto. Lee el destino en url.
La página solo lee los campos y las formas de línea indicados para el tipo. Los demás campos se guardan, pero no se muestran.

Siguientes pasos

Códigos QR

Archivos

Personalización

Reglas de acceso