opensacorg / opensacorg/learning-blocks
Backend | Endpoint Coding
Open
Nobody has claimed this yet.
Documentation
good first issue
help wanted
- Dominant language
- Python
- Stars
- 6
- Forks
- 23
- PR merge metrics
- No merged PRs in 30d
Description
The Current Iteration is in need of endpoints to connect the backend to the front end.
The tasks are as follows:
- Using current_grades.py-scripts use to request data & other.py - basic endpoints method to turn scripts into endpoints as an example make endpoint classes based on the table bellow:
| Endpoint | Example URL |
|---|---|
| /academicSessions/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/academicSessions/{id} |
| /classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/classes |
| /classes/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/classes/{id} |
| /courses | https://demo.aeries.net/aeries/ims/oneroster/v1p1/courses |
| /courses/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/courses/{id} |
| /demographics | https://demo.aeries.net/aeries/ims/oneroster/v1p1/demographics |
| /demographics/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/demographics/{id} |
| /enrollments | https://demo.aeries.net/aeries/ims/oneroster/v1p1/enrollments |
| /enrollments/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/enrollments/{id} |
| /gradingPeriods | https://demo.aeries.net/aeries/ims/oneroster/v1p1/gradingPeriods |
| /gradingPeriods/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/gradingPeriods/{id} |
| /orgs | https://demo.aeries.net/aeries/ims/oneroster/v1p1/orgs |
| /orgs/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/orgs/{id} |
| /schools | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools |
| /schools/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{id} |
| /students | https://demo.aeries.net/aeries/ims/oneroster/v1p1/students |
| /students/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/students/{id} |
| /teachers | https://demo.aeries.net/aeries/ims/oneroster/v1p1/teachers |
| /teachers/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/teachers/{id} |
| /terms | https://demo.aeries.net/aeries/ims/oneroster/v1p1/terms |
| /terms/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/terms/{id} |
| /users | https://demo.aeries.net/aeries/ims/oneroster/v1p1/users |
| /users/{id} | https://demo.aeries.net/aeries/ims/oneroster/v1p1/users/{id} |
| /schools/{school_id}/classes/{class_id}/enrollments | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/classes/{class_id}/enrollments |
| /schools/{school_id}/classes/{class_id}/students | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/classes/{class_id}/students |
| /schools/{school_id}/classes/{class_id}/teachers | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/classes/{class_id}/teachers |
| /schools/{school_id}/enrollments | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/enrollments |
| /schools/{school_id}/students | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/students |
| /schools/{school_id}/teachers | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/teachers |
| /schools/{school_id}/terms | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/terms |
| /terms/{term_id}/classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/terms/{term_id}/classes |
| /courses/{course_id}/classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/courses/{course_id}/classes |
| /students/{student_id}/classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/students/{student_id}/classes |
| /teachers/{teacher_id}/classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/teachers/{teacher_id}/classes |
| /schools/{school_id}/classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/schools/{school_id}/classes |
| /users/{user_id}/classes | https://demo.aeries.net/aeries/ims/oneroster/v1p1/users/{user_id}/classes |
| /classes/{class_id}/students | https://demo.aeries.net/aeries/ims/oneroster/v1p1/classes/{class_id}/students |
| /classes/{class_id}/teachers | https://demo.aeries.net/aeries/ims/oneroster/v1p1/classes/{class_id}/teachers |
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading current_grades.py for the request-data pattern and other.py for the endpoint method pattern. Use the linked OneRoster endpoint list to scope the endpoint classes. Done means implementing the listed collection, detail, and relationship endpoints so they connect the backend to the front end.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100