School Pages - Data for Education
15148
page-template-default,page,page-id-15148,page-child,parent-pageid-15119,ajax_fade,page_not_loaded,,side_area_uncovered_from_content,qode-theme-ver-10.0,wpb-js-composer js-comp-ver-4.12,vc_responsive

School Pages

The content returned by our school API closely matches that on our school page. Viewing a school page can help you understand the context of the information you’ll be parsing. One way our API differs from the front-end is you have more control over exactly what information you retrieve. We recommend that you request the minimum amount of information that will meet your needs in order to ensure a quick response from our servers.

Requests

To retrieve information about a school, send a request to https://api.donorschoose.org/common/json-school.html. Two of the following parameters are required; the others are optional, and can affect the formatting or content of the response you receive.

APIKey (required) Request a unique APIKey. You may also use DONORSCHOOSE for testing purposes. If you don’t have a unique API key, school photos will be omitted to protect school privacy.
school (required) The ID number of the school you want information about.
callback (optional) If you wish to wrap your response in a callback function, include the name here.You should make your callback static, as it will improve caching and in turn performance. (Many AJAX frameworks will make the callback a random string unless otherwise specified so you’ll be overriding that default behavior.)
Also be sure to enable any caching options (eg. set the cache param to True in jQuery) or else some frameworks will append a timestamp to each JSON request to prevent caching.

JSON Details

Note that in all cases, values in the JSON are XML-escaped strings. The descriptions below each example tell you the kind of data being returned so you know how to parse it.

General Info

Example

{
“id”: “1675”,
“name”: “Sedgefield Elementary School”,
“schoolURL”: “https://www.donorschoose.org/school/sedgefield-elementary-school/1675?utm_source=api&utm_medium=feed&utm_content=bodylink&utm_campaign=DONORSCHOOSE”,
“gradeType”: {
“id”: “1”,
“name”: “ELEMENTARY”
},

}

Descriptions

Field Type Description Always Provided?
id  long The school’s ID number  Yes
name  string The name of the school  Yes
schoolURL  string The URL of the school’s page on the front end  Yes
gradeType  object An object containing information about the school’s grade level  Yes
gradeType[id]  long ID of the school’s grade type  Yes
gradeType[name] string Name of the grade type (“NO DATA”, “ELEMENTARY”, “MIDDLE”, “JUNIOR HIGH”, “JNIOR-SENIOR HIGH”, “SENIOR HIGH”, “K THRU 12”, “SPECIAL (UNGRADED)”, “OTHER”, “ELEMENTARY-MIDDLE”)  Yes
povertyLevel string Poverty level refers to the percentage of students at a given school who qualify for free or reduced lunch, which is considered a measure of economic need. Yes
city string City the school is in Yes
zip string Zip code of the school Yes
state string Two letter abbreviation, e.g. CA for California Yes
latitude string latitude of the school Yes
longitude string longitude of the school Yes
zone object Zones usually correspond to states, with a few exceptions – New York City and Chicago have their own Zones, and California is divided into two Zones (Northern and Southern California). Yes
zone[id] long The ID number of the school’s Zone Yes
zone[name] string The name of the school’s Zone Yes
totalProposals integer The number of fundable proposals associated with this school. Yes

Projects

Information about the currently-fundable projects associated with this school.

For more information, see our project listings API.

Supporters

Information about donors who have given to projects at this school.

Parameters

supportersmax (optional) The maximum number of objects to load in the “supporters” field of the response. Default to 0, limit is 50.
supportersindex (optional) Index into the result set of supporters (for pagination). Default is 0.

For more information, see our donor API.

School Angels

Information about donors who have supported projects by at least three different teachers at this school.

Parameters

angelsmax (optional) The maximum number of objects to load in the “angels” field of the response. Defaults to 0, limit is 50.
angelsindex (optional) Index into the result set of school angels (for pagination). Default is 0.

For more information, see our donor API.

Teachers

Information about teachers at this school with active projects.

Parameters

teachersmax (optional) The maximum number of objects to load in the “teachers” field of the response. Defaults to 0, limit is 50.
teachersindex (optional) Index into the result set of teachers (for pagination). Default is 0.

For more information, see our teacher API.