Googleフォームを生成したり、情報を取得する際に使用する
com.google.api.services.forms.v1.model.Formクラス
と実際のGoogleフォームのUIを関連づけました。
APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[Google Forms API(V1)] JavaでForms APIを使う
を参照ください。
| No | 目次 | |
|---|---|---|
| 1 | フォーム | |
| 1 | フォームのタイトルと説明 | |
| 2 | 質問 | |
| 1 | 質問を追加、質問をインポート | |
| 2 | ユーザーへ複数の質問 | |
| 3 | タイトルと説明を追加 | |
| 4 | 画像を追加 | |
| 5 | 動画を追加 | |
| 6 | セクションを追加 | |
| 7 | 共通 | |
| 3 | 設定 | |
| 1 | テストにする |
Form
| メソッド | パラメータ | 説明 |
|---|---|---|
| formId | String | 【取得のみ】フォームID |
| revisionId | String | 【取得のみ】フォームのリビジョンID |
| responderUri | String | 【取得のみ】回答者と共有するフォームURI |
| linkedSheetId | String | 【取得のみ】GoogleスプレッドシートのファイルID UI:[回答] -> [スプレットシートにリンク] |
| info | Info | 【必須】フォームのタイトル |
| items | List<Item> | 【必須】フォームの質問項目のリスト |
| settings | FormSettings | フォームの設定 |
1. フォーム
1.1. フォームのタイトルと説明
| 回答画面 | 設定画面 |
|---|---|
![]() |
![]() |
Info
| メソッド | パラメータ | 説明 |
|---|---|---|
| title | String | 【必須】フォームのタイトル |
| description | String | フォームの説明 |
| documentTitle | String | ファイル名(ファイルのタイトル) フォーム生成時のみ設定可能 |
2. 質問
| メニュー項目 | 内容 |
|---|---|
![]() |
質問を追加 |
![]() |
質問をインポート |
![]() |
タイトルと説明を追加 |
![]() |
画像を追加 |
![]() |
動画を追加 |
![]() |
セクションを追加 |
Item
| メソッド | パラメータ | 説明 |
|---|---|---|
| itemId | String | 質問ID |
| title | String | 質問のタイトル |
| description | String | 質問の説明 UI:[ |
| questionItem | QuestionItem | 2.1. 質問を追加、質問をインポート |
| questionGroupItem | QuestionGroupItem | 2.2. ユーザーへ複数の質問 |
| textItem | TextItem | 2.3. タイトルと説明を追加 |
| imageItem | ImageItem | 2.4. 画像を追加 |
| videoItem | VideoItem | 2.5. 動画を追加 |
| pageBreakItem | PageBreakItem | 2.6. セクションを追加 |
2.1. 質問を追加、質問をインポート
| メニュー項目 | 回答画面 | 設定画面 |
|---|---|---|
| 記述式 | ![]() |
![]() |
| 段落 | ![]() |
![]() |
| ラジオボタン | ![]() |
![]() |
| チェックボックス | ![]() |
![]() |
| プルダウン | ![]() |
![]() |
| ファイルのアップロード | ![]() |
![]() |
| 均等目盛 | ![]() |
![]() |
| 選択式 (グリッド) |
2.2. ユーザーへ複数の質問 | |
| チェックボックス (グリッド) |
2.2. ユーザーへ複数の質問 | |
| 日付 | ![]() |
![]() |
| 時刻 | ![]() |
![]() |
QuestionItem
| メソッド | パラメータ | 説明 |
|---|---|---|
| question | Question | 【必須】質問 |
| image | Image | 質問内に表示される画像 UI:[ |
Question
| メソッド | パラメータ | 説明 |
|---|---|---|
| questionId | String | 【取得のみ】質問ID |
| required | Boolean | 必須の解答か UI:[ |
| grading | Grading | 解答集の設定 UI:[ ] |
| textQuestion | TextQuestion | ・記述式 ・段落 の質問 |
| choiceQuestion | ChoiceQuestion | ・ラジオボタン ・チェックボックス ・プルダウン の質問 |
| fileUploadQuestion | FileUploadQuestion | ・ファイルのアップロード の質問 |
| acaleQuestion | ScaleQuestion | ・均等目盛 の質問 |
| rowQuestion | RowQuestion | ・選択式(グリッド) ・チェックボックス(グリッド) の質問 |
| sateQuestion | DateQuestion | ・日付 の質問 |
| timeQuestion | TimeQuestion | ・時刻 の質問 |
Grading
| メソッド | パラメータ | 説明 |
|---|---|---|
| pointValue | Integer | 【必須】正解の場合に獲得できる点数 UI:[点数] |
| correctAnswers | CorrectAnswers | 【必須】問題の解答集 |
| whenRight | Feedback | 正解の場合に表示されるフィードバック 正解/不正解がある場合のみ UI:[回答に対するフィードバックを追加] -> [正解] |
| whenWrong | Feedback | 不正解の場合に表示されるフィードバック 正解/不正解がある場合のみ UI:[回答に対するフィードバックを追加] -> [不正解] |
| generalFeedback | Feedback | 回答に対して表示されるフィードバック 正解/不正解がない場合のみ UI:[回答に対するフィードバックを追加] |
フィードバックの設定
各メニューに対するフィードバックの有無、正解/不正解の有無を下記一覧に示します。
フィーロバックが有り(o)で、正解/不正解が無し(x)の場合、
フィードバックの入力欄が1つのみであることを示します。
| メニュー項目 | フィードバック | 正解/不正解 |
|---|---|---|
| 記述式 | o | x |
| 段落 | o | x |
| ラジオボタン | o | o |
| チェックボックス | o | o |
| プルダウン | o | o |
| ファイルのアップロード | o | x |
| 均等目盛 | o | x |
| 選択式(グリッド) | x | x |
| チェックボックス(グリッド) | x | x |
| 日付 | o | x |
| 時刻 | o | x |
CorrectAnswers
| メソッド | パラメータ | 説明 |
|---|---|---|
| answers | List<CorrectAnswer> | 正解のリスト |
CorrectAnswer
| メソッド | パラメータ | 説明 |
|---|---|---|
| value | String | 【必須】正解の値 |
Feedback
| メソッド | パラメータ | 説明 |
|---|---|---|
| text | String | 【必須】フィードバックの本文 |
| material | List<ExtraMaterial> | フィードバックの一部として提供される追加情報 |
ExtraMaterial
| メソッド | パラメータ | 説明 |
|---|---|---|
| link | TextLink | 【必須(videoと一方のみ)】テキストのフィードバック UI:[ |
| video | VideoLink | 【必須(linkと一方のみ)】動画フィードバック UI:[ |
TextLink
| メソッド | パラメータ | 説明 |
|---|---|---|
| uri | String | 【必須】URI UI:[リンク先] |
| displayText | String | 【必須】URIの表示テキスト UI:[表示するテキスト] |
VideoLink
| メソッド | パラメータ | 説明 |
|---|---|---|
| displayText | String | 【必須】リンクの表示テキスト |
| youtubeUri | String | 【必須】YouTube動画のURI |
TextQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| aragraph | Boolean | 段落形式か |
ChoiceQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| type | ChoiceType(enum) | 【必須】選択式の質問 |
| options | List<Option> | 【必須】回答者が選択可能なリスト |
| shuffle | Boolean | クイズのインスタンスごとにオプションをランダムな順序で表示するか ラジオボタン、チェックボックス、プルダウンのみ UI:[ |
ChoiceType
| 定義値 | 説明 |
|---|---|
| CHOICE_TYPE_UNSPECIFIED | 未定義(デフォルト値) |
| RADIO | ラジオボタン |
| CHECKBOX | チェックボックス |
| DROP_DOWN | プルダウンメニュー |
Option
| メソッド | パラメータ | 説明 |
|---|---|---|
| value | String | 【必須】ユーザーに提示される選択肢 |
| image | Image | オプション画像 UI: |
| isOther | Boolean | オプションが「その他」か UI:[その他を追加] |
FileUploadQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| folderId | String | 【必須】ファイルを保存するGoogleDriveのフォルダID |
| types | List<FileType(enum) | 受け入れ可能なファイル形式 UI:[特定のファイル形式のみ許可] |
| maxFiles | Integer | アップロード可能なファイルの最大数 UI:[ファイルの最大数] |
| maxFileSize | Long | アップロード可能な最大バイト数 UI:[最大ファイルサイズ] |
FileType
| 定義値 | 説明 |
|---|---|
| FILE_TYPE_UNSPECIFIED | 未定義(デフォルト値) |
| ANY | タイプの制限無し |
| DOCUMENT | Googleドキュメント |
| PRESENTATION | Googleスライド |
| SPREADSHEET | Googleスプレッドシート |
| DRAWING | 図形描画 |
| IMAGE | 画像 |
| VIDEO | 動画 |
| AUDIO | 音声 |
ScaleQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| low | Integer | 【必須】スケールの最小値 |
| high | Integer | 【必須】スケールの最大値 |
| lowLabel | String | スケール最小値のラベル |
| highLabel | String | スケール最大値のラベル |
RowQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| title | String | 【必須】行のタイトル |
DateQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| includeTime | Boolean | 時刻を含めるか UI:[ |
| includeYear | Boolean | 年を含めるか UI:[ |
TimeQuestion
| メソッド | パラメータ | 説明 |
|---|---|---|
| duration | Boolean | 経過時間に関する質問か UI:[ |
2.2. ユーザーへ複数の質問
| メニュー項目 | 回答画面 | 設定画面 |
|---|---|---|
| 選択式 (グリッド) |
![]() |
![]() |
| チェックボックス (グリッド) |
![]() |
![]() |
QuestionGroupItem
| メソッド | パラメータ | 説明 |
|---|---|---|
| questions | List<Question> | 【必須】質問リスト |
| image | Image | 質問内に表示される画像 UI:[ |
| grid | Grid | 【必須】質問の選択肢 |
Grid
| メソッド | パラメータ | 説明 |
|---|---|---|
| columns | ChoiceQuestion | 【必須】選択肢 |
| shuffleQuestions | Boolean | 行をランダムに並べ替えるか UI:[ |
2.3. タイトルと説明を追加
| 回答画面 | 設定画面 |
|---|---|
![]() |
![]() |
TextItem
取得可能なもの無し(空)
2.4. 画像を追加
| 回答画面 | 設定画面 |
|---|---|
![]() |
![]() |
ImageItem
| メソッド | パラメータ | 説明 |
|---|---|---|
| image | Image | 【必須】アイテムに表示される画像 |
Image
| メソッド | パラメータ | 説明 |
|---|---|---|
| sourceUri | String | 【設定のみ】画像URI |
| contentUri | String | 【取得のみ】画像のダウンロードURI(一定期間のみ有効) |
| altText | String | カーソルを合わせたときに表示され、スクリーンリーダーによって読み上げられる画像の説明 2.4. 画像を追加の場合のみ UI:[ |
| properties | MediaProperties | 画像のプロパティ |
2.5. 動画を追加
| 回答画面 | 設定画面 |
|---|---|
![]() |
![]() |
VideoItem
| メソッド | パラメータ | 説明 |
|---|---|---|
| video | Video | 【必須】アイテムに表示される動画 |
| caption | String | 動画の字幕 2.5. 動画を追加の場合のみ UI:[ |
Video
| メソッド | パラメータ | 説明 |
|---|---|---|
| youtubeUri | String | 【必須】YouTubeのURI |
| properties | MediaProperties | 動画のプロパティ |
2.6. セクションを追加
| 回答画面 | 設定画面 |
|---|---|
![]() |
![]() |
PageBreakItem
取得可能なもの無し(空)
2.7. 共通
MediaProperties
| メソッド | 戻り値 | 説明 |
|---|---|---|
| getAlignment | Alignment(enum) | 水平方向位置 |
| getwidth | Integer | 幅(ピクセル単位) |
Alignment
| 定義値 | 説明 |
|---|---|
| LEFT | 左揃え |
| RIGHT | 右揃え |
| CENTER | 中央揃え |
正解の値
| メニュー項目 | 内容 |
|---|---|
| 記述式 | 入力したテキスト |
| 段落 | 入力したテキスト |
| ラジオボタン | 選択した文字列 |
| チェックボックス | 選択した複数の文字列 |
| プルダウン | 選択した文字列 |
| 均等目盛 | 選択した番号を含む文字列 |
| 選択式(グリッド) | 選択した文字列 |
| チェックボックス(グリッド) | 選択した複数の文字列 |
| 日付 | 月と日(MM-DD) 年を含む(YYYY-MM-DD) 時間を含む(MM-DD) 年と時間を含む(YYYY-MM-DD HH:MM) |
| 時刻 | 時刻または期間が HH:MM 形式の文字列 |
3. 設定
GoogleフォームのUI上ではいろいろと設定ができますが、
APIでは「テストにする」のON/OFFしか用意されていないようです。。
3.1. テストにする
点数の割り当て、回答の設定、フィードバックの自動提供を可能にします。

FormSettings
| メソッド | パラメータ | 説明 |
|---|---|---|
| quizSettings | QuizSettings | テストのフォームと採点に関連する設定 |
QuizSettings
| メソッド | パラメータ | 説明 |
|---|---|---|
| isQuiz | Boolean | このフォームがクイズか |
おしまい。。







































