An Objective Student Assessment represents the result of the interaction between the student and one of his/her objective. It can be the result to a test for example. ===Object resources=== ^ Property ^ Type ^ Description ^ | id | Integer | identifier for the database of Domoscio's API | | uid | String | The ID of this Objective Student Assessment in your Database | | objective_student_id | Integer | The ID of the objective_student it is related to | | mark | Integer | It expects an integer between 0 and 100. 0 means nothing is correct, 100 means perfect | | knowledge_node_update | Boolean | If true, this object should be use to update the user model | | success_threshold | Integer | This parameter use the same scale as "mark". If mark is above threshold, then the interaction can be seen as positive, otherwise it can be seen as negative. It is 50 by default | | start_date | DateTime | when the interaction between the student and the objective started | | end_date | DateTime | when the interaction between the student and the objective ended | | created_at | DateTime | Date of creation of the object | | updated_at | DateTime | Last time the object has been modified | ===Create (POST)=== ^ Method | POST | ^ URL | /objective_student_assessments | ==Parameters (*Requiered parameters)== ^ Property ^ Type ^ Description ^ | objective_student_id* | Integer | The ID of the objective_student it is related to | | mark* | Integer | It expects an integer between 0 and 100. 0 means nothing is correct, 100 means perfect | | knowledge_node_update | Boolean | If true, this object should be use to update the user model (it is false by default) | | success_threshold | Integer | This parameter use the same scale as "mark". If mark is above threshold, then the interaction can be seen as positive, otherwise it can be seen as negative | | start_date* | DateTime | when the interaction between the student and the objective started | | end_date | DateTime | when the interaction between the student and the objective ended | | payload | Json | You can use this field to add other information such as the geographic position | ==Send the request (JSON input example)== { "objective_student_id":52, "mark": 97, "start_date" : "2018-02-19 09:11:23 CET", "end_date" : "2018-02-19 09:15:28 CET", "knowledge_node_update": true } ==Get the response (JSON output example)== { "id": 16791, "objective_student_id": 52, "mark": 97, "success_threshold": 50, "knowledge_node_update": true, "created_at": "2018-07-31T09:20:45.795Z", "updated_at": "2018-07-31T09:20:45.795Z", "payload": null, "start_date": "2018-02-19T08:11:23.000Z", "end_date": "2018-02-19T08:15:28.000Z" } ===Fetch (GET)=== ^ Method | GET| ^ URL | /objective_student_assessments/{objective_student_assessment_id} | If no objective_student_assessment_id is provided it will fetch all the ObjectiveStudentAssessment of your instance. In the parameters of your request, you can add a specific objective_id ou student_id to see only the ObjectiveStudentAssessment related to them. ==Get the response (JSON output example)== **With ID provided**\\ { "id": 16791, "objective_student_id": 52, "mark": 97, "success_threshold": 50, "knowledge_node_update": true, "created_at": "2018-07-31T09:20:45.795Z", "updated_at": "2018-07-31T09:20:45.795Z", "payload": null, "start_date": "2018-02-19T08:11:23.000Z", "end_date": "2018-02-19T08:15:28.000Z" } **Without ID provided**\\ [ { "id": 16791, "objective_student_id": 52, "mark": 97, "success_threshold": 50, "knowledge_node_update": true, "created_at": "2018-07-31T09:20:45.795Z", "updated_at": "2018-07-31T09:20:45.795Z", "payload": null, "start_date": "2018-02-19T08:11:23.000Z", "end_date": "2018-02-19T08:15:28.000Z" } ] ===Create in batches (POST)=== ^ Method | POST | ^ URL | /objective_student_assessments/batch_creation | This route allows to send objective student assessment in batches to speed up their creation. Besides the constraints of a unique objective student assessment that are kept, there are two others: it is not possible to create more than 250 objective student assessment in one batch, and in one batch all the objective student assessment must be related to only one student. ==Parameters (*Requiered parameters)== ^ Property ^ Type ^ Description ^ | student_id (or student_uid)* | Integer (String) | The ID (or UID) of the student the objective_student_assessments are related to | | knowledge_node_update | Boolean | If true, this object should be use to update the user model (it is false by default) | | array_of_osa | Array | Each element of the array contains information about an ObjectiveStudentAssessment : mark (integer)*, objective_student_id or objective_id or objective_uid*, success_threshold, start_date*, end_date, payload | ==Send the request (JSON input example)== { "student_id": 5, "knowledge_node_update": true, "array_of_osa": [{ "objective_id": 3, "uid": "alpha1", "mark": 97, "start_date": "2019-02-27T16:27:53.891Z", "end_date": "2019-02-27T17:27:53.891Z" }, { "objective_student_id": 11, "mark": 96, "start_date": "2019-02-27T16:27:53.891Z", "end_date": "2019-02-27T17:27:53.891Z" }] } ==Get the response (JSON output example)== { "failed_instances": [], "created_osa_ids": [ 23, 24 ] }