Year Groups

A year group object represents the year grouping in which students are arranged in a school. By default, year groups and year group memberships are returned for today's date. You can either use a ?date= or an ?academic_year_id= parameter to change this behaviour but not both simultaneously.

Access: This is a read-only resource managed directly by the school.

Permissions: a school level access token with the school scope is required to access year group information. To access the students in year groups, the students.basic scope is also required. To access the supervisors for year groups, the staff_members.basic scope is also required.

List Year Groups

Returns a list of year groups that match the given set of filters. The default behaviour is to return the year groups for the school's current academic year.

Note the If-Modified-Since header is optional (see the page on Conditional Requests for more details).

Request

GET /year_groups
Headers
Accept: application/vnd.assembly+json; version=1
Authorization: Bearer b2s7a9s8BQokikJOvBiI2HlWgH4olfQ2
If-Modified-Since: Mon, 13 Mar 2017 20:00:00 GMT
Parameter Default Example Description
year_code 10

Filter year groups by a specific NC year code

date 2018-07-21

returns groups and group memberships for a specific date

academic_year_id 233

returns all groups and group memberships from the specified academic year

per_page 100 25

Number of results to return on a single page. The maximum is 200

page 1 2

page number to return

URI Template: /year_groups{?year_code,date,academic_year_id,per_page,page}

Response 200

Headers
Content-Type: application/json; charset=utf-8
Last-Modified: Mon, 13 Mar 2017 20:00:00 GMT
Payload
{
    "object": "list",
    "total_count": 20,
    "total_pages": 1,
    "current_page": 1,
    "prev_page": null,
    "next_page": null,
    "data": [
        {
            "object": "year_group",
            "id": 612,
            "code": "10",
            "name": "Year Group 10",
            "start_date": "2016-09-05T00:00:00.000Z",
            "end_date": "2017-09-04T23:59:00.000Z",
            "supervisor_ids": [
                73,
                78
            ],
            "student_ids": [
                5112,
                5177,
                5137
            ]
        }
    ]
}

View a Year Group

Returns a single year group whose code matches the provided year_code. Additionally includes a list of all the student identifiers that are present in the group.

Request

GET /year_groups/{group_id}
Headers
Accept: application/vnd.assembly+json; version=1
Authorization: Bearer b2s7a9s8BQokikJOvBiI2HlWgH4olfQ2
Parameter Default Example Description
group_id 1

ID of the Year Group as an Integer

date 2018-07-21

returns groups and group memberships for a specific date

academic_year_id 233

returns all groups and group memberships from the specified academic year

URI Template: /year_groups/{group_id}{?date,academic_year_id}

Response 200

Headers
Content-Type: application/json; charset=utf-8
Payload
{
    "object": "year_group",
    "id": 612,
    "code": "10",
    "name": "Year Group 10",
    "start_date": "2016-09-05T00:00:00.000Z",
    "end_date": "2017-09-04T23:59:00.000Z",
    "supervisor_ids": [
        73,
        78
    ],
    "student_ids": [
        5112,
        5177,
        5137
    ]
}

List Students for Year Group

Returns a list of all the students that are present in the year group identified by group_id.

Note the If-Modified-Since header is optional (see the page on Conditional Requests for more details).

Request

GET /year_groups/{group_id}/students
Headers
Accept: application/vnd.assembly+json; version=1
Authorization: Bearer b2s7a9s8BQokikJOvBiI2HlWgH4olfQ2
If-Modified-Since: Mon, 13 Mar 2017 20:00:00 GMT
Parameter Default Example Description
group_id 1

ID of the Year Group as an Integer

date 2018-07-21

returns groups and group memberships for a specific date

academic_year_id 233

returns all groups and group memberships from the specified academic year

demographics false true

include demographics data

languages false true

include student language data

contacts false true

include contacts data

care false true

include 'in care' info

ever_in_care false true

include 'ever in care' info

addresses false true

include student address data

sen_needs false true

include SEN needs data

photo false true

include student photo data

per_page 100 25

number of results to return

page 1 2

page number to return

URI Template: /year_groups/{group_id}/students{?date,academic_year_id,demographics,languages,contacts,care,ever_in_care,addresses,sen_needs,photo,per_page,page}

Response 200

Headers
Content-Type: application/json; charset=utf-8
Last-Modified: Mon, 13 Mar 2017 20:00:00 GMT
Payload
{
   "object":"list",
   "total_count":2,
   "total_pages":1,
   "current_page":1,
   "prev_page":null,
   "next_page":null,
   "data":[
     {
         "object": "student",
         "id": 1,
         "year_code": "8",
         "upn": "N825532113104",
         "former_upn": "F820550109001",
         "mis_id": "8032",
         "pan": "A1234",
         "first_name": "George",
         "legal_first_name": "George",
         "middle_name": "",
         "last_name": "Addington",
         "legal_last_name": "Addington",
         "former_last_name": null,
         "dob": "1999-12-10",
         "start_date": "2015-02-31T00:00:00.000Z",
         "end_date": "2079-06-06T23:59:00.000Z",
         "enrolment_status": "Current (Single Registration)"
     },
     {
         "object": "student",
         "id": 3,
         "year_code": "8",
         "upn": "B825532109001",
         "former_upn": "V825500109002",
         "mis_id": "7545",
         "pan": "A4321",
         "first_name": "Harry",
         "legal_first_name": "Harold",
         "middle_name": "",
         "last_name": "Jones",
         "legal_last_name": "Jones",
         "former_last_name": "Smith",
         "dob": "1998-11-12",
         "start_date": "2010-09-01T00:00:00.000Z",
         "end_date": "2079-06-06T23:59:00.000Z",
         "enrolment_status": "Current (Single Registration)"
     }
   ]
}