# Google Forms

> Create forms and read responses in Google Forms.

App · Forms & Surveys · 4 actions. Web page: https://docs.lodol.com/docs/integrations/google-forms

## Actions

### Create form

Create a new, blank Google Form with a title.

**Inputs**

- Title (`title`, text, required): Title of the new form.

**Outputs**

- `form_id` (text): ID of the created form. Use this to fetch the form or its responses.
- `responder_uri` (text): URL responders use to fill out the form

**Example output**

```json
{
  "form_id": "1FAIpQLSd_example_form_id",
  "responder_uri": "https://docs.google.com/forms/d/e/example/viewform"
}
```

### Get form

Look up a form's title, description, and questions.

**Inputs**

- Form ID (`form_id`, text, required): ID of the form to fetch.

**Outputs**

- `description` (text): Description shown to responders
- `form_id` (text): ID of the form
- `responder_uri` (text): URL responders use to fill out the form
- `title` (text): Title of the form

**Example output**

```json
{
  "description": "",
  "form_id": "1FAIpQLSd_example_form_id",
  "responder_uri": "https://docs.google.com/forms/d/e/example/viewform",
  "title": "Customer Feedback"
}
```

### Get form response

Look up a single form response by its ID.

**Inputs**

- Form ID (`form_id`, text, required): ID of the form the response belongs to.
- Response ID (`response_id`, text, required): ID of the response to fetch.

**Outputs**

- `answers` (object): Answers keyed by question ID, in Google Forms API answer format
- `create_time` (text): Timestamp the response was first submitted
- `respondent_email` (text): Respondent's email address, if collected
- `response_id` (text): Response ID

**Example output**

```json
{
  "answers": {
    "abc123": {
      "textAnswers": {
        "answers": [
          {
            "value": "Very satisfied"
          }
        ]
      }
    }
  },
  "create_time": "2026-01-01T00:00:00.000Z",
  "respondent_email": "user@example.com",
  "response_id": "resp_123"
}
```

### List form responses

List the responses submitted to a form.

**Inputs**

- Form ID (`form_id`, text, required): ID of the form to list responses for.
- Maximum responses (`page_size`, number): Maximum number of responses to return (default 25).

**Outputs**

- `next_page_token` (text): Cursor for fetching more responses. Null when there are no more.
- `responses` (list): List of form responses

**Example output**

```json
{
  "next_page_token": null,
  "responses": [
    {
      "answers": {
        "abc123": {
          "textAnswers": {
            "answers": [
              {
                "value": "Very satisfied"
              }
            ]
          }
        }
      },
      "create_time": "2026-01-01T00:00:00.000Z",
      "respondent_email": "user@example.com",
      "response_id": "resp_123"
    }
  ]
}
```
