Saltearse al contenido

Resolver GS1

Resolver GS1

El Resolver GS1 es la capa de lectura pública para un DPP. La URL canónica se ve así:

https://qr3.app/01/{GTIN}
https://qr3.app/01/{GTIN}/10/{LOT}
https://qr3.app/01/{GTIN}/21/{SERIAL}
https://qr3.app/01/{GTIN}/10/{LOT}/21/{SERIAL}

serial y lot deben utilizar segmentos de ruta seguros de GS1: solo A-Z, a-z, 0-9, ., _, ~, - y una longitud de 1 a 20 caracteres. Se rechazan los delimitadores de URL reservados para garantizar que el enlace canónico siga siendo resoluble.

Negociación de contenido

El mismo resolver ofrece diferentes representaciones según la cabecera Accept:

AcceptRespuesta
text/htmlHTML para el consumidor
application/ld+jsonJSON-LD
application/jsonJSON de DPP sin procesar
application/linkset+jsonLinkset con alternativas

Rutas visibles públicamente

  • GET /01/... es el resolver canónico
  • GET /dpp/:gtin/:serial?lot=... es un alias HTML
  • GET /v1/dpp/:id/qr.svg entrega el SVG
  • GET /v1/dpp/:id/qr.png entrega el PNG
  • GET /v1/dpp/:id/qr.pdf entrega el PDF
  • GET /v1/dpp/:id/qr.eps entrega el EPS

La visibilidad de los recursos QR depende del estado del DPP:

  • live está disponible públicamente sin autenticación
  • draft y archived requieren un contexto de autenticación válido y acceso al espacio de trabajo (workspace)
  • Una autenticación no válida devuelve 401
  • Los espacios de trabajo no visibles o ajenos devuelven 404

Fallback

Si qr3.app no encuentra ninguna coincidencia, se redirige al resolver GS1 de nivel superior. Esto es importante para que los códigos impresos funcionen incluso si un producto aún no está registrado localmente.

En la práctica

  1. Crear el DPP en el panel de control (dashboard).
  2. Utilizar la URI de GS1 como destino del QR.
  3. Dirigir los sistemas consumidores al formato deseado mediante Accept.