User Tools

Site Tools


api2:adaptive:objectives

====== Differences ====== This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
api2:adaptive:objectives [2017/10/07 14:51]
127.0.0.1 external edit
api2:adaptive:objectives [2018/07/23 10:06] (current)
maries
Line 1: Line 1:
 +An Objective is a set of Knowledge Node which all have a threshold of comprehension. An Objective can be reached when, for each its Knowledge Nodes, the student’s mastery is above the threshold.\\
 +As the name suggests, the objective only includes the concepts you want the learner to know: we take in charge to analyze the gap between his/her current knolwedge and the knowledge required to understand the concepts included in the objective. To do this, we use the knolwedge structure among other things.\\
 +
 +===Object resources===
 +^ Property ​    ^ Type      ^ Description ​        ^
 +| id | Integer | identifier for the database of Domoscio'​s API |
 +| uid | String | The ID of this knowledge node in your Database. Useful if you cannot store the ID returned by the API |
 +| name    | String ​    | Custom data        |
 +| objects | Json | Set of Knowledge Nodes, and/or Tags to be mastered |
 +| target_only | Boolean | This parameter can be used to restrict the objective: if true, the reviews and the instruction will be kept to the objects declared in the objective |
 +| created_at | DateTime | Date of creation of the object |
 +| updated_at | DateTime | Last time the object has been modified |
 +
 +===Create (POST)===
 +
 +^ Method | POST |
 +^ URL | /objectives |
 +
 +==Parameters (*Requiered parameters)==
 +
 +^ Property ​    ^ Type      ^ Description ​        ^
 +| name    | String ​    | Custom data        |
 +| uid* | String | The ID of this knowledge node in your Database. Useful if you cannot store the ID returned by the API |
 +| objects* | Json | Set of Knowledge Nodes, and/or Tags to be mastered |
 +| target_only | Boolean | This parameter can be used to restrict the objective: if true, the reviews and the instruction will be kept to the objects declared in the objective. Otherwise we will use our knowledge to extend the objective. |
 +
 +==Send the request (JSON input example)==
 +
 +<​code>​
 +{
 +   "​name":​ "​learn_the_world",​
 +   "​objects":​ {"​knowledge_nodes":​ [2715, 2716, 2716], "​tags":​ [1234]},
 +   "​target_only":​ true,
 +   "​uid":​ "​Obj1"​
 +}
 +</​code>​
 +
 +==Get the response (JSON output example)==
 +
 +<​code>​
 +{
 +    "​id":​ 319,
 +    "​name":​ "​learn_the_world",​
 +    "​uid":​ "​Obj1",​
 +    "​objects":​ {
 +        "​knowledge_nodes":​ [
 +            2715,
 +            2716,
 +            2716
 +        ],
 +        "​tags":​ [
 +            1234
 +        ]
 +    },
 +    "​created_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +    "​updated_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +    "​target_only":​ true
 +}
 +</​code>​
 +
 +===Fetch (GET)===
 +
 +^ Method | GET|
 +^ URL | /​objectives/​{objective_id} |
 +
 +If no objective_id is provided it will fetch all the Objectives for your instance.
 +
 +==Get the response (JSON output example)==
 +
 +**With ID provided**\\
 +
 +<​code>​
 +{
 +    "​id":​ 319,
 +    "​name":​ "​learn_the_world",​
 +    "​uid":​ "​Obj1"​
 +    "​objects":​ {
 +        "​knowledge_nodes":​ [
 +            2715,
 +            2716,
 +            2716
 +        ],
 +        "​tags":​ [
 +            1234
 +        ]
 +    },
 +    "​created_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +    "​updated_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +    "​target_only":​ true
 +}
 +</​code>​
 +
 +
 +**Without ID provided**\\
 +<​code>​
 +[
 +   {
 +        "​id":​ 319,
 +        "​name":​ "​learn_the_world",​
 +        "​uid":​ "​Obj1"​
 +        "​objects":​ {
 +            "​knowledge_nodes":​ [
 +                2715,
 +                2716,
 +                2716
 +            ],
 +            "​tags":​ [
 +                1234
 +            ]
 +        },
 +        "​created_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +        "​updated_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +        "​target_only":​ true
 +    }
 +]
 +</​code>​
 +
 +
 +===EDIT (PUT)===
 +
 +^ Method | PUT |
 +^ URL | /​objectives/​{objective_id} |
 +
 +==Editable parameters==
 +
 +^ Property ^ Type ^ Description/​expected values |
 +| name | String | Custom data |
 +| objects* | Json | Set of Knowledge Nodes, and/or Tags to be mastered |
 +
 +==Send the request (JSON input example)==
 +
 +<​code>​
 +{
 + "​name":​ "​learn_everything"​
 +}
 +</​code>​
 +
 +==Get the response (JSON output example)==
 +
 +<​code>​
 +{
 +    "​id":​ 319,
 +    "​name":​ "​learn_everything",​
 +    "​uid":​ "​Obj1"​
 +    "​objects":​ {
 +        "​knowledge_nodes":​ [
 +            2715,
 +            2716,
 +            2716
 +        ],
 +        "​tags":​ [
 +            1234
 +        ]
 +    },
 +    "​created_at":​ "​2017-11-27T16:​44:​45.409Z",​
 +    "​updated_at":​ "​2017-11-27T16:​49:​15.834Z",​
 +    "​target_only":​ true
 +}
 +</​code>​
 +
  
api2/adaptive/objectives.1507380719.txt.gz · Last modified: 2017/10/07 14:51 by 127.0.0.1