Summary of Changes for Ed-Fi API Guidelines, Version 4.0

Synopsis

This document describes a set of proposed changes to replace the Ed-Fi API Design & Implementation Guidelines v3.1.

The Ed-Fi API Design & Implementation Guidelines (herein after referred to as the "Guidelines") describe requirements for an Ed-Fi representational state transfer (REST) application programming interface (API). The Guidelines describe the properties to which an API specification and related implementation must adhere in order to be considered aligned to Ed-Fi technology standards. They do not describe a specific implementation technology.

These changes are intended to ensure the establishment of API standards that can be relied upon when building or using an Ed-Fi compliant API, allowing client applications to interoperate with any Ed-Fi API with minimal friction.

The changes are summarized below.

Document Wide Changes

Any references to a specific implementation of an Ed-Fi API or to an Ed-Fi REST API have been replaced with "an Ed-Fi API" or "Ed-Fi compatible API".

The document has been significantly restructured to present a new user experience. The changes of substance are noted separately below. The new outline is:

  • Scope

  • Key Characteristics

  • Requirement Levels

  • API Design Guidelines

    • Resources

    • Discovery API

    • Ed-Fi Descriptors

    • REST API Conventions

      • Uniform Resource Locators (URLs)

      • Data Strictness

      • POST Requests

      • GET Requests

      • PUT Requests

      • DELETE Requests

  • API Implementation Guidelines

    • Handling Authentication and Authorization

    • Handling Non-Repudiation

    • Handling Optimistic Concurrency with ETags

    • Handling Web Cache Validation with ETags

Summary of Modifications

Deleted Sections

Ed-Fi API applications are intended for use by systems, not end users. Therefore the following pages have been removed:

  • User Authorization

  • User Claims

  • User Roles

  • External User Authorization

  • Internal User Authorization

The Bulk Operations section has also been removed, as it was a feature of a particular application, and not a prescribed part of the Ed-Fi API Standards.