Arbor API endpoints
Arbor API URLs
Have you read the getting started guide?
Using the [API Reference] you should be able to form a listing URL to any resource type to get a list of available objects. The rules for constructing listing URLs are described below. The return listing will contain the URL of each individual resource which you can then access to get the full representation of that object.
This page will help you understand how Arbor API URLs work and how to read and write data. The examples used here were chosen for readability but please URL encode all GET parameters in your production application!
The REST API allows you to access school data via a HTTP service. Each school has it's own hostname. The API endpoint of your school is made up of the school hostname and the api version. Here are some example API endpoints:
https://eagle-hill-elementary.uk.arbor.sc/rest-v2 https://sunnyville.uk.arbor.sc/rest-v2 https://vale-high.uk.arbor.sc/rest-v2
Resource URLsEach API resource has it's own unique URL. You can access this URL to retrieve a representation of the resource in XML or JSON format. There are two types of resources in the Arbor API. Objects and listings of objects.
A listing resource URL
A listing resource is a list containing the identities and links to objects of the same resource type (e.g. all Students or all Guardians). For example, you can use a listing resource to list all students or a subset of students based on some property filters. The following URL-s are examples of listing resources:
/rest-v2/students /rest-v2/guardians /rest-v2/rooms /rest-v2/student-guardian-relationships?filters.endDate.after=2014-09-10
Listing resource URLs are always made up of the API endpoint and the resource type name.
The resource type name is always:
- 1. Lower case
- 2. Dash-separated
- 3. Plural
For a full list of Resource Types check out the API Reference here.
Listing filters have their own rules but they are basically just get parameters which follow a certain format:
Valid operators are:
- 1. equals
- 2. before
- 3. after
- 4. like
If you want to filter on a property of a nested object you can do this:
filters.[propertyName].[nestedPorpertyName].[operator]=[value] example: filters.person.legalLastName.like="son"
A resource representation URL
Listing URLs send back lists of of objects with a link to each object expressed as a href. These links are resource representation URLs and have the following format:
/api-version/resource-type/resource-id-or-code Examples: /rest-v2/students/12 /rest-v2/guardians/544 /rest-v2/genders/MALE