Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Google Forms

OAuth 2.0 filesdocuments

Connect this agent connector to let your agent:

  • Get get — Get a single response submitted to a Google Form by its response ID
  • List list — List all responses submitted to a Google Form
  • Create create — Create a new Google Form with a title and optional document title

This connector uses OAuth 2.0. Scalekit acts as the OAuth client: it redirects your user to Google Forms, obtains an access token, and automatically refreshes it before it expires. Your agent code never handles tokens directly — you only pass a connectionName and a user identifier.

You supply your Google Forms Connected App credentials (Client ID + Secret) once per environment in the Scalekit dashboard.

Set up the connector

Register your Scalekit environment with the Google Forms connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows:

  1. Set up auth redirects

    • In Scalekit dashboard, go to Agent AuthCreate Connection. Find Google Forms and click Create. Click Use your own credentials and copy the redirect URI. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

      Copy redirect URI from Scalekit dashboard

    • Navigate to Google Cloud ConsoleAPIs & ServicesCredentials. Select + Create Credentials, then OAuth client ID. Choose Web application from the Application type menu.

      Select Web Application in Google OAuth settings

    • Under Authorized redirect URIs, click + Add URI, paste the redirect URI, and click Create.

      Add authorized redirect URI in Google Cloud Console

  2. Enable the Google Forms API

    • In Google Cloud Console, go to APIs & ServicesLibrary. Search for “Google Forms API” and click Enable.
  3. Get client credentials

    • Google provides your Client ID and Client Secret after you create the OAuth client ID in step 1.
  4. Add credentials in Scalekit

    • In Scalekit dashboard, go to Agent AuthConnections and open the connection you created.

    • Enter your credentials:

      Add credentials in Scalekit dashboard

    • Click Save.

Code examples

Connect a user’s Google Forms account and make API calls on their behalf — Scalekit handles OAuth and token management automatically.

Proxy API Calls

import { ScalekitClient } from '@scalekit-sdk/node';
import 'dotenv/config';
const connectionName = 'google_forms'; // get your connection name from connection configurations
const identifier = 'user_123'; // your unique user identifier
// Get your credentials from app.scalekit.com → Developers → Settings → API Credentials
const scalekit = new ScalekitClient(
process.env.SCALEKIT_ENV_URL,
process.env.SCALEKIT_CLIENT_ID,
process.env.SCALEKIT_CLIENT_SECRET
);
const actions = scalekit.actions;
// Authenticate the user
const { link } = await actions.getAuthorizationLink({
connectionName,
identifier,
});
console.log('🔗 Authorize Google Forms:', link); // present this link to your user for authorization, or click it yourself for testing
process.stdout.write('Press Enter after authorizing...');
await new Promise(r => process.stdin.once('data', r));
// Make a request via Scalekit proxy
const result = await actions.request({
connectionName,
identifier,
path: '/v1/forms',
method: 'GET',
});
console.log(result);
googleforms_create_form Create a new Google Form with a title and optional document title. Returns the new form's ID and metadata. 2 params

Create a new Google Form with a title and optional document title. Returns the new form's ID and metadata.

Name Type Required Description
title string required The title of the form shown to respondents
document_title string optional The title of the document shown in Google Drive (defaults to the form title if not provided)
googleforms_get_form Get the structure and metadata of a Google Form including its title, description, and all questions. 1 param

Get the structure and metadata of a Google Form including its title, description, and all questions.

Name Type Required Description
form_id string required The ID of the Google Form to retrieve
googleforms_get_response Get a single response submitted to a Google Form by its response ID. Returns the respondent's answers for all questions. 2 params

Get a single response submitted to a Google Form by its response ID. Returns the respondent's answers for all questions.

Name Type Required Description
form_id string required The ID of the Google Form
response_id string required The ID of the specific response to retrieve
googleforms_list_responses List all responses submitted to a Google Form. Returns response IDs, submission timestamps, and answer values for each respondent. 4 params

List all responses submitted to a Google Form. Returns response IDs, submission timestamps, and answer values for each respondent.

Name Type Required Description
form_id string required The ID of the Google Form to list responses for
filter string optional Filter responses by submission time. Format: timestamp > 2026-01-01T00:00:00Z
page_size integer optional Maximum number of responses to return (max 5000)
page_token string optional Token for retrieving the next page of results