Google Forms API هي واجهة REST تتيح لك إنشاء النماذج وتعديلها. واختبارات، واسترداد إجابات النموذج ودرجات الاختبار، وإعداد مفاتيح إجابات الاختبار مع الملاحظات التلقائية وتلقّي إشعارات فورية الاستخدامات الأكثر شيوعًا في واجهة برمجة التطبيقات هذه المهام التالية:
- إنشاء نموذج أو اختبار
- تعديل نموذج أو اختبار
- استرداد الردود من نموذج أو اختبار
- قراءة محتوى النموذج والبيانات الوصفية
- إعداد الإشعارات الفورية وتلقّيها
في ما يلي قائمة بالمصطلحات الشائعة المُستخدَمة في Forms API:
- النموذج
مستند "نماذج Google"، تم إنشاؤه وتخزينه في Drive كل نموذج عبارة عن يتم تمثيلها بمورد
Form
ولها قيمةformId
فريدة، تحتوي على أحرف أو أرقام أو واصلات أو الشرطات السفلية. يمكنك العثور على رقم تعريف النموذج في عنوان URL لـ "نماذج Google":https://docs.google.com/forms/d/FORM_ID/edit
- اختبار
يشير هذا المصطلح إلى نوع معيّن من مستندات "نماذج Google" يسمح بتصنيف النموذج. نموذج الردود مقابل مفتاح الإجابة. لا يمكن إنشاء اختبار إلا باستخدام
batchUpdate()
لتعديل إعدادisQuiz
في نموذج حالي إلىtrue
.- السلعة
يشير هذا المصطلح إلى عنصر واحد في نموذج، ويتم تمثيله العنصر.
Item
هو عنصر متكرر يمكن أن يحتوي على قسم أو مجموعة أسئلة أو سؤال أو نص أو صورة أو فيديو.- السؤال
سؤال واحد في النموذج، يمثله
Question
.- مجموعة الأسئلة
مجموعة من الأسئلة التي تشترك جميعها في نفس مجموعة الإجابات المحتملة (ل مثل شبكة من التقييمات من 1 إلى 5). يمثلها
QuestionGroupItem
المصدر.- Section
القسم هو طريقة لتقسيم نموذج إلى صفحات متعددة وإضافة المنطق الشرطي (مثل عرض أسئلة معينة فقط بناءً على كيفية إجابات المستخدم). تتوافق الأقسام مع
PageBreakItem
المصدر.- الإجابة
إجابة المستخدم النهائي على سؤال، ممثلة
Answer
المصدر. تتضمن كلاً من معلومات الدرجة (إن وجدت) وبيانات التعريف محتوى الإجابة.- الردّ
النموذج الذي يرسله المستخدم النهائي، ويمثّله
FormResponse
.- المشاهدة
عامل تشغيل يتتبّع التغييرات التي تطرأ على تغييرات مخطط النماذج (مثل التعديلات عن الأسئلة) أو عمليات إرسال الردود على النموذج وإرسال إشعار فوري عند حدوث التغيير. يمثلها
Watch
.
بنية النموذج
عند إدارة النماذج والاختبارات، فهم كيفية تحديد حقول مختلفة
قد تكون معقدة، إذ يمكن دمج العديد من كائنات النموذج داخل
بعضها البعض بطرق متعددة. لمعرفة كيف أن التمثيل المرئي للنموذج
بالحقول، نوصي باستخدام واجهة المستخدم لإنشاء بعض الأمثلة على
النماذج التي قد ينشئها تطبيقك. ثم استرجع ملف JSON المقابل
باستخدام الطريقة forms.get()
لكي تتمكن من المقارنة. على سبيل المثال:
يتجاوب هذا النموذج التجريبي مع ملف JSON التالي:
{
"formId": "FORM_ID",
"info": {
"title": "Famous Black Women",
"description": "Please complete this quiz based off of this week's readings for class.",
"documentTitle": "API Example Quiz"
},
"settings": {
"quizSettings": {
"isQuiz": true
}
},
"revisionId": "00000021",
"responderUri": "https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform",
"items": [
{
"itemId": "5d9f9786",
"imageItem": {
"image": {
"contentUri": "DIRECT_URL",
"properties": {
"alignment": "LEFT"
}
}
}
},
{
"itemId": "72b30353",
"title": "Which African American woman authored \"I Know Why the Caged Bird Sings\"?",
"questionItem": {
"question": {
"questionId": "25405d4e",
"required": true,
"grading": {
"pointValue": 2,
"correctAnswers": {
"answers": [
{
"value": "Maya Angelou"
}
]
}
},
"choiceQuestion": {
"type": "RADIO",
"options": [
{
"value": "Maya Angelou"
},
{
"value": "bell hooks"
},
{
"value": "Alice Walker"
},
{
"value": "Roxane Gay"
}
]
}
}
}
},
{
"itemId": "0a4859c8",
"title": "Who was the first Dominican-American woman elected to state office?",
"questionItem": {
"question": {
"questionId": "37fff47a",
"grading": {
"pointValue": 2,
"correctAnswers": {
"answers": [
{
"value": "Grace Diaz"
}
]
}
},
"choiceQuestion": {
"type": "RADIO",
"options": [
{
"value": "Rosa Clemente"
},
{
"value": "Grace Diaz"
},
{
"value": "Juana Matias"
},
{
"value": "Sabrina Matos"
}
]
}
}
}
}
]
}
الخطوات التالية
- لمزيد من المعلومات عن التطوير باستخدام واجهات برمجة التطبيقات في Google Workspace، بما في ذلك معالجة المصادقة والترخيص، فراجع البدء كمطوِّر Workspace
- لمعرفة كيفية ضبط وتشغيل تطبيق بسيط من واجهة برمجة التطبيقات للنماذج، يمكنك الاطّلاع على نظرة عامة حول البدايات السريعة.