Crea l'esame

Per creare un esame, dovrai inviare una richiesta di post con i dettagli dell'esame. Di seguito è riportato un esempio:
{
  "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"
        }
      ]
    }
  ]
}

Spiegazione

I singoli campi e valori sono spiegati come segue:
CampiTipaNecessariaDescrizione
nameStringQuesto sarà il nome dato al tuo esame.
Non deve essere maggiore di 200 caratteri
platformArrayQuesto array dovrebbe contenere piattaforme che desideri supportare questo esame.
I valori validi sono android, ios E web
enforceDesktopBooleanVero se questo esame può essere sostenuto solo su dispositivi con larghezza di risoluzione dello schermo maggiore di 999 pixel. Il valore predefinito è falso
openOnNumberQuesto è il momento in cui l'esame dovrebbe essere disponibile.<br>Si prevede che si trova in formato Epoch Time, che è il numero di millisecondi che sono trascorsi da mezzanotte (UTC) il 1 ° gennaio 1970.
closeOnNumberQuesto è il momento in cui l'esame non è più disponibile.<br>Si prevede che si trova in formato Epoch Time, che è il numero di millisecondi che sono trascorsi da mezzanotte (UTC) il 1 ° gennaio 1970.
durationNumberQuesto è il massimo dei secondi all'interno dei quali l'intervistato può completare l'esame.
logoStringQuesti possono essere i dati Base64 per il logo dell'esame o un URL HTTPS che punta a un'immagine valida.
monitoring.camBooleanVero se vuoi registrare la camma del rispondente
monitoring.screenBooleanVero se si desidera registrare la schermata del rispondente
analytics.deviceBooleanVero se si desidera registrare le informazioni sul dispositivo degli intervistati
analytics.ipBooleanVero se si desidera registrare l'indirizzo IP pubblico rispondente
analytics.focusingBooleanVero se si desidera registrare e bandiera quando il rispondente perde concentrarsi sulla schermata dell'esame
restricted_commandsArrayQuesto array dovrebbe contenere i comandi da limitare quando il rispondente sta sostenendo l'esame.


copy: Ciò dovrebbe disabilitare qualsiasi comando associato alla copia del testo nella pagina dell'esame (e.g CTRL+C, CMD+C).
cut: Ciò dovrebbe disabilitare qualsiasi comando associato al taglio del testo nella pagina dell'esame (e.g CTRL+X, CMD+X).
paste: Ciò dovrebbe disabilitare qualsiasi comando associato al testo incollata nella pagina dell'esame (e.g CTRL+V, CMD+V).
right_mouse: Questo dovrebbe disabilitare il clic destro del mouse
print: Ciò dovrebbe disabilitare qualsiasi comando associato alla stampa della pagina dell'esame (e.g CTRL+P, CMD+P).
fullscreen: Ciò dovrebbe disabilitare qualsiasi comando associato a immettere a schermo intero nella pagina dell'esame (e.g CTRL+CMD+F).
shortcut: Questo dovrebbe disabilitare tutta la chiave di scelta rapida (ad esempio freccia, freccia, freccia, freccia, n, p, 1 - 9)
sci_cal: Questo dovrebbe disabilitare il calcolatore scientifico
basic_cal: Questo dovrebbe disabilitare il calcolatore di base
result.availabilityStringQuesto può essere uno dei seguenti:

instant: Se si desidera che il risultato del rispondente sia disponibile all'istante
manual: Se si desidera rilasciare manualmente il risultato del rispondente
off: Se non hai intenzione di rilasciare il risultato del rispondente sulla nostra piattaforma
result.publicBooleanVero se vuoi che tutti gli intervistati si vedono punteggi
result.viewableAnsBooleanVero se vuoi che il rispondente vediamo segnali e tentativi
respondant.enforceUserBooleanEsegui l'accesso dell'utente per gli intervistati.
respondant.multipleUserAttemptsBooleanAbilita più tentativi dallo stesso utente. Il valore predefinito è falso.
Nota: questo valore verrà ignorato se respondant.enforceUser è falso
respondant.privateExamBooleanVero se vuoi che questo esame sia sostenuto solo dagli intervistati che hai invitato.
respondant.multipleInvitationAttemptsBooleanAbilita più tentativi dallo stesso collegamento di invito. Il valore predefinito è falso
Nota: questo valore verrà ignorato se respondant.privateExam è falso
respondant.multipleDeviceAttemptBooleanAbilita più tentativi dallo stesso browser o dispositivo. Il valore predefinito è falso
respondant.resumableBooleanRendi riprese l'esame quando il rispondente ricarica la pagina. Il valore predefinito è falso
respondant.chargeBooleanAccusa il rispondente il token richiesto per sostenere questo esame. Il valore predefinito è falso
respondant.limitNumerQuesto dovrebbe essere un numero intero positivo che rappresenta il rispondente massimo che può tentare questo esame
redirectionLinkStringA condizione che ciò reindirizzerà l'utente al collegamento specificato al termine del test, con parametro di query aggiunto di respondent_id=unique_id.

Ad esempio, se hai fornito https://exam.feedback.stanford.com/respondent Come collegamento al reindirizzamento, il rispondente verrà reindirizzato a https://exam.feedback.stanford.com/respondent?respondent_id=unique_id. Dove unique_id sarà l'ID del convenuto.
translation.enableSelectionBooleanVero se si desidera abilitare la selezione della lingua o utilizzare la lingua di sistema predefinita
translation.entireBooleanVero se si desidera tradurre l'intero testo dell'esame, inclusi domande e opzioni
translation.langsArrayQuesto array dovrebbe contenere il file ISO 639-1 language codes in cui vuoi che la traduzione dell'esame sia disponibile.

Lingue supportate
  • 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.validateBooleanVero se vuoi convalidare i valori di campo di welcomePage.content tramite il tuo URL Webhook. Il valore predefinito è falso.
welcomePage.multipleAttemptsBooleanVero se si desidera consentire un tentativo multiplo degli stessi valori di campo. Predefinito a False.
welcomePage.content.typeStringRender il contenuto nella parte superiore dell'esame di benvenuto
il valore può essere uno dei seguenti:

text: Renders Testo o contenuto HTML.
input: Renders Field di input, corrispondente welcomePage.content.value verrà utilizzato come segnaposto per il campo di input.
thankYouPageStringContenuto di testo o HTML visualizzato al rispondente dopo aver completato o inviato il loro esame.
courses.titleStringIl titolo del corso
courses.shuffleQBooleanFedele a mescolare le domande in questa sezione
courses.shuffleOptionBooleanFedele a mescolare le opzioni in domande con radio or checkbox
courses.limitIntegerUn intero valore intero positivo che limita il numero massimo di domande che il convenuto può tentare in questo corso
courses.questions.qStringDomanda individuale in forma di testo o HTML.
courses.questions.optArrayLe opzioni della domanda. Dovrebbe essere un array di stringa, può supportare fino a 26 elementi.
Questo dovrebbe essere fornito solo se courses.questions.type è neanche "radio" O "checkbox".
courses.questions.ansArrayLa risposta alla domanda.Se courses.questions.type è neanche "radio" O "checkbox", Questo dovrebbe essere una matrice di numeri interi come posizione di opzioni corrette.Altro se courses.questions.type è neanche "exact" O "exact_and", allora dovrebbe essere un array di stringa.
courses.questions.typeStringIl valore può essere uno dei seguenti:

radio: Adatto quando la domanda ha opzioni con una singola risposta.
checkbox: Adatto quando la domanda ha opzioni con una risposta multipla.
exact: Controllare contro il tentativo convenuto con la risposta corretta usando bit o.
exact_and: Controllare contro il tentativo convenuto con la risposta corretta usando bitwise e.
free: Adatto quando la risposta alla domanda è un testo gratuito, come un saggio o una spiegazione. Si prega di notare che una domanda come questa sarà contrassegnata dal nostro motore AI.
courses.questions.pointsNumberNumeri di punti da assegnare a questa domanda. Predefiniti fino a 1
courses.questions.expStringSpiegazione della risposta corretta alla domanda.

EDIT ESAME

Quando si modifica un esame esistente, non è consentito aggiornare il monitoring, result E respondant campo. Ma puoi aggiornare il limite nel campo convenuto come respondant.limit.
Non viene eseguita alcuna operazione di unione durante l'aggiornamento di un campo che contiene un oggetto o un array come valore. Invece, l'intero valore di tale campo viene sostituito con quello nuovo.
Puoi impostare un campo su NULL se si desidera rimuoverlo


Per modificare un esame esistente, dovrai inviare una richiesta put insieme a Exam_id.
{
  "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
        }
      ]
    }
  ]
}

Elimina l'esame

Per eliminare un esame, dovrai inviare una richiesta di eliminazione insieme a Exam_id.
L'eliminazione di un esame eliminerà tutti i dati associati a tale esame, inclusi tutti i dati sui media, le domande e i dati degli intervistati
{
  "x-client-id": "xxx-xxx-xxx",
  "x-client-secret": "xxxxxxx",
  "content-type": "application/json"
}

Commenti di feedback (0)