TutorCruncher

TutorCruncher is tutoring business management software for agencies, companies, and independent tutors - handling clients, students, tutors, lesson scheduling, invoicing, and payments. Its documented REST API (base https://app.tutorcruncher.com/api/, token-authenticated) exposes clients, recipients (students), contractors (tutors), agents, services (jobs), appointments (lessons), invoices, payment orders, proforma invoices, ad hoc charges, and reference data, with HTTP webhooks for event notifications. Its "Socket" product is a JavaScript embed for publishing public tutor and lesson listings on a provider's own website - not a WebSocket API.

8 APIs 0 Features
TutoringEducationBusiness ManagementSchedulingInvoicingPaymentsEdTech

APIs

TutorCruncher Clients API

Create, list, retrieve, update, and delete clients - the paying customers (parents or organizations) in a TutorCruncher account. Clients are matched by ID (v2) and can carry rec...

TutorCruncher Recipients (Students) API

Manage recipients - the students who receive tutoring. Create, list, retrieve, update, and delete recipients, who are linked to a paying client and enrolled onto services (jobs)...

TutorCruncher Contractors (Tutors) API

Manage contractors - the tutors delivering lessons. Create, list, retrieve, update, and delete contractors, read their availability, and manage skills, subjects, and qualificati...

TutorCruncher Services (Jobs) API

Manage services (also called jobs) - the tutoring engagements that tie recipients and contractors together with a rate and subject. Create, list, retrieve, update, and delete se...

TutorCruncher Appointments (Lessons) API

Schedule and manage appointments - the individual lessons or sessions delivered under a service. Create, list, retrieve, update, and delete appointments and manage the recipient...

TutorCruncher Invoices API

List, retrieve, and create client invoices and take payment against them. Invoices bill clients for lessons and charges delivered through the platform; the take-payment action c...

TutorCruncher Payments API

Manage the money movement around tutoring - payment orders (contractor payouts), proforma invoices (client credit requests / top-ups) with take-payment, and ad hoc charges and t...

TutorCruncher Webhooks and Action Types API

Discover the event catalog and consume webhooks. List the 150+ action types that can fire, then receive HTTP webhook POSTs (signed with an HMAC-SHA256 Webhook-Signature header, ...

Collections

Pricing Plans

Rate Limits

Tutorcruncher Rate Limits

3 limits

RATE LIMITS

FinOps

Resources

🔗
VulnerabilityDisclosure
VulnerabilityDisclosure
🔗
DomainSecurity
DomainSecurity
🔑
Authentication
Authentication
👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: TutorCruncher API
  version: '2.0'
request:
  auth:
    type: apikey
    apikey:
      key: Authorization
      value: token {{apiKey}}
      in: header
items:
- info:
    name: Clients
    type: folder
  items:
  - info:
      name: List clients.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/clients/
    docs: List clients, paginated 100 per page.
  - info:
      name: Create a client.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/clients/
      body:
        type: json
        data: '{"last_name": "Doe"}'
    docs: Create a client. last_name is required.
  - info:
      name: Retrieve a client.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/clients/:id/
      params:
      - name: id
        value: ''
        type: path
        description: Client ID.
  - info:
      name: Update a client.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/clients/:id/
      params:
      - name: id
        value: ''
        type: path
        description: Client ID.
      body:
        type: json
        data: '{"last_name": "Doe"}'
    docs: In v2, update a client by ID via POST.
  - info:
      name: Delete a client.
      type: http
    http:
      method: DELETE
      url: https://app.tutorcruncher.com/api/clients/:id/
      params:
      - name: id
        value: ''
        type: path
        description: Client ID.
- info:
    name: Recipients
    type: folder
  items:
  - info:
      name: List recipients.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/recipients/
    docs: List recipients (students).
  - info:
      name: Create a recipient.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/recipients/
      body:
        type: json
        data: '{"last_name": "Doe", "client": 1}'
  - info:
      name: Retrieve a recipient.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/recipients/:id/
      params:
      - name: id
        value: ''
        type: path
        description: Recipient ID.
- info:
    name: Contractors
    type: folder
  items:
  - info:
      name: List contractors.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/contractors/
    docs: List contractors (tutors).
  - info:
      name: Create a contractor.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/contractors/
      body:
        type: json
        data: '{"last_name": "Tutor"}'
  - info:
      name: Get contractor availability.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/contractors/:id/availability/
      params:
      - name: id
        value: ''
        type: path
        description: Contractor ID.
  - info:
      name: List public contractors.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/public-contractors/
    docs: Read-only public tutor profiles for website listings.
- info:
    name: Services
    type: folder
  items:
  - info:
      name: List services.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/services/
    docs: List services (jobs).
  - info:
      name: Create a service.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/services/
      body:
        type: json
        data: '{"name": "Maths Tuition"}'
  - info:
      name: Add contractor to service.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/services/:id/add-contractor/
      params:
      - name: id
        value: ''
        type: path
        description: Service ID.
      body:
        type: json
        data: '{"contractor": 1}'
  - info:
      name: Add recipient to service.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/services/:id/add-recipient/
      params:
      - name: id
        value: ''
        type: path
        description: Service ID.
      body:
        type: json
        data: '{"recipient": 1}'
- info:
    name: Appointments
    type: folder
  items:
  - info:
      name: List appointments.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/appointments/
    docs: List appointments (lessons).
  - info:
      name: Create an appointment.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/appointments/
      body:
        type: json
        data: '{"service": 1, "start": "2026-07-10T15:00:00Z", "finish": "2026-07-10T16:00:00Z"}'
  - info:
      name: Retrieve an appointment.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/appointments/:id/
      params:
      - name: id
        value: ''
        type: path
        description: Appointment ID.
- info:
    name: Invoices
    type: folder
  items:
  - info:
      name: List invoices.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/invoices/
  - info:
      name: Take payment for an invoice.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/invoices/:id/take-payment/
      params:
      - name: id
        value: ''
        type: path
        description: Invoice ID.
      body:
        type: json
        data: '{}'
- info:
    name: Payments
    type: folder
  items:
  - info:
      name: List payment orders.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/payment-orders/
    docs: List payment orders (contractor payouts).
  - info:
      name: Take payment for a payment order.
      type: http
    http:
      method: POST
      url: https://app.tutorcruncher.com/api/payment-orders/:id/take-payment/
      params:
      - name: id
        value: ''
        type: path
        description: Payment order ID.
      body:
        type: json
        data: '{}'
  - info:
      name: List proforma invoices.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/proforma-invoices/
  - info:
      name: List ad hoc charges.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/adhoccharges/
  - info:
      name: List ad hoc charge categories.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/ahc-categories/
- info:
    name: Reference & Webhooks
    type: folder
  items:
  - info:
      name: List subjects.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/subjects/
  - info:
      name: List countries.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/countries/
  - info:
      name: List webhook action types.
      type: http
    http:
      method: GET
      url: https://app.tutorcruncher.com/api/action-types/
    docs: Catalog of 150+ action types that can trigger a webhook.