This version of the Ed-Fi Data Standard is no longer supported. See the Ed-Fi Technology Version Index for a link to the latest version.

 

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

For all Ed-Fi REST API transactional requests and responses, JSON must be the default format. If a media-type header is not provided, “application/json” is presumed. Alternate packet formats may also be supported.

Resource Collections and Individual Resources

For each resource, there are two base forms for the URI: one for a collection of resources and the other for a specific resource in the collection. The collection form for the URI is referred to by the pluralized name of the individual resource. A specific resource is referenced by the collection name, followed by a slash and the resource’s unique identifier. For example:

  • /students refers to a collection of students
  • /students/ffc0…a272 refers to a specific student with an assigned identifier of “ffc0…a272” 

Associated Resources

A collection of resources associated with another resource may be referenced in a single URI, using the pattern associatedResource/{id}/resource. The collection to be returned must be the rightmost resource. For example:

  • /schools/abc7…123f/studentSchoolAssociations/students refers to the collection of Students associated with a specific School

URI Construction and HTTP Verb Usage for Individual Records and Transactions

Individual record and transaction URIs in an Ed-Fi REST API take a convention-based approach to construction and HTTP verb usage.

Table 2. Example of Convention-Based Approach to Construction

ResourcePOSTGETPUT/PATCHDELETE
/students

Adds a new Student

Gets a collection of StudentsErrorError
/students/{id}

Error

Gets an individual StudentUpdates an individual StudentDeletes an individual Student
/students/{id}/section

Error

Gets a collection of Sections associated with a specific StudentErrorError

  • No labels