NAV

Introduction

Welcome to the Wonde API documentation.

The Wonde API allows you to manage school data within the Wonde cloud in a simple, programmatic way using conventional HTTP requests. The endpoints are intuitive and powerful, allowing you to easily make calls to retrieve or update information.

The API documentation will start with a general overview about the design and technology that has been implemented, followed by reference information about specific endpoints.

Authentication

CURL EXAMPLE
curl https://api.wonde.com/v1.0 \
    -u 7e76896f9aca62569048c667db292d72dd84f224:
curl https://api.wonde.com/v1.0 \
    -H "Authorization: Bearer 7e76896f9aca62569048c667db292d72dd84f224"

There are two separate ways to authenticate and gain access to the Wonde API.

The first option is to send a bearer authorization header with your request. This is the preferred method of authenticating because it completes the authorization request in the header portion, away from the actual request.

You can also authenticate using basic authentication. The normal way to do this with a tool like curl is to use the -u flag which is used for passing authentication information.

You then send the username and password combination delimited by a colon character i.e; (username:password). We only require an access token, so use this as the username and leave the password field blank (make sure to include the colon character though).

Scopes

After authorisation, the data available is dependant on your active scopes. Scopes are specific to your access token and the school being accessed. Scopes exist for objects and their properties, without having an active scope for a property's value will be null.

Pagination

PAGINATION EXAMPLE
{
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/students/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        }
    }
}

The pagination object is returned as part of the response body when pagination is enabled. By default, 50 objects are returned per page. If the response contains 50 objects or fewer, no pagination object will be returned. If the response contains more than 50 objects, the first 50 will be returned along with the pagination object.

You can request a different pagination limit or force pagination by appending ?per_page= to the request with the number of items you would like per page. For instance, to show only two results per page, you could add ?per_page=2 to the end of your query. The maximum number of results perpage is set per endpoint.

Key Description
next The next page in the paginated response.
previous The previous page in the paginated response.
more Is there another page after the current page.
per_page How many rows are currently being returned per page/response.
current_page The current paginated page number.

Includes

Response Body
{
    "meta": {
        "includes": [
            "contacts",
            "contacts.contact_details"
        ]
    }
}

By default, the response contains only the basic properties of the specified request for optimised performance. Use include to select additional properties you need. The include options available for a request are specified in the meta data of any request.

Date filtering

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/students?updated_after=2017-09-18 05:09:25&updated_before=2017-09-25 12:09:00"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

You can filter the data returned in a request by using the date filtering parameters. These include updated_after, updated_before, created_after and created_before. These parameters require the date to be in ISO format for example ?updated_after=2017-09-18 05:09:25&updated_before=2017-09-25 12:09:00.

Request ID

Each API request has an associated request identifier. You can find this value in the response headers, under Request-Id. You can also find request identifiers in the URLs of individual request logs in your Dashboard. If you need to contact us about a specific request, providing the request identifier will ensure the fastest possible resolution.

Errors

The Wonde API uses the following error codes:

Error Code Meaning
400 Bad Request – Something was wrong the the request.
401 Unauthorized – API key is invalid.
403 Forbidden – Incorrect permissions to view resource.
404 Not Found – The resource could not be found.
500 Internal Server Error – We had a problem with our server. Try again later.
503 Service Unavailable – We’re temporarily offline for maintenance. Please try again later.

SDKs & Client Libraries

There is currently a PHP open source library available for the API.

Support for other languages coming soon.

Deletions

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/deletions"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "type": "contact",
            "id": "A270887459",
            "deleted_at": {
                "date": "2016-03-10 18:28:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "type": "student",
            "id": "A791227211",
            "deleted_at": {
                "date": "2016-04-11 09:26:49.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/deletions?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        }
    }
}

It's recommended that you use the updated_after url parameter to efficiently sync updates to datasets. The deletions endpoint exists to provide a record of when an item is deleted.

The deletions endpoint will have an entry for every top level item (student, contact, employee, group...) unless the object is deleted due to a parent being removed. An example of this would be when a class is removed the associated lessons would be deleted without an entry in the deletions endpoint.

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
type string Only return records that have the provided type.

Webhooks

RESPONSE BODY
{
    "payloadType": "writeback",
    "writeback_id": "A2032141745",
    "status": "SUCCESS",
    "type": "attendance.session"
}

{
    "payloadType": "schoolApproved",
    "school_id": "A2032141745"
}

Webhooks allow external services to be notified when certain events happen within Wonde. When the specified events happen, we’ll send a POST to the URL you provide.

To add a Webhook for your application go to 'Settings' within your Wonde dashboard and then select the 'Application' tab at the top right. Underneath the 'Tokens' section there is a field to add the Webhook URL. This URL will receive a POST request from Wonde once an action has completed.

Underneath is a list of the webhooks available. You need to tick which webhooks you want to receive. The payload will have a payloadType in the response to denote the type being sent.

Payload types

Payload Type Description
writeback Once you have sent a writeback request, for attendance sessions for example, you'll receive a writeback_id as a response immediately. Once the writeback has been completed with the MIS we will notify you by sending a POST request to your Webhook URL including the writeback_id as reference. We have also provided the ability to send a test Webhook as a link underneath the field once populated with a valid URL.
schoolApproved A school approved payload is only sent when a school approves the request, you'll receive a school_id as a response.

Schools

GET Approved Schools

CURL EXAMPLE
curl "https://api.wonde.com/v1.0/schools"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "name": "Sir John Cass's Foundation Primary School",
            "establishment_number": 3614,
            "urn": 10000,
            "phase_of_education": "PRIMARY",
            "la_code": 201,
            "timezone": null,
            "mis": null,
            "address": {
                "address_line_1": "St James's Passage",
                "address_line_2": "Duke's Place",
                "address_town": "London",
                "address_postcode": "EC3A 5DE"
            },
            "extended": {
                "allows_writeback": true,
                "has_timetables": false,
                "has_lesson_attendance": false
            }
        },
        {
            "id": "A1161584171",
            "name": "City of London School for Girls",
            "establishment_number": 6005,
            "urn": 10001,
            "phase_of_education": "NOT APPLICABLE",
            "la_code": 201,
            "timezone": null,
            "mis": null,
            "address": {
                "address_line_1": "St Giles' Terrace",
                "address_line_2": "Barbican",
                "address_town": "London",
                "address_postcode": "EC2Y 8BB"
            },
            "extended": {
                "allows_writeback": true,
                "has_timetables": false,
                "has_lesson_attendance": false
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        }
    }
}

Return all schools that have approved access for your application. You can request access to a school via the API or the Administration Panel.

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
postcode string Return results matching postcode search string.
la_code string Return results with provided la_code.
establishment_number string Return results with provided establishment_number.

GET All Schools

CURL EXAMPLE
curl "https://api.wonde.com/v1.0/schools/all"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "name": "Sir John Cass's Foundation Primary School",
            "establishment_number": 3614,
            "urn": 10000,
            "phase_of_education": "PRIMARY",
            "la_code": 201,
            "timezone": null,
            "mis": null,
            "address": {
                "address_line_1": "St James's Passage",
                "address_line_2": "Duke's Place",
                "address_town": "London",
                "address_postcode": "EC3A 5DE"
            },
            "extended": {
                "allows_writeback": true,
                "has_timetables": false,
                "has_lesson_attendance": false
            }
        },
        {
            "id": "A1161584171",
            "name": "City of London School for Girls",
            "establishment_number": 6005,
            "urn": 10001,
            "phase_of_education": "NOT APPLICABLE",
            "la_code": 201,
            "timezone": null,
            "mis": null,
            "address": {
                "address_line_1": "St Giles' Terrace",
                "address_line_2": "Barbican",
                "address_town": "London",
                "address_postcode": "EC2Y 8BB"
            },
            "extended": {
                "allows_writeback": true,
                "has_timetables": false,
                "has_lesson_attendance": false
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        }
    }
}

Return a list of all schools

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
postcode string Return results matching postcode search string.
la_code string Return results with provided la_code.
establishment_number string Return results with provided establishment_number.

GET Pending Schools

CURL EXAMPLE
curl "https://api.wonde.com/v1.0/schools/pending"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "name": "Sir John Cass's Foundation Primary School",
            "establishment_number": 3614,
            "urn": 10000,
            "phase_of_education": "PRIMARY",
            "la_code": 201,
            "timezone": null,
            "mis": null,
            "address": {
                "address_line_1": "St James's Passage",
                "address_line_2": "Duke's Place",
                "address_town": "London",
                "address_postcode": "EC3A 5DE"
            },
            "extended": {
                "allows_writeback": true,
                "has_timetables": false,
                "has_lesson_attendance": false
            }
        },
        {
            "id": "A1161584171",
            "name": "City of London School for Girls",
            "establishment_number": 6005,
            "urn": 10001,
            "phase_of_education": "NOT APPLICABLE",
            "la_code": 201,
            "timezone": null,
            "mis": null,
            "address": {
                "address_line_1": "St Giles' Terrace",
                "address_line_2": "Barbican",
                "address_town": "London",
                "address_postcode": "EC2Y 8BB"
            },
            "extended": {
                "allows_writeback": true,
                "has_timetables": false,
                "has_lesson_attendance": false
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        }
    }
}

Return all that have a pending access request.

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
postcode string Return results matching postcode search string.
la_code string Return results with provided la_code.
establishment_number string Return results with provided establishment_number.

POST Request Access

CURL EXAMPLE
curl -X POST -H "Authorization: Bearer API_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{
    "contacts": [
    {
    "first_name": "Joe",
    "last_name": "Bloggs",
    "phone_number": "07700777777",
    "email_address": "joe.bloggs@wonde.com",
    "notes": "Spoke with Joe to discuss our application earlier today."
    }
    ]}' "https://api.wonde.com/v1.0/schools/{school_id}/request-access"

When requesting access to a school it is recommended that you provide details of available contacts at the school. This can speed up the approval process considerably but it is not required.

The contact should be provided within an array. More than one contact can be provided.

Request body

Request Body
{
     "contacts": [
         {
             "first_name": "Joe",
             "last_name": "Bloggs",
             "phone_number": "07700777777",
             "email_address": "joe.bloggs@wonde.com",
             "notes": "Spoke with Joe to discuss our application earlier today."
         },
         {
             "first_name": "John",
             "last_name": "Smith",
             "phone_number": "07700888888",
             "email_address": "john.smith@wonde.com",
             "notes": "John is the school IT technician."
         }
     ]
 }

To add contact details, send a JSON encoded POST request to /v1.0/schools/{school_id}/request-access

An example of the request body is provided on the right.
The attribute values that must be set successfully to add a contact to the request are:

Name type Required Description
first_name string Yes First name of contact.
last_name string Yes Last name of contact.
phone_number string No Phone number of contact.
email_address string No Email address of contact.
notes string No Notes for the contact.
Response Body
{
    "success": true,
    "state": "pending",
    "message": "Access request successfully received"
}

DELETE Revoke Access

CURL EXAMPLE
curl -X DELETE "https://api.wonde.com/v1.0/schools/{school_id}/revoke-access"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "success": true,
    "state": "revoked",
    "message": "Access revoked"
}

Achievements

GET Achievements

curl "https://api.wonde.com/v1.0/schools/{school_id}/achievements"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}/achievements/{achievement_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A408720213",
            "mis_id": "1015",
            "type": "Musical Activity",
            "action": null,
            "subject": "Science",
            "class": "7A/Science",
            "points": 10,
            "comment": "Excellent effort in the school band performance at lunchtime",
            "parents_notified": true,
            "achievement_date": {
                "date": "2015-01-09 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "action_date": null,
            "recorded_date": {
                "date": "2015-01-09 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-03-15 11:08:26.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-15 11:08:26.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A803392563",
            "mis_id": "1016",
            "type": "Excellent Effort",
            "action": null,
            "subject": "Art",
            "class": "7A/Art",
            "points": 15,
            "comment": null,
            "parents_notified": true,
            "achievement_date": {
                "date": "2015-01-09 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "action_date": {
                "date": "2015-01-09 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "recorded_date": {
                "date": "2015-03-13 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-03-15 11:08:26.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-15 11:08:26.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": null,
            "previous": null,
            "more": false,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "students",
            "employees"
        ]
    }
}

Url parameters

Name type Description
achievement_date_before date Return entries before date.
achievement_date_after date Return entries after date.
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
has_students string Only return records that have students attached.
has_employees string Only return records that have employees attached.
mis_id string
int
Return records with the provided MIS_ID.
Name Relationship
students many
employees many

POST Achievements

Curl example
curl -X POST -H "Authorization: Basic API_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{
"students": [
{
    "student_id" : "A1849765024",
    "points": 200,
    "award" : "TROP",
    "award_date" : "2016-04-04"
},
{
    "student_id" : "A1682292795",
    "points": 200,
    "award" : "CERT",
    "award_date" : "2016-04-04"
}
],
"employee_id": "A1329183376",
"date": "2016-04-01",
"type": "NYPA",
"comment": "A4",
"activity_type": "RE"
}' "https://api.wonde.com/v1.0/schools/{school_id}/achievements"
Request Body
{
    "students": [
        {
            "student_id" : "A1849765024",
            "points": 200,
            "award" : "TROP",
            "award_date" : "2016-04-04"
        },
                {
            "student_id" : "A1682292795",
            "points": 200,
            "award" : "CERT",
            "award_date" : "2016-04-04"
        }
    ],
    "employee_id": "A1329183376",
    "date": "2016-04-01",
    "type": "NYPA",
    "comment": "A4",
    "activity_type": "RE"
}

To create a achievement record, send a JSON encoded POST request to /v1.0/schools/{school_id}/achievements.

An example of the request body is provided on the right.
The attribute values that must be set successfully to create achievement records are:

Name type Required Description
students array Yes
students > student_id string Yes The Wonde ID of a student.
students > award string No The code or ID of the award given in response to the achievement.
See behaviour attributes ACHIEVEMENT_OUTCOME.
students > award_date string No The date the associated to the award.
students > points integer Yes The amount of points associated to the achievement.
Points indicate the level of the achievement.
employee_id string Yes The Wonde ID of the employee that recorded the incident.
date string Yes The date of the incident.
type string Yes The code or ID of the achievement type.
See achievement attributes ACHIEVEMENT_TYPE.
comment string No Short text note.
activity_type string No The code or ID of the activity.
See achievement attributes EVENT_SUBJECT.

DELETE Achievement

Curl example
curl -X "DELETE" "https://api.wonde.com/v1.0/schools/{school_id}/achievements/{achievement_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

You need the achievement delete permission to perform this action.

To delete a achievement record just send a delete request to achievement item's url.

Achievement Object

Response Body
{
    "id": "A408720213",
    "mis_id": "1015",
    "type": "Musical Activity",
    "action": null,
    "subject": "Music",
    "class": "7A/Music",
    "points": 10,
    "comment": "Excellent effort in the school band performance at lunchtime",
    "parents_notified": true,
    "achievement_date": {
        "date": "2015-01-09 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "action_date": {
        "date": "2015-01-09 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "recorded_date": {
        "date": "2015-01-09 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-03-15 11:08:26.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-03-15 11:08:26.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the achievement read permission to view this object.


Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
type string The type of achievement.
action string
nullable
The action taken in response to the achievement.
subject string
nullable
The subject during which the achievement occurred.
class string
nullable
The class in which the achievement occurred.
points integer
nullable
The amount of points associated to the incident.
Points indicate the severity of the event.
comment string
nullable
Short text note.
parents_notified boolean
nullable
Boolean indicating if the parent has been notified of the achievement.
achievement_date datetime
nullable
The date of the achievement.
action_date datetime
nullable
The date the action took place.
recorded_date datetime
nullable
The date the incident was recorded.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Achievement Attributes

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/achievements/attributes"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A510231222",
            "mis_id": "13",
            "type": "EVENT_SUBJECT",
            "code": "ART",
            "active": true,
            "points": null,
            "description": "Art",
            "bullying_type_enabled": false,
            "created_at": {
                "date": "2016-03-16 15:23:42.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-17 15:01:40.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1741747977",
            "mis_id": "11",
            "type": "ACHIEVEMENT_TYPE",
            "code": "ACAD",
            "active": false,
            "points": 1,
            "description": "Academic",
            "bullying_type_enabled": false,
            "created_at": {
                "date": "2016-03-17 14:59:18.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-24 09:39:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/achievements/attributes?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        }
    }
}

You need the achievement read permission to view this resource.

In SIMS, achievement records are made from multiple select box values. To make it easy to update achievement records, we provide the possible options for these select boxes. When updating / creating a achievement record you can provide the CODE or the ID for the select box value.

It is important that you check the code is valid for a school as missing or disabled codes will not pass Wonde's validation.

Type Information / Examples
ACHIEVEMENT_TYPE This is the achievement category.
Some achievement types will have points associated to them.

Example: GOL = Gold Award
EVENT_SUBJECT The activity / subject in which the incident took place.

Example: ENG = English
ACHIEVEMENT_OUTCOME The action taken as a result of the achievement.

Example: MEP = Merit Points

Assessment

The following diagram shows how assessment (green) and non-assessment (red) objects relate to each other.

GET Aspects

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/aspects"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/aspects/{aspect_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A729555890",
            "mis_id": 25,
            "name": "AQA 2600H Forecast Grade F",
            "type": "Grade",
            "description": "Forecast Grade for AQA 2600H Seg Science:Single Award  (H)",
            "min_value": null,
            "max_value": null,
            "created_at": {
                "date": "2016-07-05 21:09:39.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-07-05 21:09:39.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/assessment/aspects?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "templates"
        ]
    }
}

Url parameters

Name type Description
aspect_ids string Only return aspects included in comma separated list of ids.
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
templates many
results many

GET Results

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/results"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/results/{result_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A2059689699",
            "mis_id": 359965,
            "result": "B",
            "grade_value": "15.00",
            "student": "A1548440551",
            "aspect": "A988848411",
            "resultset": "A2103671698",
            "collection_date": {
                "date": "2009-06-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "result_date": {
                "date": "2009-06-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-07-06 14:52:19.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-07-06 14:52:19.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/assessment/results?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "student",
            "resultsets"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
student many
aspect many
resultset many

GET Result Sets

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/resultsets"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/resultsets/{result_set_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1843063594",
            "mis_id": 56,
            "name": "Year 11",
            "module": "Assessment Services",
            "source": "User-defined",
            "supplier": null,
            "external_id": "56",
            "locked": false,
            "start_date": null,
            "end_date": null,
            "created_at": {
                "date": "2016-07-06 14:32:40.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-07-06 15:22:35.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/assessment/resultsets?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "templates"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
templates many
results many

GET Templates

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/templates"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/templates/{template_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A2075337403",
            "mis_id": 1146,
            "name": "GCSE Mock Exam Grades",
            "description": null,
            "source": "User-defined",
            "external_id": "742",
            "created_at": {
                "date": "2016-07-05 21:10:05.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-07-05 21:10:05.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/assessment/templates?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "aspects",
            "marksheets",
            "resultsets"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
aspects many
resultset many
marksheet many

GET Mark Sheets

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/marksheets"
	-H "Authorization: Bearer API_ACCESS_TOKEN"

curl "https://api.wonde.com/v1.0/schools/{school_id}/assessment/marksheets/{mark_sheet_id}"
	-H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1749191433",
            "mis_id": 7756,
            "name": "* Science Year 7 Attainment Data Entry:Science (KStg3)",
            "group": "A617633051",
            "template": "A459873099",
            "class": null
        },
        {
            "id": "A1849765024",
            "mis_id": 7757,
            "name": "* Science Year 7 Attainment Data Entry:7F/Sc",
            "group": null,
            "template": "A459873099",
            "class": "A1883262536"
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/assessment/marksheets?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "template",
            "group",
            "class"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
templates many
results many

Aspect Object

Response Body
{
    "id": "A729555890",
    "mis_id": 25,
    "name": "AQA 2600H Forecast Grade F",
    "type": "Grade",
    "description": "Forecast Grade for AQA 2600H Seg Science:Single Award  (H)",
    "min_value": null,
    "max_value": null,
    "created_at": {
        "date": "2016-07-05 21:09:39.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-05 21:09:39.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the assessment read permission to view this object.



Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
name string Aspect name.
description string
nullable
Aspect description.
type string
nullable
min_value date
nullable
max_value date
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Result Object

Response Body
{
    "id": "A2059689699",
    "mis_id": 359965,
    "result": "B",
    "grade_value": "15.00",
    "student": "A1548440551",
    "aspect": "A988848411",
    "resultset": "A2103671698",
    "collection_date": {
        "date": "2009-06-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "result_date": {
        "date": "2009-06-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-07-06 14:52:19.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-06 14:52:19.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the assessment read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
result string The result value.
grade_value string The grade value for this result.
student string
object
Student's ID or student object.
aspect string
object
Aspect's ID or aspect object.
resultset string
object
nullable
Result set's ID or result set object.
collection_date date
nullable
When the result was collected.
result_date date
nullable
The date the of the result.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Result Set Object

Response Body
{
    "id": "A1843063594",
    "mis_id": 56,
    "name": "Year 11",
    "module": "Assessment Services",
    "source": "User-defined",
    "supplier": null,
    "external_id": "56",
    "locked": false,
    "start_date": null,
    "end_date": null,
    "created_at": {
        "date": "2016-07-06 14:32:40.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-06 15:22:35.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the assessment read permission to view this object.



Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
name string Result set name.
module string
nullable
source string
nullable
supplier string
nullable
external_id string
nullable
locked boolean
nullable
start_date datetime
nullable
end_date datetime
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Template Object

Response Body
{
    "id": "A2075337403",
    "mis_id": 1146,
    "name": "GCSE Mock Exam Grades",
    "description": null,
    "source": "User-defined",
    "external_id": "742",
    "created_at": {
        "date": "2016-07-05 21:10:05.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-05 21:10:05.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the assessment read permission to view this object.



Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
name string Template name.
description string
nullable
Template description.
source string
nullable
external_id string
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Mark Sheet Object

Response Body
{
    "id": "A1849765024",
    "mis_id": 7757,
    "name": "* Science Year 7 Attainment Data Entry:7F/Sc",
    "group": null,
    "template": "A459873099",
    "class": "A1883262536"
}

You need the assessment read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
name string The name of the mark sheet.
group string
object
nullable
The group this mark sheet is attached to.
class string
object
nullable
The class this mark sheet is attached to.
template string
object
nullable
The template this mark sheet is attached to.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Attendance

GET Session Attendance

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/attendance/session"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A475458937",
            "date": {
                "date": "2015-10-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "session": "PM",
            "comment": null,
            "employee": null,
            "attendance_code": "A930902628",
            "student": "A1307078120"
        },
        {
            "id": "A106056174",
            "date": {
                "date": "2015-10-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "session": "PM",
            "comment": "Student was ill",
            "employee": null,
            "attendance_code": "A930902628",
            "student": "A938854481"
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/attendance/session/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": []
    }
}

Url parameters

Name type Description
attendance_date_before date Return entries before date.
attendance_date_after date Return entries after date.
student id Return rows for a student.
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.

POST Session Attendance

Curl example
curl -X POST -H "Authorization: Bearer API_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{
    "attendance": [
	    {
	    "student_id": "A1849765024",
	    "attendance_code_id": "A1329183376",
	    "date": "2015-12-09",
	    "session": "AM",
		"comments": "Student was late"
	    }
    ]}' "https://api.wonde.com/v1.0/schools/{school_id}/attendance/session"

When writing back attendance to a school’s MIS there are a few points you need to take into account:

Request body

Request Body
{
     "attendance": [
         {
             "student_id": "A960618364",
             "date": "2015-12-14",
             "session": "AM",
             "attendance_code_id": "A1329183376"
         },
         {
             "student_id": "A960618364",
             "date": "2015-12-14",
             "session": "PM",
             "attendance_code_id": "A1161584171"
         }
     ]
 }

To change attendance marks, send a JSON encoded POST request to /v1.0/schools/{school_id}/attendance/session.

An example of the request body is provided on the right.
The attribute values that must be set successfully to modify attendance marks are:

Name type Required Description
student_id string Yes The Wonde ID for the student.
date string Yes The attendance mark’s date.
session string Yes The attendance mark’s session. (AM or PM).
attendance_code_id string Yes The Wonde ID for the attendance code.
comment string
nullable
No Text comment.
minutes_late number
nullable
No Minutes the student was late for registration. Applies to SIMS only.

Response body

Response Body
{
  "writeback_id": "A18002453"
}

If your request fails validation the response will contain the validation errors. If your request passes validation you will receive a writeback_id which can be used to check the status of the writeback.

Session Attendance Object

Response Body
{
    "id": "A106056174",
    "date": {
        "date": "2015-10-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "session": "PM",
    "employee": null,
    "attendance_code": "A930902628",
    "student": "A938854481"
}

You need the attendance read permission to view this object.

Name Type Description
id string The ID of the object.
date date The date of the attendance mark.
comment string
nullable
Short text note.
session string Possible values:
  • AM
  • PM
employee string
nullable
The ID of the employee that entered the mark.
attendance_code string The ID of the mark. See attendance codes.
student string The student the mark belongs to.

GET Lesson Attendance

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/attendance/lesson"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1964735203",
            "date": {
                "date": "2016-01-15 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe\/London"
            },
            "period_instance_id": 40735,
            "comment": null,
            "attendance_code": "A1329183376",
            "student": "A1329183376"
        },
        {
            "id": "A2133121352",
            "date": {
                "date": "2016-01-15 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe\/London"
            },
            "period_instance_id": 40734,
            "comment": "Went home ill",
            "attendance_code": "A1329183376",
            "student": "A1329183376"
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/A1329183376/attendance/lesson?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        }
    }
}

Url parameters

Name type Description
attendance_date_before date Return entries before date.
attendance_date_after date Return entries after date.
student id Return rows for a student.
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.

POST Lesson Attendance

Curl example
curl -X POST -H "Authorization: Bearer API_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{
    "attendance": [
    {
    "student_id": "A1905879176",
    "lesson_id": "A1052845378",
    "attendance_code_id": "A1329183376"
    }
    ]}' "https://api.wonde.com/v1.0/schools/{school_id}/attendance/lesson"

When writing back attendance to a school’s MIS there are a few points you need to take into account:

Request body

Request Body
{
    "attendance": [
        {
            "student_id": "A1905879176",
            "lesson_id": "A1052845378",
            "attendance_code_id": "A1329183376"
        },
        {
            "student_id": "A1905879176",
            "lesson_id": "A312724695",
            "attendance_code_id": "A1964735203"
        }
    ]
}

To change attendance marks, send a JSON encoded POST request to /v1.0/schools/{school_id}/attendance/lesson.

An example of the request body is provided on the right.
The attribute values that must be set successfully to modify attendance marks are:

Name type Required Description
student_id string Yes The Wonde ID for the student.
lesson_id string Yes The Wonde ID for the lesson.
attendance_code_id string Yes The Wonde ID for the attendance code.
comment string
nullable
No Text comment. Currently only supported by the Engage MIS.

Response body

Response Body
{
  "writeback_id": "A18002453"
}

If your request fails validation the response will contain the validation errors. If your request passes validation you will receive a writeback_id which can be used to check the status of the writeback.

Lesson Attendance Object

Response Body
{
    "id": "A1964735203",
    "date": {
        "date": "2016-01-15 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe\/London"
    },
    "period_instance_id": 40735,
    "comment": null,
    "attendance_code": "A1329183376",
    "student": "A1329183376"
}

You need the attendance read permission to view this object.

Name Type Description
id string The ID of the object.
date date The date of the attendance mark.
period_instance_id int
nullable
All lessons happening during the same period have the same period_instance_id. This value can be used to match lessons and attendance as SIMS records a mark for a period instance not a lesson instance.
comment string
nullable
Short text note.
attendance_code string The ID of the mark. See attendance codes.
student string The student the mark belongs to.

Attendance Codes

GET Attendance Codes (DfE)

Curl example
curl "https://api.wonde.com/v1.0/attendance-codes"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "code": "/",
            "description": "Present (AM)",
            "type": "PRESENT"
        },
        {
            "id": "A1529934786",
            "code": "B",
            "description": "Educated off site",
            "type": "PRESENT"
        }
    ]
}

GET Attendance Codes

Some schools, particularly international schools, may use their own Attendance Codes rather than the DfE dictated list.

If the school does not have custom Attendance Codes this endpoint will return DfE Attendance Codes.

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/attendance-codes"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1109295446",
            "code":"S",
            "description": "Staying home for other reasons",
            "type": "AUTHORISED"
        },
        {
            "id": "A1478304481 ",
            "code": "UA",
            "description": "Unauthorised absence",
            "type": "UNAUTHORISED"
        }
    ]
}

Attendance Code Object

Response Body
{
    "id": "A1529934786",
    "code": "B",
    "description": "Educated off site",
    "type": "PRESENT"
}

Name Type Description
id string The ID of the object.
code string
description string
type string Possible values:
  • PRESENT
  • AUTHORISED
  • VOID
  • UNAUTHORISED

Attendance Summaries

GET Attendance Summaries

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/attendance-summaries"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/attendance-summaries/{summary_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "student_id": "A1329183376",
            "authorised_absences": 0,
            "unauthorized_absences": 0,
            "unexplained_absences": 0,
            "late_before_registration": 0,
            "late_after_registration": 0,
            "possible_marks": 74,
            "missing_marks": 0,
            "attendance_not_required": 42,
            "present": 74,
            "approved_education_activity": 0,
            "created_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "student_id": "A1161584171",
            "authorised_absences": 10,
            "unauthorized_absences": 0,
            "unexplained_absences": 0,
            "late_before_registration": 0,
            "late_after_registration": 0,
            "possible_marks": 74,
            "missing_marks": 0,
            "attendance_not_required": 42,
            "present": 64,
            "approved_education_activity": 0,
            "created_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/attendance-summaries/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "student"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
student one

Attendance Summary Object

Response Body
{
    "id": "A1161584171",
    "student_id": "A1161584171",
    "authorised_absences": 10,
    "unauthorized_absences": 0,
    "unexplained_absences": 0,
    "late_before_registration": 0,
    "late_after_registration": 0,
    "possible_marks": 74,
    "missing_marks": 0,
    "attendance_not_required": 42,
    "present": 64,
    "approved_education_activity": 0,
    "created_at": {
        "date": "2015-10-29 10:32:22.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 10:32:22.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the attendance read permission to view this object.

Name Type Description
id string The ID of the object.
student_id string The student’s ID in the MIS.
authorised_absences integer The number of authorised absences.
unauthorized_absences integer The number of unauthorised absences.
unexplained_absences integer The number of unexplained absences.
late_before_registration integer The number of late before registrations marks.
late_after_registration datetime The number of late after registrations marks.
possible_marks integer The number of possible marks.
missing_marks integer The number of missing marks.
attendance_not_required integer The number of attendance not required marks.
present integer The number of present marks.
approved_education_activity integer The number of approved education activity marks.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Behaviours

GET Behaviours

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/behaviours"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/behaviours/{behaviour_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "mis_id": "263",
            "type": "Homework Issue",
            "location": "Science",
            "subject": "Science",
            "class": "7A/Science",
            "status": "Resolved",
            "action": "Lunchtime Detention",
            "points": 1,
            "comment": "Despite previous warnings, one of five students who still have significant homework from two weeks ago still outstanding.",
            "parents_notified": false,
            "incident_date": {
                "date": "2009-04-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "action_date": {
                "date": "2009-05-01 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "recorded_date": {
                "date": "2009-04-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-03-15 11:08:55.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-15 11:08:55.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "mis_id": "264",
            "type": "Disruptive Behaviour in Class",
            "location": "Art",
            "subject": "Art",
            "class": "7A/Art",
            "status": "Resolved",
            "action": "Written Punishment",
            "points": 1,
            "comment": "Repeatedly off task and talking in class.",
            "parents_notified": false,
            "incident_date": {
                "date": "2009-05-06 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "action_date": {
                "date": "2009-05-06 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "recorded_date": {
                "date": "2009-05-06 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-03-15 11:08:55.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-15 11:08:55.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/A1329183376/behaviours?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "students",
            "employees"
        ]
    }
}

Url parameters

Name type Description
incident_date_before date Return entries before date.
incident_date_after date Return entries after date.
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
has_students string Only return records that have students attached.
has_employees string Only return records that have employees attached.
mis_id string
int
Return records with the provided MIS_ID.
Name Relationship
students many
employees many

POST Behaviours

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/behaviours"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Request Body
{
    "students": [
        {
            "student_id": "A1849765024",
            "role": "AG",
            "action": "COOL",
            "action_date": "2016-04-01",
            "points": 200
        },
        {
            "student_id": "A1682292795",
            "role": "TA",
            "points": 0
        }
    ],
    "employee_id": "A1329183376",
    "date": "2016-03-31",
    "status": "REV2",
    "type": "BULL",
    "bullying_type": "B_INT",
    "comment": "Bulling incident",
    "activity_type": "RE",
    "location": "CORR",
    "time": "LUN"
}

To create a behaviour record, send a JSON encoded POST request to /v1.0/schools/{school_id}/behaviours.

An example of the request body is provided on the right.
The attribute values that must be set successfully to create behaviour records are:

Name type Required Description
students array Yes
students > student_id string Yes The Wonde ID of a student.
students > role string no The code or ID of the role the student took in the incident.
See behaviour attributes BEHAVIOUR_ROLE.
students > action string No The code or ID of the action taken in response to the incident.
See behaviour attributes BEHAVIOUR_OUTCOME.
students > action_date string No The date the associated to the action.
students > points integer Yes The amount of points associated to the incident.
Points indicate the severity of the event.
employee_id string Yes The Wonde ID of the employee that recorded the incident.
date string Yes The date of the incident.
status string Yes The code or ID of the status.
See behaviour attributes EVENT_STATUS.
type string Yes The code or ID of the behaviour type.
See behaviour attributes BEHAVIOUR_TYPE.
bullying_type string No The code or ID of the bullying type.
See behaviour attributes BULLYING_MODE.
comment string No Short text note.
activity_type string No The code or ID of the activity.
See behaviour attributes BEHAVIOUR_ACTIVITY.
location string No The code or ID of the location.
See behaviour attributes EVENT_TIME.
time string No The code or ID of the time.
See behaviour attributes EVENT_LOCATION.

DELETE Behaviours

Curl example
curl -X "DELETE" "https://api.wonde.com/v1.0/schools/{school_id}/behaviours/{behaviour_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

You need the behaviour delete permission to perform this action.

To delete a behaviour record just send a delete request to behaviour item's url.

Behaviour Object

Response Body
{
    "id": "A1329183376",
    "mis_id": "263",
    "type": "Homework Issue",
    "location": "Science",
    "subject": "Science",
    "class": "7A/Science",
    "status": "Resolved",
    "action": "Lunchtime Detention",
    "points": 1,
    "comment": "Despite previous warnings, one of five students who still have significant homework from two weeks ago still outstanding.",
    "parents_notified": false,
    "incident_date": {
        "date": "2009-04-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "action_date": {
        "date": "2009-05-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "recorded_date": {
        "date": "2009-04-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-03-15 11:08:55.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-03-15 11:08:55.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the behaviour read permission to view this object.


Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
type string The type of behaviour incident.
See behaviour attributes BEHAVIOUR_TYPE.
location string
nullable
The location of the incident.
See behaviour attributes EVENT_LOCATION.
subject string
nullable
The subject during which the incident occurred.
class string
nullable
The class in which the incident occurred.
status string
nullable
The status of the incident.
See behaviour attributes EVENT_STATUS.
action string
nullable
The action taken in response to the incident.
See behaviour attributes BEHAVIOUR_OUTCOME.
points integer
nullable
The amount of points associated to the incident.
Points indicate the severity of the event.
comment string
nullable
Short text note.
parents_notified boolean
nullable
Boolean indicating if a parent has been notified of the incident.
incident_date string
nullable
The date the incident took place.
action_date datetime
nullable
The date action was taken.
recorded_date datetime
nullable
The date the incident was recorded.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Behaviour Attributes

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/behaviours/attributes"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A587541588",
            "mis_id": "26",
            "type": "BEHAVIOUR_TYPE",
            "code": "BULL",
            "active": true,
            "points": 50,
            "description": "Bullying",
            "bullying_type_enabled": true,
            "created_at": {
                "date": "2016-03-16 15:23:42.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-24 09:39:11.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1346550315",
            "mis_id": "22",
            "type": "EVENT_SUBJECT",
            "code": "SCI",
            "active": true,
            "points": null,
            "description": "Science",
            "bullying_type_enabled": false,
            "created_at": {
                "date": "2016-03-16 15:23:42.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-03-17 15:01:40.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/behaviours/attributes?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        }
    }
}

You need the behaviour read permission to view this resource.

In SIMS, behaviour records are made from multiple select box values. To make it easy to update behaviour records, we provide the possible options for these select boxes. When updating / creating a behaviour record you can provide the CODE or the ID for the select box value.

It is important that you check the code is valid for a school as missing or disabled codes will not pass Wonde's validation.

Type Information / Examples
BEHAVIOUR_TYPE This is the behaviour category.
Some behaviour types will have points associated to them.
bullying_type_enabled indicates if a bullying mode is applicable for this behaviour type. See BULLYING_MODE below.

Example: BULL = Bullying
BULLYING_MODE This is a sub-category of BEHAVIOUR_TYPE.
This is only available for certain behaviour types.

Example: PHY = Physical Violence
BEHAVIOUR_ACTIVITY The activity / subject in which the incident took place.

Example: ENG = English
EVENT_TIME A named period of time during which the incident took place.

Example: LESS1 = Lesson 2
Example: LESS2 = Lesson 2
Example: BSHRS = Before School Hours
BEHAVIOUR_OUTCOME The action taken as a result of the incident.

Example: PARL = Letter to Parent/Guardian
EVENT_STATUS The status of the incident.

Example: REV3 = Review in 3 weeks
Example: FUT = Further Intervention Required
EVENT_LOCATION Where the incident took place.

Example: OSG = Outside School
Example: SPORT = Gym/Sports Hall/Pool
BEHAVIOUR_ROLE The role a student took in the incident.

Example: TA = Target
Example: AG = Aggressor

Classes

GET Classes

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/classes"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/classes/{class_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "mis_id": "8925",
            "name": "10A/Ar1",
            "description": "10A/Ar1",
            "subject": null,
            "created_at": {
                "date": "2015-10-29 14:53:59.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:53:59.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "mis_id": "8926",
            "name": "10A/Dc1",
            "description": "10A/Dc1",
            "subject": null,
            "created_at": {
                "date": "2015-10-29 14:53:59.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:53:59.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/classes/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "subject",
            "students",
            "employees",
            "lessons",
            "lessons.room",
            "lessons.period"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
has_students any Only get classes that have students.
has_lessons any Only get classes that have lessons.
class_name String Return results with the provided class name.
class_subject String Return results with the provided subject id.
Name Relationship
subject one
students many
students.contact_details many > one
students.education_details many > one
students.extended_details many > one
students.house many > one
students.registration many > one
students.year many > one
students.boarding many > one
employees many
employees.employment_details many > one
lessons many
lessons.room many > one
lessons.period many > one

Class Object

Response Body
{
    "id": "A1329183376",
    "mis_id": "8925",
    "name": "10A/Ar1",
    "description": "10A/Ar1",
    "subject": null,
    "created_at": {
        "date": "2015-10-29 14:53:59.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 14:53:59.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the classes read permission to view this object.



Name Type Description
id string The ID of the object.
mis_id string The ID in the MIS.
name string Class name.
description string
nullable
Class description.
subject string
object
nullable
The subject for the class.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Contacts

GET Contacts

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/contacts"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/contacts/{contact_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1139736963",
            "mis_id": "9920",
            "upi": "1e6ac4ab8c7a8514b1faaeb5ad097d0a",
            "title": "Mrs",
            "initials": "SS",
            "surname": "Smith",
            "forename": "Sally",
            "middle_names": null,
            "gender": "FEMALE",
            "date_of_birth": null,
            "created_at": {
                "date": "2015-10-29 14:53:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:53:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1508091162",
            "mis_id": "9921",
            "upi": "cc7cad81fb5e2b5a1dee37e03177ce46",
            "initials": "TS",
            "title": "Mr",
            "surname": "Smith",
            "forename": "Tom",
            "middle_names": null,
            "gender": "MALE",
            "date_of_birth": null,
            "created_at": {
                "date": "2015-10-29 14:53:45.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:53:45.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/contacts/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "contact_details",
            "students"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
contact_details one
students many

Contact Object

Response Body
{
    "id": "A1508091162",
    "mis_id": "9921",
    "upi": "cc7cad81fb5e2b5a1dee37e03177ce46",
    "title": "Mr",
    "initials": "ST",
    "surname": "Smith",
    "forename": "Tom",
    "middle_names": null,
    "gender": "MALE",
    "date_of_birth": null,
    "created_at": {
        "date": "2015-10-29 14:53:45.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 14:53:45.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the contacts read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The contact’s ID in the MIS.
upi string Unique Person Identifier - If a person is a contact and an employee they will have the same UPI but different ids.
initials string
nullable
The contact’s initials.
surname string The contact’s last name.
forename string
nullable
The contact’s first name.
middle_names nullable
string
The contact’s middle_names.
legal_surname string
nullable
The contact’s legal last name.
legal_forename string
nullable
The contact’s legal first name.
gender string The contact’s gender.
  • MALE
  • FEMALE
date_of_birth date The contact’s date of birth.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Contact Details

This object is available under the student, contact & employee endpoints.

Contact Details Object

Response Body
{
    "phones": {
        "phone": "01632211117",
        "primary": "01632211117",
        "home": "01632211117",
        "work": null,
        "mobile": null
    },
    "emails": {
        "email": "testing@example.com",
        "primary": null,
        "home": null,
        "work": null
    },
    "addresses": {
        "home": {
            "house_number": "1",
            "house_name": null,
            "apartment": null,
            "street": "Lane Street",
            "district": "Kingston",
            "town": "Cambridge",
            "county": null,
            "country": "United Kingdom",
            "postcode": "CB21 7YD"
        },
        "work": {
            "house_number": "",
            "house_name": "Dunroaming",
            "apartment": null,
            "street": "Lane Road",
            "district": "Pietown",
            "town": "Cambridge",
            "county": null,
            "country": "United Kingdom",
            "postcode": "CB21 7YA"
        }
    }
}

Name Type Description
phones.phone string
nullable
phones.primary string
nullable
phones.home string
nullable
phones.work string
nullable
phones.mobile string
nullable
emails.phone string
nullable
emails.primary string
nullable
emails.home string
nullable
emails.work string
nullable
emails.mobile string
nullable
addresses.home.house_number string
nullable
addresses.home.house_name string
nullable
addresses.home.apartment string
nullable
addresses.home.street string
nullable
addresses.home.district string
nullable
addresses.home.town string
nullable
addresses.home.county string
nullable
addresses.home.country string
nullable
addresses.home.postcode string
nullable
addresses.work.house_number string
nullable
addresses.work.house_name string
nullable
addresses.work.apartment string
nullable
addresses.work.street string
nullable
addresses.work.district string
nullable
addresses.work.town string
nullable
addresses.work.county string
nullable
addresses.work.country string
nullable
addresses.work.postcode string
nullable

Counts

GET Counts

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/counts?include=students,contacts,employees"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
  "data": {
    "students": {
      "data": {
        "count": 1017
      }
    },
    "contacts": {
      "data": {
        "count": 1785
      }
    },
    "employees": {
      "data": {
        "count": 112
      }
    },
    "behaviours": {
      "data": {
        "count": 1231
      }
    },
    "achievements": {
      "data": {
        "count": 1304
      }
    },
    "rooms": {
      "data": {
        "count": 68
      }
    },
    "subjects": {
      "data": {
        "count": 62
      }
    },
    "lessons": {
      "data": {
        "count": 35712
      }
    }
  },
  "meta": {
    "includes": [
      "students",
      "contacts",
      "employees",
      "behaviours",
      "achievements",
      "rooms",
      "subjects",
      "lessons",
      "periods",
      "groups",
      "classes",
      "photos",
      "buildings",
      "attendance",
      "lessonAttendance",
      "contracts",
      "roles",
      "sen_needs",
      "aspects",
      "templates",
      "result_sets",
      "results",
      "events"
    ]
  }
}

Employees

Wonde holds records for all employees even if they are currently inactive at the school. Applications should use the contact start and end-date to establish whether or not a staff member is currently active at the school.

GET Employees

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/employees"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/employees/{employee_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "upi": "5cc4ab015f8f7870b581e30e0ef474fa",
            "mis_id": "26",
            "title": "Mrs",
            "initials": "SS",
            "surname": "Smith",
            "forename": "Sally",
            "middle_names": null,
            "legal_surname": "Smith",
            "legal_forename": "Sally",
            "gender": "female",
            "date_of_birth": {
                "date": "1963-02-11 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "updated_at": {
                "date": "2015-10-29 14:59:08.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "created_at": {
                "date": "2015-10-29 14:45:00.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "upi": "e5164e2f29965c14f1c68e241a116551",
            "mis_id": "6903",
            "title": "Mrs",
            "initials": "KA",
            "surname": "Anderson",
            "forename": "Kate",
            "middle_names": "Victoria",
            "legal_surname": "Anderson",
            "legal_forename": "Kate",
            "gender": "female",
            "date_of_birth": {
                "date": "1966-03-11 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "updated_at": {
                "date": "2015-10-29 14:59:08.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "created_at": {
                "date": "2015-10-29 14:45:00.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/employees/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "contact_details",
            "employment_details",
            "extended_details",
            "roles",
            "allowances",
            "scales",
            "photo",
            "roles.contract",
            "allowances.contract",
            "scales.contract",
            "contracts",
            "contracts.roles",
            "contracts.salary",
            "contracts.salary.allowances",
            "contracts.salary.scales",
            "salary",
            "salary.contract",
            "groups",
            "classes",
            "employee_absences"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
employment_start_before date Get employees who have started before a date.
employment_start_after date Get employees who have started after a date.
has_role any Only return employees that have a role.
has_contract any Only return employees that have a contract.
Name Relationship
contact_details one
employment_details one
extended_details one
roles many
roles.contracts many > many
contracts many
contracts.roles many > many
contracts.salary many > one
contracts.salary.allowances many > one > many
contracts.salary.scales many > one > many
salary many
salary.contract many > one
allowances many
allowances.contract many > one
scales many
scales.contract many > one
photo one
groups many
behaviours many
classes many
employee_absences many

Employee Object

Response Body
{
    "id": "A1749191433",
    "upi": "5cc4ab015f8f7870b581e30e0ef474fa",
    "mis_id": "9919",
    "title": "Mr",
    "initials": "TS",
    "surname": "Smith",
    "forename": "Tom",
    "middle_names": null,
    "legal_surname": "Smith",
    "legal_forename": "Tom",
    "gender": "male",
    "date_of_birth": {
        "date": "2002-09-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-07-14 10:26:12.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-15 09:59:05.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the employees read permission to view this object.

Name Type Description
id string The ID of the object.
upi string Unique Person Identifier - If a person is a contact and an employee they will have the same UPI but different ids.
mis_id string The employee’s ID in the MIS.
title nullable
string
The employee’s title.
initials nullable
string
The employee’s initials.
surname string The employee’s last name.
forename string
nullable
The employee’s first name.
middle_names nullable
string
The employee’s middle_names.
legal_surname string
nullable
The employee’s legal last name.
legal_forename string
nullable
The employee’s legal first name.
gender string The employee’s gender.
  • male
  • female
date_of_birth date The employee’s date of birth.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Employment Details Object

Response Body
{
    "teaching_staff": true,
    "current": true,
    "teacher_number": "84/82693",
    "staff_code": "AA",
    "employment_start_date": {
        "date": "1988-09-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "employment_end_date": null,
    "local_authority_start_date": {
        "date": "1988-09-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    }
}

You need the employees read permission to view this object.

Name Type Description
current boolean Is the employee’s a current member of staff.
teaching_staff boolean Is the employee’s role considered teaching staff.
teacher_number string
nullable
Teacher’s number.
staff_code string
nullable
Teacher’s staff code.
employment_start_date date Employment start date.
employment_end_date date
nullable
Employment end date.
local_authority_start_date date
nullable
The date the employee started at the local authority.

Role Object

Response Body
{
    "id": "A1964735203",
    "mis_id": "98",
    "role": "Classroom Teacher",
    "role_code": "TCHR",
    "contract": "A1529934786",
    "start_date": {
        "date": "2013-09-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "end_date": null,
    "created_at": {
        "date": "2015-10-29 14:57:59.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 14:57:59.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the employees read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string
nullable
The role’s ID in the MIS.
role string Name of the role.
role_code string
nullable
The role’s identifier.
contract string
object
nullable
The contract this role belongs to.
start_date date
nullable
When the role is active from.
end_date date
nullable
When the role ends.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Contract Object

Response Body
{
    "id": "A1529934786",
    "mis_id": "358",
    "start_date": {
        "date": "2013-09-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "end_date": null,
    "employment_type": "PERMANENT",
    "created_at": {
        "date": "2014-05-21 16:21:45.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2014-05-21 16:21:45.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the contracts read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The contract’s ID in the MIS.
start_date date When the contract is active from.
end_date date
nullable
When the contract ends.
employment_type string
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Salary Object

Response Body
{
    "id": "A1529934786",
    "salary": "24987.94",
    "fte_salary": "24987.94",
    "total_pay": "24987.94",
    "latest_pay_review_date": {
        "date": "2016-09-02 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "superannuation": "Basic Pension",
    "pay_factor": "1.2500",
    "service_term": "Support Staff",
    "hours_week": "40.0000",
    "weeks_year": "20.0000",
    "hours_year": "800.00",
    "created_at": {
        "date": "2014-05-21 16:21:45.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2014-05-21 16:21:45.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the contract salary read permission to view this object.

Name Type Description
id string The ID of the object.
salary decimal
nullable
Salary offered for contract.
fte_salary decimal
nullable
Full time equivalent salary for contract.
total_pay decimal
nullable
Total compensation for contract.
latest_pay_review_date date
nullable
Date of last pay review.
superannuation string
nullable
Type of pension.
pay_factor decimal
nullable
Factor of pay for contract.
service_term string
nullable
hours_week decimal
nullable
Contracted hours per week.
weeks_year decimal
nullable
Contracted weeks per year.
hours_year decimal
nullable
Contracted hours per year.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Allowance Object

Response Body
{
    "id": "A9483752984",
    "mis_id": "95",
    "start_date": {
        "date": "2015-03-02 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "end_date": null,
    "amount": 7157,
    "type": "PERMANENT",
    "allowance": "Teaching higher course",
    "code": "TH",
    "payroll_allowance": null,
    "allowance_reason": "Higher progression",
    "created_at": {
        "date": "2016-02-15 12:01:51.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-02-15 12:01:51.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the contract salary read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The allowance’s ID in the MIS.
start_date date When the allowance is active from.
end_date date
nullable
When the allowance ends.
amount integer
nullable
The amount in the allowance.
type string
nullable
The type of allowance.
allowance string
nullable
Short description of allowance.
code string
nullable
The code for allowance.
payroll_allowance string
nullable
allowance_reason string
nullable
Reason that allowance has been given.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Scale Object

Response Body
{
    "id": "A6389286398",
    "mis_id": "963",
    "start_date": {
        "date": "2017-12-06 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "end_date": null,
    "scale_point": 3,
    "pay_scale": "Initial scale",
    "pay_scale_code": "IPS",
    "minimum_amount": null,
    "maximum_amount": null,
    "notes": null,
    "created_at": {
        "date": "2016-08-21 12:01:07.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-08-21 12:01:07.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the contract salary read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The scale’s ID in the MIS.
start_date date When the scale is active from.
end_date date
nullable
When the scale ends.
scale_point int
nullable
pay_scale string
nullable
The scale of pay for contract.
pay_scale_code string
nullable
Identifying code for pay scale.
minimum_amount int
nullable
Minimum amount for scale.
maximum_amount int
nullable
Maximum amout for scale.
notes text
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Employee Absences

GET Employee Absences

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/employees-absences"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/employee-absences/{employee_absence}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1744353885",
            "mis_id": "0sfo4-wfer-r3gg23-nm762ca-098j",
            "employee": "A7639428573",
	    "start_at": {
	        "date": "2016-08-02 08:30:00.000000",
	        "timezone_type": 3,
	        "timezone": "Europe/London"
	    },
	    "end_at": {
	        "date": "2016-08-05 08:30:00.000000",
	        "timezone_type": 3,
	        "timezone": "Europe/London"
	    },
            "working_days": 3,
            "number_of_hours": 24,
            "absence_type": "Sickness",
            "illness_category": "Minor injury",
            "authorised_pay_rate": "Full pay",
	    "created_at": {
	        "date": "2016-08-06 09:14:51.000000",
	        "timezone_type": 3,
	        "timezone": "UTC"
	    },
	    "updated_at": {
	        "date": "2016-08-06 09:14:51.000000",
	        "timezone_type": 3,
	        "timezone": "UTC"
	    }
	},
        {
            "id": "A8294679863",
            "mis_id": "f7s8g-4fow-r987da-gd9s84d-31n2",
            "employee": "A9037288054",
	    "start_at": {
	        "date": "2016-09-15 08:30:00.000000",
	        "timezone_type": 3,
	        "timezone": "Europe/London"
	    },
	    "end_at": {
	        "date": "2016-09-16 08:30:00.000000",
	        "timezone_type": 3,
	        "timezone": "Europe/London"
            "working_days": 1,
            "number_of_hours": 8,
            "absence_type": "Sickness",
            "illness_category": "Food poisoning",
            "authorised_pay_rate": "Full pay",
	    "created_at": {
	        "date": "2016-09-17 11:45:01.000000",
	        "timezone_type": 3,
	        "timezone": "UTC"
	    },
	    "updated_at": {
	        "date": "2016-09-17 11:45:01.000000",
	        "timezone_type": 3,
	        "timezone": "UTC"
	    }
	}
		],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/employee-absences/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        }
		}
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
absence_start_date_before date Return rows where absences start before date.
absence_start_date_after date Return rows where absences start after date.
absence_start_date_from date Return rows where absences start from date.
absence_start_date_to date Return rows where absences start to date.
absence_end_date_before date Return rows where absences end before date.
absence_end_date_after date Return rows where absences end after date.
absence_end_date_from date Return rows where absences end from date.
absence_end_date_to date >Return rows where absences end to date.
employee id Only absences associated to provided employee.
Name Relationship
employee one

Employee Absence Object

Response Body
{
    "id": "A1744353885",
    "mis_id": "0sfo4-wfer-r3gg23-nm762ca-098j",
    "employee": "A7639428573",
    "start_at": {
        "date": "2016-08-02 08:30:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    "end_at": {
        "date": "2016-08-05 08:30:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    "working_days": 3,
    "number_of_hours": 24,
    "absence_type": "Sickness",
    "illness_category": "Minor injury",
    "authorised_pay_rate": "Full pay",
    "absence_note": "Twisted ankle",
    "created_at": {
        "date": "2016-08-06 09:14:51.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-08-06 09:14:51.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the employee absences read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The employee absence’s ID in the MIS.
employee nullable
string
The employee this employee absence belongs to.
start_at nullable
string
When the absence began.
end_at string When the absence ended.
working_days string
nullable
The amount of working days the employee absence spanned over.
number_of_hours nullable
string
The amount of working hours the employee absence spanned over.
absence_type string The type of employee absence.
illness_category string
nullable
The category of the employee absence.
authorised_pay_rate date The type of pay rate for the employee absence
absence_note string The note associated with the employee absence
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Events

GET Events

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/events"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/events/{event_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1529934786",
	    "mis_id": "2345",
            "description": "Planned whole or partial school closure",
            "type": null,
            "start_at": {
                "date": "2016-08-31 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "end_at": {
                "date": "2016-08-31 23:59:59.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-07-14 10:26:12.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-07-15 09:59:05.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1362597725",
	    "mis_id": "2634",
            "description": "Planned whole or partial school closure",
            "type": null,
            "start_at": {
                "date": "2016-08-30 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "end_at": {
                "date": "2016-08-30 23:59:59.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-07-14 10:26:12.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-07-15 09:59:05.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/events?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": []
    }
}

Url parameters

Name type Description
end_before date Return entries with end_at before date.
end_after date Return entries with end_at after date.
start_before date Return entries with start_at before date.
start_after date Return entries with start_at after date.
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
type string Returns rows with the supplied type, can be comma separated to return multiple types.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.

Events Object

Response Body
{
    "id": "A1529934786",
    "mis_id": "2345",
    "description": "Planned whole or partial school closure",
    "type": null,
    "start_at": {
        "date": "2016-08-31 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "end_at": {
        "date": "2016-08-31 23:59:59.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-07-14 10:26:12.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-15 09:59:05.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the events read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The event’s ID in the MIS.
description nullable
string
The event’s description.
type nullable
string
The event’s type.
start_at date The event’s start date.
end_at date The event’s end date.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Extended Details

Extended Details Object

This object is available under the student & employee endpoints.

Response Body
{
    "next_of_kin": null,
    "religion": "Christian",
    "ethnicity": "White - English",
    "dietary_needs": "No nuts of any type\/quantity, No pork",
    "sen_status": null,
    "first_language": "ENG",
    "in_lea_care": false,
    "ever_in_care": false,
    "free_school_meals": false,
    "free_school_meals_6": false,
    "english_as_additional_language": null,
    "premium_pupil_indicator": false,
    "premium_pupil_notes": ""
    "service_children_indicator": true
    "enrolment_status": "SINGLE REGISTRATION"
    "gifted_and_talented_status": true
    "national_insurance_number": "GE427539B"
}

Name Type Description
next_of_kin string
nullable
religion string
nullable
ethnicity string
nullable
dietary_needs string
nullable
sen_status string
nullable
first_language string
nullable
3 Letter language code.
in_lea_care boolean
nullable
Is the person in local education authorities care.
ever_in_care boolean
nullable
Has the person ever been in care.
free_school_meals boolean
nullable
Does the person received free school meals.
free_school_meals_6 boolean
nullable
Has the person received free school meals in last 6 years.
english_as_additional_language boolean
nullable
Is english not the person’s first language.
premium_pupil_indicator boolean
nullable
Documentation on this field is provided by Capita SIMS.
premium_pupil_notes string
nullable
Documentation on this field is provided by Capita SIMS.
service_children_indicator boolean
nullable
enrolment_status string
nullable
gifted_and_talented_status boolean
nullable
national_insurance_number boolean
nullable

Groups

GET Groups

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/groups"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/groups/{group_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "mis_id": "34",
            "name": "10",
            "code": "10",
            "type": "YEAR",
            "description": "Year 10",
            "notes": null,
            "created_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "mis_id": "425",
            "name": "10A",
            "code": "10A",
            "type": "REGISTRATION",
            "description": "10A",
            "notes": null,
            "created_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/groups/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "students",
            "employees"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
has_students any Only return groups that have students.
has_employees any Only return groups that have employees.
type string Only return groups with the provided type.
  • YEAR
  • REGISTRATION
  • HOUSE
  • BOARDING
  • COURSE
  • MISC
  • USER
Name Relationship
students many
employees many

Group Object

Response Body
{
    "id": "A1161584171",
    "mis_id": "425",
    "name": "10A",
    "code": "10A",
    "type": "REGISTRATION",
    "description": "10A",
    "notes": null,
    "created_at": {
        "date": "2015-10-29 14:56:29.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 14:56:29.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the groups read permission to view this object.



Name Type Description
id string The ID of the object.
mis_id string The group’s ID in the MIS.
name string Group name.
code string Group code.
type string
  • REGISTRATION
  • YEAR
  • HOUSE
  • BOARDING
  • COURSE
  • MISC
  • USER

description string
nullable
notes string
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Historical Groups

GET Historical Groups

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/groups-historical"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/groups-historical/{group_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "mis_id": "34",
            "name": "10",
            "code": "10",
            "type": "YEAR",
            "description": "Year 10",
            "notes": null,
            "created_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "mis_id": "425",
            "name": "10A",
            "code": "10A",
            "type": "REGISTRATION",
            "description": "10A",
            "notes": null,
            "created_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:56:29.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/groups-historical/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "students",
            "employees"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
has_students any Only return historical groups that have students.
has_employees any Only return historical groups that have employees.
type string Only return historical groups with the provided type.
  • YEAR
  • REGISTRATION
  • HOUSE
  • BOARDING
  • COURSE
  • MISC
  • USER
Name Relationship
students many
employees many

Historical Group Object

Response Body
{
    "id": "A1161584171",
    "mis_id": "425",
    "name": "10A",
    "code": "10A",
    "type": "REGISTRATION",
    "description": "10A",
    "notes": null,
    "created_at": {
        "date": "2015-10-29 14:56:29.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 14:56:29.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the groups-historical read permission to view this object.



Name Type Description
id string The ID of the object.
mis_id string The group’s ID in the MIS.
name string Group name.
code string Group code.
type string
  • REGISTRATION
  • YEAR
  • HOUSE
  • BOARDING
  • COURSE
  • MISC
  • USER

description string
nullable
notes string
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Lessons

GET Lessons

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/lessons"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/lessons/{lesson_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A749126774",
            "room": "A1161584171",
            "period": "A1161584171",
            "period_instance_id": "40860",
            "employee": null,
            "start_at": {
                "date": "2016-02-22 09:15:00.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "end_at": {
                "date": "2016-02-22 10:15:00.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "created_at": {
                "date": "2016-02-08 11:25:28.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-02-08 11:25:28.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/A1329183376/lessons?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "class",
            "employee",
            "period",
            "room"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
lessons_start_after date Return rows starting after date.
lessons_start_before date Return rows starting before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
period one
class one
employee one
room one

Lesson Object

Response Body
{
    "id": "A473090460",
    "room": "A1529934786",
    "period": "A1299388415",
    "employee_id": "A1656263924",
    "period_instance_id": "40716",
    "start_at": {
        "date": "2015-12-16 09:15:00.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "end_at": {
        "date": "2015-12-16 10:15:00.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "created_at": {
        "date": "2015-12-03 19:11:55.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-12-03 19:11:55.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the lessons read permission to view this object.





Name Type Description
id string The ID of the object.
room string
nullable
The ID of the room the lesson will be taught in.
period string
nullable
The ID of the period the lesson occurs during.
employee_id string
nullable
The ID of the main class teacher for this lesson.
period_instance_id int
nullable
All lessons happening during the same period have the same period_instance_id. This value can be used to match lessons and attendance as SIMS records a mark for a period instance not a lesson instance.
start_at string When the lesson starts.
end_at string When the lesson ends.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Medical Conditions

GET Medical Conditions

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/medical-conditions"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/medical-conditions/{medical_condition_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A305357470",
            "description": "Asthma",
            "date_received": {
                "date": "2011-10-31 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A674629161",
            "description": "Myalgic Encephalopathy",
            "date_received": {
                "date": "2013-08-22 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/A1329183376/medical_conditions?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "student"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
notes many

Medical Condition Object

Response Body
{
    "id": "A305357470",
    "description": "Asthma",
    "date_received": {
        "date": "2011-10-31 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-06-03 09:17:10.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-06-03 09:17:10.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the medical conditions read permission to view this object.


Name Type Description
id string The ID of the object.
description string Text description of the medical condition.
date_received date
nullable
Date information about the medical condition was provided to the school.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Medical Events

GET Medical Events

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/medical-events"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/medical-events/{medical_event_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A2022114844",
            "description": "General Illness",
            "type": "Illness",
            "date": {
                "date": "2014-09-09 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "follow_up_date": null,
            "created_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A2130434999",
            "description": "Accident",
            "type": "Accident",
            "date": {
                "date": "2014-09-10 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "follow_up_date": null,
            "created_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/A1329183376/medical_events?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "student"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.

Medical Events Object

Response Body
{
    "id": "A15840368",
    "description": "General Illness",
    "type": "Illness",
    "date": {
        "date": "2014-09-15 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "follow_up_date": null,
    "created_at": {
        "date": "2016-06-03 09:17:10.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-06-03 09:17:10.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the medical events read permission to view this object.

Name Type Description
id string The ID of the object.
description string Text description of the medical event.
type string The type of the medical event.
date date
nullable
The date of the medical event.
follow_up_date date
nullable
The follow up date of the medical event.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Medical Notes

GET Medical Notes

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/medical-notes"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/medical-notes/{medical_note_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A2022114844",
            "description": "General Illness",
            "type": "Illness",
            "date": {
                "date": "2014-09-09 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "follow_up_date": null,
            "created_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A2130434999",
            "description": "Accident",
            "type": "Accident",
            "date": {
                "date": "2014-09-10 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "follow_up_date": null,
            "created_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2016-06-03 09:17:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/A1329183376/medical_notes?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "student"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.

Medical Notes Object

Response Body
{
    "id": "A1529934786",
    "mis_id": "5575",
    "title": "Historical Details",
    "note": "Condition received from previous school. Diagnosed in 2007.",
    "created_at": {
        "date": "2016-10-31 17:04:19.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-10-31 17:04:19.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the medical conditions read permission to view this object.


Name Type Description
id string The ID of the object.
mis_id string The note’s ID in the MIS.
title string
nullable
Title of note.
note string
nullable
Main body of note.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Periods

GET Periods

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/periods"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/periods/{period_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "start_time": "09:05:00",
            "end_time": "09:45:00",
            "name": "Mon 1",
            "day": "monday",
            "created_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "start_time": "09:15:00",
            "end_time": "10:15:00",
            "name": "Mon:1",
            "day": "monday",
            "created_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:32:22.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/periods/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "lessons",
            "lessons.room",
            "lessons.class",
            "lessons.class.subject"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
lessons many
lessons.room many > one
lessons.class many > one
lessons.class.subject many > one > one

Period Object

Response Body
{
    "id": "A1161584171",
    "start_time": "09:15:00",
    "end_time": "10:15:00",
    "name": "Mon:1",
    "day": "monday",
    "created_at": {
        "date": "2015-10-29 10:32:22.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 10:32:22.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the lessons read permission to view this object.


Name Type Description
id string The ID of the object.
start_time string The time the period starts.
end_time string The time the period ends.
name string The period’s name.
day string
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Photos

GET Photos

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/photos"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/photos/{photo_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1376464588",
            "content": "base64 encoded string",
            "person_id": "A2032141745",
            "person_mis_id": "1",
            "person_type": "STUDENT",
            "created_at": {
                "date": "2015-10-29 14:59:09.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:59:09.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A681203527",
            "content": "base64 encoded string",
            "person_id": "A2073136658",
            "person_mis_id": "2",
            "person_type": "EMPLOYEE",
            "created_at": {
                "date": "2015-10-29 14:59:15.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 14:59:15.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/photos/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": []
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.

Photo Object

Response Body
{
    "id": "A681203527",
    "content": "base64 encoded string",
    "person_id": "A2073136658",
    "person_mis_id": "1",
    "person_type": "STUDENT",
    "created_at": {
        "date": "2015-10-29 14:59:15.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 14:59:15.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the photo read permission to view this object.


Name Type Description
id string The ID of the object.
content string Base 64 encoded image.
person_id string student / contact / employee id.
person_mis_id string student / contact / employee mis id.
Only present when accessing object through photos endpoint.
person_type string
  • EMPLOYEE
  • STUDENT
  • CONTACT
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Rooms

GET Rooms

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/rooms"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/rooms/{room_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1329183376",
            "code": "A1",
            "name": "Art Room 1",
            "created_at": {
                "date": "2015-10-29 10:27:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:27:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1161584171",
            "code": "A2",
            "name": "Art Room 2",
            "created_at": {
                "date": "2015-10-29 10:27:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:27:44.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/rooms/?per_page=2&page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "lessons",
            "lessons.class",
            "lessons.class.subject",
            "lessons.period"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.

Room Object

Response Body
{
    "id": "A1329183376",
    "code": "A1",
    "name": "Art Room 1",
    "created_at": {
        "date": "2015-10-29 10:27:44.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 10:27:44.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

The subject object contains basic information about an academic subject. You need the room read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The room's ID in the MIS.
code string Short identifier for the room.
name string The room’s name.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Students

Wonde holds records for students that are currently on roll at the school, as well as more limited information for students who will be attending soon (see Students Pre-Admittance below).

GET students

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/students"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/students/{student_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1749191433",
            "upi": "8d444684b7aa79bc97f8594a4aab7ce3",
            "mis_id": "9919",
            "initials": "RB",
            "surname": "Bennett",
            "forename": "Ruth",
            "middle_names": null,
            "legal_surname": "Bennett",
            "legal_forename": "Ruth",
            "gender": "FEMALE",
            "date_of_birth": {
                "date": "2002-09-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "last_modified": {
                "date": "2015-10-22 20:11:20.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1849765024",
            "mis_id": "8404",
            "initials": "TS",
            "surname": "Smith",
            "forename": "Tom",
            "middle_names": null,
            "legal_surname": "Smith",
            "legal_forename": "Tom",
            "gender": "MALE",
            "date_of_birth": {
                "date": "2000-07-24 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2015-10-22 20:11:20.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-22 20:11:20.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/students/?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "classes",
            "classes.subject",
            "education_details",
            "contact_details",
            "attendance_summary",
            "extended_details",
            "contacts",
            "contacts.contact_details",
            "year",
            "year.employees",
            "house",
            "house.employees",
            "registration",
            "registration.employees",
            "groups",
            "groups.employees",
            "permissions",
            behaviours",
            behaviours.employees",
            achievements",
            achievements.employees",
            "photo",
            "sen_needs",
            "medical_conditions",
            "medical_conditions.notes",
            "medical_events",
            "medical_notes",
            "in_care_date_ranges",
            "sen_date_ranges",
            "fsm_date_ranges",
            "user_defined_fields",
            "results",
            "results.aspects"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
aspect_id string If including results, restrict to those for this aspect ID only.
Name Relationship
classes many
classes.employees many
classes.subject many > one
education_details one
contact_details one
attendance_summary one
extended_details one
contacts many
contacts.contact_details many > one
year one (nullable)
year.employees one (nullable) > many
house one (nullable)
house.employees one (nullable) > many
registration one (nullable)
registration.employees one (nullable) > many
boarding one (nullable)
boarding.employees one (nullable) > many
groups many
groups.employees many > many
permissions one
behaviours many
behaviours.employees many > many
achievements many
achievements.employees many > many
photo one
sen_needs many
siblings many
medical_conditions many
medical_conditions.notes many > many
medical_events many
medical_notes many
in_care_date_ranges many
sen_date_ranges many
fsm_date_ranges many
user_defined_fields many
results many
results.aspect many > one
results.resultset many > one

Student Object

Response Body
{
    "id": "A1749191433",
    "upi": "8d444684b7aa79bc97f8594a4aab7ce3",
    "mis_id": "9919",
    "initials": "TS",
    "surname": "Smith",
    "forename": "Tom",
    "middle_names": null,
    "legal_surname": "Smith",
    "legal_forename": "Tom",
    "gender": "MALE",
    "date_of_birth": {
        "date": "2002-09-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-07-14 10:26:12.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-15 09:59:05.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the students read permission to view this object.

Name Type Description
id string The ID of the object.
upi string Unique Person Identifier - This field is the mis_id and school_id combined to create a unique hash.

There are benefits of using the UPI when matching users, for example, when a student is disenrolled the student will be removed from Wonde. If that student is then re-enrolled the Wonde ID will change but the UPI will remain the same.

Make sure to not mistake this field with UPN.
mis_id string The student’s ID in the MIS.
initials string
nullable
The student’s initials.
surname string The student’s last name.
forename string
nullable
The student’s first name.
middle_names nullable
string
The student’s middle names.
legal_surname string
nullable
The student’s legal last name.
legal_forename string
nullable
The student’s legal first name.
gender string The student’s gender.
  • MALE
  • FEMALE
date_of_birth date The student’s date of birth.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Education Details Object

Response Body
{
    "education_details": {
        "data": {
            "admission_number": "004504",
            "upn": "N823432113104",
            "local_upn": "N823432113107",
            "former_upn": "N823432113102",
            "current_nc_year": "6",
            "part_time": false,
            "admission_date": {
                "date": "2014-09-03 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "leaving_date": {
                "date": "2016-09-03 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            }
        }
    }
}

You need the students read permission to view this object.

Name Type Description
admission_number string
nullable
The student admission number is an auto incrementing ID given to students in SIMS.
local_upn string
nullable
Local authority unique pupil number.
upn string
nullable
Unique pupil number.
former_upn string
nullable
Previous unique pupil number.
current_nc_year string
nullable
Current National Curriculum year.
part_time boolean
nullable
Is the student part time.
admission_date date
nullable
Student’s admission date.
leaving_date date
nullable
Student’s leaving date.

Special Education Needs Object

Response Body
{
	"id": "A1329183376",
	"description": "Stan's behaviour is proving to be challenging and he seems to have difficulty in relating to his peers.",
	"rank": 1,
	"category_code": "SEMH",
	"category_description": "Social, Emotional and Mental Health",
	"start_date": {
		"date": "2014-10-20 00:00:00.000000",
		"timezone_type": 3,
		"timezone": "Europe/London"
	},
	"end_date": null,
	"created_at": {
		"date": "2016-06-03 08:57:35.000000",
		"timezone_type": 3,
		"timezone": "UTC"
	},
	"updated_at": {
		"date": "2016-06-03 08:57:35.000000",
		"timezone_type": 3,
		"timezone": "UTC"
	}
}

You need the special education needs read permission to view this object.

Name Type Description
id string The ID of the object.
description string
nullable
Text note describing the special education need.
rank integer
nullable
The ranking of the special need.
category_code string
nullable
The code assigned to the category the special need falls into.
category_description string
nullable
Text note describing the category.
start_date date
nullable
end_date date
nullable
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Siblings Object

Response Body
{
    "siblings": {
        "data": [
            {
                "id": "A1329183376",
                "name": "Ruth Bennett",
                "on_roll": true,
                "student": "A1161584171",
                "data_of_birth": {
                    "date": "2000-07-24 00:00:00.000000",
                    "timezone_type": 3,
                    "timezone": "Europe/London"
                },
                "created_at": {
                    "date": "2017-02-28 21:21:07.000000",
                    "timezone_type": 3,
                    "timezone": "UTC"
                },
                "updated_at": {
                    "date": "2017-02-28 21:21:07.000000",
                    "timezone_type": 3,
                    "timezone": "UTC"
                }
            }
        ]
    }
}

You need the siblings read permission to view this object.

Name Type Description
id string The ID of the object.
name string
nullable
The sibling's name.
on_roll boolean
nullable
Is the sibling on roll at the school.
student string
object
nullable
This is the ID of the student this sibling relates to. This field will be null if the sibling is no longer on role. This field will be replaced by the student object when using the siblings.student include.
date_of_birth date The sibling’s date of birth.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Permissions Object

Response Body
{
    "permissions": {
        "data": {
            "photograph_student": false,
            "internet_access": false,
            "sex_education": false,
            "school_visit": false,
            "data_exchange": false,
            "copyright_permission": false
        }
    }
}

You need the students read permission to view this object.

Name Type Description
photograph_student boolean
nullable
Have the parents given photograph student permission.
internet_access boolean
nullable
Have the parents given internet access permission.
sex_education boolean
nullable
Have the parents given sex education permission.
school_visit boolean
nullable
Have the parents given school visit permission.
data_exchange boolean
nullable
Have the parents given data exchange permission.
copyright_permission boolean
nullable
Have the parents given copyright permission.

Attribute Date Ranges Object

You need the students read permission to view this object.

Response Body
{
    "mis_id": "123",
    "start_date": {
	"date": "2016-09-06 00:00:00.000000",
	"timezone_type": 3,
	"timezone": "UTC"
    },
    "end_date": {
	"date": "2016-07-31 23:59:59.000000",
	"timezone_type": 3,
	"timezone": "UTC"
    },
    "created_at": {
	"date": "2016-03-16 15:23:42.000000",
	"timezone_type": 3,
	"timezone": "UTC"
    },
    "updated_at": {
	"date": "2016-03-16 15:23:42.000000",
	"timezone_type": 3,
	"timezone": "UTC"
    },
}

Name Type Description
mis_id string The group’s ID in the MIS.
start_date datetime Date attribute started.
end_date datetime
nullable
Date attribute ended.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

User Defined Fields Object

Response Body

{
    "id": "A1947362953",
    "key": "Locker Number",
    "value": "37",
    "type": "int",
    "created_at": {
        "date": "2017-06-12 18:14:49.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2017-06-12 18:14:49.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the user defined fields read permission to view this object.

Name Type Description
id string The ID of the object.
key string
The key of the custom field.
value string
nullable
The value of the custom field.
type string
nullable
The data type of the custom field.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Pre-Admission Students

GET Pre-admission Students

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/students-pre-admission"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/students-pre-admission/{student_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1749191433",
            "upi": "8d444684b7aa79bc97f8594a4aab7ce3",
            "mis_id": "9919",
            "initials": "RB",
            "surname": "Bennett",
            "forename": "Ruth",
            "middle_names": null,
            "legal_surname": "Bennett",
            "legal_forename": "Ruth",
            "gender": "FEMALE",
            "date_of_birth": {
                "date": "2002-09-29 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "last_modified": {
                "date": "2015-10-22 20:11:20.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1849765024",
            "mis_id": "8404",
            "initials": "TS",
            "surname": "Smith",
            "forename": "Tom",
            "middle_names": null,
            "legal_surname": "Smith",
            "legal_forename": "Tom",
            "gender": "MALE",
            "date_of_birth": {
                "date": "2000-07-24 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "created_at": {
                "date": "2015-10-22 20:11:20.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-22 20:11:20.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/students/?page=2",
            "previous": null,
            "more": true,
            "per_page": 50,
            "current_page": 1
        },
        "includes": [
            "education_details",
            "contact_details",
            "extended_details",
            "contacts",
            "contacts.contact_details",
            "groups",
            "groups.employees",
            "permissions",
        ]
    }
}

While the information available on pre-admission students is broadly similar to other students, there are a few limitations to be aware of:

Once a pre-admission student becomes a normal student, these limitations will no longer apply. They will be converted to a normal student object automatically (normally at the start of the new school year) and their Wonde ID will not change.

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
Name Relationship
education_details one
contact_details one
extended_details one
contacts many
contacts.contact_details many > one
groups many
groups.employees many > many
permissions one

Pre-admission Student Object

Response Body
{
    "id": "A1749191433",
    "upi": "8d444684b7aa79bc97f8594a4aab7ce3",
    "mis_id": "9919",
    "initials": "TS",
    "surname": "Smith",
    "forename": "Tom",
    "middle_names": null,
    "legal_surname": "Smith",
    "legal_forename": "Tom",
    "gender": "MALE",
    "date_of_birth": {
        "date": "2002-09-29 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "Europe/London"
    },
    "created_at": {
        "date": "2016-07-14 10:26:12.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2016-07-15 09:59:05.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the students pre-admission read permission to view this object.

Name Type Description
id string The ID of the object.
upi string Unique Person Identifier - This field is the mis_id and school_id combined to create a unique hash.

There are benefits of using the UPI when matching users, for example, when a student is disenrolled the student will be removed from Wonde. If that student is then re-enrolled the Wonde ID will change but the UPI will remain the same.

Make sure to not mistake this field with UPN.
mis_id string The student’s ID in the MIS.
initials string
nullable
The student’s initials.
surname string The student’s last name.
forename string
nullable
The student’s first name.
middle_names nullable
string
The student’s middle names.
legal_surname string
nullable
The student’s legal last name.
legal_forename string
nullable
The student’s legal first name.
gender string The student’s gender.
  • MALE
  • FEMALE
date_of_birth date The student’s date of birth.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.

Education Details Object

Response Body
{
    "education_details": {
        "data": {
            "admission_number": "004504",
            "upn": "N823432113104",
            "local_upn": "N823432113107",
            "former_upn": "N823432113102",
            "current_nc_year": "6",
            "part_time": false,
            "admission_date": {
                "date": "2014-09-03 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            },
            "leaving_date": {
                "date": "2016-09-03 00:00:00.000000",
                "timezone_type": 3,
                "timezone": "Europe/London"
            }
        }
    }
}

You need the students pre-admission read permission to view this object.

Name Type Description
admission_number string
nullable
The student admission number is an auto incrementing ID given to students in SIMS.
local_upn string
nullable
Local authority unique pupil number.
upn string
nullable
Unique pupil number.
former_upn string
nullable
Previous unique pupil number.
current_nc_year string
nullable
Current National Curriculum year.
part_time boolean
nullable
Is the student part time.
admission_date date
nullable
Student’s admission date.
leaving_date date
nullable
Student’s leaving date.

Permissions Object

Response Body
{
    "permissions": {
        "data": {
            "photograph_student": false,
            "internet_access": false,
            "sex_education": false,
            "school_visit": false,
            "data_exchange": false,
            "copyright_permission": false
        }
    }
}

You need the students pre-admission read permission to view this object.

Name Type Description
photograph_student boolean
nullable
Have the parents given photograph student permission.
internet_access boolean
nullable
Have the parents given internet access permission.
sex_education boolean
nullable
Have the parents given sex education permission.
school_visit boolean
nullable
Have the parents given school visit permission.
data_exchange boolean
nullable
Have the parents given data exchange permission.
copyright_permission boolean
nullable
Have the parents given copyright permission.

Subjects

GET Subjects

Curl example
curl "https://api.wonde.com/v1.0/schools/{school_id}/subjects"
    -H "Authorization: Bearer API_ACCESS_TOKEN"

    curl "https://api.wonde.com/v1.0/schools/{school_id}/subjects/{subject_id}"
    -H "Authorization: Bearer API_ACCESS_TOKEN"
Response Body
{
    "data": [
        {
            "id": "A1529934786",
            "mis_id": 519,
            "code": "Ar",
            "name": "Art",
            "created_at": {
                "date": "2015-10-29 10:28:15.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:28:15.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        },
        {
            "id": "A1362597725",
            "mis_id": 520,
            "code": "Bi",
            "name": "Biology",
            "created_at": {
                "date": "2015-10-29 10:28:15.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "updated_at": {
                "date": "2015-10-29 10:28:15.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            }
        }
    ],
    "meta": {
        "pagination": {
            "next": "https://api.wonde.com/v1.0/schools/{school_id}/subjects/?page=2",
            "previous": null,
            "more": true,
            "per_page": "2",
            "current_page": 1
        },
        "includes": [
            "classes",
            "classes.lessons",
            "classes.lessons.period",
            "classes.lessons.room"
        ]
    }
}

Url parameters

Name type Description
updated_after date Return rows modified after date.
updated_before date Return rows modified before date.
created_after date Return rows created after date.
created_before date Return rows created before date.
per_page int Amount of rows to return.
include string Comma separated list of objects to include.
subject_code string Return results with the provided subject code.
subject_name string Return results with the provided subject name.
Name Relationship
classes many
classes.lessons many > many
classes.lessons.period many > many > one
classes.lessons.room many > many > one

Subject Object

Response Body
{
    "id": "A1362597725",
    "mis_id": 520,
    "code": "Bi",
    "name": "Biology",
    "created_at": {
        "date": "2015-10-29 10:28:15.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "updated_at": {
        "date": "2015-10-29 10:28:15.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    }
}

You need the subject read permission to view this object.

Name Type Description
id string The ID of the object.
mis_id string The subject ID in the MIS.
code string Short identifier for the subject.
name string The subject’s name.
created_at datetime When the record was added to Wonde.
updated_at datetime When the record was last updated on Wonde.