@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Data API
@base https://api.clever.com/v1.2
@version 1.2.0
@auth OAuth2
@endpoints 44
@hint download_for_search
@toc contacts(4), district_admins(2), districts(8), school_admins(3), schools(6), sections(7), students(7), teachers(7)

@group contacts
@endpoint GET /contacts
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)

@endpoint GET /contacts/{id}
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /contacts/{id}/district
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /contacts/{id}/student
@required {id: any}
@returns(200)
@errors {404}

@endgroup

@group district_admins
@endpoint GET /district_admins
@optional {starting_after: any, ending_before: any, show_links: any}
@returns(200)

@endpoint GET /district_admins/{id}
@required {id: any}
@returns(200)
@errors {404}

@endgroup

@group districts
@endpoint GET /districts
@returns(200)

@endpoint GET /districts/{id}
@required {id: any}
@optional {include: any}
@returns(200)
@errors {404}

@endpoint GET /districts/{id}/admins
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /districts/{id}/schools
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endpoint GET /districts/{id}/sections
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endpoint GET /districts/{id}/status
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /districts/{id}/students
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endpoint GET /districts/{id}/teachers
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endgroup

@group school_admins
@endpoint GET /school_admins
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)

@endpoint GET /school_admins/{id}
@required {id: any}
@optional {include: any}
@returns(200)
@errors {404}

@endpoint GET /school_admins/{id}/schools
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endgroup

@group schools
@endpoint GET /schools
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)

@endpoint GET /schools/{id}
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /schools/{id}/district
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /schools/{id}/sections
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endpoint GET /schools/{id}/students
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endpoint GET /schools/{id}/teachers
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)
@errors {404}

@endgroup

@group sections
@endpoint GET /sections
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)

@endpoint GET /sections/{id}
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /sections/{id}/district
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /sections/{id}/school
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /sections/{id}/students
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endpoint GET /sections/{id}/teacher
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /sections/{id}/teachers
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endgroup

@group students
@endpoint GET /students
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)

@endpoint GET /students/{id}
@required {id: any}
@optional {include: any}
@returns(200)
@errors {404}

@endpoint GET /students/{id}/contacts
@required {id: any}
@optional {limit: any}
@returns(200)
@errors {404}

@endpoint GET /students/{id}/district
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /students/{id}/school
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /students/{id}/sections
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endpoint GET /students/{id}/teachers
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endgroup

@group teachers
@endpoint GET /teachers
@optional {limit: any, starting_after: any, ending_before: any, where: any}
@returns(200)

@endpoint GET /teachers/{id}
@required {id: any}
@optional {include: any}
@returns(200)
@errors {404}

@endpoint GET /teachers/{id}/district
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /teachers/{id}/grade_levels
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /teachers/{id}/school
@required {id: any}
@returns(200)
@errors {404}

@endpoint GET /teachers/{id}/sections
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endpoint GET /teachers/{id}/students
@required {id: any}
@optional {limit: any, starting_after: any, ending_before: any}
@returns(200)
@errors {404}

@endgroup

@end
