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

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