Salta ai contenuti

GS1-Resolver

GS1-Resolver

Il GS1-Resolver è il livello di lettura pubblico per un DPP. L’URL canonico si presenta così:

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 e lot devono utilizzare segmenti di percorso GS1 sicuri: solo A-Z, a-z, 0-9, ., _, ~, - e una lunghezza da 1 a 20 caratteri. I separatori URL riservati vengono rifiutati per garantire che il link canonico rimanga risolvibile.

Content Negotiation

Lo stesso resolver fornisce diverse rappresentazioni a seconda dell’header Accept:

AcceptRisposta
text/htmlHTML per il consumatore
application/ld+jsonJSON-LD
application/jsonJSON del DPP grezzo
application/linkset+jsonLinkset con alternative

Rotte visibili pubblicamente

  • GET /01/... è il resolver canonico
  • GET /dpp/:gtin/:serial?lot=... è un alias HTML
  • GET /v1/dpp/:id/qr.svg fornisce l’SVG
  • GET /v1/dpp/:id/qr.png fornisce il PNG
  • GET /v1/dpp/:id/qr.pdf fornisce il PDF
  • GET /v1/dpp/:id/qr.eps fornisce l’EPS

La visibilità degli asset QR dipende dallo stato del DPP:

  • live è accessibile pubblicamente senza autenticazione
  • draft e archived richiedono un contesto di autenticazione valido e l’accesso al workspace
  • Un’autenticazione non valida restituisce 401
  • I workspace non visibili o di terzi restituiscono 404

Fallback

Se qr3.app non trova alcuna corrispondenza, la richiesta viene reindirizzata al GS1-Resolver principale. Questo è importante per garantire che i codici stampati funzionino anche se un prodotto non è ancora registrato localmente.

Pratica

  1. Creare il DPP nella dashboard.
  2. Utilizzare l’URI GS1 come destinazione del QR.
  3. Indirizzare i sistemi client al formato desiderato tramite l’header Accept.