Endpoints
Call these through the okoro proxy at https://okoro.ai/p/google-classroom
| Action | Method | Path | Min scope |
|---|---|---|---|
| List courses | GET | read | |
| Read course | GET | read | |
| Create course | POST | write | |
| Update course | PATCH | update | |
| Delete course | DELETE | delete | |
| List students | GET | read | |
| Add student | POST | write | |
| Remove student | DELETE | delete | |
| List teachers | GET | read | |
| Add teacher | POST | write | |
| Remove teacher | DELETE | delete | |
| List coursework | GET | read | |
| Read coursework | GET | read | |
| Create coursework | POST | write | |
| Update coursework | PATCH | update | |
| Delete coursework | DELETE | delete |
Examples
Every request requires a short-lived operation token scoped to a single action.
1. Get an operation token
Exchange your service token for a short-lived operation token scoped to a single action.
TOKEN=$(curl -sX POST "https://okoro.ai/t/tokens" \
-H "Authorization: Bearer $OKORO_SERVICE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"provider": "google-classroom", "scope": "read", "intent": "describe what you are doing"}' \
| jq -r '.token')2. Call the API
Use the operation token as a Bearer token. The proxy forwards the request to Google Classroom and logs the action.
List courses
curl -X GET "https://okoro.ai/p/google-classroom/courses" \
-H "Authorization: Bearer $TOKEN"Read course
curl -X GET "https://okoro.ai/p/google-classroom/courses/{id}" \
-H "Authorization: Bearer $TOKEN"Create course
curl -X POST "https://okoro.ai/p/google-classroom/courses" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Update course
curl -X PATCH "https://okoro.ai/p/google-classroom/courses/{id}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Delete course
curl -X DELETE "https://okoro.ai/p/google-classroom/courses/{id}" \
-H "Authorization: Bearer $TOKEN"List students
curl -X GET "https://okoro.ai/p/google-classroom/courses/{id}/students" \
-H "Authorization: Bearer $TOKEN"Add student
curl -X POST "https://okoro.ai/p/google-classroom/courses/{id}/students" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Remove student
curl -X DELETE "https://okoro.ai/p/google-classroom/courses/{id}/students/{id}" \
-H "Authorization: Bearer $TOKEN"List teachers
curl -X GET "https://okoro.ai/p/google-classroom/courses/{id}/teachers" \
-H "Authorization: Bearer $TOKEN"Add teacher
curl -X POST "https://okoro.ai/p/google-classroom/courses/{id}/teachers" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Remove teacher
curl -X DELETE "https://okoro.ai/p/google-classroom/courses/{id}/teachers/{id}" \
-H "Authorization: Bearer $TOKEN"List coursework
curl -X GET "https://okoro.ai/p/google-classroom/courses/{id}/courseWork" \
-H "Authorization: Bearer $TOKEN"Read coursework
curl -X GET "https://okoro.ai/p/google-classroom/courses/{id}/courseWork/{id}" \
-H "Authorization: Bearer $TOKEN"Create coursework
curl -X POST "https://okoro.ai/p/google-classroom/courses/{id}/courseWork" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Update coursework
curl -X PATCH "https://okoro.ai/p/google-classroom/courses/{id}/courseWork/{id}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Delete coursework
curl -X DELETE "https://okoro.ai/p/google-classroom/courses/{id}/courseWork/{id}" \
-H "Authorization: Bearer $TOKEN"Scopes
Your service token must be configured with at least the required scope level.
readGET/courses
/courses/*
/courses/*/students
/courses/*/teachers
/courses/*/courseWork
/courses/*/courseWork/*writeGET
POST/courses
/courses/*
/courses/*/students
/courses/*/teachers
/courses/*/courseWork
/courses/*/courseWork/*updateGET
POST
PATCH/courses
/courses/*
/courses/*/students
/courses/*/teachers
/courses/*/courseWork
/courses/*/courseWork/*deleteGET
POST
PATCH
DELETE/courses
/courses/*
/courses/*/students
/courses/*/teachers
/courses/*/courseWork
/courses/*/courseWork/*allGET
POST
PATCH
DELETE/**