Skip to content
dondi edited this page Sep 18, 2012 · 9 revisions

Path or query parameters are delimited by curly braces. Some general rules:

  • Query or other parameters typically apply only to the GET method on a particular resource.
  • POSTs to collection resources must not include an id property. The service assigns the ID and returns the URI of the just-created resource in the response’s Location header.
  • PUTs to individual resources must include an id property, and this id must match the id in the URI’s path.
  • Not all URIs in this page have been implemented; please consult the source code to see where things stand at this moment.

User Resources

  • /users
  • /users/login/**{username}** (accessible only by the user with that username)
  • /users/**{id}** (accessible only by users with the HEADMASTER role)

Student Resources

Student resources are available on two tiers: a standard student object with non-sensitive data, and a student record object with sensitive data such as grades and scores. Only users with certain roles can access data that involve the student record.

General Access

  • /students
  • /students?**{query}**
    • q: Generic query, applying the parameter to assorted fields.
      • If q is of the form text, text, then the query matches starts-with last name, first name.
      • If q consists solely of digits, then the query matches studentId.
      • If q is anything else, then the query matches starts-with last name.
    • active: If present, then filters for active or inactive students.
    • The following parameters are mutually exclusive:
      • class: Class year query, can be freshman, sophomore, junior, or senior.
      • classFrom and classTo: Class year range query (inclusive).
    • transfer: Boolean query, based on whether a student is a transfer.
  • /students/**{id}**
  • /students/**{id}**/attendance
  • /students/**{id}**/grants

Privileged Access

Unauthorized attempts to use these URIs will receive a FORBIDDEN error message.

  • /students/**{id}**/record
  • /students?**{query}**
    • probation: Boolean query, based on whether a student is on probation.
    • cumulativeGpaFrom and cumulativeGpaTo: Numeric query, returning students whose calculated cumulative GPAs match the given range. These parameters can be given individually.
    • gpaFrom, gpaTo, gpaTerm, gpaYear: Numeric query, returning students whose GPA for the given term and year match the given range. When gpaFrom or gpaTo are given, both gpaTerm and gpaYear must also be supplied. When neither gpaFrom nor gpaTo are present, then neither should gpaTerm nor gpaYear because those parameters are meaningless without the range values.

Student Message Resources

  • /students/**{id}**/messages
  • /students/**{id}**/messages/**{mid}**

Event Resources

  • /events
  • /events?**{query}**
  • /events/**{id}**

Grant Resources

  • /grants
  • /grants?**{query}**
  • /grants/**{id}**

Clone this wiki locally