Platform 2 Guide — This article applies to the new platform. Looking for classic platform docs? Browse the Platform 1 collection.
Why: The Public API allows you to integrate your app with external services, automate workflows, and manage member data seamlessly. This empowers you to enhance your app's functionality and improve the experience for your subscribers.
Navigate: App Station > Settings > Integrations > Public API
Quick Start
Click on Public API in the Integrations section of App Station.
Generate a new
mk_live_token and note the plaintext value.Choose the desired scopes for your token (e.g.,
members:read,subscriptions:write).Create any outbound webhooks you need by selecting events from the picker.
Access the live documentation at
/developersfor further reference.
Overview of the Public API
The Public API provides a RESTful interface that mirrors the actions and webhook events available through the Zapier integration. This means you can perform similar tasks directly using your mk_live_ token without needing to go through Zapier.
Authentication
To use the Public API, you'll need to generate an authentication token:
Generate a token: In the Public API section, click to create a new token. The plaintext value will only be shown once.
Token prefix: Each token begins with
mk_live_.Authorization header: Use the format
Authorization: Bearer mk_live_...when making API calls.
Scopes
When generating your token, you can choose from the following scopes to control what actions the token can perform:
members:readmembers:writesubscriptions:writemarketing_leads:readmarketing_leads:writewebhooks:manage
Tokens are stored securely, and you can revoke or delete them from the same page.
Outbound Webhooks
You can set up outbound webhooks to receive real-time notifications about various events in your app. Here’s the complete list of supported webhook events that you can subscribe to:
Event | When it fires |
| New member signed up |
| Profile fields changed |
| Email changed by member or admin |
| Member deleted |
| Member suspended |
| Member unsuspended |
| Admin paused the member |
| Admin resumed the member |
| User status changed |
| Role of the user changed |
| New Stripe subscription created |
| Recurring invoice paid |
| Subscription cancelled (legacy spelling) |
| Cancel scheduled; access may still be active |
| Subscription ended and access revoked |
| Term-limited subscription reached its end |
| Subscription paused by admin |
| Subscription resumed by admin |
| One-time purchase completed |
| Successful checkout event |
| Access level activated |
| Active access level revoked |
| Time-limited access grant expired |
| New recipe created |
| Recipe updated |
| Recipe published |
| Recipe deleted |
| New meal plan created |
| Meal plan updated |
| Meal plan published |
| Meal plan deleted |
| First member-created recipe |
| First favorite added |
| First comment made |
| First rating given |
| First course enrollment |
| Course completed by a member |
| Streak milestone achieved |
| Points milestone achieved |
| Content completion milestone achieved |
| PDF exported by a member |
| Stalled checkout event |
| New marketing lead submitted |
| Lead status changed |
| Lead permanently removed |
Important Notes
The
subscription.cancelledevent is a legacy spelling; the system emitssubscription.canceledbut aliases it for compatibility.Engagement and growth events require specific triggers to function properly.
Accessing Live Documentation
For detailed information about the API endpoints and how to use them, you can access the live documentation at /developers. This resource provides comprehensive guidance on making API calls and handling responses.
