Fresh start - excluded large ROM JSON files
This commit is contained in:
206
skills/api-gateway/references/google-forms.md
Normal file
206
skills/api-gateway/references/google-forms.md
Normal file
@@ -0,0 +1,206 @@
|
||||
# Google Forms Routing Reference
|
||||
|
||||
**App name:** `google-forms`
|
||||
**Base URL proxied:** `forms.googleapis.com`
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/google-forms/v1/forms/{formId}
|
||||
```
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### Get Form
|
||||
```bash
|
||||
GET /google-forms/v1/forms/{formId}
|
||||
```
|
||||
|
||||
### Create Form
|
||||
```bash
|
||||
POST /google-forms/v1/forms
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"info": {
|
||||
"title": "Customer Feedback Survey"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Batch Update Form
|
||||
```bash
|
||||
POST /google-forms/v1/forms/{formId}:batchUpdate
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"requests": [
|
||||
{
|
||||
"createItem": {
|
||||
"item": {
|
||||
"title": "What is your name?",
|
||||
"questionItem": {
|
||||
"question": {
|
||||
"required": true,
|
||||
"textQuestion": {
|
||||
"paragraph": false
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"location": {"index": 0}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### List Responses
|
||||
```bash
|
||||
GET /google-forms/v1/forms/{formId}/responses
|
||||
```
|
||||
|
||||
### Get Response
|
||||
```bash
|
||||
GET /google-forms/v1/forms/{formId}/responses/{responseId}
|
||||
```
|
||||
|
||||
## Common Requests for batchUpdate
|
||||
|
||||
### Create Text Question
|
||||
```json
|
||||
{
|
||||
"createItem": {
|
||||
"item": {
|
||||
"title": "Question text",
|
||||
"questionItem": {
|
||||
"question": {
|
||||
"required": true,
|
||||
"textQuestion": {"paragraph": false}
|
||||
}
|
||||
}
|
||||
},
|
||||
"location": {"index": 0}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Create Multiple Choice Question
|
||||
```json
|
||||
{
|
||||
"createItem": {
|
||||
"item": {
|
||||
"title": "Select an option",
|
||||
"questionItem": {
|
||||
"question": {
|
||||
"required": true,
|
||||
"choiceQuestion": {
|
||||
"type": "RADIO",
|
||||
"options": [
|
||||
{"value": "Option A"},
|
||||
{"value": "Option B"},
|
||||
{"value": "Option C"}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"location": {"index": 0}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Create Checkbox Question
|
||||
```json
|
||||
{
|
||||
"createItem": {
|
||||
"item": {
|
||||
"title": "Select all that apply",
|
||||
"questionItem": {
|
||||
"question": {
|
||||
"choiceQuestion": {
|
||||
"type": "CHECKBOX",
|
||||
"options": [
|
||||
{"value": "Option 1"},
|
||||
{"value": "Option 2"}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"location": {"index": 0}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Create Scale Question
|
||||
```json
|
||||
{
|
||||
"createItem": {
|
||||
"item": {
|
||||
"title": "Rate your experience",
|
||||
"questionItem": {
|
||||
"question": {
|
||||
"scaleQuestion": {
|
||||
"low": 1,
|
||||
"high": 5,
|
||||
"lowLabel": "Poor",
|
||||
"highLabel": "Excellent"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"location": {"index": 0}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Update Form Info
|
||||
```json
|
||||
{
|
||||
"updateFormInfo": {
|
||||
"info": {
|
||||
"title": "New Form Title",
|
||||
"description": "Form description"
|
||||
},
|
||||
"updateMask": "title,description"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Item
|
||||
```json
|
||||
{
|
||||
"deleteItem": {
|
||||
"location": {"index": 0}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Question Types
|
||||
|
||||
- `textQuestion` - Short or paragraph text
|
||||
- `choiceQuestion` - Radio, checkbox, or dropdown
|
||||
- `scaleQuestion` - Linear scale
|
||||
- `dateQuestion` - Date picker
|
||||
- `timeQuestion` - Time picker
|
||||
- `fileUploadQuestion` - File upload
|
||||
|
||||
## Notes
|
||||
|
||||
- Authentication is automatic - the router injects the OAuth token
|
||||
- Form IDs can be found in the form URL
|
||||
- Responses include `answers` keyed by question ID
|
||||
- Use `updateMask` to specify which fields to update
|
||||
- Location index is 0-based for item positioning
|
||||
|
||||
## Resources
|
||||
|
||||
- [API Overview](https://developers.google.com/workspace/forms/api/reference/rest)
|
||||
- [Get Form](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms/get)
|
||||
- [Create Form](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms/create)
|
||||
- [Batch Update Form](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms/batchUpdate)
|
||||
- [Batch Update Request Types](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms/batchUpdate#request)
|
||||
- [List Responses](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms.responses/list)
|
||||
- [Get Response](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms.responses/get)
|
||||
- [Form Resource](https://developers.google.com/workspace/forms/api/reference/rest/v1/forms)
|
||||
Reference in New Issue
Block a user