Configurar um projeto do Apps Script para chamar a API Google Forms diretamente por uma chamada REST é simples. Supondo que você já tenha configurado um projeto do Google Cloud, faça o seguinte:
- Crie um novo projeto do Apps Script.
- Mude o número do projeto do Google Cloud associado para corresponder ao projeto que você ativou para a API Google Forms.
- Edite o arquivo de manifesto (
appsscript.json
) para adicionar os escopos necessários do OAuth. - Adicione o código do Apps Script para buscar um token OAuth e fazer uma chamada REST usando o token.
Confira um tutorial rápido dessas etapas.
Criar e configurar um novo projeto do Apps Script
- Usando o mesmo ID do Google com que você configurou seu projeto do GCP, acesse o Painel do Apps Script e clique em Novo projeto.
- Quando o projeto estiver aberto, clique em Configurações do projeto.
- Selecione a caixa de seleção Mostrar arquivo de manifesto "appsscript.json" no editor.
- Na seção Projeto do Google Cloud Platform (GCP), clique em Mudar projeto e insira o número do projeto do GCP que você configurou para a API Forms.
Agora seu projeto do Apps Script está configurado para acessar a API Google Forms. A próxima etapa necessária é adicionar os escopos OAuth corretos.
Adicionar escopos do OAuth
Para gerar um token OAuth com escopo adequado no Apps Script, é necessário definir os escopos necessários no arquivo de manifesto do projeto.
- No editor, abra
appsscript.json
. Adicione os escopos ao corpo do manifesto.
{ ... "oauthScopes": [ "https://www.googleapis.com/auth/script.external_request", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.readonly", "https://www.googleapis.com/auth/forms.body", "https://www.googleapis.com/auth/forms.body.readonly", "https://www.googleapis.com/auth/forms.responses.readonly" ], ... }
Clique em
Salvar projeto e corrija os erros de sintaxe, se necessário. Agora seu projeto pode chamar a API Google Forms com uma chamada REST.
Adicionar o código do Apps Script para chamar a API
Antes de escrever o código para chamar um formulário, você precisa identificar um formulário que pertence a você e tem respostas e anotar o ID dele. O ID do formulário pode ser encontrado no URL ao editar o formulário:
https://docs.google.com/forms/d/<FORM_ID>/edit
Para chamar a API, use uma chamada UrlFetchApp
do Apps Script.
Abra Code.gs e adicione o seguinte código:
Substitua
YOUR_FORM_ID
pelo valor que você anotou anteriormente.Exemplo:
var formId = 'tL5ygBC8zpbTnTp76JCZdIg80hA-cnpbTnTjnsewCKJH';
Clique em
Save project e corrija erros de sintaxe, se necessário.
Testar o código
- Clique em Executar.
- Autorize o projeto conforme necessário usando o mesmo ID do Google de antes.
Depois que ele for iniciado, uma resposta semelhante a esta vai aparecer no Registro de execução:
Execution started Calling the Forms API! OAuth token is: ya29.a0ARrdaM8IMjtlv… formsAPIUrl is: https://forms.googleapis.com/v1beta/forms/…/responses Response from Forms.responses was: { "responses": [ { "responseId":"...", "createTime": "2021-03-25T01:23:58.146Z", "lastSubmittedTime": "2021-03-25T01:23:58.146607Z", "answers": { "1e9b0ead": { "questionId": "1e9b0ead", "textAnswers": { "answers": [ { "value": "Red" } ] } }, "773ed8f3": { "questionId": "773ed8f3", "textAnswers": { "answers": [ { "value": "Tesla" } ] } } } } ] } Execution completed
Próximas etapas
Depois de chamar a API com o Apps Script, consulte a documentação de referência e faça outras chamadas para a API.