Roll Call
Manual attendance records marked by staff for a student on a given zone/location/trip. Create, list, fetch, update and delete roll-call entries used when automatic tap detection isn't available.
POST Create Roll Call Record {{url}}/rollcall/add ▸
Manually record a student's attendance status for a zone/location (e.g. a teacher marks a child present/absent by hand, as opposed to an automatic NFC tap).
Request Body
- status (
string, required): e.g.PRESENT,ABSENT(seeRollCall::STATUS). - waaszoneuuid (
stringUUID, required) - waaszonename (
string, required) - dependant_id (
stringUUID, required) - notes (
string, optional)
Notes
- Always recorded with
mode: "Manual"(vs."NFC"for scanner-driven roll calls). - If
statusisABSENTand there's an active trip for the zone/location, the trip's absent counter is incremented automatically. - "Attendance" in this system means physical boarding/tap events, not classroom attendance.
Response
The created roll-call record (data).
{
"status": "ABSENT", //use: ABSENT, PRESENT, UNKNOWN
"waas_zone_uuid": "4194ced8-3a81-4bcc-8f50-b15df3a289be",
"waas_zone_name": "KBA 156",
"dependant_id": "0b1475e9-f811-4683-8a90-a94468dc7ef1",
"notes": "No notea"
}{
"status": 200,
"data": {
"id": "d355c82f-9c3a-4deb-af62-0172d9c33d0e",
"dependant": {
"id": "c75f2355-2f88-40b2-916b-999744d1d1f5",
"first_name": "Lincoln",
"last_name": "Chege"
},
"staff": {
"id": "e62dbe23-f4f5-4f9e-97cd-a0b9a2c8616a",
"first_name": "Developer",
"last_name": "Michael"
},
"grade": "8th Grade",
"notes": "No notea",
"waas_zone_name": "KBA 156",
"waas_zone_uuid": "4194ced8-3a81-4bcc-8f50-b15df3a289be",
"status": "Absent",
"time": null
},
"message": "RollCall Created Successfully"
}
GET List Roll Call Records {{url}}/rollcall ▸
Retrieve a paginated list of roll call (attendance) records.
Query Parameters
- per_page (
integer, optional, default 10, max 20) - status (
string, optional) - waaszoneuuid (
stringUUID, optional) - supervisor_id (
stringUUID, optional): Scope to a school. - dependant_id (
stringUUID, optional) - date_range (
string, optional):"YYYY-MM-DD,YYYY-MM-DD". - search (
string, optional): Matches notes or zone/location name.
Response
Paginated list of roll-call records (data) with meta.
{
"status": "ABSENT", //only use: PRESENT, ABSENT, UNKNOWN, N/A
// "waas_zone_uuid": "ada52fc6-d481-48d9-82b3-fddb07d5d44f", //the id of the zone
// "supervisor_id": "ada52fc6-d481-48d9-82b3-fddb07d5d44f", //administrative staff id/supervisor id
// "dependant_id":"ada52fc6-d481-48d9-82b3-fddb07d5d44f",
"search": ""
}{
"data": [
{
"id": "26072ef5-cba5-4046-bc2b-157d09565cb8",
"dependant": {
"id": "c75f2355-2f88-40b2-916b-999744d1d1f5",
"first_name": "Lincoln",
"last_name": "Chege"
},
"staff": {
"id": "e62dbe23-f4f5-4f9e-97cd-a0b9a2c8616a",
"first_name": "Developer",
"last_name": "Michael"
},
"grade": "8th Grade",
"notes": "",
"waas_zone_name": "KBA 156",
"waas_zone_uuid": "4194ced8-3a81-4bcc-8f50-b15df3a289be",
"status": "Absent",
"time": null
}
],
"links": {
"first": "https://terragostg.terrasofthq.com/api/rollcall?page=1",
"last": "https://terragostg.terrasofthq.com/api/rollcall?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"page": null,
"active": false
},
{
"url": "https://terragostg.terrasofthq.com/api/rollcall?page=1",
"label": "1",
"page": 1,
"active": true
},
{
"url": null,
"label": "Next »",
"page": null,
"active": false
}
],
"path": "https://terragostg.terrasofthq.com/api/rollcall",
"per_page": 15,
"to": 1,
"total": 1
},
"status": 200,
"message": "RollCalls retrieved Successfully"
}
GET Get Roll Call Record {{url}}/rollcall/26072ef5-cba5-4046-bc2b-157d09565cb8 ▸
Retrieve a single roll-call record by UUID, including the staff member who recorded it.
Path Parameters
- id (
stringUUID, required): The roll-call record's UUID.
Response
The roll-call record (RollCallResource) with its staff relationship loaded.
Notes
- Returns
404if no record matches the UUID. - Requires a bearer token (
auth:api).
{
"status": 200,
"data": {
"id": "26072ef5-cba5-4046-bc2b-157d09565cb8",
"dependant": {
"id": "c75f2355-2f88-40b2-916b-999744d1d1f5",
"first_name": "Lincoln",
"last_name": "Chege"
},
"staff": {
"id": "e62dbe23-f4f5-4f9e-97cd-a0b9a2c8616a",
"first_name": "Developer",
"last_name": "Michael"
},
"grade": "8th Grade",
"notes": "",
"waas_zone_name": "KBA 156",
"waas_zone_uuid": "4194ced8-3a81-4bcc-8f50-b15df3a289be",
"status": "Absent",
"time": null
},
"message": "RollCall Retrieved Successfully"
}
PUT Update Roll Call Record {{url}}/rollcall/update/26072ef5-cba5-4046-bc2b-157d09565cb8 ▸
Update a roll call record (same fields as creating one; mode is reset to Manual).
Path Parameters
- id (
stringUUID, required): Roll call record UUID.
Request Body
Same fields as Create Roll Call Record: status, waaszoneuuid, waaszonename, dependant_id, notes.
Response
The updated roll-call record (data).
{
"status": "ABSENT", //use: ABSENT, PRESENT, UNKNOWN
"waas_zone_uuid": "4194ced8-3a81-4bcc-8f50-b15df3a289be",
"waas_zone_name": "KBA 156",
"dependant_id": "0b1475e9-f811-4683-8a90-a94468dc7ef1",
"notes": "No notes"
}{
"status": 200,
"data": {
"id": "26072ef5-cba5-4046-bc2b-157d09565cb8",
"dependant": {
"id": "c75f2355-2f88-40b2-916b-999744d1d1f5",
"first_name": "Lincoln",
"last_name": "Chege"
},
"staff": {
"id": "e62dbe23-f4f5-4f9e-97cd-a0b9a2c8616a",
"first_name": "Developer",
"last_name": "Michael"
},
"grade": "8th Grade",
"notes": "No notes",
"waas_zone_name": "KBA 156",
"waas_zone_uuid": "4194ced8-3a81-4bcc-8f50-b15df3a289be",
"status": "Absent",
"time": null
},
"message": "RollCall Updated Successfully"
}
DELETE Delete Roll Call Record {{url}}/rollcall/delete/26072ef5-cba5-4046-bc2b-157d09565cb8 ▸
Delete a roll-call record by UUID.
Path Parameters
- id (
stringUUID, required): The roll-call record's UUID.
Notes
- Returns
404if no record matches the UUID. - Requires a bearer token (
auth:api).
{
"status": 200,
"data": [],
"message": "RollCall Deleted Successfully"
}