The API forSkool

The Skool API you were promised.

Skool has no official API — so we built one. Connect your Skool account, grab a key, and start building on your community in minutes with a hosted REST API, typed SDK and agent-ready CLI. No scraping, no bots, nothing to maintain.

Free tierVersioned /v1SDK · CLI · MCP soon
curl https://api.myskool.xyz/v1/groups/$GID/posts \
  -H "Authorization: Bearer $SKOOL_API_KEY"

The same call · three ways

Why MySkoolSkool

All the plumbing, already built.

Skool doesn’t offer an API, so building anything on your community normally means weeks of fragile browser automation that breaks with every redesign. MySkool runs that layer for you — you just call an endpoint.

What you never have to build

  • Login that stays logged in✓ hosted
  • Sessions refreshed before they expire✓ hosted
  • Pagination that just works✓ hosted
  • Rate limiting that protects your account✓ hosted
  • CloudFront + api2 handled✓ hosted
  • snake_case ↔ camelCase reconciled✓ hosted

We host the hard part. You call an endpoint.

What you get

Everything you need to build on Skool.

REST API/v1 · JSON

Versioned, documented, rate-limited.

Every Skool action under stable /v1 routes. One Bearer token. A standard JSON envelope with honest pagination and typed error codes.

TypeScript SDK@skoolapi/sdk

Typed calls, auto-pagination.

new SkoolClient({ apiKey }). Typed errors mirror the envelope, and iterate() walks every cursor for you.

AI-agent CLI + MCPskool · mcp

--json on every command.

Built for agents: deterministic fields, stable exit codes — and an MCP server for Claude & Codex, next on the roadmap.

Managed sessionsno browser ops

We keep the login alive.

You authenticate your own Skool account once. We capture the session, refresh it before it expires, and throttle to protect the account.

For AI agents

Connect MySkool to your AI agents.

Give your agent hands inside your Skool community — answer members, summarize the feed, watch for questions. Every response is clean, deterministic JSON an LLM can act on.

REST API · works with any agent todayMCP server · shipping soon
The surface

One resource at a time.

Read endpoints ship first (Phase 1). Writes, members, courses and chat follow.

How it works

Three steps to your first call.

01

Sign up

Create a developer account with a magic link or Google. No credit card to start.

free tier · magic-link / Google

02

Connect your Skool

Link your own authenticated Skool account once. Your password is used a single time for login and never stored — we keep only the session.

your own account · consented

03

Mint a key & call the API

Generate an sk_live_… key and start reading your feed, posts and comments over a documented REST API.

Bearer token · /v1

Code-forward

We already solved the hard parts.

Sub-200ms per call, no headless browser.A direct transport talks to Skool’s own backend with your session — pagination, sessions and edge cases handled once, behind the endpoint.

<200ms direct pathdefensive parsersshape-drift alarm
GET /v1/posts/:id/comments
{
  "data": [
    { "id": "9e1d…", "content": "how do I…",
      "authorName": "Sofía", "likeCount": 3 }
  ],
  "meta": { "pagination": { "hasMore": false } }
}
Pricing

Usage tiers.

Keyed to request volume and rate limits. Custom plans for high volume.

Free
$0forever

For dev & testing.

  • 30 req/min
  • 5k req/month
  • 1 connection
  • Community support
Get API key
Scale
$199/mo

For high volume.

  • 600 req/min
  • 1M+ req/month
  • 25 connections
  • Priority support
Talk to us
FAQ

Before you build on it.

Is this against Skool's terms?

MySkool automates your own authenticated Skool account, which you consent to when you connect it. We never touch accounts you don't own. That said, this rides an unofficial surface — read the disclaimer below.

How stable is an unofficial API?

Skool has no public API. We track their internal api2 surface and the Next.js data payloads, with defensive parsers and a 'shape changed' alarm (skool_shape_changed) so you get a clear error instead of silent garbage when Skool drifts.

How long does a session stay alive?

As long as Skool keeps it valid. We re-verify connections on a schedule and flip them to 'expired' before your calls start 401-ing, so you're told to reconnect early.

What are the rate limits?

Per-key limits by tier (Free 30/min, Pro 120/min, Scale 600/min) with standard X-RateLimit-* headers, plus a per-connection throttle that protects your underlying Skool account from bursts.

Ship it

Your Skool community, one API call away.

Connect your account, mint a key, and make your first call — today.