96 lines
2.9 KiB
Markdown
96 lines
2.9 KiB
Markdown
---
|
|
allowed-tools: Bash, Read, Write, Edit
|
|
argument-hint: [resource] [method] [flags]
|
|
description: Read and write Google Forms.
|
|
---
|
|
|
|
# Google Workspace Forms
|
|
|
|
Execute Google Workspace Forms operations: $ARGUMENTS
|
|
|
|
## Prerequisites
|
|
|
|
- Google Workspace CLI (`gws`) must be installed
|
|
- Authentication configured: Run `gws auth status` to verify
|
|
- Review `gws forms --help` for all available commands
|
|
|
|
## Available Resources and Methods
|
|
|
|
# forms (v1)
|
|
|
|
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
|
|
|
|
```bash
|
|
gws forms <resource> <method> [flags]
|
|
```
|
|
|
|
## API Resources
|
|
|
|
### forms
|
|
|
|
- `batchUpdate` — Change the form with a batch of updates.
|
|
- `create` — Create a new form using the title given in the provided form message in the request. *Important:* Only the form.info.title and form.info.document_title fields are copied to the new form. All other fields including the form description, items and settings are disallowed. To create a new form and add items, you must first call forms.create to create an empty form with a title and (optional) document title, and then call forms.update to add the items.
|
|
- `get` — Get a form.
|
|
- `setPublishSettings` — Updates the publish settings of a form. Legacy forms aren't supported because they don't have the `publish_settings` field.
|
|
- `responses` — Operations on the 'responses' resource
|
|
- `watches` — Operations on the 'watches' resource
|
|
|
|
## Discovering Commands
|
|
|
|
Before calling any API method, inspect it:
|
|
|
|
```bash
|
|
# Browse resources and methods
|
|
gws forms --help
|
|
|
|
# Inspect a method's required params, types, and defaults
|
|
gws schema forms.<resource>.<method>
|
|
```
|
|
|
|
Use `gws schema` output to build your `--params` and `--json` flags.
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
# List available resources and methods
|
|
gws forms --help
|
|
|
|
# Inspect method schema before calling
|
|
gws schema forms.<resource>.<method>
|
|
|
|
# Execute command with arguments
|
|
gws forms $ARGUMENTS
|
|
```
|
|
|
|
## Task
|
|
|
|
Execute the requested Forms operation: $ARGUMENTS
|
|
|
|
1. **Verify Prerequisites**
|
|
- Check `gws` is installed: `gws --version`
|
|
- Verify authentication: `gws auth status`
|
|
- Review available commands: `gws forms --help`
|
|
|
|
2. **Inspect Method Schema**
|
|
- Before calling any method, inspect its parameters
|
|
- Use `gws schema` to understand required fields
|
|
- Review parameter types and constraints
|
|
|
|
3. **Execute Operation**
|
|
- Build command with appropriate flags
|
|
- Use `--params` for query/path parameters
|
|
- Use `--json` for request body
|
|
- Handle pagination with `--max-results` or `--page-token`
|
|
|
|
4. **Error Handling**
|
|
- Check command output for errors
|
|
- Review API quotas and rate limits
|
|
- Handle authentication issues
|
|
- Retry transient failures
|
|
|
|
---
|
|
|
|
**License**: Apache License 2.0
|
|
**Source**: [Google Workspace CLI](https://github.com/googleworkspace/cli)
|
|
**Original Skill**: `gws-forms`
|