Developer API & integrations · API reference
Manage members, access, and subscriptions through the API
Look up members, create and invite them, grant free access or bundle entitlements, generate login links, and manage subscriptions — the same member operations as your admin, callable from scripts and agents.
Reading member data
With the "Read members" scope you can list members, find one by email, check whether they have access, and even ask why a specific member is seeing the paywall — a diagnostic that saves a lot of support back-and-forth. You can also list a member's bundle entitlements and check their payment-sync status.
Creating and updating members
The "Manage members" scope unlocks creating, inviting, updating, and deleting members, plus tagging, generating single-sign-on login links, and managing the communication-block list (individually or in bulk — handy for importing a suppression list from a previous email tool). Member deletion is a proper removal: related history like watch data, comments, and entitlements is cleared too.
Groups have their own scopes, so you can create groups and move members in and out of them for bulk operations.
Granting access
The high-trust "Grant access" scope lets an integration give or remove free access and bundle entitlements for specific members. This is the scope used when an outside checkout or a one-time import needs to unlock content for a buyer — for example, granting a lifetime bundle when a purchase completes in another system.
Subscriptions and billing data
The "Manage subscriptions" scope can create a checkout for a member, and cancel, pause, or resume an existing subscription — these act directly on your connected Stripe account, so grant it carefully. You can also list, create, update, and archive subscription plans, and read invoices with a read-only scope.
For personal outreach, a separate "Email members" scope allows one-to-one emails (or a saved template) with hard caps of 20 recipients per send and 100 per day — and only when you've turned the email feature on. Bulk marketing email is not possible via the API.
Good to know
- Use members.whyPaywall when a member reports being locked out — it explains the exact reason in one call.
- Keep grant and subscription scopes on a dedicated key separate from your content-automation key.
Related articles
Make your first API call
Call any of the 170+ tools with a single pattern: POST to /api/v1/tools/<toolName> on your own domain, a Bearer key in the header, and arguments in a JSON body. Responses always tell you ok or not.
Rate limits, error handling, and the API activity log
Each key gets separate budgets: 120 reads and 30 writes per minute, 50 AI generations per day, and a 100-requests-per-minute safety cap. Every call is recorded in an activity log you can filter in your admin.
Generate content, SEO, and images through the API
Trigger the platform's AI from your own scripts: blog posts, video descriptions, Instagram hooks, SEO metadata for up to 50 videos at once, and branded images. Written content lands in Drafts for your review — nothing publishes itself.
