Google OAuth Verification · Checklist (Pianeta Web: Reach + Calendar)

Stato 2026-06-29. Riprendere VENERDÌ 3 lug (dopo aver pagato Vercel → redeploy → pubblica → submit). Vedi execution/decisions-log.md v183. Progetto GCP: multiverbe-2606030125. Client OAuth: "Multiverbe Web App".

Quadro

Chiediamo 4 scope, tutti SENSIBILI, nessuno RISTRETTO → verifica = branding + giustificazione + video demo. NIENTE security assessment (CASA), niente costi (li abbiamo evitati tenendo gli scope minimi). La verifica gata solo il collegamento GA4/GSC/Calendar del cliente esterno: l'audit (segnali pubblici) e il resto dell'hub non dipendono. In Test: founder + test-user funzionano subito.

Scope richiesti

Scope Uso in Multiverbe Stato
https://www.googleapis.com/auth/analytics.readonly legge GA4 del cliente → traffico nel dashboard ✅ registrato
https://www.googleapis.com/auth/webmasters.readonly legge Search Console → query/posizioni/SEO ✅ registrato
https://www.googleapis.com/auth/calendar.events crea l'evento-prenotazione nel calendario del titolare ✅ registrato
https://www.googleapis.com/auth/calendar.freebusy legge occupato/libero → blocca slot ✅ registrato

Requisiti / approvazioni

# Requisito Stato Chi
1 Branding consenso (nome/email/home/privacy[200]/termini[200]/domini multiverbe.app+.com) ✅ fatto
2 Scope registrati in "Accesso ai dati" ✅ fatto
3 Giustificazione scope (sotto) ✅ pronto
4 Logo app quadrato ≤1MB (PNG/JPG) ⏳ DA FARE founder
5 Domini verificati in Search Console (multiverbe.com + .app) ⏳ DA CONFERMARE founder
6 Pubblicare l'app (Test→Produzione) ⏳ venerdì Claude (post-redeploy)
7 Video demo (YouTube unlisted) ⏳ venerdì founder
8 Submit + review Google (sensibili: pochi giorni–3 settimane, nessuna SLA) ⏳ venerdì→Google Claude invia / Google approva

Giustificazione scope (da incollare nel form Google)

Multiverbe è un sistema gestionale all-in-one per le PMI svizzere. Con il consenso esplicito dell'utente, richiede accesso in sola lettura a Google Analytics 4 (analytics.readonly) e Search Console (webmasters.readonly) dell'utente stesso, per mostrargli traffico, performance di ricerca e salute SEO del suo sito nella sua dashboard Multiverbe. Richiede inoltre calendar.events (creare/aggiornare solo gli eventi-prenotazione generati da Multiverbe nel calendario del titolare) e calendar.freebusy (leggere solo occupato/libero, non i dettagli degli eventi privati) per sincronizzare le prenotazioni col Google Calendar del titolare ed evitare doppie prenotazioni. I dati sono visibili solo al proprietario autenticato, non vengono venduti né condivisi con terzi. Usiamo scope minimi e sola-lettura dove possibile; non modifichiamo mai la configurazione GA4/GSC né altri eventi del calendario.

Video demo (script ~1-2 min)

Requisiti: YouTube (unlisted ok); inglese o sottotitoli EN; mostra la schermata di consenso VERA col nome "Multiverbe" + il client_id nella barra URL; mostra l'uso reale dei dati; girato sull'app pubblicata.

  1. Apri multiverbe.app, login (mostra la URL).
  2. Impostazioni → "Connetti Google Analytics" → consenso Google: inquadra nome app + permessi (GA4 + Search Console) + URL col client_id → Consenti.
  3. Mostra la pagina Analytics/Reach coi dati GA4 + Search Console (uso dimostrato).
  4. "Connetti Google Calendar" → consenso coi permessi calendario → Consenti.
  5. Mostra una prenotazione che crea l'evento nel Google Calendar + un orario occupato che blocca uno slot.
  6. Voce (EN): "Multiverbe shows each owner their own Analytics, Search Console and Calendar data inside their dashboard; read-only where possible; never sold or shared."

Note

  • NON incluso: Google Business Profile (business.manage) — opzionale, scope in più, la sua API è già approvata (case 7-0288000041625), verifica separata se/quando lo si attiva.
  • Pubblicata-non-verificata: funziona per tutti con avviso "app non verificata" (bypassabile) + cap ~100 nuovi utenti finché Google non approva.
  • Blocker corrente: Vercel giù (402) fino a venerdì → publish/submit/video gated. Vedi memory project_vercel_outage_402_2026_06_29.