get /v1/recruit
EC.1 — the recruiting pool: creators on a current board, live or not (EC.14 — live creators come first whatever the sort; `isLive` marks them; `live=live|offline|all` filters, default all) (EC.11: every board the collector reads — Daily, every League class, Hourly, Popular LIVE, Gaming, Shopping), enriched with today's score on their best board (`scoreBoard`: Daily first, then League, then the rest), the 30-day diamonds (`diamonds30d`: an estimate from TikTok's own board numbers and the gifts we observed, an upper bound, the days with a TikTok number, the real window and an under | check | over signal against the ceiling), followers/verified, and the ✦ LIVE Pro badge, so an agency can find who is worth recruiting. It never computes eligibility (the agency checks that in TikTok's backstage). Identity (handle/nickname/avatar/roomId) masks below the Agency unlock tier; RM.9 — so do the numbers that would find a masked row on a board: rank, scoreToday, the 30-day figures and the followers become ranges (`rankBand` / `scoreBand` / `diamonds30d.estimateBand` / `followerBand`, the exact fields null, coins30d null), `movement` and `diamonds30d.daysWithTiktok` are null too (`daysWithTiktokBand`; `newOnly` is ignored), every sort orders masked rows on those ranges (ties in a secret-keyed per-viewer order), and `minScoreToday` / `minFollowers` / `maxCoins30d` (and so the ceiling `status` is read against) snap down to a range start (`stats.ceiling` reports it). `region` is a board bucket (empty = every bucket); `excludeLivePro` (default true) hides current LIVE Pro badge-holders; `maxCoins30d` is the 'not yet graduated' ceiling — it drops rows whose 30-day ESTIMATE is above it and sets the ceiling `diamonds30d.status` is computed against (default 500000); `newOnly` keeps movement=new; `minFollowers`/`minScoreToday` filter; every filter runs over the whole pool before paging; `sort` = score|diamonds30d|coins30d|followers|rank (default score; score = today's diamond score, creators only on point boards after; EC.7's removed liveFirst|windowScore are read as score); `minScoreToday` compares scoreToday whatever the board (diamonds or points); `limit` 1..200; `cursor` pages. The EC.7 not-live read (`includeOffline`, `from`/`to`, `minDaysOnBoard`, `minWindowScore`/`maxWindowScore`) was removed in EC.11 — those parameters are now ignored. Reads collected data only — never reaches TikTok.
rank:read · 200 400 401 403 429