Method: forms.batchUpdate

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

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

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

यूआरएल, gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.

पाथ के पैरामीटर

पैरामीटर
formId

string

ज़रूरी है. फ़ॉर्म का आईडी.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में इस तरह का डेटा शामिल होता है:

जेएसओएन के काेड में दिखाना
{
  "includeFormInResponse": boolean,
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
फ़ील्ड
includeFormInResponse

boolean

जवाब में, मॉडल का अपडेट किया गया वर्शन लौटाना है या नहीं.

requests[]

object (Request)

ज़रूरी है. इस बैच के अपडेट अनुरोध.

writeControl

object (WriteControl)

लिखने के अनुरोधों को चलाने के तरीके को कंट्रोल करता है.

जवाब का मुख्य भाग

BatchUpdateFormRequest का जवाब.

अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.

जेएसओएन के काेड में दिखाना
{
  "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

ज़्यादा जानकारी के लिए, अनुमति देने से जुड़ी गाइड देखें.

अनुरोध

अपडेट करने के लिए किस तरह के अनुरोध किए जा सकते हैं.

जेएसओएन के काेड में दिखाना
{

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

फ़ॉर्म की जानकारी अपडेट करें.

जेएसओएन के काेड में दिखाना
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
फ़ील्ड
info

object (Info)

अपडेट की जाने वाली जानकारी.

updateMask

string (FieldMask format)

ज़रूरी है. सिर्फ़ इस मास्क में मौजूद वैल्यू बदली जाती हैं. कम से कम एक फ़ील्ड का होना ज़रूरी है. रूट info में शामिल नहीं है और बताया नहीं जाना चाहिए. हर फ़ील्ड को अपडेट करने के लिए, एक "*" को शॉर्ट-हैंड के तौर पर इस्तेमाल किया जा सकता है.

यह फ़ील्ड के पूरी तरह क्वालिफ़ाइड नामों की कॉमा-सेपरेटेड लिस्ट है. उदाहरण: "user.displayName,photo".

UpdateSettingsRequest

फ़ॉर्म की FormSettings अपडेट करें.

जेएसओएन के काेड में दिखाना
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
फ़ील्ड
settings

object (FormSettings)

ज़रूरी है. जिन सेटिंग को अपडेट करना है.

updateMask

string (FieldMask format)

ज़रूरी है. सिर्फ़ इस मास्क में मौजूद वैल्यू बदली जाती हैं. कम से कम एक फ़ील्ड का होना ज़रूरी है. रूट settings में शामिल नहीं है और बताया नहीं जाना चाहिए. हर फ़ील्ड को अपडेट करने के लिए, एक "*" को शॉर्ट-हैंड के तौर पर इस्तेमाल किया जा सकता है.

यह फ़ील्ड के पूरी तरह क्वालिफ़ाइड नामों की कॉमा-सेपरेटेड लिस्ट है. उदाहरण: "user.displayName,photo".

CreateItemRequest

फ़ॉर्म में कोई आइटम बनाएं.

जेएसओएन के काेड में दिखाना
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
फ़ील्ड
item

object (Item)

ज़रूरी है. आइटम बनाने के लिए.

location

object (Location)

ज़रूरी है. नया आइटम कहां रखें.

जगह

फ़ॉर्म में कोई खास जगह.

जेएसओएन के काेड में दिखाना
{

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

आइटम को फ़ॉर्म में ले जाना.

जेएसओएन के काेड में दिखाना
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
फ़ील्ड
originalLocation

object (Location)

ज़रूरी है. वह जगह जहां से आइटम को एक जगह से दूसरी जगह ले जाना है.

newLocation

object (Location)

ज़रूरी है. आइटम की नई जगह.

DeleteItemRequest

फ़ॉर्म में मौजूद कोई आइटम मिटाना.

जेएसओएन के काेड में दिखाना
{
  "location": {
    object (Location)
  }
}
फ़ील्ड
location

object (Location)

ज़रूरी है. मिटाने के लिए आइटम की जगह.

UpdateItemRequest

फ़ॉर्म में कोई आइटम अपडेट करना.

जेएसओएन के काेड में दिखाना
{
  "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

लिखने के अनुरोधों को चलाने के तरीके को कंट्रोल करता है.

जेएसओएन के काेड में दिखाना
{

  // 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 (गलत अनुरोध गड़बड़ी) दिखाता है. फ़ॉर्म का नया वर्शन पढ़ने के बाद, फिर से अनुरोध किया जा सकता है. ज़्यादातर मामलों में, टारगेट संशोधन आईडी, पढ़े जाने के कुछ मिनट बाद तक मान्य रहता है. हालांकि, अक्सर बदलाव किए जाने वाले फ़ॉर्म के लिए, यह विंडो छोटी हो सकती है.

जवाब

अपडेट से मिला एक जवाब.

जेएसओएन के काेड में दिखाना
{

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

किसी आइटम को बनाने का नतीजा.

जेएसओएन के काेड में दिखाना
{
  "itemId": string,
  "questionId": [
    string
  ]
}
फ़ील्ड
itemId

string

बनाए गए आइटम का आईडी.

questionId[]

string

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