כדי להוסיף תוכן לטופס או לעדכן את ההגדרות, המטא-נתונים או התוכן, צריך להשתמש בשיטה batchUpdate(), שמקבצת שינויים בחבילה כך שאם בקשה אחת נכשלת, אף אחד מהשינויים האחרים (שיכול להיות שהם תלויים בשינוי שנכשל) לא נכתב.
השיטה batchUpdate() מחזירה גוף תגובה, שבתוכו יש תגובה לכל בקשה. כל תגובה תופסת את אותו אינדקס כמו הבקשה המתאימה. אם אין תגובה רלוונטית לבקשה, התגובה באינדקס הזה תהיה ריקה.
לפני שמתחילים
לפני שממשיכים למשימות שבדף הזה, צריך לבצע את המשימות הבאות:
- משלימים את ההרשאה או האימות ואת הגדרת פרטי הכניסה בהוראות של תוכנית המשתמשים הראשונים.
עדכון מטא-נתונים, הגדרות או פריטים
בדוגמה הבאה מוצג איך לעדכן את המטא-נתונים של טופס, אבל המבנה זהה לתוכן ולהגדרות – נעשה שימוש בבקשות updateItem או updateSettings במקום בבקשות updateFormInfo. לכל בקשה, צריך לספק את שם השדה שרוצים לשנות ואת הערך המעודכן, יחד עם ערך updateMask כדי להגביל את השינויים לשדות שציינתם.
REST
כדי לעדכן את התיאור של הטופס, קוראים לשיטה
batchUpdate()
עם מזהה הטופס וערך התיאור המעודכן.
גוף בקשה לדוגמה
"requests": [{
"updateFormInfo": {
"info": {
"description": "Please complete this quiz based on this week's readings for class."
},
"updateMask": "description"
}
}]
Python
Node.js
הוספת פריט
בדוגמה הבאה אפשר לראות איך מוסיפים תוכן חדש לטופס. כשמוסיפים תוכן חדש, צריך לציין מיקום עם אינדקס שבו התוכן החדש אמור להיות מוכנס. לדוגמה, מיקום עם אינדקס 0 יכניס את התוכן בתחילת הטופס.
REST
כדי להוסיף פריט לטופס, קוראים לשיטה batchUpdate() עם מזהה הטופס, פרטי הפריט והמיקום שנבחר.
גוף בקשה לדוגמה
"requests": [{
"createItem": {
"item": {
"title": "Homework video",
"description": "Quizzes in Google Forms",
"videoItem": {
"video": {
"youtubeUri": "https://www.youtube.com/watch?v=Lt5HqPvM-eI"
}
}},
"location": {
"index": 0
}
}]
Python
Node.js
סדר הבקשות
השיטה batchUpdate() מקבלת מערך של בקשות משנה כמו createItem ו-updateItem.
תת-בקשות מאומתות אחת בכל פעם, לפי הסדר שבו הן מופיעות.
דוגמה: בקשת batchUpdate כוללת מערך requests עם שתי בקשות משנה מסוג createItem. בבקשת המשנה A יש location.index 0 ובבקשת המשנה B יש location.index 1. אם המערך requests הוא [A, B], הפעולה batchUpdate תצליח. אם המערך הוא [B, A], הפונקציה batchUpdate תיכשל, כי location.index 1 לא תקין אלא אם הטופס כבר מכיל פריט באינדקס 0.