양식 작성자가 응답할 수 있는 사용자를 더 세부적으로 관리할 수 있도록 응답자에 대한 세부적인 관리 기능이 도입됩니다. 2026년 1월 31일 이후에 API로 만든 양식은 기본적으로 게시되지 않은 상태입니다. 자세한 내용은
Google Forms API 변경사항을 참고하세요.
개요
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
Google Forms API는 양식과 퀴즈를 만들고 수정하고, 양식 응답과 퀴즈 성적을 가져오고, 자동 피드백으로 퀴즈 답안 키를 설정하고, 푸시 알림을 수신할 수 있는 RESTful 인터페이스입니다. 이 API의 가장 일반적인 용도는 다음 작업을 포함합니다.
- 양식 또는 퀴즈 만들기
- 응답자 게시 및 관리
- 양식 또는 퀴즈 업데이트하기
- 양식 또는 퀴즈에서 응답 가져오기
- 양식 콘텐츠 및 메타데이터 읽기
- 푸시 알림 설정 및 수신
- 다음은 Forms API에서 사용되는 일반적인 용어 목록입니다.
- 양식
Google Drive에서 만들어 저장된 Google Forms 문서입니다. 각 양식은 Form
리소스로 표시되며 문자, 숫자, 하이픈 또는 밑줄이 포함된 고유한 formId
값을 갖습니다. Google Forms URL에서 양식 ID를 확인할 수 있습니다.
https://docs.google.com/forms/d/FORM_ID/edit
- 퀴즈
답안을 기준으로 양식 응답을 평가할 수 있는 특정 유형의 Google Forms 문서입니다. 퀴즈는 batchUpdate()
메서드를 사용하여 기존 양식의 isQuiz
설정을 true
로 업데이트하는 방법으로만 만들 수 있습니다.
- 평가
- 질문에 대한 점수 값, 답안, 의견입니다.
isQuiz
이 true
일 때 적용됩니다. Grading
리소스로 표시됩니다.
- 의견
- 퀴즈의 질문에 답변할 때 최종 사용자에게 제공되는 응답으로,
Feedback
리소스로 표현됩니다.
- 항목
Item 리소스로 표현되는 양식의 단일 요소입니다. Item
는 섹션, 질문 그룹, 질문, 텍스트, 이미지 또는 동영상을 포함할 수 있는 반복 요소입니다.
- 질문
양식의 단일 질문으로, Question
리소스로 표시됩니다.
- 질문 그룹
가능한 답변이 모두 동일한 질문 그룹입니다 (예: 1~5 등급의 그리드). QuestionGroupItem
리소스로 표시됩니다.
- Section
섹션은 양식을 여러 페이지로 나누고 사용자의 답변 방식에 따라 특정 질문만 표시하는 등의 조건부 로직을 추가하는 방법입니다. 섹션은 PageBreakItem
리소스에 해당합니다.
- 정답
질문에 대한 최종 사용자의 답변입니다. Answer
리소스로 표현됩니다. 등급 정보 (있는 경우), 메타데이터, 답변 콘텐츠가 모두 포함됩니다.
- 응답
FormResponse
리소스로 표시되는 최종 사용자의 양식 제출입니다.
- 시계
양식 스키마 변경사항 (예: 질문 수정) 또는 양식 응답 제출을 추적하고 변경사항이 발생하면 푸시 알림을 전송하는 트리거입니다. Watch
리소스로 표시됩니다.
양식과 퀴즈를 관리할 때 많은 양식 객체가 여러 방식으로 서로 중첩될 수 있으므로 다양한 필드를 지정하는 방법을 이해하는 것이 복잡할 수 있습니다. 양식의 시각적 표현이 필드에 어떻게 매핑되는지 확인하려면 UI를 사용하여 애플리케이션에서 생성할 수 있는 양식의 몇 가지 예를 만드는 것이 좋습니다. 그런 다음 forms.get()
메서드를 사용하여 해당 JSON을 가져와 비교할 수 있습니다. 예를 들어 이 예시 퀴즈는 다음 JSON에 해당합니다.
{
"formId": "FORM_ID",
"info": {
"title": "Famous Black Women",
"description": "Please complete this quiz based off of this week's readings for class.",
"documentTitle": "API Example Quiz"
},
"settings": {
"quizSettings": {
"isQuiz": true
}
},
"revisionId": "00000021",
"responderUri": "https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform",
"items": [
{
"itemId": "5d9f9786",
"imageItem": {
"image": {
"contentUri": "DIRECT_URL",
"properties": {
"alignment": "LEFT"
}
}
}
},
{
"itemId": "72b30353",
"title": "Which African American woman authored \"I Know Why the Caged Bird Sings\"?",
"questionItem": {
"question": {
"questionId": "25405d4e",
"required": true,
"grading": {
"pointValue": 2,
"correctAnswers": {
"answers": [
{
"value": "Maya Angelou"
}
]
}
},
"choiceQuestion": {
"type": "RADIO",
"options": [
{
"value": "Maya Angelou"
},
{
"value": "bell hooks"
},
{
"value": "Alice Walker"
},
{
"value": "Roxane Gay"
}
]
}
}
}
},
{
"itemId": "0a4859c8",
"title": "Who was the first Dominican-American woman elected to state office?",
"questionItem": {
"question": {
"questionId": "37fff47a",
"grading": {
"pointValue": 2,
"correctAnswers": {
"answers": [
{
"value": "Grace Diaz"
}
]
}
},
"choiceQuestion": {
"type": "RADIO",
"options": [
{
"value": "Rosa Clemente"
},
{
"value": "Grace Diaz"
},
{
"value": "Juana Matias"
},
{
"value": "Sabrina Matos"
}
]
}
}
}
}
],
"publishSettings" : {
"isPublished": true,
"isAcceptingResponses": true
}
}
다음 단계
- 인증 및 승인 처리를 비롯한 Google Workspace API를 사용한 개발에 대해 알아보려면 Workspace 개발자 시작하기를 참고하세요.
- 기본 Forms API 앱을 구성하고 실행하는 방법을 알아보려면 빠른 시작 개요를 참고하세요.
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-08-29(UTC)
[null,null,["최종 업데이트: 2025-08-29(UTC)"],[],["The Google Forms API facilitates creating, modifying, and retrieving data from forms and quizzes. Key actions include creating and updating forms/quizzes, retrieving responses, reading form content/metadata, and setting up push notifications. Quizzes can include grading, answer keys, and feedback. Forms consist of *Items*, like *Questions*, *Question Groups*, and *Sections*. User input is stored as *Answers* in *Responses*. *Watches* track form changes and trigger push notifications.\n"],null,["# Overview\n\nThe Google Forms API is a RESTful interface that lets you create and modify forms\nand quizzes, retrieve form responses and quiz grades, set up quiz answer keys\nwith automatic feedback, and receive push notifications. The most common uses\nof this API include the following tasks:\n\n- Create a form or quiz\n- Publish and manage responders\n- Update a form or quiz\n- Retrieve responses from a form or quiz\n- Read form content and metadata\n- Set up and receive push notifications\n\nThe following is a list of common terms used in the Forms API:\n*Form*\n\n: A Google Forms document, created and stored in Drive. Each\n form is represented by a\n [`Form`](/workspace/forms/api/reference/rest/v1/forms) resource\n and has a unique `formId` value, containing letters, numbers, hyphens, or\n underscores. You can find the form ID in a Google Forms URL:\n\n: `https://docs.google.com/forms/d/FORM_ID/edit`\n\n*Quiz*\n\n: A specific type of Google Forms document that allows for grading of the\n form responses against an answer key. A quiz can only be created by using\n the [`batchUpdate()`](/workspace/forms/api/reference/rest/v1/forms/batchUpdate)\n method to update the `isQuiz` setting on an existing form to `true`.\n\n *Grading*\n : A point value, answer key, and feedback for a question, applied when\n `isQuiz` is `true`. Represented by the\n [`Grading`](/workspace/forms/api/reference/rest/v1/forms#grading) resource.\n\n *Feedback*\n : A response given to the end user when responding to a question on a quiz,\n represented by the [`Feedback`](/workspace/forms/api/reference/rest/v1/Feedback)\n resource.\n\n*Item*\n\n: A single element in a form, represented by the\n [Item](/workspace/forms/api/reference/rest/v1/forms#item) resource. `Item` is a\n repeating element which can contain a section, question group, question,\n text, image, or video.\n\n*Question*\n\n: A single question on the form, represented by the\n [`Question`](/workspace/forms/api/reference/rest/v1/forms#question) resource.\n\n*Question group*\n\n: A group of questions that all share the same set of possible answers (for\n example, a grid of ratings from 1 to 5). Represented by the\n [`QuestionGroupItem`](/workspace/forms/api/reference/rest/v1/forms#questiongroupitem)\n resource.\n\n*Section*\n\n: A section is a way to break up a form into multiple pages and add\n conditional logic (such as only showing certain questions based on how the\n user answers). Sections correspond to the\n [`PageBreakItem`](/workspace/forms/api/reference/rest/v1/forms#PageBreakItem)\n resource.\n\n*Answer*\n\n: The end user's answer to a question, represented by the\n [`Answer`](/workspace/forms/api/reference/rest/v1/forms.responses#Answer)\n resource. Includes both grade information (if present), metadata, and the\n content of the answer.\n\n*Response*\n\n: The end user's submission of a form, represented by the\n [`FormResponse`](/workspace/forms/api/reference/rest/v1/forms.responses)\n resource.\n\n*Watch*\n\n: A trigger that tracks changes to either form schema changes (such as edits\n to questions) or form response submissions and sends a push notification when\n a change occurs. Represented by the\n [`Watch`](/workspace/forms/api/reference/rest/v1/forms.watches) resource.\n\nForm structure\n--------------\n\nWhen managing forms and quizzes, understanding how to specify different fields\ncan be complicated, given that many of the form objects can be nested inside\neach other in multiple ways. To see how the visual representation of a form\nmaps to the fields, we recommend using the UI to create a few examples of\nforms your application might generate. Then retrieve the corresponding JSON\nusing the\n[`forms.get()`](/workspace/forms/api/reference/rest/v1/forms/get) method\nso you can compare. For example,\n[this example quiz](https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform)\ncorresponds to the following JSON: \n\n {\n \"formId\": \"FORM_ID\",\n \"info\": {\n \"title\": \"Famous Black Women\",\n \"description\": \"Please complete this quiz based off of this week's readings for class.\",\n \"documentTitle\": \"API Example Quiz\"\n },\n \"settings\": {\n \"quizSettings\": {\n \"isQuiz\": true\n }\n },\n \"revisionId\": \"00000021\",\n \"responderUri\": \"https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform\",\n \"items\": [\n {\n \"itemId\": \"5d9f9786\",\n \"imageItem\": {\n \"image\": {\n \"contentUri\": \"DIRECT_URL\",\n \"properties\": {\n \"alignment\": \"LEFT\"\n }\n }\n }\n },\n {\n \"itemId\": \"72b30353\",\n \"title\": \"Which African American woman authored \\\"I Know Why the Caged Bird Sings\\\"?\",\n \"questionItem\": {\n \"question\": {\n \"questionId\": \"25405d4e\",\n \"required\": true,\n \"grading\": {\n \"pointValue\": 2,\n \"correctAnswers\": {\n \"answers\": [\n {\n \"value\": \"Maya Angelou\"\n }\n ]\n }\n },\n \"choiceQuestion\": {\n \"type\": \"RADIO\",\n \"options\": [\n {\n \"value\": \"Maya Angelou\"\n },\n {\n \"value\": \"bell hooks\"\n },\n {\n \"value\": \"Alice Walker\"\n },\n {\n \"value\": \"Roxane Gay\"\n }\n ]\n }\n }\n }\n },\n {\n \"itemId\": \"0a4859c8\",\n \"title\": \"Who was the first Dominican-American woman elected to state office?\",\n \"questionItem\": {\n \"question\": {\n \"questionId\": \"37fff47a\",\n \"grading\": {\n \"pointValue\": 2,\n \"correctAnswers\": {\n \"answers\": [\n {\n \"value\": \"Grace Diaz\"\n }\n ]\n }\n },\n \"choiceQuestion\": {\n \"type\": \"RADIO\",\n \"options\": [\n {\n \"value\": \"Rosa Clemente\"\n },\n {\n \"value\": \"Grace Diaz\"\n },\n {\n \"value\": \"Juana Matias\"\n },\n {\n \"value\": \"Sabrina Matos\"\n }\n ]\n }\n }\n }\n }\n ],\n \"publishSettings\" : {\n \"isPublished\": true,\n \"isAcceptingResponses\": true\n }\n }\n\nNext steps\n----------\n\n- To learn about developing with Google Workspace APIs, including handling authentication and authorization, refer to [Get started as a Workspace developer](/workspace/guides/getstarted-overview).\n- To learn how to configure and run a basic Forms API app, read the [Quickstarts overview](/workspace/forms/api/guides/quickstarts-overview)."]]