Créer un examen

Pour créer un examen, vous devrez envoyer une demande de poste avec les détails de l'examen. Vous trouverez ci-dessous un exemple:
{
  "name": "Introduction to Data Science DSC101",
  "platform": [
    "android",
    "ios",
    "web"
  ],
  "enforceDesktop": false,
  "analytics": {
    "device": true,
    "ip": true,
    "focusing": true
  },
  "openOn": 1719046628502,
  "closeOn": 1719064544928,
  "duration": 1200,
  "restricted_commands": [
    "copy",
    "cut",
    "paste",
    "right_mouse",
    "...more"
  ],
  "logo": "data:base64,WHV4MnJsN2oyZUdmb...",
  "translation": {
    "enableSelection": true,
    "entire": false,
    "langs": [
      "en",
      "zh",
      "ru",
      "de",
      "vi",
      "...more"
    ]
  },
  "redirectionLink": "https://exam.feedback.stanford.com/respondent",
  "monitoring": {
    "cam": true,
    "screen": true
  },
  "result": {
    "availability": "instant",
    "public": false,
    "viewableAns": true
  },
  "respondant": {
    "enforceUser": false,
    "multipleUserAttempts": false,
    "privateExam": false,
    "multipleInvitationAttempts": false,
    "multipleDeviceAttempt": false,
    "resumable": true,
    "charge": false
  },
  "welcomePage": {
    "content": [
      {
        "type": "text",
        "value": "Your custom html text goes here.."
      },
      {
        "type": "about",
        "value": "Enter Matric No."
      },
      {
        "type": "input",
        "value": "Enter Password"
      }
    ],
    "validate": false,
    "multipleAttempts": false
  },
  "thankYouPage": "<div>Thank you for your participation</div>",
  "courses": [
    {
      "title": "Data Wrangling and Cleaning",
      "shuffleQ": true,
      "shuffleOption": false,
      "limit": 1,
      "questions": [
        {
          "q": "Which of the following methods is used to handle missing values in a dataset?",
          "opt": [
            "Normalization",
            "One-Hot Encoding",
            "Imputation",
            "PCA (Principal Component Analysis)"
          ],
          "ans": [
            2
          ],
          "type": "radio",
          "points": 1
        },
        {
          "q": "Explain the process of data cleaning and why it is important in data science. Include examples of common issues found in raw data and how they can be addressed.",
          "type": "free",
          "points": 3
        }
      ]
    },
    {
      "title": "Statistical Analysis and Visualization",
      "shuffleQ": true,
      "shuffleOption": false,
      "questions": [
        {
          "q": "Which of the following are common types of data visualizations used in exploratory data analysis (EDA)? (Select all that apply)",
          "opt": [
            "Bar Chart",
            "Histogram",
            "Scatter Plot",
            "Decision Tree"
          ],
          "ans": [
            0,
            1,
            2
          ],
          "type": "checkbox"
        },
        {
          "q": "Which statistical measure is used to describe the spread or dispersion of a set of data points?",
          "ans": [
            "Standard Deviation",
            "S.D",
            "SD"
          ],
          "type": "exact_or"
        },
        {
          "q": "List 3 methods for measures of central tendency?",
          "ans": [
            "Mean",
            "Median",
            "Mode"
          ],
          "type": "exact_and"
        }
      ]
    }
  ]
}

Explication

Les champs et valeurs individuels sont expliqués comme suit:
ChampsTaperRequisDescription
nameStringCe sera le nom donné à votre examen.
Il ne doit pas être plus grand que 200 personnages
platformArrayCe tableau doit contenir des plateformes que vous souhaitez que cet examen prenne en charge.
Les valeurs valides sont android, ios et web
enforceDesktopBooleanVrai si cet examen ne peut être passé que sur des appareils avec une largeur de résolution d'écran supérieure à 999 pixels. Par défaut est faux
openOnNumberC'est le moment où l'examen devrait être disponible.<br>Il devrait être au format Time Epoch, qui est le nombre de millisecondes qui se sont écoulées depuis minuit (UTC) le 1er janvier 1970.
closeOnNumberC'est le moment où l'examen n'est plus disponible.<br>Il devrait être au format Time Epoch, qui est le nombre de millisecondes qui se sont écoulées depuis minuit (UTC) le 1er janvier 1970.
durationNumberIl s'agit des secondes maximales dans lesquelles le répondant peut terminer l'examen.
logoStringIl peut s'agir des données Base64 pour le logo d'examen ou une URL HTTPS pointant vers une image valide.
monitoring.camBooleanVrai si vous voulez enregistrer la came de l'intimé
monitoring.screenBooleanVrai si vous souhaitez enregistrer l'écran du répondant
analytics.deviceBooleanVrai si vous souhaitez enregistrer des informations sur l'appareil répondant
analytics.ipBooleanVrai si vous souhaitez enregistrer l'adresse IP publique du répondant
analytics.focusingBooleanVrai si vous souhaitez vous connecter et signaler lorsque le répondant perd l'accent sur l'écran de l'examen
restricted_commandsArrayCe tableau doit contenir les commandes à limiter lorsque l'intimé passe son examen.


copy: Cela devrait désactiver toute commande associée à la copie de texte sur la page d'examen (e.g CTRL+C, CMD+C).
cut: Cela devrait désactiver toute commande associée à la coupe du texte sur la page d'examen (e.g CTRL+X, CMD+X).
paste: Cela devrait désactiver toute commande associée à la coloration du texte sur la page d'examen (e.g CTRL+V, CMD+V).
right_mouse: Cela devrait désactiver le clic droit de la souris
print: Cela devrait désactiver toute commande associée à l'impression de la page d'examen (e.g CTRL+P, CMD+P).
fullscreen: Cela devrait désactiver toute commande associée à l'entrée en plein écran sur la page de l'examen (e.g CTRL+CMD+F).
shortcut: Cela devrait désactiver toute la clé de raccourci (par exemple Arrowup, Arrowdown, Arrowleft, Arrowright, N, P, 1 - 9)
sci_cal: Cela devrait désactiver la calculatrice scientifique
basic_cal: Cela devrait désactiver la calculatrice de base
result.availabilityStringCela peut être l'un des éléments suivants:

instant: Si vous voulez que les résultats des répondants soient disponibles instantanément
manual: Si vous voulez libérer manuellement le résultat du répondant
off: Si vous n'avez pas l'intention de libérer le résultat du répondant sur notre plateforme
result.publicBooleanVrai si vous voulez que tous les répondants se voient les uns les autres
result.viewableAnsBooleanVrai si vous voulez que l'intimé ait des marques et des tentatives
respondant.enforceUserBooleanAppliquer la connexion de l'utilisateur pour les répondants.
respondant.multipleUserAttemptsBooleanActivez plusieurs tentatives du même utilisateur. Par défaut est faux.
Veuillez noter: cette valeur sera ignorée si respondant.enforceUser est faux
respondant.privateExamBooleanVrai si vous voulez que cet examen ne soit passé que par les répondants que vous avez invités.
respondant.multipleInvitationAttemptsBooleanActivez plusieurs tentatives à partir du même lien d'invitation. Par défaut est faux
Veuillez noter: cette valeur sera ignorée si respondant.privateExam est faux
respondant.multipleDeviceAttemptBooleanActivez plusieurs tentatives du même navigateur ou appareil. Par défaut est faux
respondant.resumableBooleanRendre l'examen de résumé lorsque le répondant recharge la page. Par défaut est faux
respondant.chargeBooleanFacturer à l'intimé le jeton requis pour passer cet examen. Par défaut est faux
respondant.limitNumerCela devrait être un nombre entier positif représentant le répondant maximum qui peut tenter cet examen
redirectionLinkStringL'offre de cela redirigera l'utilisateur vers le lien spécifié lorsque le test est terminé, avec un paramètre de requête annexé de respondent_id=unique_id.

Par exemple, si vous avez fourni https://exam.feedback.stanford.com/respondent En tant que lien de redirection, le répondant sera redirigé vers https://exam.feedback.stanford.com/respondent?respondent_id=unique_id. unique_id sera la pièce d'identité de l'intimé.
translation.enableSelectionBooleanVrai si vous souhaitez activer la sélection du langage ou utiliser le langage système par défaut
translation.entireBooleanVrai si vous souhaitez traduire l'intégralité du texte de l'examen, y compris les questions et les options
translation.langsArrayCe tableau doit contenir le ISO 639-1 language codes dans lequel vous voulez que votre traduction d'examen soit disponible.

Langues prises en charge
  • English (en)
  • French (fr)
  • Chinese (zh)
  • German (de)
  • Swahili (sw)
  • Spanish (es)
  • Russian (ru)
  • Portuguese (pt)
  • Hindi (hi)
  • Arabic (ar)
  • Bengali (bn)
  • Japanese (ja)
  • Korean (ko)
  • Italian (it)
  • Turkish (tr)
  • Vietnamese (vi)
  • Dutch (nl)
  • Thai (th)
  • Indonesian (id)
  • Polish (pl)
  • Malay (ms)
  • Filipino (tl)
  • Swedish (sv)
  • Greek (el)
  • Czech (cs)
  • Romanian (ro)
  • Hungarian (hu)
  • Ukrainian (uk)
  • Hebrew (he)
  • Farsi (fa)
  • Danish (da)
  • Norwegian (no)
  • Finnish (fi)
  • Bulgarian (bg)
  • Albanian (sq)
  • Latvian (lv)
  • Mongolian (mn)
  • Slovak (sk)
  • Catalan (ca)
  • Georgian (ka)
  • Lithuanian (lt)
  • Serbian (sr)
welcomePage.validateBooleanVrai si vous souhaitez valider les valeurs de champ de welcomePage.content via votre URL de webhook. Par défaut est faux.
welcomePage.multipleAttemptsBooleanVrai si vous voulez autoriser plusieurs tentatives de mêmes valeurs de champ. Par défaut à false.
welcomePage.content.typeStringRendez le contenu en haut de la page de bienvenue de l'examen
la valeur peut être l'une des éléments suivants:

text: rend le texte ou le contenu HTML.
input: rend le champ de saisie, correspondant welcomePage.content.value sera utilisé comme espace réservé pour le champ de saisie.
thankYouPageStringContenu texte ou HTML affiché au répondant une fois qu'ils ont terminé ou soumis leur examen.
courses.titleStringLe titre du cours
courses.shuffleQBooleanFidèle à mélanger les questions dans cette section
courses.shuffleOptionBooleanFidèle à mélanger les options en questions avec radio or checkbox
courses.limitIntegerUne valeur entière positive entière qui limite le nombre maximum de questions que le répondant peut tenter sur ce cours
courses.questions.qStringQuestion individuelle dans le texte ou la forme HTML.
courses.questions.optArrayLes options de la question. Devrait être un tableau de chaîne, peut prendre en charge jusqu'à 26 éléments.
Cela ne devrait être fourni que si courses.questions.type est soit "radio" ou "checkbox".
courses.questions.ansArrayLa réponse à la question.Si courses.questions.type est soit "radio" ou "checkbox", Cela devrait être un tableau d'entier comme position d'options correctes.Sinon si courses.questions.type est soit "exact" ou "exact_and", alors ce devrait être un tableau de chaîne.
courses.questions.typeStringLa valeur peut être l'une des éléments suivants:

radio: Convient lorsque la question a des options avec une seule réponse.
checkbox: Convient lorsque la question a une option avec une réponse multiple.
exact: Vérifiez contre la tentative de l'intimé avec la bonne réponse en utilisant le bit.
exact_and: Vérifiez contre la tentative de répondant avec la bonne réponse en utilisant le bit.
free: Convient lorsque la réponse à la question est un texte libre, comme un essai ou une explication. Veuillez noter que cette question comme celle-ci sera Mark par notre moteur AI.
courses.questions.pointsNumbernombre de points à affecter à cette question. Par défaut est 1
courses.questions.expStringExplication de la bonne réponse à la question.

Modifier l'examen

Lorsque vous modifiez un examen existant, vous n'êtes pas autorisé à mettre à jour le monitoring, result et respondant champ. Mais vous pouvez mettre à jour la limite dans le champ des répondants en tant que respondant.limit.
Aucune opération de fusion n'est effectuée lors de la mise à jour d'un champ qui contient un objet ou un tableau comme valeur. Au lieu de cela, la valeur totale d'un tel champ est remplacée par la nouvelle.
Vous pouvez définir un champ sur NULL si vous souhaitez le supprimer


Pour modifier un examen existant, vous devrez envoyer une demande de vente avec l'examen.
{
  "platform": [
    "web"
  ],
  "openOn": null,
  "restricted_commands": [
    "copy",
    "cut",
    "paste"
  ],
  "translation": {
    "enableSelection": true,
    "entire": true,
    "langs": [
      "en",
      "zh",
      "ru"
    ]
  },
  "questions": [
    {
      "title": "Data Wrangling and Cleaning",
      "shuffleQ": true,
      "shuffleOption": false,
      "limit": 1,
      "questions": [
        {
          "q": "Which of the following methods is used to handle missing values in a dataset?",
          "opt": [
            "Normalization",
            "One-Hot Encoding",
            "Imputation",
            "PCA (Principal Component Analysis)"
          ],
          "ans": [
            2
          ],
          "type": "radio",
          "points": 1
        },
        {
          "q": "Explain the process of data cleaning and why it is important in data science. Include examples of common issues found in raw data and how they can be addressed.",
          "type": "free",
          "points": 3
        }
      ]
    },
    {
      "title": "Statistical Analysis and Visualization",
      "shuffleQ": true,
      "shuffleOption": false,
      "questions": [
        {
          "q": "Which of the following is a Python library used for data visualization?",
          "opt": [
            "NumPy",
            "Pandas",
            "Matplotlib",
            "Scikit-learn"
          ],
          "ans": [
            2
          ],
          "type": "radio"
        },
        {
          "q": "Discuss the importance of exploratory data analysis (EDA) in data science and describe how visualization tools can be used to perform EDA.",
          "type": "free",
          "points": 2
        }
      ]
    }
  ]
}

Supprimer l'examen

Pour supprimer un examen, vous devrez envoyer une demande de suppression avec l'examen.
La suppression d'un examen supprimera toutes les données associées à un tel examen, y compris toutes les données médiatiques, les questions et les données des répondants
{
  "x-client-id": "xxx-xxx-xxx",
  "x-client-secret": "xxxxxxx",
  "content-type": "application/json"
}

Commentaires de commentaires (0)