Javascript, HTML, CSS e... !
0 commenti

I servizi Avanzati di Google non sono abilitati per impostazione predefinita

Abilitare l'uso delle API dei Servizi Avanzati nei progetti in Google Apps Script

I Servizi Avanzati di Google in Apps Script (Advanced Google Services) consentono agli sviluppatori di connettersi a determinate API pubbliche di Google utilizzando meno righe di codice rispetto alla loro implementazione da interfaccia HTTP.

Esistono diverse API di Google disponibili come servizi avanzati, ad esempio possiamo trovare le Analytics Services che consente di utilizzare l'API di gestione e reporting di Google Analytics in Apps Script, così come le Advanced Sheets Service che consente di accedere all'API di Sheets tramite Apps Script per leggere, modificare, formattare e presentare i dati negli Spreadsheet, e così via per le API di Drive, Calendar, Gmail, di Tag Manager, BigQuery, ecc...
Una lista, in continua evoluzione, è presente nella documentazione ufficiale espandendo il menù 'Advanced Google Services' nella pagina delle referenze.
Inoltre, se abbiamo la necessità di utilizzare un'API di Google che non è disponibile come servizio avanzato, è sufficiente connettersi ad essa come qualsiasi altra API esterna.

Tutti questi servizi sono facilmente utilizzabili in Apps Script tuttavia non sono abilitati per impostazione predefinita.
La loro abilitazione richiede l'accesso al progetto, da parte dell'utente, in Cloud Platform. Ogni progetto di Apps Script utilizza Google Cloud Platform per gestire le autorizzazioni, i servizi avanzati ed altri dettagli.
Quando viene creato un progetto Apps Script, viene creato anche, in modo trasparente all'utente, un progetto in Google Cloud Platform che, per comportamento predefinito, è nascosto non apparendo pertanto nell'elenco dei progetti presenti nella Console API di Google, questo per agevolare l'uso dello strumento di Apps Script, il quale pensa in maniera autonoma a gestire automaticamente tutte le interazioni necessarie con la Google Cloud Platform.
Tuttavia, ci sono alcune situazioni in cui è necessario aggiornare le impostazioni del progetto associato allo script, tra le quali appunto 'Abilitare le API dei Servizi Avanzati' (per altre operazioni che richiedono di intervenire nel Cloud Platform Projects rimando alla documentazione ufficiale).

Pertanto, se il nostro script fa uso di funzionalità come, ad esempio, il salvataggio di un file su Drive, la creazione di un foglio di calcolo su Sheets o la ricerca di video su Youtube, per poter vedere funzionare lo script in modo corretto, è necessario procedere con l'abilitazione dei servizi avanzati.
Di seguito i passaggi da seguire:

- Nell'editor degli script, seleziona 'Risorse -> Servizi Avanzati di Google ...', Fig. 1:



menu risorse nell'editor di apps script

Fig. 1 - Menu 'Risorse' nell'editor di Apps Script


- Nella finestra di dialogo che si aprirà, cliccare sull'interruttore on/off a fianco dell servizio che si desidera utilizzare in modo da abilitarlo (ad esempio, le Google Sheets API), Fig. 2:



modal dei servizi avanzati di google in apps script

Fig. 2 - Modal per l'attivazione dei Servizi Avanzati di Google in Apps Script


- Nella parte inferiore della finestra di dialogo, cliccare sul link per accedere alla Console API Google, Fig. 3:



link per la google api console dalla modal dei servizi avanzati di google in apps script

Fig. 3 - Link per la Google API Console dalla modal per l'attivazione dei Servizi Avanzati di Google in Apps Script


- All'interno della console, digitare nella casella di ricerca la parte del nome dell'API (ad esempio "Sheet", se si intende abilitare le API degli Spreadsheet), e cliccare sul nome che viene visualizzato dal selettore automatico (nel caso specifico dell'esempio, Google Sheets API), Fig. 4 punto 1. In alternativa, se presente in anteprima tra le API più frequenti, è possibile cliccare sul relativo box, Fig. 4 punto 2:



ricerca delle api desiderate nella libreria della google cloud platfrom

Fig. 4 - Ricerca delle API desiderate nella relativa Libreria all'interno della Google Cloud Platfrom


- Nella schermata successiva, cliccare sul bottone 'ABILITA', Fig. 5:



abilitazione della api nella google cloud platfrom

Fig. 5 - Schermata per l'abilitazione della API selezionata nella Google Cloud Platfrom


La conferma di avvenuta abilitazione è data dalla presenza del tasto DISABILITA nella schermata in cui si atterra successivamente:



api abilitata nella google cloud platfrom

Fig. 6 - Conferma che l'API è stata abilitata nella Google Cloud Platfrom


- Chiudere la Console API Google e tornare all'editor di script di Apps Script per poi cliccare su 'OK' nella finestra di dialogo

A questo punto è possibile utilizzare effettivamente il servizio avanzato abilitato ed i relativi metodi sono disponibili nel completamento automatico dell'editor di script.
Ricordarsi inoltre che, con l'uso dei Servizi Avanzati di Google (e dei Servizi integrati) è necessario fornire allo script le autorizzazioni per accedere, in base agli ambiti determinati automaticamente all'esecuzione dello script, seguendo il 'Flusso per l'Autorizzazione dei Google Services nei progetti in Apps Script'.

Tags

Michele Pisani

Michele Pisani

Sviluppatore Javascript ed esperto in Digital Analytics

L'esperienza nel settore Digital Analytics unita ad anni di sviluppo in Javascript ha trovato la massima espressione in Google Apps Script che mi ha permesso, con estrema facilità e poche righe di codice, di realizzare potenti applicazioni interattive e processi automatizzati integrati con i prodotti della G Suite.

Come contattarmi
scrivi un commento

0 Commenti

Non ci sono commenti

Nessuno ha ancora commentato questo articolo, fallo tu per primo!

scrivi un commento

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato.I campi contrassegnati da un * sono obbligatori
Puoi utilizzare i seguenti tag nei commenti:
[bold]testo[/bold] se vuoi evidenziare un testo con il grassetto[code]function helloworld() { }[/code] se vuoi pubblicare una porzione di codice[url]http://www.appsscript.it[/url] se devi riferirti ad un indirizzo web