Get started

From zero to a live, automated TikTok room in a few minutes

OFFLINE
Sign in

Setup checklist

1 of 5 done — get your room live in a few minutes

1

Create your account

Sign in with Google or email. Your automations, goals, points and viewers sync to your account so you keep everything across devices.

Sign in
2

Connect your TikTok handle

Open the Connect button in the header and enter your @handle. Auratok creates a private ingest webhook for your account — this is the address your LIVE bridge posts room events to.

Your personal ingest URL appears here once you have connected a handle.

Treat it like a password. Anyone with the URL can send events to your account — rotate it from the Connect dialog if it leaks.

3

Run the LIVE bridge on your computer

TikTok has no public LIVE API, so a small bridge on your machine reads your room and forwards every event to Auratok. You need Node.js 20+ installed.

Get Node.js

Install & run

npm init -y
npm i tiktok-live-connector
node auratok-bridge.mjs

auratok-bridge.mjs

// auratok-bridge.mjs — relays your TikTok LIVE room into Auratok
// 1) npm init -y && npm i tiktok-live-connector
// 2) node auratok-bridge.mjs
import { WebcastPushConnection } from "tiktok-live-connector";

const USERNAME = "yourhandle";              // your TikTok @handle, without @
const INGEST = "https://auratok.com/api/public/ingest/YOUR_TOKEN";

const send = (event, payload) =>
  fetch(INGEST, {
    method: "POST",
    headers: { "content-type": "application/json" },
    body: JSON.stringify({ event, ...payload }),
  }).catch((e) => console.error("ingest failed", e.message));

const tiktok = new WebcastPushConnection(USERNAME);

tiktok.on("chat", (d) => send("chat", { username: d.uniqueId, nickname: d.nickname, comment: d.comment }));
tiktok.on("gift", (d) => {
  if (d.giftType === 1 && !d.repeatEnd) return; // wait for streak to finish
  send("gift", {
    username: d.uniqueId,
    nickname: d.nickname,
    giftName: d.giftName,
    diamondCount: d.diamondCount,
    repeatCount: d.repeatCount,
  });
});
tiktok.on("follow", (d) => send("follow", { username: d.uniqueId, nickname: d.nickname }));
tiktok.on("like", (d) => send("like", { username: d.uniqueId, likeCount: d.likeCount }));
tiktok.on("share", (d) => send("share", { username: d.uniqueId }));
tiktok.on("subscribe", (d) => send("subscribe", { username: d.uniqueId }));
tiktok.on("member", (d) => send("join", { username: d.uniqueId, nickname: d.nickname }));
tiktok.on("roomUser", (d) => send("viewer_count", { viewerCount: d.viewerCount }));

tiktok
  .connect()
  .then((s) => console.log("connected to room", s.roomId))
  .catch((e) => console.error("connect failed", e));

Keep the terminal window open while you are live. When the bridge connects you will see events land in LIVE Control.

4

Send a test event

You do not have to be live to test. Paste this in a terminal and a gift alert should fire instantly in Auratok.

Test with curl

curl -X POST "https://auratok.com/api/public/ingest/YOUR_TOKEN" \
  -H "content-type: application/json" \
  -d '{"event":"gift","username":"testfan","giftName":"Rose","diamondCount":1,"repeatCount":5}'

No terminal? Flip the event source to Simulation in the Connect dialog and use the simulator on the dashboard.

5

Add your overlays to OBS

In OBS: Sources → + → Browser, paste an overlay URL from the Overlays page, set 1920×1080 and enable Shutdown source when not visible off so alerts never miss.

Open overlays
6

Turn on your reactions

Install a ready-made setup from Templates for instant gift alerts, TTS and goals — then fine-tune in Automations, Gift triggers and Chatbot.

Stuck? The delivery log on the Webhooks page shows every event Auratok received and forwarded.

provider: mock · events: 0 samples · latency target <500ms