Method: forms.batchUpdate

מחליפים את הטופס עם מספר עדכונים.

בקשת HTTP

POST https://forms.googleapis.com/v1beta/forms/{formId}:batchUpdate

בכתובת ה-URL נעשה שימוש בתחביר המרת קידוד של gRPC.

פרמטרים של נתיב

פרמטרים
formId

string

חובה. מזהה הטופס

גוף הבקשה

גוף הבקשה מכיל נתונים במבנה הבא:

ייצוג JSON
{
  "includeFormInResponse": boolean,
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
שדות
includeFormInResponse

boolean

הגדרה שקובעת אם להחזיר גרסה מעודכנת של המודל בתשובה.

requests[]

object (Request)

חובה. בקשות לעדכון של מקבץ זה.

writeControl

object (WriteControl)

התפקיד הזה מאפשר לשלוט באופן הביצוע של בקשות לכתיבה.

גוף התשובה

אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:

תגובה ל-BatchUpdateFormRequest.

ייצוג JSON
{
  "form": {
    object (Form)
  },
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
שדות
form

object (Form)

בהתבסס על שדה הבקשה של הבוליאני includeFormInResponse, מוחזר או לא מוחזר טופס עם כל השינויים/העדכונים שהוחלו. יכול להיות שהוא יהיה מאוחר יותר ממזהה הגרסה שנוצרה בעקבות השינויים האלה.

replies[]

object (Response)

התשובה לעדכונים. המערכת ממפה 1:1 עם בקשות העדכון, אבל יכול להיות שהתשובות לחלק מהבקשות יהיו ריקות.

writeControl

object (WriteControl)

בקרת הכתיבה המעודכנת אחרי החלת הבקשה.

היקפי הרשאות

נדרש אחד מהיקפי ההרשאות הבאים של OAuth:

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/forms.body

מידע נוסף זמין במדריך להרשאות.

בקשה

סוגי בקשות העדכון שאפשר לשלוח.

ייצוג JSON
{

  // Union field kind can be only one of the following:
  "updateFormInfo": {
    object (UpdateFormInfoRequest)
  },
  "updateSettings": {
    object (UpdateSettingsRequest)
  },
  "createItem": {
    object (CreateItemRequest)
  },
  "moveItem": {
    object (MoveItemRequest)
  },
  "deleteItem": {
    object (DeleteItemRequest)
  },
  "updateItem": {
    object (UpdateItemRequest)
  }
  // End of list of possible types for union field kind.
}
שדות
שדה איחוד kind. סוג הבקשה. kind יכול להיות רק אחת מהאפשרויות הבאות:
updateFormInfo

object (UpdateFormInfoRequest)

צריך לעדכן את פרטי הטופס.

updateSettings

object (UpdateSettingsRequest)

עדכון הגדרות הטופס.

createItem

object (CreateItemRequest)

יצירת פריט חדש.

moveItem

object (MoveItemRequest)

העברת פריט למיקום שצוין.

deleteItem

object (DeleteItemRequest)

מחיקת פריט.

updateItem

object (UpdateItemRequest)

עדכון פריט.

UpdateFormInfoRequest

צריך לעדכן את פרטי הטופס.

ייצוג JSON
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
שדות
info

object (Info)

הפרטים שצריך לעדכן.

updateMask

string (FieldMask format)

חובה. רק ערכים שמופיעים במסכה הזו ישתנו. יש לציין שדה אחד לפחות. ערך השורש info הוא משתמע ואין לציין אותו. אפשר להשתמש ב"*" יחיד בתור קיצור דרך לעדכון כל שדה.

זוהי רשימה מופרדת בפסיקים של שמות שדות מלאים. דוגמה: "user.displayName,photo"

UpdateSettingsRequest

עליך לעדכן את FormSettings של הטופס.

ייצוג JSON
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
שדות
settings

object (FormSettings)

חובה. ההגדרות שצריך לעדכן.

updateMask

string (FieldMask format)

חובה. רק ערכים שמופיעים במסכה הזו ישתנו. יש לציין שדה אחד לפחות. ערך השורש settings הוא משתמע ואין לציין אותו. אפשר להשתמש ב"*" יחיד בתור קיצור דרך לעדכון כל שדה.

זוהי רשימה מופרדת בפסיקים של שמות שדות מלאים. דוגמה: "user.displayName,photo"

CreateItemRequest

יוצרים פריט בטופס.

ייצוג JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
שדות
item

object (Item)

חובה. הפריט שיש ליצור.

location

object (Location)

חובה. המיקום של הפריט החדש.

מיקום

מיקום ספציפי בטופס.

ייצוג JSON
{
  "index": integer
}
שדות
index

integer

האינדקס של פריט בטופס. חייב להיות בטווח

[0..N)

, כאשר N הוא מספר הפריטים בטופס.

MoveItemRequest

העברת פריט בטופס.

ייצוג JSON
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
שדות
originalLocation

object (Location)

חובה. מיקום הפריט להעברה.

newLocation

object (Location)

חובה. המיקום החדש של הפריט.

DeleteItemRequest

מחיקת פריט בטופס.

ייצוג JSON
{
  "location": {
    object (Location)
  }
}
שדות
location

object (Location)

חובה. מיקום הפריט שרוצים למחוק.

UpdateItemRequest

עדכון פריט בטופס.

ייצוג JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  },
  "updateMask": string
}
שדות
item

object (Item)

חובה. ערכים חדשים לפריט. הערה: המערכת משתמשת במזהי פריטים ושאלות אם הם סופקו (והם נמצאים במסכת השדות). אם המזהה ריק (ובמסיכת השדות) נוצר מזהה חדש. כלומר, אפשר לשנות פריט על ידי קבלת הטופס דרך forms.get, לשנות את העותק המקומי של הפריט בהתאם להעדפות, ולהשתמש ב-UpdateItemRequest כדי לכתוב אותו חזרה, כשהמזהים יהיו זהים (או לא במסכת השדות).

location

object (Location)

חובה. המיקום שמזהה את הפריט שצריך לעדכן.

updateMask

string (FieldMask format)

חובה. רק ערכים שמופיעים במסכה הזו ישתנו.

זוהי רשימה מופרדת בפסיקים של שמות שדות מלאים. דוגמה: "user.displayName,photo"

WriteControl

התפקיד הזה מאפשר לשלוט באופן הביצוע של בקשות לכתיבה.

ייצוג JSON
{

  // Union field control can be only one of the following:
  "requiredRevisionId": string,
  "targetRevisionId": string
  // End of list of possible types for union field control.
}
שדות
שדה איחוד control. המדיניות הזו קובעת את הגרסה הקודמת של הטופס שממנו יש להחיל את השינויים, ואיך הבקשה צריכה להתנהג אם הגרסה הזו היא לא הגרסה הנוכחית של הטופס. control יכול להיות רק אחת מהאפשרויות הבאות:
requiredRevisionId

string

מזהה הגרסה הקודמת של הטופס שעליו חלה בקשת הכתיבה. אם זו לא הגרסה האחרונה של הטופס, הבקשה לא תעובד ותחזיר שגיאת בקשה שגויה מסוג 400.

targetRevisionId

string

מזהה היעד של הגרסה הקודמת של הטופס שעליו חלה בקשת הכתיבה.

אם התרחשו שינויים אחרי הגרסה הזו, השינויים בבקשת העדכון יתעדכנו בהתאם. התוצאה היא גרסה חדשה של הטופס שכוללת את השינויים בבקשה וגם את השינויים שנעשים, כאשר השרת פותר שינויים מתנגשים.

מזהה גרסת היעד יכול לשמש רק לכתיבה בגרסאות אחרונות של טופס. אם גרסת היעד נמצאת רחוק מדי לפני הגרסה האחרונה, הבקשה לא תעובד ותחזיר את שגיאה מסוג 400 (שגיאת בקשה שגויה). יכול להיות שאפשר לנסות שוב אחרי קריאת הגרסה האחרונה של הטופס. ברוב המקרים, מזהה גרסת יעד נשאר תקף למשך כמה דקות אחרי הקריאה, אבל בטפסים שעורכים לעיתים קרובות החלון הזה עשוי להיות קצר יותר.

תשובה

תגובה יחידה מעדכון.

ייצוג JSON
{
  "createItem": {
    object (CreateItemResponse)
  }
}
שדות
createItem

object (CreateItemResponse)

התוצאה של יצירת הפריט.

CreateItemResponse

התוצאה של יצירת הפריט.

ייצוג JSON
{
  "itemId": string,
  "questionId": [
    string
  ]
}
שדות
itemId

string

המזהה של הפריט שנוצר.

questionId[]

string

המזהה של השאלה שנוצרה כחלק מפריט זה מציין את המזהים של כל השאלות שנוצרו לגבי הפריט הזה עבור קבוצת שאלות.