productivity
Google Forms CLI for CI
Use the Google Forms CLI for CI with headless JSON commands, schema discovery, credentials, and permission controls.
13 functions 5 read 8 write OAuth browser flow auth
Google Forms CLI for CI
Run integration calls from CI jobs with JSON output, explicit credentials, and predictable exit status.
Use this shape when a pipeline needs to read or update an external service. The Google Forms CLI uses the same integration registry as the TUI, Lua runtime, and MCP gateway, but returns predictable command output for automation.
Command Shape
# Google Forms CLI for CI
kosmokrator integrations:configure google_forms --set access_token="$GOOGLE_FORMS_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmo integrations:call google_forms.google_forms_add_question '{"form_id":"example_form_id","title":"example_title","type":"example_type","required":true,"description":"example_description","options":"example_options","low":1,"high":1}' --json Discovery Before Execution
Agents and scripts can inspect Google Forms docs and schemas before choosing a function.
kosmo integrations:docs google_forms --json
kosmo integrations:docs google_forms.google_forms_add_question --json
kosmo integrations:schema google_forms.google_forms_add_question --json
kosmo integrations:search "Google Forms" --json
kosmo integrations:list --json Useful Google Forms CLI Functions
| Function | Type | Parameters | Description |
|---|---|---|---|
google_forms.google_forms_add_question | Write | form_id, title, type, required, description, options, low, high, low_label, high_label, rating_scale, rating_icon, include_time, include_year, duration, index | Add a question to a Google Form. Supports types: text, paragraph, multiple_choice, checkbox, dropdown, scale, date, time, rating. Use options for choice types. Use low/high/lowLabel/highLabel for scale. Use ratingScale/ratingIcon for rating. Use includeTime/includeYear for date. Use duration for time. Omit index to add at end. Use google_forms_get to see current form structure before editing. |
google_forms.google_forms_add_section | Write | form_id, title, description, index | Add a page break / section to a Google Form. Omit index to add at end. Use google_forms_get to see current form structure. |
google_forms.google_forms_add_text_item | Write | form_id, title, description, index | Add a static text block to a Google Form. Omit index to add at end. Use google_forms_get to see current form structure. |
google_forms.google_forms_create | Read | title, description, is_quiz | Create a new Google Form with a title, optional description, and optional quiz mode. Auto-publishes. Returns form ID, edit URL, and responder URL. |
google_forms.google_forms_delete_item | Write | form_id, index | Delete an item from a Google Form by its 0-based index. Use google_forms_get to see current form structure. |
google_forms.google_forms_get | Read | form_id | Get a Google Form's structure: title, description, settings, all questions with types/options/IDs, and responder URL. The form ID is the long string in the Google Forms URL: docs.google.com/forms/d/{formId}/edit To list all forms, use google_drive_search with file type "application/vnd.google-apps.form". |
google_forms.google_forms_get_response | Read | form_id, response_id | Get a single response to a Google Form by response ID, with question labels. The form ID is the long string in the Google Forms URL: docs.google.com/forms/d/{formId}/edit |
google_forms.google_forms_list_responses | Read | form_id, after, page_size, page_token | List responses to a Google Form with question labels. The form ID is the long string in the Google Forms URL: docs.google.com/forms/d/{formId}/edit |
google_forms.google_forms_move_item | Write | form_id, from, to | Move an item in a Google Form from one 0-based index to another. Use google_forms_get to see current form structure. |
google_forms.google_forms_publish | Read | form_id, published, accepting_responses | Set publish settings for a Google Form: publish/unpublish and accept/stop accepting responses. At least one of published or acceptingResponses must be provided. |
google_forms.google_forms_update_info | Write | form_id, title, description | Update a Google Form title and/or description. At least one of title or description must be provided. |
google_forms.google_forms_update_question | Write | form_id, index, title, description, required, options | Update a question in a Google Form by its 0-based index. Can update title, description, required status, and options (for choice questions). Use google_forms_get to see current form structure. |
google_forms.google_forms_update_settings | Write | form_id, is_quiz, email_collection | Update Google Form settings such as quiz mode and email collection. At least one setting must be provided. |
Automation Notes
- Use
--jsonfor machine-readable output. - Keep credentials out of argv by using environment variables or stored KosmoKrator configuration.
- Configure read/write policy before unattended runs; use
--forceonly for trusted automation. - Use the MCP gateway instead when the agent needs dynamic tool discovery inside a conversation.