REST Resource: forms

المرجع: نموذج

مستند في "نماذج Google" يتم إنشاء نموذج في Drive، ويتم حذف نموذج أو تغيير إجراءات الحماية من أذونات الوصول الخاصة به من خلال Drive API.

تمثيل JSON
{
  "formId": string,
  "info": {
    object (Info)
  },
  "settings": {
    object (FormSettings)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "revisionId": string,
  "responderUri": string,
  "linkedSheetId": string
}
الحقول
formId

string

النتائج فقط. رقم تعريف النموذج

info

object (Info)

مطلوبة. تمثّل هذه السمة عنوان النموذج ووصفه.

settings

object (FormSettings)

إعدادات النموذج يجب تعديل هذا الحقل باستخدام السمة UpdateSettingsRequest، ويتم تجاهله في السمتَين forms.create وUpdateFormInfoRequest.

items[]

object (Item)

مطلوبة. قائمة بعناصر النموذج والتي يمكن أن تتضمن عناوين الأقسام والأسئلة والوسائط المضمّنة وما إلى ذلك.

revisionId

string

النتائج فقط. رقم تعريف النسخة السابقة للنموذج. يُستخدم في WriteControl في طلبات التحديث لتحديد المراجعة التي تستند إليها التغييرات.

قد يتغير تنسيق معرف النسخة السابقة بمرور الوقت، لذا يجب التعامل معه بشكل مبهم. يمكن ضمان صلاحية رقم تعريف النسخة السابقة الذي تم إرجاعه لمدة 24 ساعة فقط بعد إرجاعه، ولا يمكن مشاركته بين المستخدمين. إذا لم يتغير رقم تعريف النسخة السابقة بين عمليات الاستدعاء، فهذا يعني أن النموذج لم يتغير. وفي المقابل، عادةً ما يعني تغيير رقم التعريف (للنموذج نفسه والمستخدم) أنّه قد تم تعديل النموذج، ولكن قد يرجع تغيير رقم التعريف أيضًا إلى عوامل داخلية، مثل التغييرات في تنسيق رقم التعريف.

responderUri

string

النتائج فقط. معرّف الموارد المنتظم (URI) للنموذج المطلوب مشاركته مع المجيبين يؤدي ذلك إلى فتح صفحة تسمح للمستخدم بإرسال الردود وليس تعديل الأسئلة.

linkedSheetId

string

النتائج فقط. رقم تعريف "جدول بيانات Google" المرتبط الذي يجمع الردود من هذا النموذج (في حال توفُّر جدول بيانات كهذا).

معلومات

تمثّل هذه السمة المعلومات العامة لنموذج.

تمثيل JSON
{
  "title": string,
  "documentTitle": string,
  "description": string
}
الحقول
title

string

مطلوبة. تمثّل هذه السمة عنوان النموذج الذي يظهر للمجيبين.

documentTitle

string

النتائج فقط. عنوان المستند الذي يظهر في Drive. إذا كان Info.title فارغًا، قد يظهر documentTitle في مكانه في واجهة مستخدم "نماذج Google" ويكون مرئيًا للمجيبين. يمكن ضبط documentTitle عند الإنشاء، ولكن لا يمكن تعديله من خلال طلب "التحديث المجمَّع". يُرجى استخدام Google Drive API إذا كنت بحاجة إلى تحديث documentTitle آليًا.

description

string

تمثّل هذه السمة وصف النموذج.

FormSettings

إعدادات نموذج.

تمثيل JSON
{
  "quizSettings": {
    object (QuizSettings)
  }
}
الحقول
quizSettings

object (QuizSettings)

الإعدادات المرتبطة بنماذج الاختبارات ووضع الدرجات

QuizSettings

الإعدادات المرتبطة بنماذج الاختبارات ووضع الدرجات ويجب تعديلها باستخدام UpdateSettingsRequest.

تمثيل JSON
{
  "isQuiz": boolean
}
الحقول
isQuiz

boolean

ما إذا كان هذا النموذج اختبارًا أم لا. عندما تكون القيمة "true"، يتم تقييم الردود استنادًا إلى السؤال Grading. عند الضبط على "خطأ"، يتم حذف جميع الأسئلة "Grading".

المنتج/الخدمة

تمثّل هذه السمة عنصرًا واحدًا من النموذج. وتحدّد الخاصية kind نوع العنصر.

تمثيل JSON
{
  "itemId": string,
  "title": string,
  "description": string,

  // Union field kind can be only one of the following:
  "questionItem": {
    object (QuestionItem)
  },
  "questionGroupItem": {
    object (QuestionGroupItem)
  },
  "pageBreakItem": {
    object (PageBreakItem)
  },
  "textItem": {
    object (TextItem)
  },
  "imageItem": {
    object (ImageItem)
  },
  "videoItem": {
    object (VideoItem)
  }
  // End of list of possible types for union field kind.
}
الحقول
itemId

string

معرّف السلعة.

عند الإنشاء، يمكن تقديم المعرّف ولكن يجب ألا يكون المعرّف مستخدم في النموذج. وفي حال عدم توفيرها، يتم تعيين مُعرّف جديد.

title

string

عنوان السلعة.

description

string

وصف السلعة.

حقل الاتحاد kind مطلوبة. نوع هذا العنصر. يمكن أن يكون kind واحدًا فقط مما يلي:
questionItem

object (QuestionItem)

طرح سؤال للمستخدم.

questionGroupItem

object (QuestionGroupItem)

تطرح سؤالاً واحدًا أو أكثر على المستخدم بمطالبة رئيسية واحدة.

pageBreakItem

object (PageBreakItem)

بدء صفحة جديدة بعنوان.

textItem

object (TextItem)

تعرض عنوانًا ووصفًا على الصفحة.

imageItem

object (ImageItem)

عرض صورة على الصفحة

videoItem

object (VideoItem)

تعرض فيديو على الصفحة.

QuestionItem

عنصر نموذج يحتوي على سؤال واحد.

تمثيل JSON
{
  "question": {
    object (Question)
  },
  "image": {
    object (Image)
  }
}
الحقول
question

object (Question)

مطلوبة. السؤال المعروض.

image

object (Image)

الصورة المعروضة داخل السؤال.

السؤال

أي سؤال. يُعرف النوع المحدد من الأسئلة من خلال kind.

تمثيل JSON
{
  "questionId": string,
  "required": boolean,
  "grading": {
    object (Grading)
  },

  // Union field kind can be only one of the following:
  "choiceQuestion": {
    object (ChoiceQuestion)
  },
  "textQuestion": {
    object (TextQuestion)
  },
  "scaleQuestion": {
    object (ScaleQuestion)
  },
  "dateQuestion": {
    object (DateQuestion)
  },
  "timeQuestion": {
    object (TimeQuestion)
  },
  "fileUploadQuestion": {
    object (FileUploadQuestion)
  },
  "rowQuestion": {
    object (RowQuestion)
  }
  // End of list of possible types for union field kind.
}
الحقول
questionId

string

للقراءة فقط. معرِّف السؤال.

عند الإنشاء، يمكن تقديم المعرّف ولكن يجب ألا يكون المعرّف مستخدم في النموذج. وفي حال عدم توفيرها، يتم تعيين مُعرّف جديد.

required

boolean

ما إذا كان يجب الإجابة عن السؤال حتى يتمكن المجيب من إرسال رده.

grading

object (Grading)

إعداد وضع الدرجات للسؤال

حقل الاتحاد kind مطلوبة. تمثّل هذه السمة نوع السؤال الذي تم طرحه على المجيب. يمكن أن تكون السمة "kind" واحدة فقط مما يلي:
choiceQuestion

object (ChoiceQuestion)

يمكن للمجيب الاختيار من بين مجموعة محددة مسبقًا من الخيارات.

textQuestion

object (TextQuestion)

يمكن للمجيب إدخال رد نصي حر.

scaleQuestion

object (ScaleQuestion)

يمكن للمجيب اختيار رقم من نطاق.

dateQuestion

object (DateQuestion)

يمكن للمجيب إدخال تاريخ.

timeQuestion

object (TimeQuestion)

يمكن للمجيب إدخال وقت.

fileUploadQuestion

object (FileUploadQuestion)

يمكن للمجيب تحميل ملف واحد أو أكثر.

rowQuestion

object (RowQuestion)

صف من QuestionGroupItem

ChoiceQuestion

سؤال راديو/مربّع اختيار/قائمة منسدلة

تمثيل JSON
{
  "type": enum (ChoiceType),
  "options": [
    {
      object (Option)
    }
  ],
  "shuffle": boolean
}
الحقول
type

enum (ChoiceType)

مطلوبة. تمثّل هذه السمة نوع السؤال الاختياري.

options[]

object (Option)

مطلوبة. قائمة بالخيارات التي يجب على المجيب الاختيار من بينها.

shuffle

boolean

ما إذا كان يجب عرض الخيارات بترتيب عشوائي لمثيلات مختلفة من الاختبار. غالبًا ما يستخدم هذا لمنع الغش من قبل المشاركين الذين قد ينظرون إلى شاشة مستجيب آخر، أو لمعالجة التحيز في استبيان قد يتم تقديمه من خلال وضع نفس الخيارات دائمًا في المقام الأول أو الأخير.

ChoiceType

تمثّل هذه السمة نوع الاختيار.

عمليات التعداد
CHOICE_TYPE_UNSPECIFIED القيمة التلقائية. غير مستخدَمة
RADIO أزرار الاختيار: يتم عرض جميع الاختيارات للمستخدم الذي يمكنه اختيار زر واحد فقط.
CHECKBOX مربّعات الاختيار: يتم عرض جميع الاختيارات للمستخدم الذي يمكنه اختيار أي عدد منها.
DROP_DOWN القائمة المنسدلة: تظهر الخيارات للمستخدم عند الطلب فقط، وإلا سيتم عرض الخيار الحالي فقط. يمكن تحديد خيار واحد فقط.

Option

خيار لسؤال الاختيار.

تمثيل JSON
{
  "value": string,
  "image": {
    object (Image)
  },
  "isOther": boolean,

  // Union field go_to_section can be only one of the following:
  "goToAction": enum (GoToAction),
  "goToSectionId": string
  // End of list of possible types for union field go_to_section.
}
الحقول
value

string

مطلوبة. الاختيار على النحو الذي يتم تقديمه للمستخدم.

image

object (Image)

عرض الصورة كخيار.

isOther

boolean

ما إذا كان الخيار هو "غير ذلك". ينطبق هذا الخيار حاليًا على نوعَي الاختيار RADIO وCHECKBOX فقط، ولكن غير مسموح به في QuestionGroupItem.

حقل الاتحاد go_to_section القسم الذي تريد الانتقال إليه إذا تم تحديد هذا الخيار. ينطبق حاليًا على نوع الاختيار RADIO وSELECT فقط، ولكنه غير مسموح به في QuestionGroupItem. يمكن أن تكون السمة "go_to_section" واحدة فقط مما يلي:
goToAction

enum (GoToAction)

نوع التنقّل في الأقسام

goToSectionId

string

رقم تعريف العنصر لعنوان القسم المطلوب الانتقال إليه.

GoToAction

الثوابت للتنقل بين الأقسام.

عمليات التعداد
GO_TO_ACTION_UNSPECIFIED القيمة التلقائية. غير مستخدَمة
NEXT_SECTION الانتقال إلى القسم التالي
RESTART_FORM العودة إلى بداية النموذج.
SUBMIT_FORM يُرجى إرسال النموذج على الفور.

صورة

يشير ذلك المصطلح إلى البيانات التي تمثّل صورة.

تمثيل JSON
{
  "contentUri": string,
  "altText": string,
  "properties": {
    object (MediaProperties)
  },

  // Union field image_source can be only one of the following:
  "sourceUri": string
  // End of list of possible types for union field image_source.
}
الحقول
contentUri

string

النتائج فقط. معرف موارد منتظم (URI) يمكنك من خلاله تنزيل الصورة، وهو صالح فقط لفترة محدودة.

altText

string

وصف للصورة يتم عرضه عند التمرير وقراءته بواسطة برامج قراءة الشاشة.

properties

object (MediaProperties)

خصائص الصورة.

حقل الاتحاد image_source نوع مصدر الصورة يجب ضبط حقل واحد فقط لمصدر الصورة عند إنشاء صور جديدة. يمكن أن تكون السمة "image_source" واحدة فقط مما يلي:
sourceUri

string

الإدخال فقط. عنوان URI المصدر هو عنوان URI المستخدم لإدراج الصورة. يمكن أن يكون معرّف الموارد المنتظم (URI) للمصدر فارغًا عند جلبه.

MediaProperties

خصائص الوسائط.

تمثيل JSON
{
  "alignment": enum (Alignment),
  "width": integer
}
الحقول
alignment

enum (Alignment)

موقف وسائل الإعلام.

width

integer

عرض الوسائط بالبكسل. عند عرض الوسائط، يتم تغيير حجمها إلى أصغر هذه القيمة أو عرض النموذج المعروض. ويتم الحفاظ على نسبة العرض إلى الارتفاع الأصلية للوسائط. إذا لم يتم تحديد عرض عند إضافة الوسائط إلى النموذج، يتم ضبطها على عرض مصدر الوسائط. يجب أن يتراوح العرض بين 0 و740 (شاملةً). لا يُسمح بضبط العرض على 0 أو على غير محدّد إلا عند تعديل مصدر الوسائط.

محاذاة

محاذاة على الصفحة.

عمليات التعداد
ALIGNMENT_UNSPECIFIED القيمة التلقائية. غير مستخدَمة
LEFT محاذاة لليسار.
RIGHT محاذاة إلى اليمين.
CENTER الوسط.

TextQuestion

سؤال نصي.

تمثيل JSON
{
  "paragraph": boolean
}
الحقول
paragraph

boolean

ما إذا كان السؤال عبارة عن سؤال فقرة أم لا. إذا لم يكن كذلك، يكون السؤال سؤالاً نصيًا قصيرًا.

ScaleQuestion

سؤال مقياس. لدى المستخدم مجموعة من القيم الرقمية للاختيار من بينها.

تمثيل JSON
{
  "low": integer,
  "high": integer,
  "lowLabel": string,
  "highLabel": string
}
الحقول
low

integer

مطلوبة. تمثّل هذه السمة أدنى قيمة ممكنة للمقياس.

high

integer

مطلوبة. تمثّل هذه السمة أعلى قيمة ممكنة للمقياس.

lowLabel

string

التسمية المطلوب عرضها لوصف أدنى نقطة على المقياس.

highLabel

string

التسمية المطلوب عرضها لوصف أعلى نقطة على المقياس.

DateQuestion

سؤال تاريخ الإعداد التلقائي لأسئلة التاريخ هو شهر ويوم فقط.

تمثيل JSON
{
  "includeTime": boolean,
  "includeYear": boolean
}
الحقول
includeTime

boolean

ما إذا كان سيتم تضمين الوقت كجزء من السؤال.

includeYear

boolean

ما إذا كان سيتم تضمين السنة كجزء من السؤال.

TimeQuestion

سؤال زمني

تمثيل JSON
{
  "duration": boolean
}
الحقول
duration

boolean

true إذا كان السؤال يتعلق بفترة زمنية مسقوفة. وإلا فإنه في وقت من اليوم.

FileUploadQuestion

سؤال حول تحميل ملف لا تتيح واجهة برمجة التطبيقات حاليًا إنشاء أسئلة لتحميل الملفات.

تمثيل JSON
{
  "folderId": string,
  "types": [
    enum (FileType)
  ],
  "maxFiles": integer,
  "maxFileSize": string
}
الحقول
folderId

string

مطلوبة. رقم تعريف مجلد Drive حيث يتم تخزين الملفات المحمَّلة.

types[]

enum (FileType)

أنواع الملفات المقبولة لهذا السؤال.

maxFiles

integer

الحد الأقصى لعدد الملفات التي يمكن تحميلها لهذا السؤال في إجابة واحدة

maxFileSize

string (int64 format)

الحد الأقصى لعدد وحدات البايت المسموح بها لأي ملف فردي تم تحميله إلى هذا السؤال.

FileType

أنواع الملفات التي يمكن تحميلها إلى سؤال حول تحميل الملفات

عمليات التعداد
FILE_TYPE_UNSPECIFIED القيمة التلقائية. غير مستخدَمة
ANY لا توجد قيود على النوع.
DOCUMENT مستند في "مستندات Google"
PRESENTATION عرض تقديمي في "العروض التقديمية من Google"
SPREADSHEET جدول بيانات من "جداول بيانات Google"
DRAWING رسم.
PDF ملف PDF
IMAGE صورة.
VIDEO فيديو.
AUDIO ملف صوتي

RowQuestion

الإعدادات لسؤال يكون جزءًا من مجموعة أسئلة.

تمثيل JSON
{
  "title": string
}
الحقول
title

string

مطلوبة. تمثّل هذه السمة عنوان الصف الفردي في QuestionGroupItem.

وضع العلامات

وضع الدرجات لسؤال واحد

تمثيل JSON
{
  "pointValue": integer,
  "correctAnswers": {
    object (CorrectAnswers)
  },
  "whenRight": {
    object (Feedback)
  },
  "whenWrong": {
    object (Feedback)
  },
  "generalFeedback": {
    object (Feedback)
  }
}
الحقول
pointValue

integer

مطلوبة. تمثّل هذه السمة الحد الأقصى لعدد النقاط التي يمكن للمجيب الحصول عليها تلقائيًا للإجابة الصحيحة. يجب ألا يكون هذا العدد سالبًا.

correctAnswers

object (CorrectAnswers)

مطلوبة. تمثّل هذه السمة مفتاح الإجابة للسؤال. يتم وضع درجات على الردود تلقائيًا استنادًا إلى هذا الحقل.

whenRight

object (Feedback)

الملاحظات المعروضة للإجابات الصحيحة. لا يمكن ضبط هذه الملاحظات إلا لأسئلة الاختيار من متعدد التي تم تقديم إجابات صحيحة لها.

whenWrong

object (Feedback)

تمثّل هذه السمة الملاحظات التي يتم عرضها للردود غير الصحيحة. لا يمكن ضبط هذه الملاحظات إلا لأسئلة الاختيار من متعدد التي تم تقديم إجابات صحيحة لها.

generalFeedback

object (Feedback)

تمثّل هذه السمة الملاحظات المعروضة لجميع الإجابات. يتم استخدام هذا بشكل شائع للأسئلة ذات الإجابات القصيرة عندما يريد مالك الاختبار إعطاء المستجيبين سريعًا فكرة ما إذا كانوا أجابوا عن السؤال بشكل صحيح قبل أن تتاح لهم الفرصة لتقييم الإجابة رسميًا. لا يمكن ضبط الملاحظات العامة لأسئلة الاختيار من متعدد التي يتم تقييمها تلقائيًا.

CorrectAnswers

مفتاح الإجابة لسؤال.

تمثيل JSON
{
  "answers": [
    {
      object (CorrectAnswer)
    }
  ]
}
الحقول
answers[]

object (CorrectAnswer)

قائمة بالإجابات الصحيحة. يمكن وضع درجات على إجابة الاختبار تلقائيًا بناءً على هذه الإجابات. بالنسبة إلى الأسئلة ذات القيمة الفردية، يتم وضع علامة على الإجابة "صحيحة" إذا كانت تتطابق مع أي قيمة في هذه القائمة (بمعنى آخر، يمكن تقديم إجابات صحيحة متعدّدة). بالنسبة إلى الأسئلة متعددة القيم (CHECKBOX)، يتم وضع علامة على الإجابة "صحيحة" إذا كانت تحتوي على القيم الواردة في هذه القائمة بالضبط.

CorrectAnswer

إجابة واحدة صحيحة عن سؤال. بالنسبة إلى الأسئلة متعددة القيم (CHECKBOX)، قد تحتاج إلى عدة قيم CorrectAnswer لتمثيل خيار إجابة واحد صحيح.

تمثيل JSON
{
  "value": string
}
الحقول
value

string

مطلوبة. تمثّل هذه السمة قيمة الإجابة الصحيحة. يمكنك الاطّلاع على مستندات TextAnswer.value للحصول على تفاصيل عن كيفية تنسيق أنواع القيم المختلفة.

QuestionGroupItem

تحدد سؤالاً يتكون من أسئلة متعددة مجمعة معًا.

تمثيل JSON
{
  "questions": [
    {
      object (Question)
    }
  ],
  "image": {
    object (Image)
  },

  // Union field kind can be only one of the following:
  "grid": {
    object (Grid)
  }
  // End of list of possible types for union field kind.
}
الحقول
questions[]

object (Question)

مطلوبة. قائمة بالأسئلة التي تنتمي إلى مجموعة الأسئلة هذه. يجب أن ينتمي السؤال إلى مجموعة واحدة فقط. قد تؤثر kind للمجموعة في أنواع الأسئلة المسموح بها.

image

object (Image)

الصورة التي تظهر داخل مجموعة الأسئلة أعلى الأسئلة المحددة.

حقل الاتحاد kind مطلوبة. نوع مجموعة الأسئلة الذي يحدد أنواع الأسئلة المسموح بها وكيفية عرضها. يمكن أن تكون السمة "kind" واحدة فقط مما يلي:
grid

object (Grid)

مجموعة الأسئلة هي شبكة بها صفوف من أسئلة الاختيار من متعدد التي تشترك في نفس الخيارات. عند ضبط grid، يجب أن تكون جميع الأسئلة في المجموعة من النوع row.

معرّف الإصدار العالمي (GRid)

شبكة من الخيارات (مربع اختيار أو تحديد) يشكل كل صف سؤالاً منفصلاً. يحتوي كل صف على نفس الخيارات، والتي تظهر كأعمدة.

تمثيل JSON
{
  "columns": {
    object (ChoiceQuestion)
  },
  "shuffleQuestions": boolean
}
الحقول
columns

object (ChoiceQuestion)

مطلوبة. الخيارات التي يشاركها كل سؤال في الشبكة. بمعنى آخر، قيم الأعمدة. يُسمح فقط بـ CHECK_BOX وRADIO اختيار.

shuffleQuestions

boolean

إذا كانت الإجابة true، يتم ترتيب الأسئلة عشوائيًا. بمعنى آخر، تظهر الصفوف بترتيب مختلف لكل مجيب.

PageBreakItem

فاصل صفحة يتم عرض عنوان هذا العنصر ووصفه في أعلى الصفحة الجديدة.

TextItem

عنصر نصي.

ImageItem

عنصر يحتوي على صورة

تمثيل JSON
{
  "image": {
    object (Image)
  }
}
الحقول
image

object (Image)

مطلوبة. الصورة المعروضة في السلعة.

VideoItem

عنصر يحتوي على فيديو.

تمثيل JSON
{
  "video": {
    object (Video)
  },
  "caption": string
}
الحقول
video

object (Video)

مطلوبة. الفيديو المعروض في العنصر.

caption

string

النص المعروض أسفل الفيديو.

حملة فيديو

تمثّل هذه السمة البيانات التي تمثّل الفيديو.

تمثيل JSON
{
  "youtubeUri": string,
  "properties": {
    object (MediaProperties)
  }
}
الحقول
youtubeUri

string

مطلوبة. معرّف موارد منتظم (URI) لمنصة YouTube

properties

object (MediaProperties)

خصائص الفيديو

الطُرق

batchUpdate

يمكنك تغيير النموذج باستخدام مجموعة من التعديلات.

create

يمكنك إنشاء نموذج جديد باستخدام العنوان الوارد في رسالة النموذج المقدّمة في الطلب.

get

الحصول على نموذج