> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Google Forms

> Read Google Forms structure and responses, and create or edit forms

## At a glance

* **Availability**: Experimental ([how to enable](/cloud/integrations)).
* **Auth**: OAuth 2.0.
* **Connection**: A user authorizes the connection in the provider's consent screen.
* **Scopes**: `https://www.googleapis.com/auth/forms.body.readonly`, `https://www.googleapis.com/auth/forms.responses.readonly`.
* **Optional scopes**: `https://www.googleapis.com/auth/forms.body`.
* **Docs**: [https://developers.google.com/workspace/forms/api/reference/rest](https://developers.google.com/workspace/forms/api/reference/rest)

## Credentials

Set these per environment. See [Connect an integration](/cloud/integrations).

With a managed OAuth app, Connect works without these variables; set them to use your own OAuth app instead.

| Variable               | Required | Description                                                                           |
| ---------------------- | -------- | ------------------------------------------------------------------------------------- |
| `GOOGLE_CLIENT_ID`     | Yes      | Google OAuth Client ID [Docs](https://console.cloud.google.com/apis/credentials).     |
| `GOOGLE_CLIENT_SECRET` | Yes      | Google OAuth Client Secret [Docs](https://console.cloud.google.com/apis/credentials). |

## Setup

1. **Create a Google Cloud project**: Go to [https://console.cloud.google.com](https://console.cloud.google.com), create (or select) a project. A free Google account is enough for testing.
2. **Enable the Google Forms API**: Open [https://console.cloud.google.com/apis/library/forms.googleapis.com](https://console.cloud.google.com/apis/library/forms.googleapis.com) and click Enable for your project.
3. **Configure the OAuth consent screen**: Under APIs & Services > OAuth consent screen, configure the app and add the Forms scopes (forms.body.readonly, forms.responses.readonly, and forms.body if you need write access). Add your account as a test user while the app is in testing mode.
4. **Create OAuth credentials**: Under APIs & Services > Credentials, create an OAuth client ID of type Web application and add your callback URL as an authorized redirect URI. Set GOOGLE\_CLIENT\_ID and GOOGLE\_CLIENT\_SECRET from the generated credentials.

* The Forms API can read responses but cannot submit them; responses are only created by people filling out the form.
* Create Form only honors info.title and info.documentTitle; add questions and settings afterwards with Batch Update Form.
* Creating or editing forms requires the [https://www.googleapis.com/auth/forms.body](https://www.googleapis.com/auth/forms.body) scope (listed under optional scopes).

Provider API reference: [https://developers.google.com/workspace/forms/api/reference/rest](https://developers.google.com/workspace/forms/api/reference/rest)

## Tools

| Tool                 | Access | Description                                                                                                                                                        |
| -------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Get Form             | Read   | Get a form's metadata, settings, and items (questions) including the question IDs needed to interpret responses                                                    |
| List Form Responses  | Read   | List submitted responses for a form, with answers keyed by question ID                                                                                             |
| Get Form Response    | Read   | Get a single response submitted to a form                                                                                                                          |
| Create Form          | Write  | Create a new form with a title; add questions afterwards with Batch Update Form                                                                                    |
| Set Publish Settings | Write  | Publish or unpublish a form and toggle whether it accepts responses, e.g. to open a survey after building it or close it when done (requires the forms.body scope) |
| Batch Update Form    | Write  | Apply a batch of updates to a form, such as adding questions, updating form info, or changing settings                                                             |

## Example prompts

* Get the responses for my Google Form and summarize the answers per question, highlighting common themes.
* Create a new Google Form for customer feedback and add a rating question plus an open-text comments question.
* Show me the responses submitted to my Google Form in the last 7 days.
