Quickstart
This is the fastest path to a working Creator Connect demo.
Install
Section titled “Install”npm install boominjsnpx boominjs initinit opens Boomin in the browser, lets you log in or sign up, creates or selects an organization and creator program, ensures a Creator Connect config exists, adds localhost origins, and writes:
VITE_BOOMIN_PUBLIC_KEY=pk_live_...VITE_BOOMIN_PROGRAM_ID=...VITE_BOOMIN_API_BASE=https://api.boomin.ai/v1/connectAdd the SDK
Section titled “Add the SDK”import Boomin from "boominjs";
Boomin.init({ publicKey: import.meta.env.VITE_BOOMIN_PUBLIC_KEY, programId: import.meta.env.VITE_BOOMIN_PROGRAM_ID, apiBase: import.meta.env.VITE_BOOMIN_API_BASE, redirectUri: window.location.origin + window.location.pathname,});Verify a creator by email
Section titled “Verify a creator by email”await Boomin.requestOtp({ name: "Creator Name",});
const creator = await Boomin.verifyOtp({ code: "123456",});
console.log(creator.status); // pendingConnect Instagram
Section titled “Connect Instagram”await Boomin.connectInstagram({ requireCreator: true, referralCode: new URLSearchParams(window.location.search).get("ref"), metadata: { source: "creator_program_page" },});requireCreator: true means the creator must complete OTP first. That gives the brand an email/contact record before Instagram OAuth.
Read status after redirect
Section titled “Read status after redirect”const redirectResult = Boomin.consumeRedirectResult();
if (redirectResult?.sessionId) { const status = await Boomin.getConnectStatus(redirectResult.sessionId); console.log(status.status); // pending_approval, approved, rejected, failed}Smoke from the CLI
Section titled “Smoke from the CLI”npx boominjs --helpnpx boominjs statusnpx boominjs platform smoke --read-onlyUse platform smoke only with a private platform token. Do not put sk_boomin_live_... tokens in browser code.