v1.0 — Initial Release
The first public release of the Chamelingo API.
3 min read
March 2026 — The Chamelingo Public API v1 is now available.
What's Included#
AI Tutor Chat#
POST /chat— Send messages with SSE streaming responsesGET /conversations— List and paginate conversationsGET /conversations/:id— Retrieve conversation with full message historyDELETE /conversations/:id— Delete conversationsGET /usage— Check subscription quota and rate limit status
Flashcard Decks#
- Full CRUD for decks and cards
POST /decks/:id/cards/import— Bulk import up to 500 cardsGET /decks/:id/export— Export decks as JSON or CSVGET /decks/:id/cards/review— Get FSRS due cardsPOST /reviews— Submit spaced repetition ratings (FSRS-5 algorithm)- Card filtering by state, tags, and due dates
Progress & Analytics#
GET /progress/summary— XP, level, streaks, heartsGET /progress/insights— Accuracy, weak areas, struggling wordsGET /progress/vocabulary— Vocabulary overview statsGET /progress/vocabulary/difficult— Paginated difficult wordsGET /progress/vocabulary/trending— Improving and struggling wordsGET /progress/activity— Daily activity data with date range filtering
Curriculum#
GET /curriculum/units— Browse Korean and English course structuresGET /curriculum/units/:id— Unit detail with lessons and grammarGET /curriculum/vocabulary/search— Semantic search powered by pgvector RAGGET /curriculum/vocabulary/due— Vocabulary cards due for review
Exercise Generation#
POST /exercises/generate— AI-generated exercises on any topic- Multiple types: multiple choice, fill-in-the-blank, translation
- Configurable difficulty levels and batch sizes (up to 20)
Pronunciation Scoring#
POST /pronunciation/score— AI-powered pronunciation assessment- Per-word breakdown with confidence scores
- Three sensitivity levels: easy, normal, strict
GET /pronunciation/health— Service availability check
Webhooks#
POST /webhooks— Register HTTPS endpoints for event notifications- Events:
review.due,deck.updated,deck.deleted - HMAC-SHA256 signature verification
POST /webhooks/:id/test— Send test events for development- SSRF protection: private IPs and non-HTTPS URLs blocked
API Key Management#
POST /keys— Create API keys with customizable scopes (session auth)GET /keys— List keys with metadataDELETE /keys/:id— Revoke keys (soft delete with audit trail)- Up to 5 active keys per account
- 7 granular scopes: tutor, decks, progress, curriculum, exercises, pronunciation, webhooks
Infrastructure#
- Rate limiting with
X-RateLimit-*headers on every response - Idempotency via
Idempotency-Keyheader (24-hour TTL) - Consistent error format with
retryablefield for safe retry logic - OpenAPI 3.1 spec at
GET /openapi.json - Interactive docs at
GET /docs(Scalar) - snake_case convention on all public API fields