Lingua:

Come utilizzare l’API di Google Calendar v3: costi, limiti ed esempi

Continuiamo la discussione sulle API di Google e su come utilizzarle. Oggi ti offriamo una guida completa all’API Calendar: vedremo cos’è, come utilizzarla e alcuni esempi.
Scopri cosa ne pensa ChatGPT Apri l’editor del widget in tempo reale
How to use Google Calendar API v3: cost, limits, examples

Che cos’è l’API di Google Calendar

Ti permette di visualizzare, creare e gestire eventi del calendario e altri oggetti correlati al calendario, ad esempio i controlli di accesso. Ora diamo un’occhiata ad alcune idee su come iniziare a utilizzare la chiave API di Google Calendar.

Come puoi usarlo

Ci sono diversi modi per utilizzare l’API Calendar v3. Eccone alcuni.

  • Crea eventi. Google Calendar è uno strumento eccezionale per aiutare gli utenti a rimanere organizzati. Usandolo, puoi, ad esempio, aggiungere un percorso escursionistico come evento del calendario e ricordare a ogni partecipante l’evento, così restino pronti.
  • Eventi ricorrenti. Alcuni eventi si ripetono più volte – riunioni quotidiane, compleanni o festività. Di solito sono identici e hanno lo stesso orario di inizio e fine.
  • Sincronizza Risorse. Mantieni sincronizzati i dati di tutte le raccolte del calendario, risparmiando banda.
  • Attiva notifiche push. È possibile utilizzare notifiche push che avvisano la tua applicazione quando una risorsa cambia.
  • Sincronizza risorse. L’API di Google Calendar può aiutarti a mantenere sincronizzati i dati di tutte le collezioni di calendari, risparmiando banda.

Google Calendar utilizza anche le seguenti risorse per funzionare con:

  • Evento – una funzione del calendario che contiene un titolo, gli orari di inizio e fine e i partecipanti.
  • Calendario – una raccolta di eventi.
  • Calendar list – un elenco di tutti i calendari nell’UI del Calendario
  • Impostazioni – una preferenza dall’interfaccia Calendar, come il fuso orario degli utenti.
  • ACL – una regola di controllo degli accessi che concede a un utente un livello speciale di accesso a un calendario.
  • Colore – colore visualizzato nell’interfaccia del Calendario.
  • Libero/Occupato – orari in cui un calendario mostra eventi contrassegnati come occupati o è vuoto e considerato libero.

Usa l’API del Calendario

Ogni richiesta inviata dalla tua applicazione all’API Calendar v3 richiede un token di autorizzazione. Questo token identifica anche l’applicazione per Google. L’applicazione deve utilizzare OAuth 2.0 per autorizzare le richieste – non sono supportati altri protocolli di autorizzazione.

Consiglio: OAuth 2.0 è un protocollo che consente a un utente di concedere accesso limitato alle proprie risorse su un sito a un altro sito, senza dover dimostrare le proprie credenziali.



Tieni presente che tutte le richieste all’API di Google Calendar devono essere autorizzate da un utente autenticato. Il processo di autorizzazione varia in base al tipo di applicazione che possiedi. Il processo seguente è adatto a quasi tutti i tipi di applicazione:

  1. Quando crei l’applicazione, registrala tramite Google Calendar API Console. Google ti fornirà un ID client e un secret client. Avrai bisogno di queste informazioni in seguito.
  2. Attiva l’API di Google Calendar nella Console API. Se non è elencata lì, salta questo passaggio.
  3. Quando la tua applicazione richiede l’accesso ai dati dell’utente, chiede a Google uno specifico ambito di accesso.
  4. Poi Google mostra una schermata di consenso all’utente, chiedendogli di autorizzare la tua applicazione a richiedere alcune delle sue informazioni.
  5. Se l’utente concede l’autorizzazione, Google rilascia alla tua applicazione un token di accesso a breve durata.
  6. A quel punto, la tua app richiede i dati dell’utente e allega il token alla richiesta.
  7. Nel caso Google verifichi che la tua richiesta e il token siano validi, restituisce i dati richiesti.

A volte potrebbero essere necessari passaggi aggiuntivi, ad esempio l’uso dei token di refresh per ottenere nuovi token di accesso. Puoi controllare i processi per i diversi tipi di applicazioni qui.

Se avrai la fortuna di essere approvato, riceverai l’accesso alla documentazione dell’API del Calendario, così potrai iniziare lo sviluppo del tuo software integrato.



Se hai bisogno di un modo semplice e rapido per aggiungere un Calendario al tuo sito, prendi in considerazione l’Event Calendar di Elfsight. Ti offre l’opportunità di mostrare i tuoi eventi nella SERP di Google senza alcuno sforzo.

API del Calendario: esempi

Crea un evento con l’API di Google Calendar

Per creare un evento, è necessario richiamare il metodo events.insert() fornendo almeno i seguenti parametri:

  • calendarId – è l’identificatore del calendario che può essere l’indirizzo email del calendario sul quale creare l’evento oppure una parola chiave speciale ‘primary’ che utilizzerà il calendario principale dell’utente connesso.
  • L’evento da creare contiene tutte le informazioni necessarie, come l’inizio e la fine. I soli due campi obbligatori qui sono l’inizio e la fine.

Il seguente esempio mostra come creare un evento e impostarne i metadati:

Esempio: il processo di creazione di un evento

// Refer to the JavaScript quickstart on how to setup the environment:



// https://developers.google.com/calendar/quickstart/js



// Change the scope to 'https://www.googleapis.com/auth/calendar' and delete any



// stored credentials.







var event = {



'summary': 'Google I/O 2015',



'location': '800 Howard St., San Francisco, CA 94103',



'description': 'A chance to hear more about Google's developer products.',



'start': {



'dateTime': '2015-05-28T09:00:00-07:00',



'timeZone': 'America/Los_Angeles'



},



'end': {



'dateTime': '2015-05-28T17:00:00-07:00',



'timeZone': 'America/Los_Angeles'



},



'recurrence': [



'RRULE:FREQ=DAILY;COUNT=2'



],



'attendees': [



{'email': 'lpage@example.com'},



{'email': 'sbrin@example.com'}



],



'reminders': {



'useDefault': false,



'overrides': [



{'method': 'email', 'minutes': 24 * 60},



{'method': 'popup', 'minutes': 10}



]



}



};







var request = gapi.client.calendar.events.insert({



'calendarId': 'primary',



'resource': event



});







request.execute(function(event) {



appendPre('Event created: ' + event.htmlLink);



});



API degli eventi ricorrenti

Questi eventi si verificano più volte secondo una programmazione regolare, ad esempio riunioni quotidiane, compleanni o festività. Ecco un esempio di un evento che si svolge dalle 6:00 alle 7:00 ogni martedì e venerdì a partire dal 15 settembre 2015 e termina dopo la quinta occorrenza il 29 settembre:

Esempio: eventi ricorrenti

... "start": {



"dateTime": "2015-09-15T06:00:00+02:00",



"timeZone": "Europe/Zurich"



},



"end": {



"dateTime": "2015-09-15T07:00:00+02:00",



"timeZone": "Europe/Zurich"



},



"recurrence": [



"RRULE:FREQ=WEEKLY;COUNT=5;BYDAY=TU,FR"



],



…

E qui vediamo un evento di giornata intera che inizia il 1° giugno 2015 e si ripete ogni 3 giorni per tutto il mese, escludendo il 10 giugno ma includendo il 9 e l’11 giugno:

Esempio: evento ricorrente di giornata intera

… "start": {



"date": "2015-06-01"



},







"end": {



"date": "2015-06-02"



},



"recurrence": [







"EXDATE;VALUE=DATE:20150610",







"RDATE;VALUE=DATE:20150609,20150611",







"RRULE:FREQ=DAILY;UNTIL=20150628;INTERVAL=3"







],







…



Sincronizza Risorse

Questo metodo ti aiuta a mantenere sincronizzati i dati di tutte le collezioni di calendari. La sincronizzazione incrementale si compone di due fasi:

  • La sincronizzazione iniziale completa viene eseguita una sola volta all’inizio per sincronizzare completamente lo stato del client e quello del server.
  • La sincronizzazione incrementale viene eseguita ripetutamente, aggiornando il client con tutte le modifiche intervenute dall’ultimo aggiornamento.

Ecco un esempio di token di sincronizzazione:

Esempio: token di sincronizzazione

// Refer to the JavaScript quickstart on how to setup the environment:



// https://developers.google.com/calendar/quickstart/js



// Change the scope to 'https://www.googleapis.com/auth/calendar' and delete any



// stored credentials.







var event = {



'summary': 'Google I/O 2015',



'location': '800 Howard St., San Francisco, CA 94103',



'description': 'A chance to hear more about Google's developer products.',



'start': {



'dateTime': '2015-05-28T09:00:00-07:00',



'timeZone': 'America/Los_Angeles'



},



'end': {



'dateTime': '2015-05-28T17:00:00-07:00',



'timeZone': 'America/Los_Angeles'



},



'recurrence': [



'RRULE:FREQ=DAILY;COUNT=2'



],



'attendees': [



{'email': 'lpage@example.com'},



{'email': 'sbrin@example.com'}



],



'reminders': {



'useDefault': false,



'overrides': [



{'method': 'email', 'minutes': 24 * 60},



{'method': 'popup', 'minutes': 10}



]



}



};







var request = gapi.client.calendar.events.insert({



'calendarId': 'primary',



'resource': event



});







request.execute(function(event) {



appendPre('Event created: ' + event.htmlLink);



});



Notifiche Push

Google Calendar API v3 ti offre la possibilità di ricevere notifiche push che ti permettono di rilevare modifiche alle risorse. Questa funzione può essere utilizzata per migliorare la tua applicazione.

Per iniziare a usare le notifiche push servono tre cose:

  • Registra il dominio del tuo URL di ricezione.
  • Configura il tuo URL di ricezione o il callback Webhook.
  • Configura un canale di notifica per ogni endpoint di risorsa da monitorare.
Suggerimento: Al momento l’API di Google Calendar supporta notifiche per le modifiche alle risorse ACL, CalendarList, Events e Settings.

L’esempio qui sotto mostra come iniziare a monitorare le modifiche a una collezione di eventi:

Esempio: monitorare modifiche a una collezione di eventi

POST https://www.googleapis.com/calendar/v3/calendars/my_calendar@gmail.com/events/watch



Authorization: Bearer auth_token_for_current_user



Content-Type: application/json



{







"id": "01234567-89ab-cdef-0123456789ab", // Your channel ID.



"type": "web_hook",



"address": "https://mydomain.com/notifications", // Your receiving URL.



...







"token": "target=myApp-myCalendarChannelDest", // (Optional) Your channel token.



"expiration": 1426325213000 // (Optional) Your requested channel expiration time.



}



Limiti dell’API Calendar

L’API Calendar ha un limite di 1.000.000 query al giorno. Se vuoi modificare i limiti di utilizzo o aumentare la quota, segui i passaggi seguenti:

  • Crea un account di fatturazione se non ne hai già uno.
  • Vai alla pagina delle API abilitate nella libreria API della Console Google e scegli un’API dall’elenco.
  • Seleziona le quote da visualizzare e modifica le impostazioni correlate alle quote.

Puoi anche controllare le statistiche di utilizzo nella sezione Utilizzo.

Ci sono altri widget che ti aiutano a utilizzare i dati della piattaforma. Uno dei più utili per qualsiasi business è il widget Google Reviews widget. Ha una funzionalità estremamente ampia e permette non solo di incorporare le recensioni di Google, ma anche di creare snippet ricchi per i risultati di ricerca.

FAQ (Domande frequenti)

L’API di Google Calendar è gratuita?

Sì, l’uso della Google Calendar API è gratuito. Tuttavia, ci sono alcuni limiti.

Come posso creare un evento con l’aiuto dell’API Calendar?

Devi richiamare il metodo events.insert(), fornire calendarId e i parametri dell’evento. Devi anche impostare lo scope OAuth a https://www.googleapis.com/auth/calendar e assicurarti che l’utente autenticato abbia diritti di scrittura sul calendario con l’ID calendario fornito.

Come posso ottenere i dati da Google Calendar?

Apri il tuo Calendario, poi vai nella sezione “I miei calendari”. Quindi scegli il calendario che vuoi esportare e fai clic su “Altro”. Nelle impostazioni del calendario, fai clic su “Esporta calendario”. A quel punto verrà avviato il download del file ICS con i tuoi eventi.

Posso eseguire automaticamente il backup del mio calendario?

Certo. Per farlo, apri la scheda Calendario, quindi fai clic su “Altro” e seleziona “Esegui backup” dal menu a discesa: il backup partirà automaticamente.

Come posso trovare l’API di Google Calendar?

Vai alla Google Developer Console e crea un nuovo progetto. Nel progetto, vai su API e autenticazione > API nella barra laterale. Quindi trova l’API Calendar nell’elenco.

Conclusione

Come vedi, non è difficile lavorare con l’API di Google Calendar: basta seguire pochi passaggi semplici. E ora vogliamo conoscere la tua esperienza con questo strumento – condividi i casi d’uso e i consigli utili nei commenti!

Articolo di
Gestore contenuti
Come Content Manager di Elfsight, mi concentro nel creare contenuti pratici e ispiranti. Amo semplificare concetti complessi e renderli facili e piacevoli da leggere.