feat: enhance API and middleware functionality: add public API routes, implement program and course member checks, and improve rate limiting for invite acceptance. Update OpenAPI spec generation to focus on public API endpoints and add new middleware for automation key scopes. Include new documentation for lesson AI features and public API tests.
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
---
|
||||
title: API
|
||||
description: Use the ClassroomIO public API to manage audience members and courses with organization-scoped API keys.
|
||||
---
|
||||
|
||||
import { Callout } from 'fumadocs-ui/components/callout';
|
||||
|
||||
The ClassroomIO public API is available under:
|
||||
|
||||
```text
|
||||
https://api.classroomio.com/public-api/v1
|
||||
```
|
||||
|
||||
Authentication uses organization-scoped bearer tokens created from `Automation -> API` in the ClassroomIO dashboard.
|
||||
|
||||
## Interactive Reference
|
||||
|
||||
- [Open the interactive API reference](/docs/api/reference)
|
||||
|
||||
## Plan Requirement
|
||||
|
||||
<Callout type="warn" title="Paid Access">
|
||||
API key creation is available only on Early Adopter and Enterprise plans.
|
||||
</Callout>
|
||||
|
||||
## Current Surface
|
||||
|
||||
Current public API groups:
|
||||
|
||||
- `audience`
|
||||
- `courses`
|
||||
|
||||
Implemented route families:
|
||||
|
||||
- `GET /public-api/v1/audience`
|
||||
- `POST /public-api/v1/audience`
|
||||
- `POST /public-api/v1/audience/assign-courses`
|
||||
- `GET /public-api/v1/audience/:memberId`
|
||||
- `PUT /public-api/v1/audience/:memberId`
|
||||
- `DELETE /public-api/v1/audience/:memberId`
|
||||
- `GET /public-api/v1/courses`
|
||||
- `GET /public-api/v1/courses/:courseId`
|
||||
- `GET /public-api/v1/courses/:courseId/students`
|
||||
- `GET /public-api/v1/courses/:courseId/export`
|
||||
|
||||
## OpenAPI
|
||||
|
||||
Raw OpenAPI JSON:
|
||||
|
||||
- [Public API OpenAPI JSON](https://api.cdn.clsrio.com/openapi/public-api/openapi-latest.json)
|
||||
- [Interactive API Reference](/docs/api/reference)
|
||||
|
||||
## Authentication Example
|
||||
|
||||
```bash
|
||||
curl https://api.classroomio.com/public-api/v1/audience \
|
||||
-H "Authorization: Bearer <cio_api_key>"
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- API keys are organization-scoped.
|
||||
- Enrollment is handled through `POST /public-api/v1/audience/assign-courses`.
|
||||
- The API documentation will expand as the remaining public API write endpoints are added.
|
||||
@@ -40,7 +40,7 @@ import { t } from '$lib/utils/functions/translations';
|
||||
Once you've updated the English file, you need to update the other files. To do this, run a command. Firstly ensure you're still in the `/apps/dashboard` directory, then execute:
|
||||
|
||||
```zsh title="Terminal"
|
||||
pnpm run script:translate
|
||||
pnpm run translate
|
||||
```
|
||||
|
||||
This command runs a script that updates the other translation files.
|
||||
|
||||
@@ -7,6 +7,8 @@
|
||||
|
||||
"---Core Features---",
|
||||
"course",
|
||||
"programs",
|
||||
"api",
|
||||
"mcp",
|
||||
"tags",
|
||||
"audience",
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
---
|
||||
title: Programs
|
||||
description: Learn when to use Programs in ClassroomIO, the kinds of training they support, and how they work for both admins and learners.
|
||||
---
|
||||
|
||||
import { Callout } from 'fumadocs-ui/components/callout';
|
||||
|
||||
<Callout type="warn" title="Coming Soon">
|
||||
Full customer documentation for Programs is still being prepared. For now, this page is a placeholder and the draft content has been moved into the product PRD.
|
||||
</Callout>
|
||||
Reference in New Issue
Block a user