MemberKit
Education & LMSConnect AI agents to MemberKit, a Brazilian membership and online course platform. Agents create or update members, generate passwordless magic links, and read courses, classrooms, and subscriber lists so member access follows every sale.
What This Integration Enables
MemberKit is a Brazilian membership and course platform, and that is a buying reason rather than a footnote. Its vocabulary is Portuguese, its classrooms are turmas, its member records carry CPF and CNPJ alongside the usual contact fields, and its checkout URLs sit on a domain your buyers already recognize. A creator selling infoprodutos into the Brazilian market picked MemberKit for reasons that are about their audience, and the job of this connector is to make that choice free of the operational tax that usually comes with a regional platform: no Zapier tier that does not cover it, no custom script somebody has to maintain.
The connector's shape is unusual and worth reading carefully, because it defines what an agent can and cannot do here. There is exactly one write action. Create or Update Member matches on email, creates the person if they are new, and is also the action that revokes access. Everything else is a read or a link generator. That single write carries three mutually exclusive access modalities, so each call has to choose one: individual courses by classroom id, a subscription by membership level id, or unlimited access to everything. Status controls whether access is live, and Blocked is reserved for permanent bans rather than routine suspension. This is a platform that decided a member's entitlement should be described in one place, in one call, which is clean to reason about and unforgiving if the call is built from a partial picture.
The read surface exists to build that picture. Get Member accepts either a numeric id or an email address and returns the full profile with enrollments and subscriptions attached. List Members takes an SQL-like query filter, so a segment such as active enrollments on a particular course can be pulled directly rather than fetched and filtered in the flow. List Subscribers returns the subscription records with their membership levels, which is the read behind any recurring revenue report. List Courses, Get Course, Get Lesson, List Classrooms and Get Classroom expose the catalog down to lesson content, video metadata and attached files, so an agent can answer a learner's question about where something is without a person opening the admin. Results come back twenty per page, and the API is rate limited to a hundred and twenty requests per minute, so bulk reads belong on a schedule.
Without FlowRunner
With FlowRunner
Use Case Scenarios
Purchase to member area in one motion
A sale settles in Hotmart or Stripe. The agent reads the order, calls Get Member with the buyer email to see whether this person already exists, and maps the product to a classroom id from List Classrooms. Create or Update Member grants the classroom, adding it to any access the buyer already has rather than replacing it. Generate Magic Link produces a passwordless link, and Gmail sends the confirmation with the link in it, so the buyer lands inside the lesson instead of on a password setup form. Orders whose product does not map to a known classroom are held as automation exceptions with the product name attached, because guessing a classroom hands over content nobody bought.
A refund that actually closes the door
A chargeback or refund posts in the payment system. The agent calls Get Member to read exactly what the buyer currently holds, then calls Create or Update Member with an inactive status to revoke the access the reversal covers. The distinction that matters is which lever it takes: Status is the routine control and can be reversed if the payment turns out to have cleared after all, while Blocked is a permanent ban and belongs to abuse cases, not accounting ones. The agent takes the first. The second stays with a person.
A subscription report that stays current on its own
List Subscribers runs on a schedule and pages through the membership records, each carrying the subscribed member and their membership level. The agent writes the result into Google Sheets as a live roster and pushes level changes into RD Station so lifecycle campaigns segment on what someone actually holds today rather than what they bought a year ago. When the count of active subscribers on a level moves by more than the threshold the team set, the flow posts the delta into Slack rather than letting it show up in a monthly review.
Human-in-Loop Highlight
The gate on this connector is the modality switch, and it exists because MemberKit deliberately made one action do three jobs. Create or Update Member has to choose exactly one access modality per request: classroom ids, a membership level id, or unlimited. An upgrade from a single course to a subscription and a downgrade from unlimited to one classroom are therefore the same call with different arguments, and the call describes the member's access rather than adding to it. An agent that reads a lifecycle event as an upgrade, and writes a membership level for a buyer who also owns three individually purchased classrooms, has just described a smaller entitlement than the one that person paid for. Nothing errors. The member simply finds content missing, usually at the moment they go looking for it.
So the agent holds the narrow lever and escalates the wide one. Adding a classroom to a buyer who has classrooms, and setting status inactive on a straightforward refund, are mechanical and it takes them. A call that would change which modality a member is on stops first. It reads the current state with Get Member, lays out both sides, and asks in Slack: "Order 8842 upgrades Ana Ribeiro to the Anual membership level. She currently holds three classrooms bought separately. Write the membership level, which replaces the classroom grants, or leave her on classrooms and add the new one?" That is human-in-the-loop doing the thing dashboards cannot: putting the consequence of a write in front of a person while the write is still a proposal.
Magic links deserve their own discipline for a different reason. Generate Magic Link produces a passwordless credential that signs its holder straight into the member area, valid for twenty-four hours and yielding a session that lasts two weeks. That is a bearer token in the body of an email. Sent to the address on the paid order it is a good experience; sent to an address a support agent typed, or to an old address the buyer changed last month, it is an account handed to a stranger. The rule an agent should run under is simple: a magic link only ever goes to the address the order was paid under, and any mismatch between the order email and the account email becomes a question rather than a send. Administrative accounts cannot be linked into at all, which is the platform drawing the same line.
Agent Capabilities
11 actionsMembers
4- List Members Pages through the members of the area, twenty per page, with an optional SQL-like query filter for segments such as active enrollments on a given course. The read behind cohort exports and lifecycle segmentation.
- Get Member Retrieves one member by numeric id or by email address, returning bio, block status, unlimited access flag, contact metadata including CPF and CNPJ, and their enrollments and subscriptions. The lookup that has to run before any write, because the write describes access rather than adding to it.
- Create or Update Member The single write on this connector. Creates a member or updates an existing one, matched by email, and is also how access is revoked. Choose exactly one access modality per call: classroom ids, a membership level id, or unlimited. Status is the routine control; Blocked is a permanent ban.
- Generate Magic Link Produces a passwordless sign-in link for a member, valid for twenty-four hours and giving a session that lasts two weeks. Treat the result as a credential, not a URL. Administrative accounts are excluded by the platform.
Subscriptions
1- List Subscribers Pages through the subscription records, twenty per page, each with its member and membership level, and optionally filtered by status. The read behind recurring revenue reporting and level-based segmentation.
Catalog
5- List Courses Pages through the courses registered in the area with name, description, position, image, checkout URL and category. The catalog read that maps a product on an order to something grantable.
- Get Course Retrieves one course with its total duration and full section and lesson structure, including each lesson's id, position, slug and title. The step that turns a course id into the lesson ids other reads need.
- Get Lesson Retrieves one lesson with its rich content, video metadata and any attached files. Used to answer a learner's question about where material lives without a person opening the admin.
- List Classrooms Returns every classroom, or turma, with its parent course, whether it is the master classroom, and aggregate stats such as user count and average progress. The source of the classroom ids that Create or Update Member enrolls against.
- Get Classroom Retrieves one classroom with the same identity and aggregate stats. Used when a flow already holds a classroom id and needs its current numbers.
Account
1- Get Account Returns the member area behind the API key, with its id, name, subdomain, custom domain, contact email and public URL. The connection check that confirms which area a key actually points at before anything is written to it.
Frequently Asked Questions
What can FlowRunner do with MemberKit?
FlowRunner agents can run List Members, Get Member, and Create or Update Member in MemberKit, plus 8 more actions.
Does connecting MemberKit to FlowRunner require OAuth?
No. MemberKit connects to FlowRunner with an API key, no OAuth flow required.
Can MemberKit trigger a FlowRunner workflow automatically?
MemberKit doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with MemberKit
$100 in credits. No card required. Connect in minutes.