لإضافة محتوى إلى نموذج أو تعديل الإعدادات أو البيانات الوصفية أو المحتوى، استخدِم طريقة batchUpdate()
التي تجمع التغييرات معًا في حزمة، وبالتالي إذا تعذّر تنفيذ أحد الطلبات، لن يتم تنفيذ أي من التغييرات الأخرى (التي قد تكون مرتبطة).
تعرض الطريقة batchUpdate()
نص استجابة يتضمّن استجابة لكل طلب. يحتل كل ردّ الفهرس نفسه الذي يحتله الطلب المقابل، وفي حال عدم توفّر ردّ مناسب للطلب، سيكون الردّ في هذا الفهرس فارغًا.
قبل البدء
نفِّذ المهام التالية قبل المتابعة إلى المهام الواردة في هذه الصفحة:
- أكمِل عملية التفويض/المصادقة وإعداد بيانات الاعتماد باتّباع تعليمات "برنامج الاستخدام المبكر"
تعديل البيانات الوصفية أو الإعدادات أو العناصر
يوضّح المثال التالي كيفية تعديل البيانات الوصفية الخاصة بنموذج، ولكن البنية هي نفسها بالنسبة إلى المحتوى والإعدادات، إذ تستخدم طلبات updateItem
أو updateSettings
بدلاً من updateFormInfo
. في كل طلب، عليك تقديم اسم الحقل الذي تريد تغييره والقيمة المعدَّلة، بالإضافة إلى قيمة updateMask
للحدّ من التغييرات على الحقول التي حدّدتها.
REST
لتعديل وصف النموذج، استخدِم طريقة
batchUpdate()
مع رقم تعريف النموذج وقيمة الوصف المعدَّلة.
نموذج نص الطلب
"requests": [{
"updateFormInfo": {
"info": {
"description": "Please complete this quiz based on this week's readings for class."
},
"updateMask": "description"
}
}]
Python
Node.js
إضافة عنصر
يوضّح المثال التالي كيفية إضافة محتوى جديد إلى نموذج. عند إضافة محتوى جديد، يجب توفير موقع جغرافي مع فهرس يتم فيه إدراج المحتوى الجديد. على سبيل المثال، سيؤدي الموقع الذي يتضمّن الفهرس 0
إلى إدراج المحتوى في بداية النموذج.
REST
لإضافة عنصر إلى النموذج، استدعِ طريقة
batchUpdate()
باستخدام معرّف النموذج ومعلومات العنصر والموقع الجغرافي المطلوب.
نموذج نص الطلب
"requests": [{
"createItem": {
"item": {
"title": "Homework video",
"description": "Quizzes in Google Forms",
"videoItem": {
"video": {
"youtubeUri": "https://www.youtube.com/watch?v=Lt5HqPvM-eI"
}
}},
"location": {
"index": 0
}
}]
Python
Node.js
ترتيب الطلبات
يقبل الأسلوب batchUpdate()
مجموعة من الطلبات الفرعية، مثل createItem
وupdateItem
.
يتم التحقّق من صحة الطلبات الفرعية واحدًا تلو الآخر بالترتيب الذي تم تقديمه.
مثال: يحتوي طلب batchUpdate
على مصفوفة requests
تتضمّن طلبَين فرعيَين createItem
. يحتوي الطلب الفرعي (أ) على location.index
0 ويحتوي الطلب الفرعي (ب) على location.index
1. إذا كانت المصفوفة requests
هي [أ، ب]، ستنجح batchUpdate
. إذا كان الصفيف [B, A]، سيتعذّر تنفيذ batchUpdate
، لأنّ location.index
1 غير صالح ما لم يحتوي النموذج على عنصر في الفهرس 0.