As a new student is created on your application, you would have to declare a new student on our API as well.
Student

Object resources

Property Sub-property Type Description
id Integer Identifier for the database of Domoscio's API
uid String The ID of this student in your Database (must be unique)
student_group_id Integer The group this student belongs to (for example a class or a session)
active Boolean Student is enabled or not on API
last_activity DateTime Last event made by that student
created_at DateTime Date time of creation of the object
updated_at DateTime Date time of the last update of the object
civil_profile_attributes
student_infos jsonb Custom data that can be used to do clustering
learning_profile_attributes
capacity Float Average memory compared to others (1 being the mean)

Create (POST)

Method POST
URL /students
Parameters (*Requiered parameters)
Property Sub-property Type Description
uid* String The ID of this student in your Database (must be unique)
student_group_id Integer The group this student belongs to
active Boolean Student is enabled or not on API
civil_profile_attributes
student_infos jsonb Custom data that can be used to do clustering
Send the request (JSON input example)
{
	"student_group_id": 1,
	"uid": "S26",
	"civil_profile_attributes": {
		"student_infos": {"last_formation": "A74D"}
	}
}
Get the response (JSON output example)
{
    "id": 379,
    "student_group_id": 1,
    "created_at": "2017-11-24T13:44:08.034Z",
    "updated_at": "2017-11-24T13:44:08.034Z",
    "uid": "S26",
    "active": true,
    "last_activity": null,
    "learning_profile": {
        "capacity": 1
    },
    "civil_profile": {
        "student_infos": {
            "formation": "A7D4"
        }
    }
}

Fetch (GET)

Method GET
URL /students/{student_id}

If you do not provide a student_id, you will fetch all the students of your platform. You can choose to filter the response by providing an uid in the parameters.

Get the response (JSON output example)

With ID provided

{
    "id": 379,
    "created_at": "2017-11-24T13:44:08.034Z",
    "updated_at": "2017-11-24T13:44:08.034Z",
    "instance_id": 45,
    "uid": "26",
    "active": true,
    "student_group_id": 1,
    "last_activity": null,
    "civil_profile": {
        "student_infos": {
            "formation": "A7D4"
        }
    },
    "learning_profile": {
        "capacity": 1
    }
}

Without ID provided

[
    {
        "id": 378,
        "student_group_id": 1,
        "created_at": "2017-11-24T13:42:24.402Z",
        "updated_at": "2017-11-24T13:42:24.402Z",
        "instance_id": 45,
        "uid": "25",
        "active": true,
        "last_activity": null,
        "learning_profile": {
            "capacity": 1
        },
        "civil_profile": {
            "student_infos": {
                "formation": "A7D4"
            }
        }
    },
    {
        "id": 379,
        "student_group_id": 1,
        "created_at": "2017-11-24T13:44:08.034Z",
        "updated_at": "2017-11-24T13:44:08.034Z",
        "instance_id": 45,
        "uid": "26",
        "active": true,
        "last_activity": null,
        "learning_profile": {
            "capacity": 1
        },
        "civil_profile": {
            "student_infos": {
                "formation": "A7D4"
            }
        }
    }
]

EDIT (PUT)

Method PUT
URL /students/{student_id}
Editable parameters
Property Sub-property Type Description/expected values
student_group_id Integer The group this student belongs to
active Boolean Student is enabled or not on API
civil_profile_attributes
student_infos jsonb Custom data that can be used to do clustering
Send the request (JSON input example)
{
   "student_group_id": 2,
   "civil_profile_attributes": {
                    "student_infos": { "formation2": "Z5J8"}
                                  }
}
Get the response (JSON output example)
{
    "id": 379,
    "student_group_id": 2,
    "created_at": "2017-11-24T13:44:08.034Z",
    "updated_at": "2017-11-24T14:03:29.670Z",
    "uid": "26",
    "active": true,
    "last_activity": null,
    "learning_profile": {
        "capacity": 1
    },
    "civil_profile": {
        "student_infos": {
            "formation2": "Z5J8"
        }
    }
}