Method: forms.batchUpdate

अपडेट के बैच के साथ फ़ॉर्म बदलें.

एचटीटीपी अनुरोध

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

यह यूआरएल 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 के काेड में दिखाना
{

  // 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

इस आइटम के हिस्से के तौर पर बनाए गए सवाल का आईडी. सवाल के ग्रुप में इस आइटम के लिए बनाए गए सभी सवालों के आईडी शामिल होते हैं.