The ClassQuill API: Build Your Own Tutoring-Business Integrations
SEO meta (set these in the editor’s SEO fields if available) — metaTitle: “ClassQuill API: Build Your Own Tutoring Integrations” metaDescription: “A read-first REST API for your tutoring company’s data — sessions, invoices, payments, students. Authentication, scopes, security and what you can build.”
Does ClassQuill have a public API?
Yes. ClassQuill has a public REST API at https://api.classquill.com, versioned under /v1/. It gives your tutoring business programmatic access to your own data — sessions, tutors, earnings, payments, invoices, students, parents and more — as plain JSON over standard HTTP.
It is read-first: with a single API key your integrations can pull almost any record in your account today, and a set of write endpoints is rolling out behind separate, opt-in permissions. Every request is scoped to your organisation, so a key can only ever see your data.
If you run a tutoring company, your operational history — who taught what, who paid, who owes — is worth more when it can leave the dashboard. The API is how it leaves: cleanly, on your terms, into the tools you already run your business on.
What can the ClassQuill API do today?
The /v1 surface is broad and read-first. Point an integration at it and you can pull the records that actually run a tutoring company, without anyone logging in and exporting a spreadsheet by hand.
| Area | What you can read |
|---|---|
| Sessions | Every session with status, tutor, student, times and duration — filterable by tutor, student, status or date range |
| Tutors & earnings | Tutor profiles, the subjects they teach, availability, and each tutor’s earned-vs-paid-out totals |
| Payments & invoices | Payments, invoices with line items, and per-parent balances (invoiced, paid, outstanding) |
| Students & parents | Rosters, profiles, parent–student links and family balances |
| Payroll inputs | Mileage trips, expense claims, payroll adjustments and completed payouts |
| Teaching data | Lesson plans, homework, files, the question bank, classrooms, student groups and results |
| Owner reporting | An at-a-glance summary — active tutors and students, sessions today, settled this week, outstanding balance and pending approvals |
Lists are paginated with limit and offset (up to 100 records per page), and results come back newest-first where it makes sense. Because it’s a real REST API, the same call works from a Python script, a scheduled job, a spreadsheet add-on, or a no-code tool — anything that can send an HTTP request.
How do you get an API key and authenticate?
API keys are minted inside the app by an org owner or admin — there’s no separate developer signup.
- Log in to ClassQuill as an owner or admin.
- Go to Settings → Developers.
- Click Create new key, name it (e.g. “Payroll export”), and optionally set an expiry date.
- Copy the key immediately — it’s shown once and can’t be retrieved again.
Keys start with ei_live_ and are sent in the Authorization header on every request:
curl https://api.classquill.com/v1/ping \
-H "Authorization: Token token=ei_live_your_key_here"
A valid key returns your organisation’s name — proof the connection works. Behind the scenes, keys are stored only as SHA-256 hashes, so even ClassQuill can’t reproduce your raw key after it’s created. Each key is throttled to 120 requests per minute, and you can rotate a key (swap in a new one with zero downtime) or revoke it instantly if it’s ever exposed.
Is the ClassQuill API read-only?
Not entirely — but it’s read-only by default, and that’s deliberate. Every new key is granted the read scope and nothing else, so the safe path is the default path. If an integration needs to change data, you grant a specific write scope when you create the key — for example payments:write to record a manual payment, tutors:write to update a profile, or payroll:write to add an adjustment. A request to a write endpoint with a read-only key simply returns 403.
The most sensitive writes — the ones that create and complete paid sessions and move money — sit behind their own explicit scope and are still being hardened before general release. That caution is on purpose: it’s better for the API to under-promise on money movement than to let a mis-scoped key double-charge a family. For the overwhelming majority of integrations — accounting, payroll, reporting — read access is all you need, and it’s available now.
How does the API keep one tutoring company’s data private?
This is the question every owner should ask before connecting anything, and it’s built into the design rather than bolted on.
Every endpoint is scoped to the organisation that owns the key. Ask for a session, invoice or student that belongs to a different tutoring company and the API returns a plain 404 Not Found — the same response you’d get for a record that doesn’t exist. That’s intentional: a 403 Forbidden would confirm the record is real, so returning 404 means a key can’t even be used to probe for other companies’ data. Combined with hashed-at-rest keys, per-key rate limits, and instant revoke-and-rotate, the API gives you a clean, auditable boundary around your own account — the kind of control a business handing over its billing history needs.
What can you build on top of the ClassQuill API?
The API is the foundation layer — the thing the more convenient, pre-built integrations will eventually sit on top of. Today it means you don’t have to wait for those to solve a real problem:
- Feed your accounting tool. Pull sessions and invoices and push them into Xero, MYOB or QuickBooks, so the reconciliation your admin does by hand becomes a scheduled job. A native one-click accounting integration is on the roadmap; the API means you can build the version you need now instead of waiting for it.
- Automate payroll. Pull each tutor’s completed sessions for the pay period, calculate what they’re owed, and export straight into your payroll system.
- Build your own dashboards. Put your real session, retention and payment data behind whatever reporting or BI tool your team already lives in.
- Ask questions in plain English. Because the API is a clean, documented surface, you can connect it to assistants like Claude or Cursor using the Model Context Protocol{target=“_blank”} — an open standard for giving those tools read-only access to a data source — and ask things like “which families have unpaid invoices?” without writing code.
A hosted no-code connector (so you can wire ClassQuill into thousands of apps without touching an HTTP request) is in the works too, but it isn’t live yet — and the honest position is that the REST API is what’s shipped and stable today. Everything friendlier is being built on top of it.
Who is the API for, and how do you start?
The API is for tutoring companies that have outgrown manual exports — usually an owner with a developer, a technical operations lead, or an agency partner who can wire two systems together. If that’s you, the fastest path is the API reference and quickstart in the ClassQuill docs{target=“_blank”}: get a key, call /v1/ping, and you’re pulling real data in a few minutes.
If you’re weighing up ClassQuill and the open API is part of the decision, that’s exactly the kind of thing worth a proper look. See what the platform does beyond the API on the features page, check the pricing, or book a demo and bring your integration questions — being able to get your own data out, cleanly, is the difference between software you rent and a system you own.