Skip to content

Build on ClassPulse

A scoped REST API and signed webhooks for every studio — pull your data into custom dashboards, sync other systems, or automate your front desk.

API keys

Create API keys in your studio's settings under the Developer section. Each key is scoped — you grant it only the permissions it needs, per resource:

classes:readstudents:readfamilies:readfamilies:writeenrollments:read

Keys are bearer tokens with the cp_live_ prefix. The full key is shown exactly once at creation — only a hash is stored, so keep it somewhere safe. You can revoke a key at any time from the same settings page.

REST API v1

Every endpoint is scoped to your studio by its slug. Responses are JSON.

GET/api/v1/{studioSlug}/classesList your studio's classes and schedules
GET/api/v1/{studioSlug}/studentsList students
GET/api/v1/{studioSlug}/familiesList families
POST/api/v1/{studioSlug}/familiesCreate a family
GET/api/v1/{studioSlug}/enrollmentsList enrollments

Authenticate with your key as a bearer token:

curl https://classpulse.pro/api/v1/your-studio/classes \
  -H "Authorization: Bearer cp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Signed webhooks

Subscribe an endpoint to studio events like payment.succeeded, enrollment.created, and family.created. Every delivery is signed with HMAC-SHA256 via the X-ClassPulse-Signature header — the timestamp is folded into the signed payload so captured requests can't be replayed.

Each endpoint gets a delivery log so you can see exactly what was sent and when, and failed deliveries are retried automatically.

Availability

API access is included on the Pro plan.

Full API reference docs are in progress — email hello@classpulse.pro for early access.

Start building

Spin up a studio on the free plan, upgrade to Pro when you're ready for API access

Start Free