In Student dashboard you will retrieve absences and number of maximum allowed absent, Gradebook Summary & number of New Messages, to access any of the student API methods you must be Authenticated.

Dashboard action is GET, and parameters value is boolean 0 for false & 1 for TRUE.

Paramater Description Default
user User Information 0
newMsgs User new unread messages 0
gb_summary Student gradebook summary 0
absences Student absences 0

URL Example http://example.com/api/v1/dashboard?gb_summary=1&newMsgs=1&absences=1&user=1

For more info about newMsgs method check New Messages API

Calling student absences method is GET action & must be Authenticated.

URL Example http://example.com/api/v1/absences

Parameter Description Type
max_absences School configured maximum allowed absences Integer
total_absences Student Total absences in current academic year Integer

Calling student absences list method is GET action & must be Authenticated.

URL Example http://example.com/api/v1/absences_list

Name Description Type
absent_date Student's absence date Date
absent_type Absence type id Integer
absent_type_name Absence type which configured by Administrator String
absent_type_icon The icon path of absence type String
created_by Full name of the user who created this absence entry String

absent_type_icon is image file name which been uploaded by Administrator URL Example: http://example.com/assets/uploads/absent_type_icon

Calling absences_types method is GET action & must be Authenticated.

URL Example http://example.com/api/v1/absences_types

Name Description Type
id absence type id Integer
name absence type name String
icon absence type icon file name String

Calling student gb_summary method is GET action & must be Authenticated.

URL Example http://example.com/api/v1/gb_summary

gb_summary output is in 3 dimensional array each group/subject has 2 group arrays include such as group information and grade information which are both useful and could be mixed into many wonderful manipulation

Sample Output

[
    {
        "group": {
            "group_id": 1031,
            "subject_id": 491,
            "subject_name": "AP Physics",
            "credit": 1,
            "elective": 0,
            "teacher_name": "Mr. Youssef Mourad",
            "academic_year": "2014/2015",
            "quarter_name": "Quarter 1",
            "teacherID": 2203,
            "group_name": "AP Physics 2",
            "drop": 0,
            "AP_Exam": 0
        },
        "grade": {
            "subject_name": "AP Physics",
            "score": 80, // Score without any enrichment adds 
            "actual_score": 80, // Actual score after adding enrichment
            "scale": {
                "grade": "B", // American scale grade
                "low": 80,
                "high": 89.9,
                "color": "#3DB352" // hex code color
            }
        }
    },
    {
        "group": {
            "group_id": 1007,
            "subject_id": 561,
            "subject_name": "Arabic",
            "credit": 0,
            "elective": 0,
            "teacher_name": "Mrs. Elham Ahmed",
            "academic_year": "2014/2015",
            "quarter_name": "Quarter 1",
            "teacherID": 2261,
            "group_name": "Arabic G12 A",
            "drop": 0,
            "AP_Exam": 0
        },
        "grade": {
            "subject_name": "Arabic",
            "score": 79,
            "actual_score": 79,
            "scale": {
                "grade": "C",
                "low": 70,
                "high": 79.9,
                "color": "#EBBB79"
            }
        }
    }
]

Group Array

NAME DESCRIPTION
subject_name Subject Name
teacher_name Teacher full name
group_id Group ID required to access the actual gradebook of this group
teacherID This teacher user ID which is very useful to link it for sending direct private message

Grade Array

NAME DESCRIPTION
score Total earned score for this subject only without any outside calculation adds
actual_score Actual score is include enrichment extra points
scale Scale is include useful information configured from backend such as scale hex code color or grade scale for american curriculum

any scores & actual_scores response is rounded from server side which make it just for display without any editing or rounding

Calling gradebook method is GET action & must be Authenticated.

Parameters

Name Type Description
GroupID Integer The Group ID which been obtained from gb_summary
QuarterID Integer Default QuarterID is current active quarter, set this to fetch data of another Quarter

URL Example http://example.com/api/v1/gradebook?GroupID=ID

Gradebook Response

Gradebook method provide you all data you need from what is current Quarter, List of available quarters and subject info and of course Assignments are the most complex array which maybe the hardest part to deal with if you not familiar with SCL.

CurrentQuarter

CurrentQuarter is return of current active quarter which is been configured from year settings by the Administrator.

Quarters

Quarters return is Array each array contain each quarter data you need to compose something like quarters dropdown menu.

Quarters each array response as following :

NAME TYPE DESCRIPTION
id Integer Quarter ID
academic_year String Quarter's academic year
quarter_name String Quarter Name to display
start_date Date Quarter start date is in MySQL date format
end_date Date Quarter end date also in MySQL date format
semester String Quarter's Semester name

Subject

this sound like it named, yes is subject details which response like following.

NAME TYPE DESCRIPTION
subject_name String Current group subject name
score Float Total earned score at this subject
actual_score Float Actual score is include enrichment extra points
scale Array Contain Alphabetical grade for american system and color which configured from backend

actual_score is more important for report card and was never suited to be in student gradebook so avoid it and use just current group score

Grading & Assignments

Grading response is most rich-full result, which each array has grading info with nested assignments array which contain each assignment needed information to fetch.

Grading

NAME DESCRIPTION TYPE
grade Total grade of this grading category weighted by grading weight value Float
total_assignments Number of assignments been created in this category Integer
grading_name Grading name String
weight the configured weight percentage for this grading Float
assignments assignments objects include all assignments data Object

assignments

NAME DESCRIPTION TYPE
AssignmentID Assignment ID Integer
score Assignment score which been given by teacher String
points Assignment maximum points which been set by teacher Float
weight Grading weight which this assignment belong to Float
assignment_name Assignment name String
due_date Assignment due date Date