Google Forms API – interfejs w formacie REST, który umożliwia tworzenie i modyfikowanie formularzy oraz testów, pobieranie odpowiedzi na pytania i ocen z testów, konfigurowanie kluczy odpowiedzi z automatycznym podsumowaniem oraz otrzymywanie powiadomień push. Najczęstsze zastosowania tego interfejsu API obejmują te zadania:
- Tworzenie formularza lub testu
- Publikowanie i zarządzanie osobami odpowiadającymi
- Aktualizowanie formularza lub testu
- Pobieranie odpowiedzi z formularza lub testu
- Odczytywanie treści i metadanych formularza
- Konfigurowanie i odbieranie powiadomień push
- Poniżej znajdziesz listę najczęściej używanych terminów w interfejsie Forms API:
- Formularz
Dokument Formularzy Google utworzony i przechowywany na Dysku. Każdy formularz jest reprezentowany przez a
Formzasób i ma a unikalną wartośćformIdzawierającą litery, cyfry, łączniki lub podkreślenia. Identyfikator formularza znajdziesz w adresie URL Formularzy:https://docs.google.com/forms/d/FORM_ID/edit- Test
Określony typ dokumentu Formularzy Google, który umożliwia ocenianie odpowiedzi na podstawie klucza odpowiedzi. Test można utworzyć tylko za pomocą metody
batchUpdate()w celu zaktualizowania ustawieniaisQuizw istniejącym formularzu natrue.- Element
Pojedynczy element formularza, reprezentowany przez zasób Item.
Itemto powtarzający się element, który może zawierać sekcję, grupę pytań, pytanie, tekst, obraz lub film.- Pytanie
Pojedyncze pytanie w formularzu, reprezentowane przez zasób
Question.- Grupa pytań
Grupa pytań, które mają ten sam zestaw możliwych odpowiedzi (np. siatka ocen od 1 do 5). Reprezentowane przez zasób
QuestionGroupItem.- Sekcja
Sekcja to sposób na podzielenie formularza na kilka stron i dodanie logiki warunkowej (np. wyświetlanie tylko niektórych pytań w zależności od odpowiedzi użytkownika). Sekcje odpowiadają do
PageBreakItemzasobu.- Odpowiedź
Odpowiedź użytkownika końcowego na pytanie, reprezentowana przez
Answerzasób. Obejmuje informacje o ocenie (jeśli są dostępne), metadane i treść odpowiedzi.- Odpowiedź
Przesłanie formularza przez użytkownika końcowego, reprezentowane przez
FormResponsezasób.- Zegarek
Wywoływacz, który śledzi zmiany w schemacie formularza (np. edycje pytań) lub przesłania odpowiedzi na formularz i wysyła powiadomienie push, gdy nastąpi zmiana. Reprezentowane przez zasób
Watch.
Struktura formularza
Zarządzanie formularzami i testami może być skomplikowane, ponieważ wiele obiektów formularza może być zagnieżdżonych w sobie na różne sposoby. Aby zobaczyć, jak wizualna reprezentacja formularza jest powiązana z polami, zalecamy utworzenie w interfejsie kilku przykładowych formularzy, które może generować Twoja aplikacja. Następnie pobierz odpowiedni kod JSON
za pomocą metody
forms.get()
, aby móc go porównać. Na przykład,
ten przykładowy test
odpowiada tym danym JSON:
{
"formId": "FORM_ID",
"info": {
"title": "Famous Black Women",
"description": "Please complete this quiz based off of this week's readings for class.",
"documentTitle": "Famous Black Women"
},
"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
}
}
Dalsze kroki
- Więcej informacji o tworzeniu aplikacji za pomocą interfejsów Google Workspace API, w tym o obsłudze uwierzytelniania i autoryzacji, znajdziesz w artykule a pierwszych krokach dla deweloperów w Google Workspace.
- Aby dowiedzieć się, jak skonfigurować i uruchomić podstawową aplikację Forms API, przeczytaj omówienie przewodników Szybki start.