Get students

Call

liss.getStudents(auth : authenticationObject, asAtDate : timestamp)

Parameters

auth: See authentication

asAtDate: Return all students enrolled as at this date. In the case of XmlRpc, the format is XmlRpc date/time. In the case of JsonRpc, it's an ISO8601 format, e.g. 20181130T00:00:00. If the SIS chooses to send the startDate and endDate fields then they can ignore the asAtDate but they should check that the TS in question has implemented startDate and endDate because earlier versions of LISS didn't have this.

Returns

An array of struct’s. Each struct is defined as follows:

FileIdTypeNotesExamples
StudentIdstring (primary key, i.e. mandatory)A unique alphanumeric identifier for that student. Maximum 20 chars. Some punctuation characters are allowed: dash, slash, dot, percent, ampersand, exclamation mark, colon. NSW State schools often use the Enrollment Registration Number (ERN) here.28722004
FirstNamestring mandatoryJohn Tse Hua
Surnamestring mandatoryBrown Ng
PreferredNamestringUsed only when different from the FirstName, otherwise this field can be omitted.Johnnie
Formstring mandatoryThe form (or year-level) of the student. Anything other than empty string is allowed, but we recommend sticking to alphanumerics.7
RollGroupstring7A
HousestringSlitherin
GenderstringThe gender of the student: M or F, or X meaning "other", or blank meaning "unknown". Capitalisation ignored.F
StatewideIdstringAn alphanumeric identifier. Used if there is a second student identifier in use by state bodies or district level bodies, e.g. NSW Board of Studies (BOS) numbers. Maximum 20 chars.7219330187
EmailstringThe student's email address. Only a single email address is allowed and it should conform to the rules for valid email addresses.jimmy.smith@education.gov.nsw.au
PhonestringThe student's mobile phone number. Can contain punctuation e.g. spaces or brackets, but with punctuation removed it should be a number that you can SMS to.0418 123456
Guid32 char hexadecimal stringA "Globally unique identifier" aka UUID. This allows users of the TT or SIS to change the student code and still maintain continuity of identity in the other system. The GUID should be sent free of punctuation, i.e. just the hexadecimal characters, without dashes.
LISS does not specify which system(s) have the authority to create GUID's.
A2744A55ED7449A98BCE80703DECC9E4
StartDatedateThe start date of the enrolment. Most SIS's leave this blank because the "asAt" parameter makes this less important. But if a SIS implements this field then they can send a student whose enrolment dates lie outside the äsAtDate parameter.20201031T00:00:00
EndDatedateThe end date of the enrolment.20201214T00:00:00

Semantics

  • Each call to liss.getStudents() will return the full database of students enrolled at the requested date. Therefore the satellite system should delete from its database any student which is not found in the returned array.
  • Satellite system vendors should consider whether they should disable the creation or deletion of students in their own screens in installations which are using LISS.

Example

Send

{
"method": "liss.getStudents",
"params": [
{
"School": "03014",
"UserName": "Jsmith",
"Password": "Password1",
"LissVersion": 10002,
"UserAgent": "Edval"
},
"20201031T00:00:00"
],
"id": 0
}

Return

{
"result": [
{
"StudentId": "28722004",
"FirstName": "John",
"Surname": "Brown",
"PreferredName": "Johnnie",
"Form": "7A",
"RollGroup": "7A",
"House": "Slitherin",
"Gender": "M",
"StatewideId": "7219330187",
"Email": "jimmy.smith@education.gov.nsw.au",
"Phone": "0418 123456",
"Guid": "A2744A55ED7449A98BCE80703DECC9E4",
"StartDate": "20201031T00:00:00",
"EndDate": "20201214T00:00:00"
}
],
"id": 0
}