Method: forms.batchUpdate

เปลี่ยนแบบฟอร์มที่มีกลุ่มการอัปเดต

คำขอ HTTP

POST https://forms.googleapis.com/v1/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)

ต้องระบุ การเปลี่ยนแปลงเฉพาะค่าที่มีชื่อในมาสก์นี้เท่านั้น ต้องระบุอย่างน้อย 1 ช่อง ราก info เป็นค่าโดยนัยและไม่ควรระบุ "*" เพียงรายการเดียวสามารถใช้เป็นค่าสั้นสำหรับการอัปเดตทุกฟิลด์ได้

ซึ่งเป็นรายการชื่อฟิลด์ที่คั่นด้วยคอมมา ตัวอย่าง: "user.displayName,photo"

UpdateSettingsRequest

อัปเดต FormSettings ของแบบฟอร์ม

การแสดง JSON
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
ช่อง
settings

object (FormSettings)

ต้องระบุ การตั้งค่าที่จะใช้อัปเดต

updateMask

string (FieldMask format)

ต้องระบุ การเปลี่ยนแปลงเฉพาะค่าที่มีชื่อในมาสก์นี้เท่านั้น ต้องระบุอย่างน้อย 1 ช่อง ราก settings เป็นค่าโดยนัยและไม่ควรระบุ "*" เพียงรายการเดียวสามารถใช้เป็นค่าสั้นสำหรับการอัปเดตทุกฟิลด์ได้

ซึ่งเป็นรายการชื่อฟิลด์ที่คั่นด้วยคอมมา ตัวอย่าง: "user.displayName,photo"

CreateItemRequest

สร้างรายการในแบบฟอร์ม

การแสดง JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
ช่อง
item

object (Item)

ต้องระบุ รายการที่จะสร้าง

location

object (Location)

ต้องระบุ ตำแหน่งที่จะวางรายการใหม่

ตำแหน่ง

สถานที่ตั้งที่เฉพาะเจาะจงในแบบฟอร์ม

การแสดง JSON
{

  // Union field where can be only one of the following:
  "index": integer
  // End of list of possible types for union field where.
}
ช่อง
ฟิลด์การรวม where ต้องระบุ ระบุสถานที่ในแบบฟอร์ม where ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
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
{

  // Union field kind can be only one of the following:
  "createItem": {
    object (CreateItemResponse)
  }
  // End of list of possible types for union field kind.
}
ช่อง
ฟิลด์การรวม kind ประเภทของคำตอบ kind ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
createItem

object (CreateItemResponse)

ผลจากการสร้างรายการ

CreateItemResponse

ผลจากการสร้างรายการ

การแสดง JSON
{
  "itemId": string,
  "questionId": [
    string
  ]
}
ช่อง
itemId

string

รหัสของรายการที่สร้าง

questionId[]

string

รหัสของคำถามที่สร้างขึ้นเป็นส่วนหนึ่งของรายการนี้ โดยจะแสดงรหัสของคำถามทั้งหมดที่สร้างขึ้นสำหรับรายการนี้สำหรับกลุ่มคำถาม