[API Endpoint Request] Expose classroom and assignment creation and editing endpoints for programmatic automation
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by locating the GH Classroom extension's existing command and API entry points; the issue does not name specific files or tests. Use the proposed classroom and assignment routes as the scope, with completion meaning programmatic creation and editing plus corresponding extension commands for classrooms and assignments.
Written by the indexing model from the issue text.
Description
Every semester we have to manually create the GH classroom and all the assignments/labs within the classroom. We typically have about 6/7 assignments, 13 labs, and a group project.
Doing all of this through the GH classroom website is tedious. I'd love to see GH classroom creation for a given GH org, as well as the assignment creation/editing exposed so we can create everything programatically, and also add these commands to the GH classroom extension.
Proposed endpoint
A POST to /classrooms/create would create a classroom for a given GH organization with
- GH classroom name
A POST to classroom/$clasroom_id would edit an existing classroom
A POST to classroom/$classroom_id/assignment/create would create an assignment with:
- assignment name
- assignment prefix
- source repo url
- due date
- etc
A POST to classroom/$clasroom_id/assignment/$assignment_id would edit an existing assignment
Justification
Help with automation especially when there is a need to create many assignments in a course
- Dominant language
- Go
- Stars
- 126
- Forks
- 21
- PR merge metrics
- No merged PRs in 30d
Contributor guide
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.
More from github/gh-classroom
-
Difficulty 1/5 Under an hour Newbie friendliness 70/100
github/gh-classroom#95 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
github/gh-classroom#21 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
github/gh-classroom#116 · 3 comments ·
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
github/gh-classroom#110 ·
-
Sanitize Team name Open
Difficulty 3/5 1-2 days Newbie friendliness 45/100
github/gh-classroom#109 ·
All issues in github/gh-classroom
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 60/100
github/gh-aw-mcpg#13748 ·
-
agentic-workflows
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
googleapis/librarian#7670 · 2 comments ·