{"en":{"common":{"languageSwitcher":"Language","languagePicker":{"open":"Change language","close":"Close"},"heroSection":{"defaults":{"title":"TikTok Live","titleHighlight":"API","subtitle":"Build your custom TikTok Live Overlays for OBS, TikTok Live Studio, Gifts, Chat, Battles. Everything you need to build on TikTok Live."},"install":{"copy":"Copy","copied":"Copied!"},"recruit":{"new":"NEW","label":"Recruit","sub":"Find New Creators"},"cta":{"dashboard":"Dashboard","getApiKey":"Get API Key","manageApi":"Manage your API","getKeySub":"Get an API key","docs":"Docs","forDevelopers":"for Developers"},"mobileNav":{"tagsAria":"Supported languages","guides":"Guides","leaderboards":"Leaderboards","gamingRanks":"Gaming Ranks","gifterIntel":"Gifter Intel","agency":"Agency","pricing":"Pricing","discordBot":"Discord bot"},"stats":{"latency":"Latency","free":"Free","sandboxTier":"Sandbox Tier"},"channels":{"aria":"Live channels","openProfile":"Open profile of {name}"}},"earningsHeatmap":{"days":{"mon":"Mon","tue":"Tue","wed":"Wed","thu":"Thu","fri":"Fri","sat":"Sat","sun":"Sun"},"hourAm":"{h}a","hourPm":"{h}p","legendLow":"Dead","legendHigh":"Peak","peakValue":"{value} diamonds at busiest slot","cellEmpty":"{day} {hour} - no activity","cellValue":"{day} {hour} - {value} diamonds ({pct}% of peak)"},"revealGate":{"label":"Log in to reveal the numbers","sub":"Free account - unlocks every figure on the page instantly.","google":"Continue with Google","note":"Takes 5 seconds. No card."},"regionPicker":{"global":"Global"},"rankBoardTabs":{"ariaLabel":"Leaderboard boards","daily":"Daily","popular":"Popular","gaming":"Gaming","teams":"Teams","shopping":"Shopping"},"globalUpgradeNote":{"withFeature":"{feature} is part of {plan}. Your {starterPlan} plan does not include it.","generic":"This is part of {plan}. Your {starterPlan} plan does not include it.","cta":"Upgrade to {plan}"},"massCopyButton":{"label":"Copy","lockedTitle":"Agency tier only - upgrade to copy all usernames","title":"Up to {max} usernames, one per line. Paste into TikTok backstage eligibility check.","copied":"Copied!","agencyTag":"AGENCY"},"searchBar":{"placeholder":"Search creators and gifters...","clear":"Clear search","tagLive":"LIVE","tagCreator":"Creator","tagGifter":"Gifter","noResults":"No results for \"{query}\"","addToWatchList":"Add {handle} to Watch List","fetching":"Fetching TikTok profile...","close":"Close","confirmPrompt":"Is this the profile you want to add to the watchlist?","no":"No","adding":"Adding...","yesAdd":"Yes, add","errors":{"invalidHandle":"Invalid TikTok handle","notFound":"Could not find this TikTok profile.","addFailed":"Failed to add. Try again."}},"giftGalleryApiCta":{"eyebrow":"Gift gallery API","heading":"Embed the gift gallery via API","headingGift":"Embed {name} + the full gift gallery via API","sub":"One request returns the full TikTok LIVE gift catalog - every name, diamond cost, and icon URL. Drop it straight into your own app.","badgeTitle":"Full live catalog requires Pro tier or above","badge":"PRO+","tabsLabel":"Gift gallery code examples","copied":"Copied","copy":"Copy","copyCode":"Copy code","docsCta":"View API docs","hint":"Full live catalog needs Pro+ - {link}","hintLink":"see plans"},"eventExplorer":{"listLabel":"WebSocket event types","copyPayload":"Copy payload","copy":"Copy","copied":"Copied"},"copyCodeButton":{"label":"Copy code","htmlLabel":"HTML / Vanilla JS","llmLabel":"LLM prompt","nodeSub":"One file. Node 22+ only.","pythonSub":"Stdlib + websockets.","htmlSub":"Open in any browser. No build.","llmSub":"Paste into ChatGPT / Claude.","toastMain":"Code Copied to Clipboard","toastSub":"Paste and Run"}},"popularLive":{"seo":{"title":"Popular LIVE - tik.tools","description":"TikTok's real-time Popular LIVE board per region - the creators being featured in search right now. Agency-tier intel."},"hero":{"title":"{accent} LIVE","titleAccent":"Popular","sub":"TikTok's real-time top creators per region - the ones getting featured in search right now. Refreshed continuously."},"loading":"Loading Popular LIVE...","empty":"No Popular LIVE board cached for this region yet - building. Check back in a minute.","count":"{count} creators","copyAll":"Copy all","liveBadge":"LIVE","diamonds":"diamonds","upgrade":{"feature":"The full Popular LIVE board","badge":"AGENCY TIER EXCLUSIVE","text":"The full Popular LIVE board - every region, live creators included - is exclusive to Agency.","cta":"Unlock"},"updated":"Updated {when}.","relative":{"minutes":"{n} min ago","hours":"{n}h ago"}},"api":{"seo":{"title":"TikTok LIVE API - Developer Guide","description":"There is no official TikTok LIVE API. Connect to any live stream via WebSocket using TikTool - connection upkeep and authentication handled for you. Node.js & Python SDKs. Free sandbox.","ogTitle":"TikTok LIVE API - Complete Developer Guide","ogDescription":"Connect to TikTok LIVE streams in 3 lines of code. Managed API with signature server included. Real-time chat, gifts, viewers.","twitterTitle":"TikTok LIVE API - Complete Developer Guide","twitterDescription":"Connect to TikTok LIVE streams in 3 lines of code. Managed API with signature server included.","keywords":"tiktok live api, tiktok api, tiktok live data, tiktok websocket, tiktok live chat api, tiktok gifts api, tiktok stream api, tiktok live assistant, tiktok live connector alternative, tiktok live api free, tiktok live api nodejs, tiktok live api python, tiktok live overlay api, tiktok live analytics, eulerstream alternative, tikfinity alternative, tiktok live api vs eulerstream, tiktok battle api, tiktok live sdk, tiktok chat api, tiktok live stream data"},"hero":{"badge":"Complete Guide","title":"TikTok LIVE","titleHighlight":"API","subtitle":"There is no official TikTok LIVE API. TikTool is a managed alternative - connect to any live stream and receive real-time chat, gifts, viewers via WebSocket. Connection upkeep and authentication handled for you. No reverse engineering needed."},"toc":{"heading":"Table of Contents","whatIs":"What Is the TikTok LIVE API?","howItWorks":"How Does the TikTok LIVE API Work?","quickstartNode":"Quick Start - Node.js","quickstartPython":"Quick Start - Python","quickstartWs":"Quick Start - Raw WebSocket","events":"What Data Can I Get from TikTok Live Streams?","useCases":"What Can I Build with the TikTok LIVE API?","comparison":"How Does TikTool Compare to Alternatives?","pricing":"How Much Does the TikTok LIVE API Cost?","faq":"Frequently Asked Questions"},"whatIs":{"heading":"What Is the TikTok LIVE API?","p1":"TikTok does not offer a public API for live stream data like chat, gifts, or viewer counts. The TikTok Business API only covers ads and shop analytics. To access real-time LIVE data, developers use third-party APIs.","p2":"The open-source libraries {connector} (Node.js) and {tiktokLive} (Python) are MIT-licensed and free to use. They delegate TikTok signing to a backend; one of the historical defaults is a paid signing service built by the same team that maintains those libraries.","p3":"TikTool is an {independent} with its own signing infrastructure. It's a fully managed API: connection upkeep and authentication are handled on our side. One WebSocket connection delivers {count} event types - chat, gifts, likes, follows, viewers, battles, and more. Official SDKs for {node} and {python}. Sandbox tier, no credit card required.","independent":"independent alternative","ctaKey":"Get Free API Key","ctaDocs":"WebSocket Docs"},"howItWorks":{"heading":"How Does the TikTok LIVE API Work?","intro":"TikTool sits between your application and TikTok's live streaming infrastructure. Here's the architecture:","step1":{"title":"Your App Connects","body":"Your app opens a WebSocket to {url} with a TikTok username and your API key."},"step2":{"title":"TikTool Resolves","body":"TikTool resolves the room ID, handles authentication, solves challenges, and joins the live stream."},"step3":{"title":"Events Flow","body":"Real-time events (chat, gifts, viewers, etc.) stream to your app as clean JSON - parsed, structured, and typed."},"outro":"You never deal with TikTok's protocol directly. When TikTok changes their internal systems (which happens frequently), TikTool adapts - your code keeps working unchanged."},"quickNode":{"heading":"Quick Start - Node.js / TypeScript","install":"Install the official SDK from npm:","connect":"Connect to a live stream and receive events:","typed":"Full TypeScript support - every event type, field, and parameter is fully typed with autocompletion in your IDE. {link}","guideLink":"Read the complete Node.js guide"},"quickPython":{"heading":"Quick Start - Python","install":"Install from PyPI:","connect":"Connect with the SDK and register handlers with decorators:","asyncio":"Prefer asyncio? {connect} runs the same client inside your own event loop. The key can also come from the {envVar} environment variable.","guideLink":"Read the complete Python guide"},"quickWs":{"heading":"Quick Start - Raw WebSocket (Any Language)","intro":"Any language with WebSocket support works - Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift. Just connect to:","format":"Every message is a JSON object with {event} and {data} fields. Clean, structured data - no binary parsing needed. {link}","refLink":"Full WebSocket API reference"},"events":{"heading":"All Event Types","intro":"The TikTok LIVE API streams 18+ real-time events from any live stream:","refLink":"See full event reference with example payloads","list":{"chat":"Chat message from a viewer. Includes user info, comment text, emotes, and badges.","gift":"Virtual gift sent by a viewer. Includes gift name, diamond value, repeat count, and combo status.","like":"A viewer liked the stream. Includes per-event count and total likes.","member":"A viewer joined the live room. Fires when users enter the stream.","follow":"A viewer followed the streamer during the live stream.","share":"A viewer shared the live stream with their friends.","subscribe":"A viewer subscribed to the streamer.","roomUserSeq":"Viewer count update. Current viewer count and top viewers list.","battle":"Battle/LinkMic event. Battle status, teams, scores, and participants.","battleArmies":"Battle armies update with team scores and participant rankings.","roomPin":"A chat message was pinned or starred by the streamer.","caption":"TikTok native auto-captions for the stream, one caption window per frame.","envelope":"Treasure chest or envelope event in the stream.","emote":"Custom emote sent in chat by a viewer.","liveIntro":"Stream intro update - title and description changes.","streamEnd":"The live stream has ended. Includes the reason code.","connected":"Successfully connected to the TikTok live stream.","error":"Connection error occurred. Includes error details."}},"useCases":{"heading":"What Can You Build?","moreLink":"See more use cases","chatAssistants":{"title":"Chat Assistants","desc":"Build automated chat assistants that respond to viewer messages, commands, and gifts in real-time."},"analytics":{"title":"Analytics","desc":"Track viewer counts, engagement rates, gift revenue, and chat activity across streams."},"games":{"title":"Interactive Games","desc":"Let viewers control game elements with gifts, chat commands, and likes."},"overlays":{"title":"Stream Overlays","desc":"Create OBS/Streamlabs overlays showing chat, gift alerts, and viewer stats."},"scouting":{"title":"Creator Scouting","desc":"Follow creator rankings, top gifters, and league standings to find and grow talent."},"mobile":{"title":"Mobile Apps","desc":"Build mobile apps that monitor and interact with TikTok LIVE streams."}},"compare":{"heading":"TikTool vs Euler Stream vs tiktok-live-connector","intro":"The open-source {connector} (Node.js) and {tiktokLive} (Python) libraries are maintained by the same team that runs Euler Stream. Together they form a well-supported ecosystem with MIT-licensed clients and a managed signing backend. TikTool is an independent managed alternative with its own signing infrastructure and a different feature focus.","feature":"Feature","rows":{"managed":"Managed service","nodeSdk":"Node.js SDK","pythonSdk":"Python SDK","agencyIntel":"Agency intel (leaderboards, leagues)","gifterIntel":"Gifter intel (LTV, archetypes)","liveLeaderboards":"Live leaderboards","battleHistory":"Battle history + timeline","leagueRankings":"League rankings","alerts":"Real-time alerts","sniperGap":"Sniper Gap (live battle tracker)","agencyCrm":"Agency CRM + watchlists","profilePages":"Public profile pages (creator + gifter)","freeTier":"Free tier","websocketApi":"WebSocket API","captcha":"CAPTCHA handling"},"cells":{"selfHosted":"Self-hosted client","managed":"Managed","official":"Official","viaTikTokLive":"via TikTokLive","realTime":"Real-time","perMatch":"Per-match","indexed":"Indexed","reqPerDay":"{n} req/day","mitLicensed":"MIT-licensed","anyLanguage":"Any language","pythonOnly":"Python only","nodeOnly":"Node.js only","builtIn":"Built-in","viaSigning":"Via signing backend"}},"pricing":{"heading":"Pricing & Free Tier","intro":"Start building with the TikTok LIVE API for free. No credit card required.","tier":"Tier","price":"Price","concurrent":"{n} concurrent","concurrentDaily":"{n} concurrent ({daily}/24h)","plusFirehose":"{n} + Firehose","perDay":"{n}/day","perWeek":"{price}/week","sandboxTier":"Sandbox Tier","viewPlans":"View Plans","startFree":"Start Free"},"faq":{"heading":"Frequently Asked Questions","items":{"publicApi":{"q":"Is there a public API for live stream data?","a":"There is no first-party public API specifically for live stream events. TikTool is an independent, third-party managed API service that gives developers real-time access to chat, gifts, viewers, battles, and more. TikTool is not affiliated with or endorsed by any streaming platform."},"free":{"q":"Is the TikTok LIVE API free?","a":"For evaluation, yes. TikTool offers a free 7-day Sandbox evaluation with 3 concurrent WebSocket connections and 5,000 REST API requests per day. No credit card required. Paid plans start at {price}/week (Basic) for 10,000 requests/day and 20 concurrent connections."},"languages":{"q":"What programming languages does the TikTok LIVE API support?","a":"TikTool works with any language. Official SDKs are available for Node.js (npm: {'@'}tiktool/live) and Python (pip: tiktok-live-api). The raw WebSocket API at wss://api.tik.tools works with Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift, and any language with WebSocket support."},"difference":{"q":"How is TikTool different from open-source live stream libraries?","a":"Open-source libraries require you to maintain connection infrastructure and break when the platform updates. TikTool is a managed API service - we handle all maintenance, challenge solving, and room authentication server-side. Your integration stays stable and production-ready."},"data":{"q":"What data can I get from TikTok LIVE streams?","a":"Over 90 event types: chat messages, virtual gifts (with diamond values), likes, follows, shares, viewer counts, battle scores, pinned messages, stream status, and more."},"latency":{"q":"What is the latency?","a":"Sub-50 milliseconds. TikTool delivers events within 50ms of them occurring on TikTok. The managed WebSocket connection is optimized for low-latency real-time data delivery."},"chatAssistant":{"q":"Can I build a TikTok LIVE chat assistant?","a":"Yes. TikTool's real-time chat events include full user info, message text, emotes, and badges. Many developers build interactive chat assistants, moderation tools, command systems, and automated gift responses with TikTool."},"streams":{"q":"How many streams can I monitor simultaneously?","a":"Sandbox: 3 connections. Pro ({proPrice}/wk): 50. Ultra ({ultraPrice}/wk): 250. Agency ({agencyPrice}/wk): 500 + Live Gifter Firehose WS. Higher volumes are available on request."},"euler":{"q":"How does TikTool compare to Euler Stream?","a":"TikTool and Euler Stream are independent managed TikTok LIVE services with different feature focuses. Euler Stream is the signing backend used by the open-source tiktok-live-connector (Node.js) and TikTokLive (Python) libraries, maintained by the same team. TikTool runs its own independent signing infrastructure and adds features Euler does not currently offer, such as an agency intel layer. Both providers offer free tiers and paid plans; compare current pricing and quotas directly on each site."},"tikfinity":{"q":"Is TikTool better than TikFinity for developers?","a":"TikFinity is a streaming tool for overlays and alerts - great for non-technical TikTok creators. TikTool is a developer API with WebSocket endpoints, SDKs, and REST APIs for building custom applications. If you need to build a custom chat assistant, analytics dashboard, or game integration, TikTool is the right choice. If you just want pre-built overlays without writing code, TikFinity may suit your needs."},"analytics":{"q":"Can I use TikTok LIVE API for stream analytics?","a":"Yes. TikTool provides real-time viewer counts, engagement rates, gift revenue tracking, chat activity metrics, and battle scores. Many developers use our API to build custom analytics dashboards for streamers, agencies, and talent managers."},"obs":{"q":"Does the TikTok LIVE API work with OBS and Streamlabs?","a":"Yes. You can use TikTool's WebSocket API to build custom browser-source overlays for OBS, Streamlabs, and TikTok Live Studio. Display real-time chat, gift alerts, viewer counts, and battle scores directly on your stream."}}},"next":{"getStarted":"Get Started","getStartedSub":"Free API key in 30 seconds","wsRef":"WebSocket Reference","wsRefSub":"Full event docs"},"schema":{"article":{"headline":"TikTok LIVE API - The Complete Developer Guide (2026)","description":"Complete guide to the TikTok LIVE API. Real-time WebSocket access to chat messages, gifts, viewer counts, battles. Node.js, Python, and any language. Free tier available."},"app":{"name":"TikTok LIVE API","description":"Real-time TikTok LIVE API for developers. WebSocket access to chat, gifts, viewers, battles. Node.js and Python SDKs.","offer":"Sandbox tier with 3 concurrent WebSocket connections and 5,000 REST requests per day"},"faq":{"publicApi":{"a":"There is no first-party public API specifically for live stream events. TikTool is an independent, third-party managed API that gives developers real-time access to chat, gifts, viewers, and more. TikTool is not affiliated with or endorsed by any streaming platform."},"free":{"a":"For evaluation, yes. TikTool offers a free 7-day Sandbox evaluation with 3 concurrent WebSocket connections and 5,000 REST API requests per day. No credit card required. Paid plans start at {price}/week (Basic) for production use with 10,000 daily requests and 20 concurrent connections."},"languages":{"a":"TikTool provides official SDKs for Node.js (npm: {'@'}tiktool/live) and Python (pip: tiktok-live-api). The raw WebSocket API works with any language: Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift, and more."},"difference":{"q":"How is TikTool different from other live stream libraries?","a":"Open-source libraries require you to maintain your own connection infrastructure and frequently break when the platform updates. TikTool is a managed API service - we handle connection upkeep and authentication server-side. Your code stays stable."},"data":{"a":"Chat messages, virtual gifts (with diamond values), likes, follows, shares, viewer counts, battle scores, pinned messages, stream status, and 90+ event types in total."},"latency":{"q":"What is the latency of the TikTok LIVE API?","a":"TikTool delivers events within 50 milliseconds of them occurring on TikTok. The managed WebSocket connection is optimized for low-latency real-time data delivery."},"chatAssistant":{"q":"Can I use TikTok LIVE API for a chat assistant?","a":"Yes. TikTool's real-time chat events include full user info, message text, emotes, and badges. Many developers use it to build interactive chat assistants, moderation tools, and automated responses for TikTok LIVE streams."},"streams":{"a":"Sandbox (free): 3 connections. Pro: 50. Ultra: 250. Agency: 500 + Live Gifter Firehose WS. Higher volumes are available on request."},"euler":{"a":"TikTool and Euler Stream are independent managed TikTok LIVE services with different feature focuses. Euler Stream is the signing backend used by the open-source tiktok-live-connector and TikTokLive libraries, maintained by the same team. TikTool runs its own independent signing infrastructure and ships extra features such as an agency intel layer. Both offer free tiers and paid plans - compare current pricing and limits directly on each provider's site."},"tikfinity":{"a":"TikFinity is a streaming tool for overlays and alerts - great for non-technical streamers. TikTool is a developer API with WebSocket endpoints, SDKs, and REST APIs for building custom applications. If you need to build a custom chat assistant, analytics dashboard, or game integration, TikTool is the better choice. If you just want pre-built overlays, TikFinity may suit your needs."},"obs":{"a":"Yes. You can use TikTool's WebSocket API to build custom browser-source overlays for OBS, Streamlabs, and TikTok Live Studio. Display real-time chat, gift alerts, viewer counts, and battle scores. See our overlay guide for implementation details."}},"howTo":{"name":"How to Connect to TikTok LIVE API","description":"Connect to any TikTok live stream and receive real-time data in under 30 seconds.","step1":{"name":"Get a free API key","text":"Sign up at tik.tools and copy your API key. No credit card required."},"step2":{"name":"Install the SDK","text":"Run: {npm} (Node.js) or {pip} (Python)"},"step3":{"name":"Connect and receive events","text":"Create a client with the streamer username and your API key, add event listeners, and call connect()."}}}},"rankings":{"seo":{"title":"TikTok LIVE Rankings by Country - Every Region {'|'} TikTool","description":"TikTok LIVE rankings for {boards} regions and countries: a link to every board of top creators by diamonds and live status, how the resets work, and all {count} league classes.","ogTitle":"TikTok LIVE Rankings by Country"},"hero":{"badge":"Rankings","title":"TikTok LIVE Rankings","titleHighlight":"by Country","subtitle":"Links to every regional and country TikTok LIVE leaderboard, each showing today's top creators by diamonds and who is live, plus the league classes behind them.","updated":"Updated {time}.","refresh":"Boards refresh continuously."},"stats":{"regional":"regional boards","country":"country boards live now","countries":"countries mapped to a board","leagueClasses":"league classes"},"regions":{"title":"Regional leaderboards","lead":"TikTok ranks most markets in regional pools. Each pool has one board of the creators who earned the most diamonds there, reset daily in most regions."},"cardSub":"TikTok LIVE ranking","countryBoards":{"title":"Country leaderboards","lead":"Markets TikTok ranks on their own, outside any pool. A country appears here while its board is live."},"countries":{"title":"Find your country","lead":"Every country links to the board its creators are ranked on. Countries in the same pool share that pool's board."},"how":{"title":"How the boards work","diamonds":{"title":"Ranked by diamonds earned today","body":"Each board lists up to the top 100 creators by the diamonds their LIVE gifts earned since the board last reset, with who is streaming right now."},"resets":{"title":"Daily resets","body":"Most boards reset once a day at the region's own reset hour, shown as a countdown on every board. {hourly} run hourly boards instead."},"leagues":{"title":"Leagues on top","body":"Alongside the daily board, creators compete in leagues split into {count} classes, from A1 at the top to D5."}},"leagues":{"title":"TikTok LIVE league classes","lead":"The full ladder, highest class first. Every region's board links to its league divisions.","group":"Group {group}"},"faq":{"title":"Frequently asked questions","what":{"q":"What are TikTok LIVE rankings?","a":"TikTok publishes a daily or hourly LIVE ranking for each region that orders creators by the diamonds their gifts earned since the last reset. tik.tools tracks up to the top 100 of every board, which creators are live right now, and how each board has moved over recent days."},"coverage":{"q":"Which countries and regions are covered?","a":"{boards} boards right now: {regions} regional pools such as North America, Latin America and the Balkans, plus {countries} countries TikTok ranks on their own. Countries inside a pool share that pool's board."},"updates":{"q":"How often do the rankings update?","a":"Boards refresh continuously while creators are live. Most boards reset once a day at their region's reset hour; {hourly} run hourly boards that reset every hour."},"leagues":{"q":"How do TikTok LIVE leagues work?","a":"Leagues place creators in {count} classes: {ranges}, with {top} the highest. Within a class, creators are grouped into divisions and compete on diamonds over the league window, which is weekly in most regions and daily in {hourly}. Where a creator finishes decides whether they move up or down a class."},"api":{"q":"Can I get this data through an API?","a":"Yes. The same daily boards, league divisions and gifter rankings are available through the tik.tools leaderboard API, with SDKs for Node and Python."}},"next":{"title":"More rankings","global":{"title":"Global leaderboard","sub":"Every region's top creators on one page"},"gifters":{"title":"Top gifters","sub":"The supporters behind the boards"},"gaming":{"title":"Gaming ranks","sub":"Per-game LIVE ladders"},"api":{"title":"Leaderboard API","sub":"The same boards for developers"}},"jsonLd":{"breadcrumbHome":"Home","breadcrumbLeaderboards":"Leaderboards","breadcrumbPage":"Rankings by Country","name":"TikTok LIVE Rankings by Country","itemName":"{region} TikTok LIVE ranking"},"classRange":"{from} to {to}","regionNames":{"MENA":"Middle East & Africa"}},"bestTime":{"seo":{"title":"Best time to go LIVE on TikTok - real-time heatmap (your timezone) {'|'} Tik.Tools","description":"Real-time TikTok LIVE gift-volume heatmap. 28-day rolling window, day-of-week x hour-of-day in your local timezone, aggregated across every region we track. Free tool by Tik.Tools.","ogTitle":"Best time to stream on TikTok LIVE - heatmap (your timezone)","ogDescription":"See which days + hours have the most diamond gifting on TikTok LIVE. Real-time, 28-day rolling, your local timezone."},"hero":{"eyebrow":"REAL-TIME · UPDATED HOURLY · LOCAL STREAM TIME","title":"What's the best time to go {accent}?","titleAccent":"LIVE on TikTok","sub":"Aggregated diamond-gift volume across every TikTok LIVE creator we track, bucketed by day-of-week + hour in {localTime} (a 9pm gift in JP and a 9pm gift in the US both land in the 9pm column). Darker cells = more diamonds gifted at that local hour worldwide. Use it as a baseline for your stream window.","subLocalTime":"each event's own local time"},"gate":{"label":"Log in to see the best hours & days","sub":"Free account - unlocks the peak hour, day and the full heatmap."},"conclusions":{"hour":{"eyebrow":"Best hour of day","meta":"{value} diamonds across 7 days"},"day":{"eyebrow":"Best day of week","meta":"{value} diamonds across 24h"},"slot":{"eyebrow":"Peak slot","meta":"{value} diamonds in this hour alone"}},"days":{"mon":"Monday","tue":"Tuesday","wed":"Wednesday","thu":"Thursday","fri":"Friday","sat":"Saturday","sun":"Sunday"},"hourAm":"{h}am","hourPm":"{h}pm","slotLabel":"{day} {hour}","loading":"Loading 28-day aggregate...","meta":{"window":"Window: last {days} days","bucketed":"Bucketed in each region's local time","updated":"Updated {when}","recently":"recently"},"relative":{"justNow":"just now","minutes":"{n} min ago","hours":"{n}h ago","days":"{n}d ago"},"cta":{"title":"Build with TikTok LIVE data","api":{"eyebrow":"DEVELOPER API","title":"Real-time gifts + chat firehose","sub":"WebSocket + REST. Sandbox tier. Paid plans from {price}/wk."},"leaderboards":{"eyebrow":"LEADERBOARDS","title":"{count} regions, real-time ranks","sub":"Country + league rankings. Unmasked at PRO+ / ULTRA+."},"agency":{"eyebrow":"GLOBAL AGENCY","title":"Scout creators in every region","sub":"CRM + watchlist + Telegram alerts. {price}/wk."}},"explainer":{"title":"How to read this heatmap","p1":"We aggregate every {gift} our infrastructure observes across TikTok LIVE creators in {count} regions. Each event carries the gifter's country, which we use to shift its UTC timestamp into {clock} before bucketing. So a 9pm gift in Japan and a 9pm gift in the US both land in the 9pm column, even though they happened ~14 hours apart in UTC. The heatmap reads directly in \"local stream time\": if you stream at 8pm wherever you are, the 8pm column is the one you care about.","p1Gift":"diamond-valued gift","p1Clock":"that region's local clock","p2":"This is a {global} view of the LIVE economy - your specific niche or region may differ. For your own region-specific window, check the {rankingLink} page and filter by country or pull the {apiLink} hour-by-hour for your target region.","p2Global":"global","p2ApiLink":"Leaderboard Data API"},"faq":{"title":"Frequently asked","bestTime":{"q":"When is the best time to go live on TikTok?","a":"Peak diamond-gifting hours globally cluster between 7pm and midnight local time on Friday + Saturday, with a secondary peak around 9pm Sunday. The heatmap above shows your live 28-day window."},"timezones":{"q":"Does the heatmap account for different streamer timezones?","a":"Yes. Each gift event carries the gifter's country code. We shift the UTC timestamp into that country's standard local time before bucketing, so a 9pm gift in Japan and a 9pm gift in the US both land in the 9pm column. The grid reads as \"local stream time\" everywhere on the planet, not a single viewer's clock."},"fresh":{"q":"How fresh is the data?","a":"28-day rolling window, refreshed regularly."},"niche":{"q":"Does niche matter?","a":"Yes - this is the GLOBAL economy. Gaming streamers, ASMR, music, and dance all have different peak windows. Use this as a baseline; for niche-specific windows, query the Leaderboard Data API filtered by your region."},"official":{"q":"Is this Tik.Tools data official?","a":"It is aggregated from our own LIVE infrastructure that observes the same public WebSocket gift events that any creator backstage tab shows. It is not endorsed by ByteDance."}},"jsonLd":{"bestTimeA":"Peak diamond-gifting hours globally cluster between 7pm and midnight local time on Friday + Saturday, with a secondary peak around 9pm Sunday. The free Tik.Tools heatmap shows the live 28-day rolling window in your local timezone.","calculatedQ":"How is the heatmap calculated?","calculatedA":"Tik.Tools aggregates every diamond-valued TikTok LIVE gift observed by our infrastructure across {count} regions over the rolling last 28 days, then shifts each event into the local time of the gifter's country and buckets it by day-of-week and hour-of-day.","peakQ":"Should I stream during peak hours?","peakA":"Peak hours have the most viewer spending but also the most competition. For new creators, streaming 1-2 hours before peak captures audience-build attention; for established creators, hitting peak directly maximises gift revenue."}},"agencies":{"seo":{"title":"TikTok LIVE Agencies Directory - TikTool","description":"Browse verified TikTok LIVE creator agencies by region, see who is live right now, message agencies privately, or claim a free listing for your own agency."},"hero":{"title":"TikTok LIVE Agencies","new":"NEW","sub":"Find a TikTok LIVE agency to grow with - or list your own for free and claim your creators.","cta":"List your agency - free"},"regions":{"scrollLeft":"Scroll regions left","scrollRight":"Scroll regions right","filter":"Filter by region","all":"All","selected":"{count} selected","clear":"Clear"},"updating":"updating...","card":{"featured":"FEATURED","viewAria":"View {name}","bannerAlt":"{name} banner","logoAlt":"{name} logo","verified":"Verified agency","creators":"{count} creators","liveNow":"{count} live now","viewProfile":"View profile","message":"Message"},"placeholder":{"title":"List your agency","copy":"Claim your creators, get discovered, free verified listing.","foot":"Create your listing"},"jsonLd":{"name":"TikTok LIVE Agencies Directory","description":"Verified TikTok LIVE creator agencies with rosters, live status and private messaging."}},"agencyCatalog":{"index":{"searchPlaceholder":"Search agencies by name","searchLabel":"Search agencies","verifiedTitle":"Verified agencies","loadMore":"Show more ({count} left)","allTitle":"All agencies","allSub":"Every TikTok LIVE agency we track, with its region and a direct apply link. Run one of them? Claim it to get a verified listing.","hubsTitle":"Browse agencies by region"},"card":{"viewAria":"Open the {name} profile","logoAlt":"{name} logo","verified":"Verified agency","followers":"{count} followers","apply":"Apply","viewProfile":"View profile","claim":"Claim agency","bannerSlot":"Your banner here","bannerSlotCta":"Own this agency? Claim it free"},"grid":{"empty":"No agencies match these filters.","gateTitle":"Showing {shown} of {total} agencies","gateSub":"Agency Global unlocks the full directory: every agency, every region, with search across all of them.","gateCta":"Get Agency Global","gateSignIn":"Already a member? Sign in","pagerLabel":"Agency pages","prev":"Previous","next":"Next","pageOf":"Page {page} of {pages}","searchLocked":"Searching every agency by name is part of Agency Global. Showing the first agencies instead."},"profile":{"breadcrumbLabel":"Breadcrumb","breadcrumbDirectory":"Agency directory","onboarded":"On TikTok LIVE since {date}","claimBanner":"Is this your agency? Claim it to add your logo, website and contact details and get a verified badge.","claimBannerCta":"Claim this agency","aboutTitle":"About","noIntro":"{name} has not added a description yet.","servicesTitle":"Services for creators","statsTitle":"At a glance","stats":{"creators":"Creators","agents":"Agents","diamonds":"Monthly diamonds","health":"Health score"},"source":"Details come from public TikTok LIVE agency information. tik.tools is not affiliated with TikTok or this agency.","seoTitle":"{name}: TikTok LIVE agency profile","seoDescription":"{name} is a TikTok LIVE agency. See its services and apply to join.","seoDescriptionRegion":"{name} is a TikTok LIVE agency in {region}. See its services and apply to join.","message":{"button":"Message this agency","title":"Message {name}","nameLabel":"Your name, as the agency will see it","shareEmail":"Share my email ({email}) so the agency can reply to me directly","bodyLabel":"Your message","placeholder":"Introduce yourself: who you are, your TikTok account and what you are looking for.","count":"{count} / {max}","minHint":"At least {min} characters","helper":"Your message is forwarded to the agency by tik.tools. Links are not allowed. If the agency has no published contact yet, we keep it for them until they claim this listing.","send":"Send message","sending":"Sending...","cancel":"Cancel","close":"Close","success":"Message sent. We will forward it to {name}.","error":"The message could not be sent. Try again later."}},"hub":{"title":"TikTok LIVE agencies in {region}","sub":"Verified and listed TikTok LIVE agencies recruiting creators in {region}, with direct apply links.","empty":"No agencies are listed for {region} yet.","seoTitle":"TikTok LIVE agencies in {region}","seoDescription":"Find TikTok LIVE agencies in {region}: verified listings, services for creators and direct apply links."},"services":{"1_on_1_support":"One-on-one support","live_skills_training":"LIVE skills training","manager_live_review":"LIVE reviews with a manager","guaranteed_salary":"Guaranteed salary","live_equipment":"LIVE equipment"},"claim":{"title":"Claim this agency","sub":"Prove you run this agency to manage the listing. Once verified you can add your logo, website and contact details.","inReview":"A claim for this agency is being reviewed by our team.","signIn":"Sign in to claim","success":"Verified. The agency is now linked to your account.","openListing":"Edit your listing","busy":"Someone else is verifying this agency right now. Try again later.","methodsLabel":"Verification method","methods":{"email":"Email code","domain":"Website check","evidence":"Screenshot review"},"domainLabel":"Agency website","domainPlaceholder":"youragency.com","working":"Working...","checking":"Checking...","verify":"Verify","copy":"Copy","copied":"Copied","email":{"help":"We send a code to an address on your agency website domain, such as hello{'@'}youragency.com. Free mailboxes do not count.","label":"Email on that domain","placeholder":"you{'@'}youragency.com","send":"Send code","sent":"We sent a code to {email}. It expires in 30 minutes.","codeLabel":"Code","change":"Use another address"},"domain":{"help":"Publish a token on your website domain. Either option works.","getToken":"Get my token","optionDns":"Option A: DNS TXT record","optionFile":"Option B: file on your website","recordType":"Type","recordName":"Name","recordValue":"Value","or":"or","fileUrl":"URL","fileContent":"Content","check":"Check now","change":"Use another domain"},"evidence":{"help":"Upload a screenshot from TikTok Backstage that shows the agency name. Our team reviews it, usually within two working days.","continue":"Continue with a screenshot"},"errors":{"rateLimited":"Too many attempts. Try again later.","taken":"This agency is already claimed or in review.","hasListing":"Your account already has a published listing. Verify by email or website instead.","otherListing":"Your account already manages another agency in the directory.","expired":"This claim expired. Start again.","badEmail":"Use an email address on your agency website domain.","badDomain":"Enter your own agency website, not a mailbox or social media site.","wrongCode":"That code is not right.","notFound":"We could not find the token yet. DNS changes can take a few minutes.","generic":"Something went wrong. Try again.","hasListingLive":"Your listing is already live. Contact support to link it to this agency."},"successReview":"Proof received. The domain does not match the agency name, so our team reviews the link before it goes live."},"dispute":{"open":"Report ownership","title":"Report the owner of {name}","sub":"Tell us why this account does not run the agency. The owner gets 48 hours to show evidence, and our team reviews the outcome.","reportLabel":"Listing ownership dispute"}},"gifterLevels":{"seo":{"title":"TikTok Gifter Levels - full table (2026 coins, USD, perks) {'|'} Tik.Tools","description":"Every TikTok gifter level from Level 1 to Level 50+ - cumulative coins required, USD cost, diamonds gifted, and badge perks. Free reference table updated for 2026.","ogTitle":"TikTok Gifter Levels - 2026 reference","ogDescription":"Full TikTok gifter-level progression table: coins, USD, diamonds, perks."},"hero":{"eyebrow":"TIKTOK GIFTER RANKS · 2026","title":"TikTok {accent} - full progression table","titleAccent":"Gifter Levels","sub":"Every TikTok gifter level, the cumulative coins required, and the approximate USD cost. Levels persist across creators - they unlock badges (frames + glowing entry effects) that follow the gifter into any LIVE they join."},"lookup":{"label":"Check any gifter's level","placeholder":"Type a TikTok {'@'}handle","hint":"Level, home region and lifetime gifting for any TikTok account.","apiKey":"Get a free API key","leaderboards":"Live gifter leaderboards"},"table":{"scrollHint":"Swipe the table sideways for USD spent and perks","ariaLabel":"TikTok gifter levels table","level":"Level","name":"Name","coins":"Coins to reach","usd":"USD spent","perks":"Perks","levelPill":"L{level}","foot":"USD figures are the official TikTok Recharge prices from tiktok.com/coin (Sep 2025 snapshot). App Store / Play Store purchases typically run 30% more expensive due to platform fees. Coin requirements per level are TikTok's published thresholds for the Gifter Level Program - hitting Level N means the gifter has spent the listed cumulative coin total across every LIVE they have ever gifted in."},"levelNames":{"1":"Newcomer I","2":"Newcomer II","3":"Newcomer III","4":"Newcomer IV","5":"Bronze I","6":"Bronze II","7":"Bronze III","8":"Bronze IV","9":"Silver I","10":"Silver II","11":"Silver III","12":"Silver IV","13":"Gold I","14":"Gold II","15":"Gold III","16":"Gold IV","17":"Platinum I","18":"Platinum II","19":"Platinum III","20":"Platinum IV","21":"Diamond I","22":"Diamond II","23":"Diamond III","24":"Diamond IV","25":"Crown I","26":"Crown II","27":"Crown III","28":"Crown IV","29":"Royal Crown I","30":"Royal Crown II","31":"Royal Crown III","32":"Royal Crown IV","33":"King I","34":"King II","35":"King III","36":"King IV","37":"Emperor I","38":"Emperor II","39":"Emperor III","40":"Emperor IV","41":"Cosmos I","42":"Cosmos II","43":"Cosmos III","44":"Cosmos IV","45":"Universe I","46":"Universe II","47":"Universe III","48":"Universe IV","49":"Legend","50":"Mythic"},"levelPerks":{"1":"Default badge","2":"First level badge","3":"Comment color unlock","4":"Enter effect bronze tier","5":"Bronze badge unlock","6":"Bronze frame","7":"Animated bronze frame","8":"Bronze elite frame","9":"Silver badge unlock","10":"Silver frame + comment glow","11":"Silver animated frame","12":"Silver elite frame","13":"Gold badge unlock","14":"Gold frame + entrance highlight","15":"Gold animated frame","16":"Gold elite frame","17":"Platinum badge unlock","18":"Platinum frame","19":"Platinum animated frame","20":"Platinum elite frame + custom entry FX","21":"Diamond badge unlock","22":"Diamond frame","23":"Diamond animated frame","24":"Diamond elite + top-gifter rail priority","25":"Crown badge unlock","26":"Crown frame","27":"Crown animated frame","28":"Crown elite + premium entry VFX","29":"Royal Crown badge unlock","30":"Royal Crown frame","31":"Royal Crown animated frame","32":"Royal Crown elite frame","33":"King badge unlock","34":"King frame","35":"King entrance animation","36":"King elite frame + cosmic aura","37":"Emperor badge unlock","38":"Emperor frame","39":"Emperor animated frame","40":"Emperor elite frame","41":"Cosmos badge unlock","42":"Cosmos frame","43":"Cosmos animated aura","44":"Cosmos elite aura","45":"Universe badge unlock","46":"Universe frame","47":"Universe animated aura","48":"Universe elite aura","49":"Legend tier - top 0.001% of all gifters","50":"Mythic tier - max public gifter level"},"cta":{"heading":"Track gifters across every creator","rankings":{"eyebrow":"GIFTER RANKINGS","title":"Live whale leaderboards","sub":"{count} regions, daily / weekly / lifetime. Unmasked at PRO+."},"firehose":{"eyebrow":"FIREHOSE WS","title":"Real-time gift firehose","sub":"Every gift, every region. {price}/wk."},"api":{"eyebrow":"DEVELOPER API","title":"Build a gifter dashboard","sub":"Drop-in SDK. WebSocket + REST. From {price}/wk."}},"explainer":{"heading":"How TikTok gifter levels work","p1":"TikTok tracks {coinsSpent} across every LIVE you've ever gifted in. Each threshold unlocks a new {gifterLevel} with a unique badge, a glowing chat color, and an entry effect that fires when you join any creator's stream. Levels are global - they do not reset, and they show up no matter which creator you watch.","p1CoinsSpent":"cumulative coins spent","p1GifterLevel":"gifter level","p2":"At higher tiers (Level 25+), TikTok adds {vip}, custom comment frames, and prioritised placement in the top-gifter rail of every LIVE you enter. Level 36+ unlocks the rare {cosmicAura}; Level 45+ unlocks the {universe} tier; Level 49-50 are the public-ceiling {legend} and {mythic} tiers. Creators see your level attached to every gift you send.","p2Vip":"VIP entrance animations","p2CosmicAura":"cosmic aura","p2Universe":"Universe","p2Legend":"Legend","p2Mythic":"Mythic","faqHeading":"Frequently asked"},"faq":{"howWork":{"q":"How do TikTok gifter levels work?","a":"TikTok tracks cumulative coins spent across every LIVE you have ever gifted in. Each threshold unlocks a gifter level with a badge, glow color, and entry effect that follows you into any creator stream."},"worth":{"q":"How much money is each gifter level worth?","a":"Real TikTok Recharge prices: Level 10 (Silver II) = 530 coins ≈ $5.52. Level 20 (Platinum IV) = 27,800 coins ≈ $289. Level 30 (Royal Crown II) = 637,000 coins ≈ $6,625. Level 40 (Emperor IV) = 8.78M coins ≈ $91K. Level 50 (Mythic) = 97.5M coins ≈ $1.01M."},"reset":{"q":"Do TikTok gifter levels reset or expire?","a":"No. Gifter levels are global and permanent. Once you hit Level 25, you keep that badge forever - including in creators streams you have never watched before."},"highest":{"q":"What is the highest TikTok gifter level?","a":"TikTok publicly shows up to Level 50 (Mythic). Reaching it requires roughly 97.5 million cumulative coins (~$1.01 million USD at official Recharge prices)."},"carry":{"q":"Do gifter levels carry between creators?","a":"Yes - levels are tied to your TikTok account, not the creator. The same badge shows up whether you join a small streamer or a 50K-viewer Match."},"creatorSees":{"q":"Can a creator see who is the highest-level gifter in their LIVE?","a":"Yes. TikTok shows the top-gifter rail with each viewer level. Tik.Tools agency dashboards expose richer detail - cumulative diamonds, recent gift history, cross-creator footprint."}},"jsonLd":{"level30":{"q":"How many coins do I need to reach Level 30?","a":"Level 30 (Royal Crown II) requires 637,000 cumulative coins, which is $6,624.80 USD at the official TikTok Recharge rate. iOS / Android purchases cost roughly 30% more due to App Store / Play Store fees."},"reset":{"q":"Do TikTok gifter levels reset?","a":"No. Levels are global, persist across creators, and do not reset. Once you hit a level you keep it."},"highestA":"TikTok publicly shows up to Level 50+, with elite tiers (cosmic aura) starting at Level 36."}},"diamondsCalculator":{"seo":{"title":"TikTok Diamonds Calculator - convert diamonds to USD (2026 rates) {'|'} Tik.Tools","description":"Free TikTok diamonds calculator. Convert TikTok diamonds to USD and back in real time. Includes the 2026 coin-to-diamond rate, creator payout (1 diamond = $0.005), and the full gift-cost table.","ogTitle":"TikTok Diamonds Calculator - real-time USD converter","ogDescription":"Convert TikTok diamonds to USD with 2026 rates. Explains TikTok fees, creator payouts, and platform splits."},"hero":{"eyebrow":"FREE CALCULATOR · 2026 RATES","title":"TikTok Diamonds {accent}","titleAccent":"Calculator","sub":"Convert TikTok diamonds to USD in real time. Type in either side - the other updates instantly using TikTok's published rates ($1 = 200 coins, 1 diamond = $0.005 creator payout)."},"converter":{"diamonds":"Diamonds","usd":"USD (creator payout)","split":"Viewer paid {paid} · TikTok keeps {kept}"},"presets":{"universe":"Universe (44,999 ◇)","lion":"Lion (29,999 ◇)"},"lookup":{"label":"See any creator's diamonds","placeholder":"Type a creator {'@'}handle","hint":"Diamonds, gifters and live history for any TikTok creator.","apiKey":"Get a free API key","leaderboards":"Creator leaderboards"},"cta":{"heading":"Make TikTok LIVE data your data","api":{"eyebrow":"DEVELOPER API","title":"Real-time chat, gifts, battles","sub":"REST + WebSocket. Drop-in SDK. Live from {price}/wk."},"leaderboards":{"eyebrow":"LEADERBOARDS","title":"{count} regions, every creator","sub":"Daily / hourly / lifetime ranks. Unmasked at PRO+."},"agency":{"eyebrow":"GLOBAL AGENCY","title":"Live Gifter Firehose + Telegram","sub":"Scout every region. {price}/wk."}},"explainer":{"heading":"How TikTok diamonds, coins, and creator fees work","p1":"When a viewer buys coins, TikTok charges roughly {rate} on the web checkout (mobile prices vary by store fees - $1 is often closer to 70-100 coins on iOS/Android due to App Store taxes). Each LIVE gift costs the viewer a fixed number of coins, and when the gift lands on a creator's stream it's converted into {diamonds} - TikTok's internal accounting currency.","p1Rate":"$1 per 200 coins","p1Diamonds":"diamonds","p2":"Creators cash out diamonds at {rate} (half a US cent). That means TikTok keeps roughly {share} the viewer paid - the other half pays the creator. A 1,000-diamond gift cost the viewer around $10 and pays the creator $5. This split has been stable since 2020.","p2Rate":"1 diamond = $0.005","p2Share":"50% of the gross","callout":"{important} creator payouts are {before} TikTok's own platform deductions (LIVE host program splits, region multipliers, agency cuts if the creator is signed). Final take-home in a creator's account can be 20-40% lower than the gross diamond value times $0.005, depending on agency contract terms.","calloutImportant":"Important:","calloutBefore":"before"},"rates":{"heading":"Common rates at a glance","diamonds":"Diamonds","viewerPaid":"Viewer paid ≈","creatorPayout":"Creator payout ≈","commonGifts":"Common gifts","gifts":{"d5":"Rose · 1 coin = 5 diamonds when sent","d99":"Perfume · TikTok","d100":"Hand Heart · Sunglasses","d1000":"Galaxy · Sports Car","d5000":"Hydrangea · Sports Car premium","d10000":"Drama Queen · Yacht","d29999":"Lion","d44999":"Universe · TikTok Universe"}},"faqHeading":"Frequently asked","faq":{"oneDiamond":{"q":"How much is 1 TikTok diamond worth in USD?","a":"1 diamond = $0.005 (half a US cent) creator payout. The viewer paid ~$0.01 to produce that diamond."},"hundredUsd":{"q":"How many diamonds is $100 USD?","a":"$100 creator payout = 20,000 diamonds. Viewer cost was ~$200 of coins."},"fiftyPercent":{"q":"Does TikTok take 50% of diamonds?","a":"Yes - roughly 50/50 split. Viewers pay ~$0.01 per diamond, creators receive ~$0.005 per diamond."},"cheapest":{"q":"What is the cheapest TikTok gift?","a":"Rose at 1 coin (~$0.005 viewer cost / $0.0025 creator payout once converted)."},"mostExpensive":{"q":"What is the most expensive TikTok gift?","a":"Universe / TikTok Universe at 44,999 diamonds (~$450 viewer cost / $225 creator payout). Lion is 29,999 diamonds."},"taxable":{"q":"Are TikTok diamonds taxable income?","a":"Yes - TikTok issues a 1099 in the US once you cross the IRS reporting threshold. Other regions follow local rules."},"payout":{"q":"When do diamonds get paid out?","a":"TikTok runs monthly batches with a minimum payout threshold ($50 in the US). Funds settle 30-60 days after the billing cycle closes."}},"jsonLd":{"oneDiamondA":"1 TikTok diamond = $0.005 (half a US cent) for creator payout. The viewer paid roughly $0.01 to buy the coins that produced that diamond - TikTok keeps the other half.","hundredUsd":{"q":"How many diamonds is $100?","a":"$100 creator payout equals 20,000 diamonds. The viewer side spent roughly $200 of coins to produce them."},"fiftyPercentA":"Yes, TikTok takes roughly 50% of the gross gift revenue. Viewers pay ~$0.01 per diamond in coins; creators receive ~$0.005 per diamond in payout.","taxable":{"q":"Are diamond payouts taxable?","a":"Yes, TikTok creator payouts count as taxable income in most jurisdictions. TikTok issues a 1099 in the US once you cross the IRS threshold; other regions follow local rules."}}},"gifts":{"seo":{"title":"TikTok Live Gifts - full catalog + free downloads","description":"Every TikTok LIVE virtual gift in one searchable catalog. Diamond cost ($0.01 each), USD value, transparent PNG download. Compiled from real gift events on tik.tools, the live-stream API for developers and agencies.","socialDescription":"Every TikTok LIVE virtual gift in one place. Search, sort by value, download the transparent PNG."},"hero":{"title":"TikTok Live {accent}","titleAccent":"Gifts","sub":"Every TikTok LIVE virtual gift in one place. Diamond cost, dollar value, free download. Pulled live from the same firehose the tik.tools SDK powers.","count":"{count} gifts"},"searchPlaceholder":"Search gifts by name...","sort":{"valueDesc":"High to low","valueAsc":"Low to high","name":"Name A-Z","recent":"Recent"},"captcha":{"title":"Quick check","sub":"Pick the matching tile to continue browsing. {question}","loadError":"Could not load challenge. Refresh.","wrongAnswer":"Wrong answer. Try another."},"empty":"No gifts match \"{search}\".","viewDownload":"View + Download","pager":{"prev":"Prev","next":"Next","info":"Page {page} of {total}"},"cta":{"title":"Want every gift event in real time?","body":"The same catalog feeds the tik.tools API. Connect your app and receive every gift, chat, like, and follow within 50 ms.","primary":"See the API","secondary":"Free tier"}},"pricing":{"seo":{"title":"TikTok LIVE API Pricing","description":"TikTok LIVE API pricing. Sandbox, Basic {symbol}{basic}/wk, Pro {symbol}{pro}/wk, Ultra {symbol}{ultra}/wk, Agency {symbol}{agency}/wk. Real-time WS events (chat/gift/like/follow/join/battle), signed REST, league + leaderboard data.","ogDescription":"TikTok LIVE API pricing. Sandbox, Basic {symbol}{basic}/wk, Pro {symbol}{pro}/wk, Ultra {symbol}{ultra}/wk, Agency {symbol}{agency}/wk."},"hero":{"title":"Pricing for every {accent}.","titleAccent":"team","subtitle":"TikTools starts with a free Sandbox key for a 7-day evaluation, then a paid plan is required. Paid plans from {symbol}{price}/wk."},"keySelector":{"label":"Select which API key to manage","createNew":"Create New Key","newKeyPlaceholder":"Name your new key (e.g. Production, Assistant 2...)","unnamed":"Unnamed","renews":"Renews {date}","choose":"Choose an API key..."},"leadHeading":"Evaluate free for 7 days. Then pick a plan","billing":{"ariaLabel":"Billing cycle","weekly":"Weekly","monthly":"Monthly","saveUpTo":"save up to {percent}%"},"period":{"weekly":"wk","monthly":"mo","weekFull":"wk","monthFull":"mo"},"cycleName":{"weekly":"weekly","monthly":"monthly"},"card":{"save":"save {percent}%","monthlyOnly":"monthly only","mostPopular":"Most Popular","basic":{"desc":"Personal projects and small bots - everything you need to get started","foot":"Community & Docs support · ideal for personal projects + small bots"},"pro":{"desc":"For developers building production applications","foot":"Full unmasked Leaderboard API · Feed Discovery · priority chat"},"ultra":{"desc":"For teams and high-volume enterprise use","foot":"Gift Catalog + unmasked League Rankings · webhook peak-viewer / high-value-gift events"},"starter":{"desc":"For agencies that need the dashboard and Pro-level API","foot":"Agency dashboard: roster, pipeline, per-region recruit, creator digest, alerts, team · standard, league + gaming boards unmasked · included, no credits"},"global":{"desc":"For agencies scouting + managing TikTok LIVE creators","foot":"Everything in Ultra + Gaming Ranks (all regions) · Live Gifter Firehose WS · VIP Telegram + Web Vault · unmasked Gifter Leaderboard · CRM + watchlist · follower-milestone webhooks · IP allowlist"}},"stats":{"requestsPerDay":"requests / day","wsConnections":"WS connections","accountChecksPerDay":"account checks / day","webhook":"webhook · {perDay}/day","webhooks":"webhooks · {perDay}/day","seatsIncluded":"seats included"},"chips":{"leaderboards":"Leaderboards","leagues":"Leagues","gamingRanks":"Gaming Ranks","gifters":"Gifters"},"cta":{"subscribeTo":"Subscribe to {plan}","subscribe":"Subscribe","startFree":"Start free evaluation","currentPlan":"Current Plan","changing":"Changing...","switchToCycle":"Switch to {cycle}","switchTo":"Switch to {plan}","upgradeTo":"Upgrade to {plan}","downgradeTo":"Downgrade to {plan}","get":"Get {plan}"},"weekendPass":{"tag":"3-DAY PASS","line":"3 days of Pro for {price} one-time, then weekly Pro. Cancel anytime.","starting":"Starting...","cta":"Get the 3-day Pro Pass · {price}"},"enterprise":{"badge":"ENTERPRISE","heading":"Need more? Let's talk.","desc":"Custom limits, dedicated infrastructure, and volume pricing for your team. Contact us via chat at bottom right - {strong}.","descStrong":"we usually respond instantly","cta":"Chat with us"},"comparison":{"heading":"What Features Are Included in Each TikTok LIVE API Plan?","glossary":{"maskedTerm":"Masked / Unmasked","maskedDef":"Masked hides real usernames and avatars (shows placeholders); unmasked shows the real creator or gifter identity.","diamondsTerm":"Diamonds","diamondsDef":"TikTok's gift-value unit. Roughly $0.005 each - we use it to rank spend on leaderboards.","wsTerm":"WS sessions / connections","wsDef":"Live WebSocket connections - one per TikTok LIVE room you stream events from in real time."},"hint":"Swipe sideways to compare every plan","tableAriaLabel":"Plan comparison table, scrolls sideways","featureHeader":"Feature","badges":{"proOnly":"PRO+ ONLY","ultraOnly":"ULTRA+ ONLY","agencyOnly":"AGENCY","unmaskedProPlus":"UNMASKED IN PRO+","unmaskedUltraPlus":"UNMASKED IN ULTRA+","unmaskedAgency":"UNMASKED IN AGENCY"},"included":"included","notIncluded":"not included","rows":{"accessPeriod":{"feature":"Access period","tooltip":"A Sandbox key is for evaluating the API and works for 7 days from account creation. After that every request returns \"Evaluation period ended\" until you choose a paid plan. Paid keys work for as long as the subscription is active."},"requestsPerDay":{"feature":"Requests/day","tooltip":"Maximum number of API requests your key can make per day (UTC reset). Sandbox resets daily; paid tiers count against your billing cycle quota."},"rateLimit":{"feature":"Rate limit","tooltip":"Per-minute throttle. Even Agency keeps a hard ceiling so a runaway while(true) in a customer script can never saturate shared infrastructure."},"wsSessionTokens":{"feature":"Daily WS Session Tokens","tooltip":"Enough to build and debug a small bot or multi-stream dashboard. Heavy concurrent monitoring will exhaust the 50 daily sessions; production applications must upgrade."},"wsMaxDuration":{"feature":"WS max duration","tooltip":"Sandbox sessions are force-closed at 2 hours with a \"Daily Demo Limit Reached\" frame and burn one of the 50 daily sessions. Basic 8h, Pro 12h, Ultra + Agency 24h with auto-reconnect."},"datacenterProxies":{"feature":"Managed connections","tooltip":"Sandbox connects directly from your own IP. Paid tiers connect through our managed infrastructure."},"accountChecks":{"feature":"Account checks (resolve_user_ids)","tooltip":"POST /webcast/resolve_user_ids - resolves numeric TikTok user IDs to usernames via our infra. Quotas sized so the Bulk endpoint (50/req on Pro, 100/req on Ultra, 200/req on Agency) is actually usable across the day."},"maxConcurrentStreams":{"feature":"Max Concurrent Streams","tooltip":"Simultaneous live WebSocket streams per API key at any given moment. Community is capped at 3 concurrent streams (run on your own IP); TikTok limits ~5 connections per IP, so scaling past that needs a Basic+ plan. Custom Enterprise plans available above 500."},"leaderboardApi":{"feature":"Leaderboard Data API","tooltip":"POST /webcast/ranklist/regional - top 10 leaders unmasked on EVERY paid tier (dev sandbox - ship your client + UI). Diamonds visible on every entry. PRO+ unmasks the full board across all {regions} regions."},"giftCatalogApi":{"feature":"Gift Catalog API","tooltip":"GET /webcast/gift_info + /webcast/gifts_by_country - TikTok gift catalog (gift_id, name, diamond cost, icon URL, combo/streakable flag, per country). Free + Basic get a read-only 50-gift sample - enough to build OBS overlays and map common gifts. Pro + Ultra + Agency get the FULL live catalog for any region with continuous re-sync (new gifts ship from TikTok periodically; one-off pulls go stale fast)."},"liveShopApi":{"feature":"Live Shop Activity API","tooltip":"GET /webcast/live-shop?unique_id=X (or ?region=US) - real-time TikTok LIVE Shop activity for a seller room: products shown (title, price, image, PDP link), live stock levels, sold-out events, sales velocity, and live-auction status. Free + Basic get a read-only sample of the schema. Pro + Ultra + Agency get live shop data for any live US/global seller. Order/buyer/winning-bid data is not included - it is not part of the public live stream, only product and stock activity is. 60 calls/hour."},"gifterLeaderboardApi":{"feature":"Gifter Leaderboard API","tooltip":"GET /webcast/gifters/leaderboard (by region) and /webcast/agency/events?type=gifters (top gifters for one creator, Agency only) - cross-creator gifter intelligence. Sandbox + Basic locked; Pro / Ultra see masked identifiers; Agency unmasks. The deeper gifter profile view is dashboard-only."},"leagueRankingsApi":{"feature":"League Rankings API","tooltip":"POST /webcast/ranklist/regional rank_type=16 - Diamond Rush league rankings (A1-D5 divisions). Full unmasked league boards are an ULTRA and Agency feature. Sandbox, Basic and Pro see a one-row preview per division to confirm the board exists; upgrade to Ultra or Agency to unlock every division fully unmasked in real time."},"gamingRanks":{"feature":"Gaming Ranks","tooltip":"GET /webcast/ranklist/gaming - the TikTok LIVE Gaming Ranking (the live in-app gaming leaderboard) per region, recorded continuously and served fully unmasked with diamonds + estimated earnings. Also live on the website at /tiktok-live-gaming-ranks. Agency only - everyone else sees a masked 3-name preview."},"popularLive":{"feature":"Popular LIVE board","tooltip":"GET /webcast/ranklist/popular - TikTok's real-time Popular LIVE ranking per region (the creators TikTok is featuring in search right now), refreshed continuously and served fully unmasked with live status + diamonds. Also live on the website at /popular-live. Agency only - everyone else sees a masked 3-name preview."},"teamsClubs":{"feature":"Teams / Clubs board","tooltip":"TikTok clubs ranked by their members combined diamonds, per region. Club name, level, member count and the host each club streams under. Agency exclusive."},"regionalLeaderboard":{"feature":"Regional Leaderboard Access","tooltip":"POST /webcast/ranklist/regional - returns a signed URL the client fetches with their own TikTok session cookie. Community + Basic locked."},"feedDiscovery":{"feature":"Feed Discovery","tooltip":"GET /webcast/feed - discover currently live streams (For You / Suggested / Following). Community + Basic locked."},"bulkAccountChecks":{"feature":"Bulk account checks","tooltip":"POST /webcast/resolve_user_ids - resolve up to N TikTok user IDs in a single request. Per-request caps keep responses fast. Implement array chunking in your loop - daily quotas above (Pro 2k, Ultra 20k, Agency 50k) cover any agency workload."},"bulkCopy":{"feature":"Bulk copy (rosters, gifters, watchlist)","tooltip":"Copy a whole board - creators, gifters, watchlist or checked list - to the clipboard in one tap, ready to paste into your own sheet or CRM. Agency only."},"gifterFirehose":{"feature":"Live Gifter Firehose WS","tooltip":"Real-time gift event stream. Filter by region, league, or global + min-diamond threshold. Agency only."},"vipTelegram":{"feature":"VIP Telegram alerts","tooltip":"Automatic alerts pushed to agency owners and scouts via dedicated Telegram channels."},"vipWebVault":{"feature":"VIP Web Vault","tooltip":"Full unmasked historical visual access to gifters and creators. Agency only."},"support":{"feature":"Support","tooltip":"Sandbox + Basic: Discord bot AI support + full docs (self-serve). Pro: in-app chat. Ultra + Agency: priority chat with faster response. Upgrade to Pro for direct email/chat debugging."},"outgoingWebhooks":{"feature":"Outgoing webhooks","tooltip":"HMAC-signed HTTPS POSTs to your endpoint when watched creators go live / end. Configure at /webhooks."},"webhookDeliveries":{"feature":"Webhook deliveries / day","tooltip":"Daily delivery cap per user. Does NOT count against your API request quota."},"webhookLiveEvents":{"feature":"Webhook events: live.start / live.end","tooltip":"Detect when watched creators go live and end streams."},"webhookPeakGifts":{"feature":"Webhook events: peak viewers + high-value gifts","tooltip":"live.peak_viewers (concurrent count milestones 100..1M) + live.gift.high_value (gifts ≥ 1000 diamonds). Ultra and Agency only."},"webhookFollowerMilestone":{"feature":"Webhook event: follower milestone","tooltip":"creator.follower_milestone fires when a watched creator crosses 1K / 5K / 10K / 25K / 50K / 100K / 250K / 500K / 1M / 2M / 5M / 10M / 50M / 100M followers. Agency only."},"hmacSigning":{"feature":"HMAC signing + retry + 30-day replay","tooltip":"HMAC-SHA256 (X-Tiktool-Signature). Retry schedule 0s / 30s / 2m / 10m / 1h / 6h (6 attempts ~7h). 30-day delivery audit + manual replay."}},"cells":{"perDay":"{n}/day","perMin":"{n}/min","per24h":"{n} / 24h","hours":"{n} hours","perReq":"{n}/req","target":"{n} target","targets":"{n} targets","sevenDayEvaluation":"7-day evaluation","whileSubscribed":"While subscribed","max2hPerSession":"Max 2h per session","ownIpOnly":"Own IP only","top10Unmasked":"Top 10 unmasked","full100Unmasked":"Full 100% unmasked","sampleReadOnly":"Sample (read-only)","fullLiveSync":"Full · live sync","fullLive":"Full · live","maskedNames":"Masked names","unmasked":"Unmasked","previewOnly":"Preview only","full100UnmaskedRealtime":"Full 100% UNMASKED · Real-time","fullBoardOneRegion":"Full board · one region at a time","fullBoardAllRegions":"Full board · all regions","fullBoardAllRegionsRealtime":"Full board · all regions · real-time","agencyDashboard":"Agency dashboard","fullDashboardAccess":"Full Dashboard Access","communityDocs":"Community & Docs","chat":"Chat","priorityChat":"Priority Chat","unlimited":"Unlimited"}},"included":{"heading":"What's Included In Every Paid Tier","allInclusive":{"title":"All-Inclusive Pricing","body":"Signatures, request signing, priority routing and premium stream paths are bundled into every paid tier - no add-ons, no surprise charges. Each plan's published price is the all-in price."},"beyondChat":{"title":"Beyond Chat & Gifts","body":"Agency intel surfaces (leaderboards, leagues, scouting), the gift catalog and live shop activity - things you would otherwise stitch together from multiple vendors."},"predictable":{"title":"Predictable Pricing","body":"Hard daily caps mean no overage charges, no surprise invoices. Need more headroom? Upgrade to the next tier in one click - changes take effect immediately. Cancel anytime; you keep access until the period ends."}},"faq":{"heading":"Frequently Asked Questions","items":{"switchPlans":{"q":"Can I switch plans?","a":"Yes - upgrade, downgrade, or change billing cycles anytime from the Pricing page. Changes take effect immediately: unused time on your current plan is credited, any difference is charged the same day, and your billing cycle restarts from the day you switch."},"exceedLimit":{"q":"What happens if I exceed my daily limit?","a":"Requests are stopped at your daily cap. No overage charges, no surprise invoices. If you need more headroom, upgrade to the next tier from the Pricing page - changes take effect immediately."},"refunds":{"q":"Do you offer refunds?","a":"No - paid plans are non-refundable. The free 7-day Sandbox evaluation exists so you can verify the product before paying. Partial refunds are only issued when a service is provably broken on our side (sustained outage, billing error) for the affected period. We do not refund based on testing, scraping, or change of mind - service costs are incurred the moment a key is active."},"apiKeys":{"q":"How do API keys work?","a":"After subscribing, your API key is automatically generated and available in your Dashboard. There is one key per account, and your plan and usage limits attach to it."},"cancel":{"q":"Can I cancel anytime?","a":"Absolutely. Cancel from the Billing page and your subscription continues until the end of the current period. No penalty, no fees."},"manage":{"q":"How do I manage my subscription?","a":"Everything is managed through your Billing page - view subscriptions, update payment methods, download invoices, and cancel plans. No external portals needed."},"sandbox":{"q":"What is the Sandbox tier?","a":"Sandbox is the free 7-day evaluation, counted from the day your account is created. After 7 days every request returns \"Evaluation period ended\" until you choose a paid plan. During the evaluation you get 5,000 requests/day, 20 requests/min, 50 WS sessions per 24h, up to 3 concurrent streams, 2 hours max per session, no credit card. Sandbox connections run from your own IP. Some data endpoints (resolve_user_ids, agency-grade Gifter Leaderboard) are paid-only. Community is the legacy alias for the same tier."}}},"checkout":{"discountNamed":"Discount ({name})","discount":"Discount","subtotal":"Subtotal","total":"Total","loadingKeys":"Loading keys...","upgradeKeyLabel":"Upgrade API Key","unnamedKey":"Unnamed key","apiKeyLabel":"API Key:","appliedToExisting":"This plan will be applied to your existing API key.","haveCoupon":"Have a coupon code?","couponPlaceholder":"Coupon code","checking":"Checking...","apply":"Apply","remove":"Remove","couponApplied":"Coupon applied!","businessPurchase":"Business purchase","companyPlaceholder":"Company name","payCardLabel":"Subscribe with Card","payOnceLabel":"Pay once · no auto-renewal","payOnceTitle":"Single payment, no auto-renewal","payOnceSub":"Alipay · WeChat · Crypto · Card · iDEAL · Pix · OXXO","paypalLabel":"Subscribe with PayPal","paypalSub":"PayPal balance · linked card · Venmo · opens in popup","settingUp":"Setting up payment...","addCompany":"Add company name (optional)","paymentMethod":"Payment method","oneTimeTag":"One-time payment · {period} access","autoRenewTag":"Auto-renews every {period}","oneTimeMethods":"Card · UnionPay 银联 · Alipay · WeChat Pay · PayPal · iDEAL · Pix · OXXO · Crypto · Apple Pay · Google Pay","processing":"Processing...","pay":"Pay {amount}","back":"Back to summary","successTitle":"Subscription Activated!","successBody":"Your API key has been upgraded to {plan}. Head to your dashboard to get started.","goDashboard":"Go to Dashboard","secured":"Secured by Stripe. We never store your card details.","signedInAs":"Signed in as {email}"},"planModal":{"keepCurrent":"Keep Current Plan"},"agencyUpgrade":{"title":"Upgrade to Agency {cycle}","body":"You currently have {current} active. We'll upgrade your existing subscription in place - one subscription, no double-charge. Stripe will credit the unused time on your current plan and charge only the difference today.","credit":"Credit for unused time on your current plan","lineItem":"Agency {cycle}","tax":"Tax","chargedToday":"Charged to your card today","chargedOnFile":"Charged to the card on file. Cancel anytime.","confirm":"Confirm upgrade - {amount}","cancel":"Cancel","footer":"Stripe handles the proration math. No double-charge.","current":"{plan} {cycle}"},"weekendPassModal":{"title":"Developer {pass}","passName":"Weekend Pass","lineItem":"Pro - 3-day Pass","oneTime":"{price} one-time","autoRenewNote":"After 3 days, auto-renews to weekly Pro. Cancel anytime.","successTitle":"Weekend Pass Activated!","successBody":"3 days of Pro access. Redirecting..."},"planChange":{"creditLine":"Credit for unused time on your current plan: -{amount}","newPrice":"New {plan} {cycle}: {amount}","firstCharged":", first charged {date}","paypalNote":"PayPal opens to approve the new plan; your current PayPal plan is cancelled once it is approved.","continuePaypal":"Continue to PayPal","taxLine":"Tax: {amount}","chargedToday":"Charged to your card today: {amount}","creditedNext":"Credited to your next invoice: {amount}","nothingToday":"Nothing to pay today.","inPlace":"One subscription, changed in place. No double charge.","noPreview":"You'll be moved to {plan}. Unused time on your current plan is credited, and any difference is settled on the card on file.","confirmCharge":"Confirm - charge {amount}"},"errors":{"noClientSecret":"No clientSecret returned","paymentFormFailed":"Payment form failed to load. Please refresh and try again.","weekendPassStartFailed":"Could not start Weekend Pass checkout","cardDeclined":"Card was declined","commitFailed":"Commit failed","paymentFailed":"Payment failed","alreadyOnPlan":"You are already on this plan.","paymentReceivedPending":"Payment received. Your plan updates as soon as it clears, there is no need to pay again.","paymentConfirmedPlanUpdated":"Payment confirmed. Plan updated.","paypalNoApproval":"PayPal did not return an approval link. Try again.","subscriptionCancelled":"Subscription cancelled","planUpdated":"Plan updated","couldNotUpdatePlan":"Could not update plan - please try again or contact support.","failedUpdatePlan":"Failed to update plan. Your plan has not changed.","upgradeNeedsConfirmation":"Upgrade requires confirmation - please retry.","agencyCheckoutFailed":"Could not start agency checkout. Try again later.","openCheckoutFailed":"Failed to open checkout","loadKeysFailed":"Failed to load API keys. Please try again.","fixCoupon":"Please fix or remove the invalid coupon before continuing.","paymentSystemNotLoaded":"Payment system not loaded. Please try again.","oneTimeFailed":"One-time checkout failed","paymentInitFailed":"Payment could not be initialized. Please try again.","createSubscriptionFailed":"Failed to create subscription","invalidCoupon":"Invalid coupon code","couponValidateFailed":"Could not validate coupon","paypalFailed":"PayPal checkout failed - try again or use card.","paymentSystemNotLoadedRefresh":"Payment system not loaded. Refresh the page and try again.","paymentFormNotReady":"Payment form not ready. Refresh the page and try again.","paymentFailedCheckCard":"Payment failed. Check your card and try again.","renewKeyNotFound":"Could not find that key to renew - pick it below.","paymentFailedNotCharged":"Payment failed. You were not charged - try again.","subscriptionActivated":"Subscription activated! Your API key is being generated.","checkoutCanceled":"Checkout canceled. You can try again anytime.","appOtherAccount":"This browser is signed in to a different tik.tools account. Sign out, then tap Upgrade in the app again."},"appPlan":{"title":"Complete your {plan} plan","perWeek":"per week","perMonth":"per month","account":"Signed in as {email}","totalWithTax":"{total} today, tax included","renewsWeekly":"Renews every week until you cancel.","renewsMonthly":"Renews every month until you cancel.","otherWays":"Pay with card or PayPal","payCard":"Pay {amount}","preparing":"Preparing your checkout...","processing":"Confirming your payment...","successTitle":"You are all set","successBody":"Your {plan} plan is active. Taking you back to the app.","pendingTitle":"Payment received","pendingBody":"Your payment went through. Your plan turns on within a few minutes.","backToApp":"Back to the app","failedTitle":"Payment did not go through","tryAgain":"Try again","applePayDescription":"TikTools {plan} plan","applePayLabelWeekly":"{plan} plan, weekly","applePayLabelMonthly":"{plan} plan, monthly","agreementWeekly":"TikTools charges {amount} every week until you cancel. Tax may change with your location. Cancel any time on tik.tools/billing.","agreementMonthly":"TikTools charges {amount} every month until you cancel. Tax may change with your location. Cancel any time on tik.tools/billing.","errors":{"generic":"The payment did not go through. You have not been charged.","startFailed":"Checkout could not start. Nothing was charged. Please try again."}}},"home":{"seo":{"title":"TikTok LIVE API and Rankings {'|'} TikTools","description":"TikTools, also written Tik Tools, is the TikTok LIVE API: real-time chat, gifts, likes, viewers and battles over WebSocket, Node.js and Python SDKs with sub-50ms latency, plus regional and league rankings across {regions} regions.","ogDescription":"Everything you need to build on TikTok Live. Real-time Events, Gifts, Battles.","jsonLdDescription":"TikTools is a TikTok LIVE Developer API + Rankings platform. Real-time WebSocket events (chat, gifts, likes, viewers, battles) and creator leaderboards for developers building chat assistants, OBS overlays, analytics dashboards, AI integrations, and games."},"hero":{"quickLinksLabel":"Jump to a leaderboard","quickLinks":{"gifters":"Gifters","leaderboard":"Leaderboard","popularLive":"Popular Live","gaming":"Gaming","teams":"Teams","shopping":"Shopping"},"liveNowLabel":"Creators live now across all regions","liveNow":"LIVE NOW","openWord":"Open {word}","words":{"api":"API","websockets":"Websockets","webhooks":"Webhooks","liveEvents":"Live Events","ranksData":"Ranks Data","giftsEvents":"Gifts & Events","earnings":"Earnings","newCreators":"New Creators","creatorRanks":"Creator Ranks","gamingRanks":"Gaming Ranks","shopRanks":"Shop Ranks","scoutingBoard":"Scouting Board","telegramBot":"Telegram Bot"},"subAgency":"Live creator ranks, earnings and scouting - every region.","subDev":"Live chat, gifts and viewers from any stream. One API.","discoverTalents":"Discover Talents","manageTeam":"Manage Team","agencyPlans":"Agency plans","openDashboard":"Open dashboard","getApiKey":"Get free API key","apiDocs":"API Docs","viewPricing":"View pricing","browseTalents":"Browse talents","installLabel":"Install command","copyInstall":"Copy install command","copiedInstall":"Copied install command","copy":"Copy","copied":"Copied","pool":{"label":"creators tracked","exclusive":"Agency exclusive","cta":"Claim agency access"},"digest":{"title":"Creator Digest","badge":"New","pitch":"New creators found in your regions, emailed as copy-paste usernames plus a CSV sheet. Every 6 hours to weekly.","price":"Agency from {price}/month","ctaSetup":"Set up your digest","ctaLearn":"See how it works"},"mcp":{"label":"MCP server setup","kicker":"MCP SERVER","setup":"Setup"}},"tutorials":{"kicker":"Tutorials","watchOnYoutube":"Watch on YouTube: {title}","play":"Play tutorial: {title}","choose":"Choose a tutorial","close":"Close video","iframeTitle":"TikTools tutorial"},"liveDemo":{"liveNow":"Live now","waiting":"Waiting for a live channel","watching":"{n} watching","watchingInRegion":"{n} watching in {region}","sent":"sent {gift}","diamonds":"{n} diamonds","liked":"liked","joined":"joined","viewers":"{n} viewers","empty":"Events appear here the moment they happen on TikTok.","count":"{count} events since you opened this page","perMinute":"{n} / min","status":{"open":"connected","retry":"reconnecting","paused":"paused while hidden","connecting":"connecting"},"ago":{"now":"now","seconds":"{n}s","minutes":"{n}m"}},"liveVideo":{"label":"Live video from the demo channel","live":"Live","tapToPlay":"Tap to play","offline":"Video appears when the demo channel is on air","mute":"Mute","unmute":"Unmute"},"events":{"eyebrow":"Explore every event","title":"See the exact JSON your socket delivers","sub":"30+ live events. Pick one, see the exact payload.","fullReference":"Full WebSocket reference"},"showcase":{"eyebrow":"Everything in one place","dev":{"title":"Everything a developer needs","sub":"WebSocket, typed SDKs, events reference, webhooks, Discord bot.","items":{"websocket":{"tag":"WebSocket","title":"WebSocket API","desc":"Sub-50ms chat, gifts, likes and viewer events over one persistent connection."},"guides":{"tag":"Guides","title":"Developer Guides","desc":"Step-by-step guides to build chat assistants, overlays, and integrations."},"sdks":{"tag":"SDKs","title":"SDKs & REST","desc":"Typed clients for Node.js and Python plus signed REST endpoints in six languages."},"events":{"tag":"Events","title":"Events Reference","desc":"30+ real-time events - chat, gifts, battles, likes - with full payload shapes."},"webhooks":{"tag":"Webhooks","title":"Webhooks","desc":"Go-live and stream-end notifications pushed to your server as signed HTTPS requests."},"discord":{"tag":"Bot","title":"Discord Bot","desc":"Live alerts, watch lists, and creator stats piped straight into your server."}}},"agency":{"title":"Everything an agency needs","sub":"Leaderboards, gaming ranks, new creators, gifter intel, live shops.","items":{"ranks":{"tag":"Ranks","title":"Leaderboards & Ranks","desc":"Regional and global creator rankings, updated live across every market."},"gaming":{"tag":"Gaming","title":"Gaming Ranks","desc":"Live gaming leaderboards by game and region - who is winning right now."},"creators":{"tag":"Creators","title":"New Creators","desc":"New creators rising on live leaderboards per region, ready to check and recruit."},"gifters":{"tag":"Gifters","title":"Top Gifters","desc":"Whale dependency, top gifters and real earnings for any creator."},"agency":{"tag":"Agency","title":"Agency Suite","desc":"Claim creators, manage regions and rosters, get found in the directory."},"shops":{"tag":"Shops","title":"Live Shops","desc":"Live shopping activity, products and auctions in real time, per region."}}}},"integration":{"liveBadge":"LIVE","dev":{"eyebrow":"How it works","title":"Everything live, in one integration","sub":"Connect, track, ship - three steps to a live product.","steps":{"connect":{"title":"Connect the WebSocket","desc":"Open one persistent connection and get chat, gifts, likes, follows and viewer counts streaming in real time.","cta":"Connect"},"track":{"title":"Track gifts, chat & ranks","desc":"Parse events with our SDK: diamond values, combos, battle scores, and live leaderboard positions - typed end to end.","cta":"See the docs"},"ship":{"title":"Ship your app","desc":"Go live with overlays, assistants, alerts or dashboards. Free tier for building, paid tiers for production traffic.","cta":"Get started"}}},"agency":{"eyebrow":"For agencies","title":"Everything live, in one agency workflow","sub":"Discover, track, recruit - three steps to a signed roster.","steps":{"discover":{"title":"Discover new creators","desc":"Surface creators rising on live leaderboards per region, filtered below the network ceiling and ready for your eligibility check.","cta":"Find creators"},"track":{"title":"Track diamonds & gifters","desc":"See real earnings, top gifters and whale dependency for any creator - who funds them, and how much.","cta":"See gifters"},"recruit":{"title":"Recruit & manage","desc":"Claim creators to your agency, manage regions and rosters, and get discovered in the agency directory.","cta":"Open the suite"}}}},"carousel":{"eyebrow":"Explore","title":"Built for every TikTok LIVE build","controlsLabel":"Carousel controls","previous":"Previous","next":"Next","learnMore":"Learn more","positionLabel":"Carousel position","goTo":"Go to {title}","cards":{"websocket":{"tag":"WEBSOCKET","title":"Real-time event stream","blurb":"Chat, gifts, likes, follows, viewer counts, and battles over one sub-50ms socket. {count} event types, any language."},"rankings":{"tag":"RANKINGS","title":"Regional leaderboards","blurb":"Live creator rankings across {regions} regions plus league tables, refreshed continuously from the source."},"gaming":{"tag":"GAMING","title":"Gaming rank boards","blurb":"Per-game live gaming leaderboards, region by region, with movers and gap signals for scouting."},"agency":{"tag":"AGENCY","title":"Scouting and intel","blurb":"Gifter intelligence, an eligibility checker, and team tools for agencies running rosters of creators."},"docs":{"tag":"DOCS","title":"SDK and docs","blurb":"MIT-licensed, TypeScript-first SDK for Node and Python with quick-start guides and a full event reference."}}},"lockup":{"eyebrow":"The platform","title":"One API. Every TikTok LIVE signal.","sub":"Events, rankings, webhooks, gifter intel - one endpoint.","tiles":{"api":"API / WebSocket","leaderboards":"Leaderboards","gaming":"Gaming Ranks","shopping":"Shopping Ranks","webhooks":"Webhooks","gifters":"Gifter Intel"}},"actions":{"eyebrow":"Explore the platform","title":"Everything in one place","sub":"Jump straight to the rankings, live tools, and references developers use most.","learnMore":"Learn more","items":{"guides":{"tag":"GUIDES","title":"Guides","desc":"Quick-start tutorials for Node, Python, overlays, and bots."},"rankings":{"tag":"RANKINGS","title":"Leaderboards & Ranks","desc":"Regional and league creator rankings across {regions} regions."},"gaming":{"tag":"GAMING","title":"Gaming Ranks","desc":"Live gaming and shopping leaderboards, region by region."},"agency":{"tag":"AGENCY","title":"Agency","desc":"Scouting, intel, and team tools for creator agencies."},"pricing":{"tag":"PRICING","title":"Pricing","desc":"Free sandbox to production tiers. No credit card to start."},"gifters":{"tag":"GIFTERS","title":"Gifter Intel","desc":"Top gifters, big-gift drops, and who they support."},"discord":{"tag":"DISCORD","title":"Discord Bot","desc":"Live go-live alerts and rank commands in your server."},"scoutingBoard":{"title":"Scouting Board","desc":"Scout creators and get go-live alerts in your server."},"websocket":{"tag":"WEBSOCKET","title":"WebSocket API","desc":"All 18+ live event types over one sub-50ms socket."}}},"examples":{"badge":"Copy-paste examples","title":"Three working files. Pick a language. Run it.","desc":"Demo key baked in - copy, run, done. Bigger limits: {link}.","descLink":"free key","titles":{"liveEvents":"Live events monitor","liveVideo":"Live video player","topChannels":"Live top channels (public, no auth)"},"summaries":{"liveEvents":"Stream real-time chat, gifts, likes, follows + viewer counts from any TikTok LIVE creator via WebSocket.","liveVideo":"Play any TikTok LIVE stream in a standard {tag} tag. Stream URLs come baked in to the public ticker - no extra auth call.","topChannels":"List 10 currently-live TikTok creators across the world. Free, rate-limited 1 call per 5 min per IP."},"copyLabels":{"liveEvents":"Copy live events monitor code","liveVideo":"Copy live video player code","topChannels":"Copy live top channels (public, no auth) code"},"languagesLabel":"Available languages","langLlm":"LLM prompt","noSignup":"Works without signup","footnote":"{tag} 1 WebSocket / 10-min sessions / 6 connects per hour per IP. Need more? {link}.","footnoteTag":"Demo limits","footnoteLink":"Get a free API key"},"agencyDir":{"title":"LIST YOUR AGENCY","sub":"Free listing. Claim creators, get discovered.","cta":"List your agency - free","browse":"Browse agencies"},"faq":{"badge":"FAQ","title":"Frequently Asked Questions About the {accent}","titleAccent":"TikTok LIVE API","desc":"Protocol, signing, pricing, language support - quick answers.","items":{"official":{"q":"Is there an official TikTok LIVE API?","a":"No. TikTok does not offer a public API for live stream data like chat, gifts, or viewer counts. The TikTok Business API only covers ads and shop analytics. To access real-time LIVE data, developers use third-party APIs like Tik.Tools that handle the connection and authentication server-side."},"libraries":{"q":"Are TikTok LIVE libraries like tiktok-live-connector free?","a":"Yes - the open-source clients tiktok-live-connector (Node.js) and TikTokLive (Python) are MIT-licensed and free to install. TikTok requires signed parameters (msToken, X-Bogus) that must be generated server-side, so these libraries delegate signing to a backend; the default is Euler Stream, which has its own free tier and paid plans for higher volumes. Tik.Tools is an independent managed alternative with its own signing infrastructure included."},"eulerStream":{"q":"What is the difference between Tik.Tools and Euler Stream?","a":"Euler Stream is a paid signing backend used by the open-source tiktok-live-connector (Node) and TikTokLive (Python) libraries, all built by the same team. It is a well-supported, mature ecosystem with TypeScript types, official npm packages, and a free tier. Tik.Tools is an independent alternative with its own signing infrastructure and ships extras the Euler ecosystem does not currently offer, such as an optional agency intel layer (scouting, leaderboard, league rankings). Both deliver TikTok LIVE events reliably; pick the one whose feature mix and ecosystem fit your project."},"connect":{"q":"How do I connect to a TikTok LIVE stream?","a":"With Tik.Tools: install the SDK (npm i tiktok-live-api), create a client with your API key and streamer username, and call connect(). Three lines of code. You receive real-time events for chat, gifts, likes, follows, viewer counts, battles, and more via WebSocket. A free Sandbox key is available for a 7-day evaluation, no credit card required; after that a paid plan is needed."},"data":{"q":"What data can I get from TikTok LIVE streams?","a":"Real-time access to 90+ event types: chat messages, virtual gifts (with diamond values), likes, follows, viewer join/leave, viewer counts, room info, shares, battles/LinkMic, and subscriptions."},"languages":{"q":"What programming languages work with TikTok LIVE API?","a":"Tik.Tools works with any language that supports WebSocket. Official SDK for Node.js/TypeScript. Python, Go, Rust, Java, C#, C++, PHP, and any other language can connect via raw WebSocket (wss://api.tik.tools), including game engines for interactive games."}}},"guides":{"badge":"Guides","title":"TikTok LIVE API {accent}","titleAccent":"Developer Guides & Resources","desc":"Quick starts, bots, overlays, events - everything to ship.","items":{"gettingStarted":{"tag":"QUICK START","title":"Getting Started Guide","desc":"Connect to TikTok LIVE in under 30 seconds with the free SDK."},"chatBot":{"tag":"CHAT BOTS","title":"Build a TikTok Chat Assistant","desc":"React to commands, track chat, and run interactive chat games."},"overlay":{"tag":"OVERLAYS","title":"Stream Overlay Guide","desc":"Real-time chat, gift alerts, and viewer counts for OBS."},"python":{"tag":"PYTHON","title":"Python TikTok LIVE API","desc":"Connect to TikTok LIVE streams with Python. Async support included."},"websocket":{"tag":"WEBSOCKET","title":"WebSocket Events Reference","desc":"All {count} event types: chat, gifts, likes, follows, battles, and more."},"leaderboard":{"tag":"LEADERBOARDS","title":"Leaderboard & League API","desc":"Regional creator rankings and league tables across every active region."}},"ctas":{"startBuilding":"Start building","readGuide":"Read guide","viewEvents":"View events"},"allGuides":"All Guides","about":"About Tik.Tools","websocketApi":"WebSocket API","apiDocs":"API Docs"},"cta":{"dev":{"title":"How Do I Start {accent} with the TikTok LIVE API?","titleAccent":"Building","desc":"Free key for a 7-day evaluation, no card - 5,000 requests/day. Pro ({price}/week) for 75,000/day and production.","primary":"Get API Access","secondary":"Quick Start Guide"},"agency":{"title":"Find Your Next {accent} on TikTok LIVE","titleAccent":"Creator","desc":"Live rankings, unmasked intel. Agency Global from {price}/week.","primary":"Discover Talents","secondary":"See Agency Plans"}}},"event":{"bar":{"label":"Limited-time sale","endsIn":"Ends in","cta":"Get the deal"},"countdown":{"endsIn":"Sale ends in","days":"Days","hours":"Hours","minutes":"Min","seconds":"Sec","compact":"{d}d {h}h {m}m {s}s","remaining":"Sale ends in {d} days, {h} hours and {m} minutes","ends":"Ends {ends} at {time} UTC","perMonth":"/mo billed yearly"},"annual":{"switchAria":"Billing period","monthly":"Monthly","yearly":"Yearly","badge":"YEARLY","perMonth":"/mo","billedYearlyShort":"billed yearly","manage":"You're on {plan} yearly - Manage plan","fine":"Recurring yearly.","modalBadgeStarter":"AGENCY STARTER YEARLY","modalBadgeGlobal":"AGENCY GLOBAL YEARLY","orderLabel":"{plan} yearly","yearlyShort":"Yearly: {monthly}/mo","emptyHeading":"Or pay yearly","eyebrow":"{plan} - YEARLY","switchButton":"{plan} yearly - {monthly}/mo billed yearly","switchTitle":"Switch to {plan} yearly","aYear":"a year","pricingCtaFirstYear":"Get yearly - {total} the first year","ctaFirstYear":"Get {plan} yearly - {total} the first year","ctaUpgradeFirstYear":"Upgrade to {plan} yearly - {total} the first year","ctaSwitchFirstYear":"Switch to yearly - {total} the first year"},"offer":{"ended":"This sale has ended. Nothing was charged.","used":"This offer has already been used on your account. Nothing was charged.","subline":"Billed {total} today, renews at {renews}/yr. One per customer.","monthlyStrike":"{price}/mo monthly","monthlyPlanSr":"Monthly plan price {price}/mo","perMonthYearly":"{monthly}/mo billed yearly","save":"Save {percent}%","continueMonthly":"Continue with monthly billing"},"checkout":{"samePlan":"You are already on this yearly plan. Manage it from Agency Billing.","refreshing":"Refreshing prices...","initFailed":"Could not load the secure card form. Try again.","failed":"Payment failed. Your plan has not changed.","saleDiscount":"Sale discount","previewFailed":"Could not price this change. Your plan has not changed."},"halloween":{"bar":"Halloween Sale: Agency Global {monthly}/mo billed yearly. Pay 8 months, get 12. Ends {ends}.","badge":"Scary Good Deal","terms":"Sale price applies to the first year. Sale ends {ends} at 23:59 UTC."}},"rankingExperiment":{"live":"Live","unlock":"Unlock","unlockAria":"Live now. Unlock to see who is streaming."},"chrome":{"skipLink":"Skip to main content","og":{"subtitle":"Real-time chat, gifts, likes and viewer data from any TikTok LIVE stream"},"logo":{"badgeDocs":"DOCS","badgeLive":"LIVE"},"audience":{"switchAria":"Switch between Developer and Agency mode","developer":"Developer","agency":"Agency"},"footer":{"homeAria":"{brand} home","tagline":"Get the latest on the TikTok LIVE API - SDKs, rankings, and updates you can actually use.","navAria":"Footer","columns":{"product":"Product","resources":"Resources","company":"Company","support":"Support"},"links":{"sdks":"SDKs","pricing":"Pricing","webhooks":"Webhooks","mcp":"MCP + AI Tools","gifterIntel":"Gifter Intel","docs":"Docs","guides":"Guides","agencyGuides":"Agency Guides","leaderboards":"Leaderboards","gamingRanks":"Gaming Ranks","methodology":"Data methodology","compare":"Compare","updates":"Updates","agencies":"Agencies","about":"About","useCases":"Use cases","help":"Help"},"terms":"Terms & Conditions","privacy":"Privacy Policy","status":"Status","disclaimer":"{brand} is an independent third-party platform and is not affiliated with, endorsed by, or sponsored by TikTok or ByteDance."},"mobileTabs":{"navAria":"Primary mobile navigation","goBackAria":"Go back","openMenuAria":"Open menu","back":"Back","menu":"Menu","ranks":"Ranks","talents":"Talents","gifters":"Gifters","board":"Board","docs":"Docs","guides":"Guides","pricing":"Pricing"},"staleSession":{"title":"Session expired","message":"Sign in again to see your full data.","signIn":"Sign in","dismissAria":"Dismiss"},"banners":{"trialEndsIn":"ACCESS ENDS IN","timeRemainingAria":"Time remaining","upgradeNow":"Upgrade now","dismissAria":"Dismiss"},"header":{"nav":{"aria":"Main navigation","guides":"Guides","features":"Features","ranks":"Ranks","gifters":"Gifters","agency":"Agency","docs":"Docs","pricing":"Pricing"},"guides":{"groupHead":"Guides & Docs","viewAll":"View All Guides","items":{"gettingStarted":{"title":"Getting Started","desc":"Sign up, mint a key, first request"},"websocket":{"title":"WebSocket API","desc":"Real-time event firehose contract"},"chatBot":{"title":"Chat Assistant Bot","desc":"Chat commands and reactions for creators"},"overlays":{"title":"Stream Overlays","desc":"Gift + chat overlays for OBS / browser"},"python":{"title":"Python Guide","desc":"Async Python SDK + event handlers"},"events":{"title":"Events Reference","desc":"Every event type + payload schema"},"leaderboardApi":{"title":"Leaderboard & League API","desc":"Every active region, rolling rank windows"},"tts":{"title":"Text to Speech","desc":"Voiced chat + gift announcers"},"migrateConnector":{"title":"Migrate from Connector","desc":"Drop-in for TikTok-Live-Connector"},"migrateTikapi":{"title":"Migrate from TikAPI","desc":"Same endpoints, swap base URL only"},"migrateEuler":{"title":"Migrate from Euler Stream","desc":"Same SDKs, swap sign-provider host"}}},"features":{"groups":{"rank":"Leaderboards & Ranks","agency":"Agency & Recruiting","live":"Live Tools","reference":"Reference & Tools"},"items":{"ranks":{"title":"Leaderboards & Ranks","desc":"All rank products in one overview"},"creators":{"title":"Creators Leaderboard","desc":"Top creators by diamonds, every region"},"gifters":{"title":"Gifters Leaderboard","desc":"Biggest gifters ranked by diamonds sent"},"gamingRanks":{"title":"Gaming Ranks","desc":"Live gaming leaderboard + per-game weekly"},"newCreators":{"title":"New Creators","desc":"Agency recruiting feed, 30 names at a time"},"pulseBot":{"title":"Telegram Pulse Bot","desc":"Agency scout alerts in your DMs"},"creatorDigest":{"title":"Creator Digest","desc":"New creators to recruit, emailed as usernames + CSV"},"rising":{"title":"Rising Intel","desc":"Velocity-based gifter + creator feeds"},"popularLive":{"title":"Popular LIVE","desc":"Real-time top creators per region"},"team":{"title":"Team Management","desc":"Invite teammates + manage your seats"},"agencySuite":{"title":"Agency Suite","desc":"Plans, tools + everything for agencies"},"scoutingBoard":{"title":"Scouting Board","desc":"Scout creators from your server"},"bestTime":{"title":"Best Time to Stream","desc":"Real-time global gift heatmap"},"giftCatalog":{"title":"Gift Catalog","desc":"Every TikTok LIVE gift + PNG download"},"diamondsCalculator":{"title":"Diamonds Calculator","desc":"Diamonds {arrow} USD real-time"},"gifterLevels":{"title":"Gifter Levels","desc":"L1 → L50+ coin + USD table"},"wsDecoder":{"title":"WebSocket Decoder","desc":"Paste base64 frame, inspect protobuf"},"webhooks":{"title":"Webhooks","desc":"Push live events to your endpoint"},"mcp":{"title":"MCP + AI Tools","desc":"Use in Claude, Cursor, VSCode + GPT"},"updates":{"title":"Platform Updates","desc":"Live changelog + roadmap"}},"promo":{"title":"Start tracking TikTok LIVE","desc":"One key, every leaderboard and live tool.","cta":"Get Started"}},"cta":{"ranks":"Ranks","loginRegister":"Login / Register","login":"Login","boards":"Boards","dashboard":"Dashboard"},"menuAria":"Menu","profile":{"openAria":"Open profile menu","picAlt":"Profile","userFallback":"User","account":"Account","apiDashboard":"API Dashboard","dashboard":"Dashboard","billing":"Billing","signOut":"Sign Out"},"drawer":{"aria":"Site menu","liveChat":"Live chat with the team","agencyDashboard":"Agency dashboard","apiDashboard":"API dashboard","account":"Account","billing":"Billing","signOut":"Sign out","getStarted":"Get started","registerLogin":"Register / Login","getApiKey":"Get API key","groups":{"leaderboards":"Leaderboards","agencyRecruiting":"Agency & recruiting","liveToolsReference":"Live tools & reference","learn":"Learn","build":"Build","data":"Data","plans":"Plans"},"items":{"platformUpdates":"Platform updates","pricing":"Pricing","allLeaderboards":"All leaderboards","creatorsLeaderboard":"Creators leaderboard","giftersLeaderboard":"Gifters leaderboard","gamingLeaderboard":"Gaming leaderboard","newCreators":"New creators","risingIntel":"Rising intel","popularLive":"Popular LIVE","pulseBot":"Telegram Pulse bot","creatorDigest":"Creator digest","teamManagement":"Team management","agencySuite":"Agency suite","scoutingBoard":"Scouting board","bestTime":"Best time to stream","giftCatalog":"Gift catalog","diamondsCalculator":"Diamonds calculator","gifterLevels":"Gifter levels","agencyGuides":"Agency guides","docs":"Docs","guides":"Guides","webhooks":"Webhooks","mcp":"MCP + AI tools","wsDecoder":"WebSocket decoder","migrateConnector":"Migrate from Connector","apiStatus":"API status"}}},"errorPage":{"status":"Error {status}","notFoundTitle":"Page not found","notFoundBody":"This page does not exist or has moved. Search for a creator or gifter below, or go back to the homepage.","errorTitle":"Something went wrong","errorBody":"We could not load this page. Please try again in a moment.","searchLabel":"Search creators and gifters","home":"Back to homepage","rankings":"LIVE rankings"}},"overlays":{"upgradeModal":{"signIn":{"title":"Sign in to Subscribe","sub":"Create a free account or log in to unlock full access to leaderboards, creator history, and live stream data.","cta":"Sign In / Create Account →","free":"Free to register. No credit card required."},"compareAll":"Compare All Features →","success":{"title":"Subscription Activated!","body":"Your account has been upgraded to {tier}. Reloading..."},"step1":{"title":"Unlock Full Access","sub":"Real-time leaderboards, creator history, and live stream data"},"cycles":{"weekly":"Weekly","monthly":"Monthly"},"period":{"wk":"wk","mo":"mo"},"features":{"reqPerDay":"{count} req/day","ws":"{count} WS","unmaskedBoards":"Unmasked boards","leagueRanks":"League ranks","proLevelApi":"Pro-level API","leagueGamingRanks":"League + gaming ranks","agencyDashboard":"Agency dashboard"},"select":"Select","selected":"Selected","discount":"Discount ({name})","subtotal":"Subtotal","taxNote":"Tax calculated in next step","coupon":{"toggle":"Have a coupon code?","placeholder":"Coupon code","apply":"Apply","remove":"Remove"},"subscribe":"Subscribe","payOnce":{"title":"One-time payment for this period only - no auto-renewal","label":"Pay once · Alipay / WeChat / PayPal / Crypto / Card","hint":"No auto-renewal · choose at next step"},"step2":{"paymentMethod":"Payment method","oneTimeTag":"One-time · {period} access","autoRenewsTag":"Auto-renews every {period}","acceptedOneTime":"Card · UnionPay 银联 · Alipay · WeChat Pay · PayPal · Crypto · Apple Pay · Google Pay","total":"Total","processing":"Processing...","pay":"Pay {amount}","back":"Back"},"secure":"Secured by Stripe. We never store your card details.","errors":{"invalidCoupon":"Invalid coupon","couponCheckFailed":"Could not validate coupon","stripeLoad":"Payment system failed to load.","initFailed":"Payment could not be initialized.","setupFailed":"Failed to set up payment","paymentFailed":"Payment failed"},"reasons":{"bulkCopy":"Copying a whole board of usernames in one click is an Agency feature."}},"paypalButton":{"loading":"Loading PayPal...","loadError":"PayPal failed to load. {retry} or use card.","retry":"Try again","errors":{"noSubscriptionId":"PayPal did not return a subscription id","checkoutFailed":"PayPal checkout failed - try again or use card.","sdkLoad":"PayPal SDK failed to load"}},"keyWelcome":{"dismiss":"Dismiss","choose":{"eyebrow":"WELCOME TO TIK.TOOLS","title":"What brings you here?","sub":"Pick one and we'll take you to the right place.","developer":{"title":"I'm a Developer","desc":"Get my API key and build with the data"},"agency":{"title":"I'm an Agency","desc":"Track and manage my creators"}},"agency":{"eyebrow":"CREATOR LISTS FOR AGENCIES","title":"Get creator lists in all regions and their gifters, on your email, Telegram and Discord. Invite your managers. That's it.","shotAlt":"Creator lists per region with their top gifters","cta":"OPEN THE LISTS"},"key":{"eyebrow":"YOUR API KEY","sub":"Your sandbox key is ready. It authenticates every request - keep it secret.","copied":"COPIED","copy":"COPY KEY","dashboard":"GO TO API DASHBOARD","docs":"Read the docs first"}},"multiAccount":{"title":"Multiple Account Warning","body":"We detected multiple accounts created from this device or network. Creating duplicate accounts to circumvent usage limits violates our {terms} and may result in {suspension}.","terms":"Terms of Service","suspension":"suspension of all associated accounts","info":"If you need multiple keys for a legitimate project, consider our {plans} which support additional API key slots.","paidPlans":"paid plans","dismiss":"I Understand"},"slowDown":{"close":"Close","title":"SLOW DOWN","sub":"You're on the free day pass - just testing. Want the full board with no limits? Upgrade now and keep {offer}.","offer":"{pct}% off for life","badge":"{pct}% OFF FOR LIFE","weekly":"WEEKLY","monthly":"MONTHLY","perWeek":"wk","perMonth":"mo","opening":"Opening...","startWeekly":"Start weekly →","startMonthly":"Start monthly →","keepTesting":"Keep testing for now"},"supportChat":{"launcher":{"unread":"{count} unread messages","open":"Open support chat","welcomeBlurb":"Live Chat with the developers","dismiss":"Dismiss"},"header":{"title":"Dev Human Live Chat. Not AI.","online":"Online - typically reply within minutes","offline":"Leave a message - we'll get back to you","close":"Close chat"},"auth":{"title":"Sign in to chat","google":"Continue with Google","or":"or","email":"Email address","password":"Password","submit":"Sign In","errors":{"required":"Email and password required","failed":"Login failed. Try again."}},"welcome":{"title":"Hi there","desc":"Pick a quick question below or type your own.","quick":{"technical":"I have a technical issue","agent":"I want to speak to an agent","other":"I have another question"}},"pass":{"twoHour":"2-Hour Agency Pass","dayPass":"Agency Day Pass","body":"Full Agency Global access is now live on your account.","cta":"Open the Agency dashboard","expired":"It has expired","activeDays":"Active for about {count} more day(s)","activeHours":"Active for about {count} more hour(s)"},"messages":{"imageAlt":"Image","notSent":"not sent","typing":"TikTools is typing"},"input":{"sendPhoto":"Send a photo","emoji":"Emoji","placeholder":"Type a message...","aria":"Type a message","send":"Send message"},"blurb":{"passSent":"You have been sent an Agency pass","newMessage":"New message from support"},"script":{"transferred":"I have transferred your request to an agent, please hold.","agencyQuestion":"Hi - what's your agency name, region and use case?"}},"intelCard":{"aria":{"gifterIntel":"Gifter intel","creatorIntel":"Creator intel","close":"Close","prev":"Previous on this board","next":"Next on this board"},"hero":{"active":"ACTIVE","live":"LIVE","offline":"OFFLINE","level":"Lv. {level}"},"unmask":{"eyebrow":"GLOBAL AGENCY","text":"Unlock {usernames}, gifter handles & full intel.","usernames":"real usernames","cta":"View pricing"},"tabs":{"overview":"Overview","topCreators":"Top Creators","behavior":"Behavior","ranks":"Ranks","topGifters":"Top Gifters"},"creator":{"liveScore":"Live Score","boardScore":"Board Score","peakRank":"Peak Rank","allTime":"All-Time","peakEarnings":"Peak Earnings","noOverview":"No performance data yet.","history":{"date":"Date","rank":"Rank","diamonds":"Diamonds","loading":"Loading rank history...","empty":"No rank history available."},"gifters":{"privateGifter":"Private gifter","private":"Private","loading":"Loading top gifters...","empty":"No gifter data yet."}},"copyHandle":"Copy {handle}","gifter":{"totalDiamonds":"Total Diamonds","estSpent":"Est. Spent","creators":"Creators","totalGifts":"Total Gifts","noOverview":"No gifting data tracked yet.","noCreators":"No supported creators tracked yet.","behavior":{"sessions":"Sessions","avgPerSession":"Avg / Session","rhythm":"Rhythm","topShare":"Top Share","empty":"No behavior profile yet."}},"fullProfile":"View full profile","teaser":{"hiddenCreator":"Hidden creator","ranked":"RANKED","loading":"Loading full intel...","anonNote":"Numbers are real. Track them with a free key.","maskedNote":"Identity is masked on the free tier. The numbers are real.","getFreeKey":"Get a free key","unlock":"Unlock full intel","load":"Load full intel"},"error":{"warming":"Intel is warming up.","retry":"Retry"},"seed":{"rank":"Rank","diamonds":"Diamonds","estValue":"Est. value","region":"Region"},"someone":"Someone"},"gifterArchetype":{"whale":{"label":"WHALE","tooltip":"Big-gift dominant - top financial threat"},"lateSniper":{"label":"LATE SNIPER","tooltip":"Drops > 50% of gifts late-session - closer / kill-shot specialist"},"earlyFlexer":{"label":"EARLY FLEXER","tooltip":"Drops > 50% of gifts opening-session - flexes early to set tone"},"spammer":{"label":"SPAMMER","tooltip":"> 80% tiny gifts - high frequency, low value per drop"},"loyalFan":{"label":"LOYAL FAN","tooltip":"> 70% of spend goes to one creator - dedicated, predictable"},"wanderer":{"label":"WANDERER","tooltip":"Spends across 5+ creators with no clear favorite - attention easily split"},"rhythmGifter":{"label":"RHYTHM","tooltip":"Predictable cadence - regular gifting intervals"}},"more":{"payment":{"confirming":"Confirming payment...","processing":"Payment processing, your plan updates as soon as it clears.","notCompleted":"Payment was not completed. Your plan has not changed.","failed":"Payment failed. Your plan has not changed.","notLoaded":"Payment system not loaded. Please try again."}},"chat":{"more":{"agencyAccessRequest":"Agency 2 hour access request","agencyHelp":"Need help with agency tiers","agencyListing":"Question about my agency listing review"}}},"rankingBoard":{"notFound":{"title":"Not found","body":"No leaderboard data available.","back":"Back to All Regions","error":"Leaderboard not found"},"nav":{"creators":"Creators","gifters":"Gifters","gaming":"Gaming"},"breadcrumb":{"rankings":"Rankings"},"dropdown":{"searchRegion":"Search region...","searchRegionAria":"Search region","searchCountry":"Search country...","searchCountryAria":"Search country","noResults":"No results"},"poolBadge":"{code} REGION","stats":{"estEarnings":"EST. EARNINGS","liveInRegion":"LIVE IN REGION","liveNow":"LIVE NOW","dayEnds":"DAY ENDS","leagueReset":"LEAGUE RESET","weeklyReset":"WEEKLY RESET","hourlyReset":"HOURLY RESET","dailyReset":"DAILY RESET","rollingWindow":"ROLLING WINDOW","last7Days":"LAST 7 DAYS"},"updated":"Updated {time}","anonBanner":{"text":"Scores are approximate - {strong}","strong":"login for exact diamond counts & full rankings"},"regionIncludes":"{region} Region includes:","poolLink":{"partOf":"Part of:","pool":"({code}) Leaderboard Pool"},"cadence":{"daily":"Daily","hourly":"Hourly"},"tabs":{"estimatedDaily":"Estimated daily","estimatedWeekly":"Estimated weekly","new":"NEW","popular":"Popular","gaming":"Gaming","shopping":"Shopping","loadingLeagues":"Loading leagues..."},"alt":{"loading":{"estimateDaily":"Loading estimated daily board...","estimateWeekly":"Loading estimated weekly board...","shopping":"Loading shopping ranks...","gaming":"Loading gaming ranks...","league":"Loading league rankings..."},"liveCount":"{count} live","badgeEstimate":"ESTIMATE","heading":{"estimateDaily":"Estimated daily (all creators seen today)","estimateWeekly":"Estimated weekly (all creators seen this week)","shopping":"Live Shopping Ranking","gamingNamed":"{game} Ranking","gaming":"Gaming Ranking","league":"League Rankings"},"score":{"estimate":"Est. diamonds","shopping":"Sales score","diamonds":"Diamonds"},"hidden":{"ofListed":"{hidden} of {listed} names hidden","all":"{hidden} names hidden"},"shareTitle":{"estimateDaily":"Estimated daily board - {region}","estimateWeekly":"Estimated weekly board - {region}","shopping":"Live Shopping - {region}","game":"{game} - {region}","league":"{division} League - {region}"}},"counts":{"creators":"{count} creators","sellers":"{count} sellers","movers":"{count} movers"},"actions":{"copyAll":"Copy all","share":"Share","liveToggle":"Live","unlock":"Unlock","freeKey":"free key","unlockUltra":"Unlock with Ultra","unlockAgency":"Unlock with Agency"},"diaFilter":{"title":"Filter by monthly diamonds","from":"From","to":"To","fromAria":"Diamonds from","toAria":"Diamonds to","bandTitle":"Monthly diamonds (coarse band)"},"estimateNote":{"dailyStrong":"Estimate, not a TikTok daily board.","dailyBody":"{region} resets every hour and TikTok publishes no daily total for it, so this view sums each creator's peak from every hourly board they appeared on since 00:00 UTC. It shows everyone who earned today, not just the ~{size} visible in the current hour.","weeklyStrong":"Estimate, not a TikTok weekly board.","weeklyBody":"TikTok publishes no weekly total. This view is aggregated from our own snapshots of {region} over the last 7 days, summing each creator's peak from every board period they appeared in.","hoursTitle":"Hours ranked today, and the best rank reached","hoursRanked":"{hours}h ranked","bestRank":"best #{rank}","weekTitle":"Days ranked this week, board periods ranked in, and the best rank reached","daysRanked":"{days}d ranked","periods":"{count} periods"},"table":{"streamer":"Streamer","status":"Status","revenue":"Revenue","earnings":"Earnings","verified":"Verified creator","passPrivate":"PASS PRIVATE"},"status":{"live":"LIVE","offline":"OFFLINE"},"anon":{"revealRow":"{count} ranked today - free key to dig in","moreText":"more: full ladder, live, via API"},"empty":{"noneLive":"No creators are live right now.","noData":"No data available yet."},"footer":{"lastUpdated":"Last updated {ago} · Auto-refreshes every 60s","recently":"recently","secondsAgo":"{n}s ago","minutesAgo":"{n}m ago"},"movers":{"title":"Entered today","tag":"below cutoff now","note":"Creators who held a spot in this region's board at some point today but sit below the current cutoff ({cutoff}) right now. The reset-time churn TikTok never shows.","cols":{"peakRank":"Peak #","creator":"Creator","peakScore":"Peak score","toReenter":"To re-enter"},"locked":"locked","ctaStrong":"{count} creators entered today then dropped - re-recruit them now.","ctaBody":"Scores and ranks are real, names are hidden. Unlock every name across all regions.","upsellTitle":"See everyone who entered and dropped out today","upsellBody":"Scores and ranks are real, names are hidden. {strong} to unmask the full movers feed across every region.","upsellStrong":"Unlock with Agency on tik.tools"},"numbers":{"heading":"{region} {board} board in numbers","liveInRegion":"Live in region","liveNow":"Live now","liveInDivision":"Live in this division","liveOnBoard":"Live on this board","sellersRanked":"Sellers ranked","creatorsRanked":"Creators ranked","leaderShopping":"#1 sales score","leaderDiamonds":"#1 diamonds","topShareShopping":"Top {size} share of sales score","topShareDiamonds":"Top {size} share of diamonds","otherBoards":"Other {region} boards","leagueDivisions":"League divisions","moreFor":"More for {region}"},"links":{"dailyRanking":"Daily ranking","hourlyRanking":"Hourly ranking","estimatedDaily":"Estimated daily ranking","estimatedWeekly":"Estimated weekly ranking","gaming":"Gaming ranking","liveShopping":"Live shopping ranking","popularLive":"Popular live now","league":"{division} League","topGifters":"Top gifters","allRegions":"All regions","topGiftersIn":"Top gifters in {region}","teamsIn":"Teams in {region}"},"browse":{"eyebrow":"REGION POOL","title":"Countries in This Region"},"titleRow":{"leaderboard":"TikTok LIVE Leaderboard","estimateDaily":"TikTok LIVE Estimated Daily Rankings","estimateWeekly":"TikTok LIVE Estimated Weekly Rankings","league":"TikTok LIVE {division} League Rankings","daily":"TikTok LIVE Daily Rankings","hourly":"TikTok LIVE Hourly Rankings"},"seo":{"titleBase":"{region} TikTok LIVE {board} Ranking","titleWithDay":"{title}, {day}","cadenceLower":{"daily":"daily","hourly":"hourly"},"lead":"{region} TikTok LIVE {board} ranking.","leadWithDay":"{region} TikTok LIVE {board} ranking for {day}.","leaderShoppingNamed":"{'@'}{handle} leads with a sales score of {score}.","leaderShopping":"The #1 seller has a sales score of {score}.","leaderNamed":"{'@'}{handle} leads with {score} diamonds.","leader":"The #1 creator has {score} diamonds.","tailShoppingLong":"Top {count} sellers by sales volume with live status.","tailShoppingShort":"Live status for every seller.","tailLong":"Top {count} creators with live status and estimated earnings.","tailMedium":"Top {count} creators, live status, earnings.","tailShort":"Live status and earnings.","emptyShopping":"Sellers ranked by sales volume, with live status.","empty":"Creators ranked by diamonds, with live status and estimated earnings.","crumbHome":"Home","crumbRankings":"TikTok LIVE Rankings","measuredShopping":"Sales score","measuredDiamonds":"Diamonds received","ogTitle":"{region} TikTok LIVE Leaderboard","ogSubtitle":"Top creators by diamonds, refreshed live","ogBadge":"LEADERBOARDS"},"agencyCta":{"title":"Unlock the full leaderboard intel.","body":"Watchlist, league depth, top-gifter breakdowns, bulk copy, Telegram alerts.","cta":"Get Agency Access","dismiss":"Dismiss"},"share":{"title":"Share","defaultTitle":"Tik.Tools - TikTok LIVE Leaderboard","copy":"Copy","copied":"Copied!","nativeShare":"Share via...","email":"Email"},"copyUsername":{"copied":"Copied!","title":"Copy {'@'}{name}","aria":"Copy username {'@'}{name}"},"tierBadge":{"pro":"Unmasked Leaderboards - PRO+ from {price}/wk","ultra":"Unmasked Leagues - ULTRA+ from {price}/wk","agencyStarter":"Included with {plan}","agency":"Unlocks with Agency","global":"Live Gifts firehose - GLOBAL {price}/wk"},"watch":{"addedTitle":"Added {'@'}{username} to watchlist","addTitle":"Add {'@'}{username} to your agency watchlist","added":"Added","add":"Add","failed":"Failed"},"requestAccess":{"aria":"Request region access","title":"Request access from your agency owner","sub":"Your team access does not include {region}. Ask your agency owner to grant it to see full data here.","thisRegion":"this region","button":"Request access"}},"profile":{"creator":{"maskedName":"Someone","hidden":"Hidden","copiedToast":"{handle} copied to clipboard","notFound":{"degradedTitle":"This profile is taking longer than usual","degradedBody":"We couldn't load {handle} just now. Refresh the page to try again.","title":"Creator not found","body":"{handle} hasn't appeared on a TikTok LIVE leaderboard yet. Check back after the next update.","viewUsLeaderboard":"View US Leaderboard"},"breadcrumb":{"rankings":"Rankings","creator":"Creator"},"hero":{"passPrivate":"PASS PRIVATE","passCreator":"PASS Creator","verifiedCreator":"Verified Creator","copyHandle":"Copy {handle}","liveNow":"LIVE NOW","offline":"OFFLINE","lastSeen":"Last seen {when}","peak":"Peak #{rank}","shareTitle":"{name} TikTok LIVE Stats","website":"Website","alsoGifter":"Also a Gifter","revenueHidden":"Revenue hidden"},"daysAgo":{"today":"today","one":"1 day ago","many":"{count} days ago"},"earnHero":{"label":"{month} earnings","hiddenByCreator":"Hidden by the creator","unavailable":"Earnings unavailable right now","none":"No leaderboard earnings yet this month"},"authCta":{"line":"Track {handle} for free: follow their rank and get live alerts.","google":"Continue with Google"},"upgradeCta":{"line":"See every gifter, the full rank history and real names for {handle} with Agency.","button":"See Agency plans"},"codeCta":{"title":"Stream {handle}'s live events in 3 lines of code","sub":"Real-time chat, gifts, likes + viewer counts via WebSocket. No signup needed - the demo key is baked in.","copy":"Copy code","exampleTitle":"Stream {handle} events"},"liveBar":{"liveNow":"Live now","watching":"{count} watching","note":"Leaderboard earnings appear once they rank"},"topGifters":{"title":"{name} · Top Gifters","globalRank":"Global #{rank}","private":"Private","pctToday":"today","pctWeek":"wk","pctMonth":"mo","pctLifetime":"all time","seeAll":"SEE ALL GIFTERS OF {name}"},"gifterAnalytics":{"title":"Gifter Analytics","periods":{"today":"Today","week":"7 Days","month":"30 Days","lifetime":"All Time"},"colGifter":"Gifter","colEarnings":"Earnings","colShare":"Share","privateGifter":"Private Gifter","empty":"No gifters this period.","showTop":"Show top {count}","seeAll":"See all {count}"},"stats":{"liveScore":"Live Score","todaysEarnings":"Today's Earnings","peakRank":"Peak Rank","peakDiamonds":"Peak Diamonds","peakEarnings":"Peak Earnings Est.","totalEarnings":"Total Earnings Est.","daysInLeaderboard":"Days in Leaderboard"},"performance":{"title":"Performance History","hiddenBadge":"Hidden by creator","hiddenMsg":"This creator has hidden their performance history.","lockedMsg":"Historic performance is an Agency feature. Today's data is shown below.","unlock":"Unlock with Agency","diamondsChartTitle":"Diamonds Earned per Day","diamondsChartSub":"cumulative by leaderboard day","noHistory":"No history data","rankChartTitle":"Rank History","rankChartSub":"lower = better","noRank":"No rank data","tooltipDiamonds":"{value} diamonds","tooltipRank":"Rank #{rank}"},"insights":{"avgRank":"Avg Rank (active days)","bestDay":"Best Day Diamonds","streakDays":"{days}d","activeStreak":"Active Streak","rankTrend":"Rank Trend","trend":{"improving":"Improving","declining":"Declining","stable":"Stable"}},"daily":{"title":"Daily Breakdown","colDate":"Date","colRank":"Rank","colDiamonds":"Diamonds","colEarnings":"Est. Earnings","empty":"No ranking data available yet."},"region":{"title":"{region} Leaderboard Pool","desc":"{name} competes in TikTok's {region} business market, which pools rankings across {countries}.","andMore":"{list} and {count} more","seeFull":"See full {region} leaderboard"},"liveNearby":{"title":"Live Right Now in {region}","thisRegion":"This Region"},"about":{"title":"About {handle}'s TikTok LIVE Performance","introRanked":"{name} is a TikTok LIVE streamer ranked #{rank} in the {region} market on {date}.","introPeak":"{name} is a TikTok LIVE streamer who has reached a peak ranking of #{rank}.","introPlain":"{name} is a TikTok LIVE streamer .","peakScore":"Their peak score is {diamonds} diamonds, equivalent to an estimated {earnings} in creator earnings.","marketWithPool":"{name} streams in the {country} market, part of TikTok's {region} business pool which includes {countries}.","market":"{name} streams in the {country} market.","track":"Track their real-time rankings, earnings estimates, and performance history on TikTool."},"faq":{"notRecorded":"not yet recorded","earn":{"q":"How much does {handle} earn on TikTok LIVE?","a":"TikTok LIVE diamonds are estimated at $0.005 per diamond for creator earnings. {name}'s peak recorded score is {diamonds} diamonds, which translates to approximately ${earnings}. Actual payouts depend on TikTok's conversion rates and the creator's region. Track daily estimates on TikTool Pro."},"rank":{"q":"What rank is {handle} on TikTok LIVE?","aRanked":"{name} is ranked #{rank} in the {region} leaderboard on {date}. Their all-time peak rank is {peak}.","aUnranked":"{name} is not currently active on the leaderboard. Their all-time peak rank is {peak}. Check back after the next leaderboard update."},"lastLive":{"q":"When was {handle} last live on TikTok?","aSeen":"{name} was last seen live on {date}. TikTool monitors leaderboard activity in real time - subscribe to Pro or Ultra for live status alerts.","aUnknown":"We don't have a confirmed last-live date for {name} yet. TikTool tracks leaderboard appearances, so {name} will appear here once they rank in a future stream."}},"footerCta":{"title":"Track TikTok LIVE Rankings in Real Time","body":"TikTool gives agencies and brands instant access to TikTok LIVE data - leaderboards, gift tracking, earnings intelligence, and WebSocket events.","leaderboard":"{region} Leaderboard"},"sidebar":{"title":"Leaderboard","global":"Global","updating":"{region} live board updating...","empty":"No live leaderboard for this region yet."},"seo":{"title":"{who} TikTok LIVE earnings and stats {'|'} TikTools","descRankedIn":"{who} is ranked #{rank} in {country} on TikTok LIVE today with {diamonds} diamonds earned (≈{earnings}). Track live status & earnings on TikTool.","descRanked":"{who} is ranked #{rank} on TikTok LIVE today with {diamonds} diamonds earned (≈{earnings}). Track live status & earnings on TikTool.","descTrackedPeak":"{who} is a TikTok LIVE creator tracked on TikTool. Peak rank: #{rank}. See ranking history, diamond earnings, and live status.","descTracked":"{who} is a TikTok LIVE creator tracked on TikTool. See ranking history, diamond earnings, and live status.","profilePageName":"{name} TikTok LIVE Profile","crumbHome":"Home","crumbRankings":"TikTok LIVE Rankings","crumbCountry":"{country} Leaderboard","ogSubtitle":"TikTok LIVE creator stats","ogBadgeCreator":"CREATOR"}},"gifter":{"notFound":{"title":"Gifter not found","body":"{'@'}{handle} hasn't appeared on our gift tracking yet.","back":"Gifters Leaderboard"},"breadcrumb":"TikTok Gifters Leaderboard","passPrivate":"PASS PRIVATE","badge":{"pass":"PASS Gifter","verified":"Verified Gifter"},"shareTitle":"{name} TikTok Gifter Profile","activeNow":"Active now","watching":"watching {handle}","alsoCreator":"Also a Creator","chatParticipant":"Chat participant","status":{"gifting":"CURRENTLY GIFTING","offline":"OFFLINE"},"stats":{"level":"Gifter Level","levelValue":"Lv. {level}","levelSpend":"spent {amount} on TikTok","region":"Region","totalDiamonds":"Total Diamonds","estSpent":"Est. Spent","creatorsSupported":"Creators Supported","totalGifts":"Total Gifts"},"privateNotice":"This gifter has set their gifting data to private.","coverage":{"trackedSince":"Tracked since {date}. We only capture gifts going to creators on our watch list (top leaderboards, leagues, /watch additions).","noGifts":"No tracked gifts yet - this gifter hasn't been seen sending to a watched creator. Add their favorite creator via our {link} to begin capturing."},"unmask":{"text":"See {usernames}, real handles, real CRM & VIP intel. Monthly subscription unlocks everything.","realUsernames":"real usernames","cta":"View pricing"},"behavior":{"title":"Gifter Profile","giftSize":"Gift Size","dropTiming":"Drop Timing in Session","early":"Early","mid":"Mid","late":"Late","sessions":"Sessions","avgGifts":"Avg Gifts/Session","rhythm":"Rhythm Score","topShare":"Top Creator Share","basedOn":"Based on last {count} tracked gifts"},"sizes":{"tiny":"Tiny (<500◇)","small":"Small (500-5K◇)","medium":"Medium (5K-30K◇)","big":"Big (30K+◇)"},"regional":{"title":"Regional Leaderboard","copyAll":"Copy all","seeAll":"See all"},"creators":{"title":"Creators They Support","shareOfSpend":"{pct}% of spend"},"seeAllCreators":"SEE ALL CREATORS {name} SUPPORTS","someone":"Someone","scope":{"totalSince":"Total since we started tracking (first seen {date}). Only gifts to creators we track are counted.","total":"Total since we started tracking. Only gifts to creators we track are counted.","dropsSince":"Gifts since we started tracking (first seen {date}). Only gifts to creators we track are listed.","drops":"Gifts since we started tracking. Only gifts to creators we track are listed."},"seo":{"title":"{name} - Gifter Profile {'|'} TikTool","ogSubtitle":"TikTok LIVE gifter profile","ogBadge":"GIFTER"}},"intelModal":{"close":"Close","eyebrow":"AGENCY INTELLIGENCE","title":"Unlock Full Creator & Gifter Intel","sub":"One tier. Pick how long you need it.","sandbox":{"label":"Sandbox Tier:","note":"browse everything with masked usernames - no card required.","signUp":"Sign up free"},"freePlan":{"note":"You're on the {plan} right now - usernames are masked. Unmask with Weekly or Monthly.","plan":"Free plan"},"weekly":{"name":"Weekly Global","desc":"Full intel. Lighter commitment.","cta":"Start Weekly - ${price}"},"monthly":{"name":"Monthly Global","desc":"Same intel. Best price for rosters.","cta":"Start Monthly - ${price}"},"perWeek":"/wk","perMonth":"/mo","bestPrice":"BEST PRICE","perks":{"leagueAccess":"Full league access, every active region","topGifterIntel":"Top-gifter intel · real names","rankHistory":"90-day rank history charts","creatorFinder":"New creator finder","radarBot":"Telegram radar bot","dmAlerts":"DM alerts","ultraApi":"Ultra API","wsAccess":"WebSocket access","bulkCopy":"Bulk copy","wholeBoard":"whole board in one tap","everythingWeekly":"Everything in Weekly, plus:","regionalChannels":"regional channels + DM alerts","wsIncluded":"WebSocket access included","massCopy":"mass-copy usernames","gifterGraph":"Cross-creator gifter graph","prioritySupport":"Priority support · agency dashboard","bestPriceRosters":"Best price for ongoing rosters · cancel anytime"},"footnote":"Prices in USD · Secured by Stripe · Cancel anytime","back":"Back","badgeWeekly":"WEEKLY","badgeMonthly":"MONTHLY","preparing":"Preparing secure checkout...","processing":"Processing...","pay":"Pay ${amount}","payFootnote":"Secured by Stripe · Cancel anytime in /agency/billing","confirming":"Confirming payment...","success":{"title":"Access Unlocked","weekly":"Weekly Global activated.","monthly":"Monthly Global activated.","cta":"View Your Analytics"},"errors":{"init":"Could not initialize payment. Please try again.","startFailed":"Failed to start checkout","payFailed":"Payment failed."}},"agencyNotes":{"title":"Manager Notes","clickToAdd":"click to add note","status":{"saving":"Saving...","saved":"Saved","unsaved":"Unsaved","synced":"Synced"},"loading":"Loading...","crmStatus":"CRM Status","crm":{"newTarget":"New Target","outreachSent":"Outreach Sent","inTalks":"In Talks","signed":"Signed","cold":"Cold"},"eligibilityVerified":"Eligibility Verified","verified":"Verified","unverified":"Unverified","score":"score {score}","actions":{"adding":"Adding...","watching":"Watching","addToWatchlist":"Add to Watchlist","onRoster":"On Roster","addToRoster":"Add to Roster"},"placeholder":"Notes only your team sees. Outreach attempts, owner intel, payout terms, response patterns...","dashboard":"Dashboard","saveNow":"Save Now","errors":{"watchlist":"Watchlist failed","roster":"Roster add failed","save":"Save failed"}},"widgets":{"diamondHistory":{"title":"Diamond History","subtitle":"Monthly diamonds earned - Agency intel","loading":"Loading history...","lockedAgency":{"title":"Diamond history is an Agency feature","body":"See a creator's monthly earning trend before you spend a recruiting slot.","cta":"Unlock with Agency"},"lockedDailyCap":{"title":"Daily history limit reached","body":"You have viewed the maximum creator histories for today. Resets in 24 hours."},"avgPerMonth":"Avg / month","monthsTracked":"{count} mo tracked","liveDays":"{days}d","footnote":"Figures are banded ranges, not exact totals."},"wdrGauge":{"title":"Whale Dependency","subtitle":"Top 3 gifters · share of all-time diamonds","tips":{"captive":"Top 3 gifters drive most revenue - walk away and the creator collapses.","dependent":"Highly concentrated - a handful of whales swing income hard.","diversified":"Spread across many backers - losing one whale won't hurt much.","independent":"Broad community support - minimal dependency on any single gifter."},"verdicts":{"CAPTIVE":"CAPTIVE","DEPENDENT":"DEPENDENT","DIVERSIFIED":"DIVERSIFIED","INDEPENDENT":"INDEPENDENT"}},"churnGraph":{"title":"Whale Retention · 90d","subtitle":"{pct}% avg · {verdict}","tip":"% of each week's top 20 whales still active in the latest week. High = sticky community.","verdicts":{"LOYAL_COMMUNITY":"LOYAL COMMUNITY","STEADY":"STEADY","BLEEDING":"BLEEDING","CHURNING":"CHURNING","UNKNOWN":"UNKNOWN"},"tooltip":{"week":"Week of {week}","retained":"{pct}% retained","stillActive":"{retained} of {total} still active"}},"sniperGap":{"target":"TARGET · {region} · Rank #{rank}","overtake":"to overtake from #{rank}"},"recentDrops":{"title":"Recent Drops","subtitle":"Cheat sheet - what they spent & on whom","today":"TODAY","loading":"Loading...","empty":"No drops tracked yet.","sends":"{count} sends","scrollMore":"Scroll for more","ago":{"seconds":"{n}s","minutes":"{n}m","hours":"{n}h","days":"{n}d"}},"walletFatigue":{"title":"Wallet Fatigue","subtitleMasked":"30-day burn pattern · upgrade to Agency for numbers","subtitleUsd":"30-day burn · ${usd}/day avg · peak ◇{peak}","subtitleDiamonds":"30-day burn · ◇{avg}/day avg · peak ◇{peak}","movingAvgLabel":"7-DAY AVG"},"loyaltyDonut":{"title":"Asset Diversification","subtitleOne":"{count} creator supported · {verdict}","subtitleMany":"{count} creators supported · {verdict}","others":"Others","verdicts":{"loyal":"LOYAL","focused":"FOCUSED","split":"SPLIT","scattered":"SCATTERED"},"tooltipShare":"{pct}% of spend"},"lockedValue":{"title":"Agency feature","ariaLabel":"Locked, Agency feature","label":"Locked"}},"fin":{"eyebrow":"Financials","title":"Financial analytics","subtitleCreator":"Estimated earnings for {handle}","subtitleGifter":"Estimated spend by {handle}","estimated":"Estimated","basisCreator":"Estimated creator payout at {rate} per diamond. Actual payouts vary with region, agency split and withdrawal fees.","basisGifter":"Estimated spend at {rate} per coin, the lowest standard coin price. Coin packs bought in app stores cost more.","periodLabel":"Period","range":{"today":"Today","yesterday":"Yesterday","7d":"7 days","30d":"30 days","mtd":"This month","lm":"Last month","90d":"90 days","12m":"12 months","custom":"Custom"},"granLabel":"Group by","gran":{"day":"Day","week":"Week","month":"Month"},"from":"From","to":"To","apply":"Apply","vsPrevRange":"compared with {from} - {to}","noCompare":"No comparison available for this period","noCompareShort":"No comparison","partial":"Gift history is kept for 90 days, so figures start on {date}.","kpiLabel":"Key figures","kpi":{"usdCreator":"Earnings","usdGifter":"Spend","diamonds":"Diamonds","gifts":"Gifts","counterpartsCreator":"Unique gifters","counterpartsGifter":"Creators supported","streamsCreator":"Streams","streamsGifter":"Streams joined","liveHoursCreator":"Live hours","liveHoursGifter":"Hours active","usdPerStream":"Per stream","usdPerHour":"Per live hour"},"up":"Up","down":"Down","liveHoursNote":"Hours are measured from the first to the last gift of each stream.","liveHoursNoteSessions":"Live hours come from our recorded session times for each stream.","liveHoursNoteMixed":"Live hours come from our recorded session times; streams without one count from the first to the last gift.","chartTitleCreator":"Earnings over time","chartTitleGifter":"Spend over time","chartCurrent":"This period","chartPrevious":"Previous period","chartOther":"Other gifts","chartAria":"Chart of {total} across {n} periods, split by gift, with the previous period as a dashed line.","heatmapTitle":"When the money comes in","heatmapSub":"By day of week and hour, UTC","topGifters":"Top gifters","topCreators":"Top creators supported","topGifts":"Top gifts","recentStreams":"Recent streams","colName":"Name","colUsd":"USD","colShare":"Share","colChange":"Change","colGift":"Gift","colQty":"Quantity","colStarted":"Started","colCreator":"Creator","colDuration":"Duration","colGifts":"Gifts","colGifters":"Gifters","colGiftersIn":"Gifters in stream","colPeak":"Peak minute","anonymous":"Anonymous gifter","hiddenName":"Private","new":"New","showAll":"Show all {n}","empty":"No gifts in this period","export":"Export CSV","loading":"Updating","error":"Analytics are unavailable right now. Try again in a moment.","retry":"Retry","private":"This gifter keeps their analytics private.","minutes":"{n} min","hoursMinutes":"{h} h {m} min","lockTitle":"Unlock financial analytics","lockBodyCreator":"See estimated dollar earnings, top gifters, gift mix and stream by stream revenue for any creator, by day, week or month.","lockBodyGifter":"See estimated dollar spend, the creators they support, gift mix and stream by stream activity for any gifter, by day, week or month.","priceFrom":"Agency plans from {price} a month","lockCta":"See Agency plans","sampleNote":"Preview with sample shapes, not real figures.","sourceBoard":"Earnings for this period come from the daily leaderboard score. Gift-level detail was not captured, so gift counts, gifters and the hourly view are not available.","sourceMixed":"Earnings combine captured gifts with the daily leaderboard score. Captured gifts cover {pct} of the total; the gifter and gift tables show captured gifts only.","notCaptured":"Not captured","emptyNoGifts":"Gift-level detail was not captured for this period","untimed":"Streams without a recorded duration are not counted in live hours: {n}.","boardStream":"Gifts not captured","giftsOnly":"(captured gifts only)"}},"shared":{"polygonalSignTotem":{"carouselAria":"TikTok Live demo carousel","previousSlide":"Previous slide","nextSlide":"Next slide","loading":"Loading 3D demo carousel...","eligible":{"title":"Find New {region} Creators","badge":"NEW AGENCY FEATURE","cta":"Copy 30 usernames"},"gifters":{"title":"Gifter Intel","badge":"LIVE","topToday":"Top gifters today - {region}","line":"Top gifters, big-gift drops, and the creators they support.","sub":"Per region, refreshed around the clock.","cta":"Explore gifters"},"leagues":{"title":"Ranks: Leagues + Gaming","creatorLeagueRanks":"Creator & League Ranks","regions":"regions","brackets":"brackets","liveNow":"live now","regionLive":"{n} live","openCreator":"Open creator {'@'}{handle}","gamingRanks":"Gaming Ranks","new":"NEW","gamingCopy":"The live in-app gaming leaderboard, all regions. Agency-exclusive.","open":"Open","cta":"Open /ranking"},"regionNames":{"balkans":"Balkans","japan":"Japan","unitedStates":"United States","dach":"Germany & DACH","brazil":"Brazil"},"player":{"title":"Live Player","finding":"Finding a live channel...","meta":"FLV playback + auto-recover + 5s startup","cta":"Open the watch demo"},"events":{"title":"Live Events","connecting":"Connecting to live feed...","cta":"WebSocket reference"}},"liveVideoPlayer":{"live":"LIVE","connectingTo":"Connecting to {user} live","offline":"Stream offline","offlineSub":"Enter a live TikTok username above","liveDemo":"LIVE DEMO","demoEnded":"DEMO ENDED","tryItNow":"Try it now →","mute":"Mute","unmute":"Unmute","switchToLandscape":"Switch to 16:9","switchToPortrait":"Switch to 9:16","fullscreen":"Fullscreen","streamQuality":"Stream quality","closeEsc":"Close (Esc)","closeFullscreen":"Close fullscreen","exitFullscreen":"Exit fullscreen","qualityAuto":"Auto"},"liveDemo":{"monitorLabel":"Live Stream Monitor","usernamePlaceholder":"TikTok username...","usernameLabel":"TikTok username","connecting":"Connecting","stop":"Stop","connect":"Connect","eventsLog":"Live stream events","eventsCount":"{n} events","viewersCount":"{n} viewers","dismissError":"Dismiss error","connectionFailed":"Connection failed - rotating channel","status":{"connecting":"Connecting...","live":"Live","offline":"Offline"},"feed":{"userFallback":"user","giftFallback":"gift","sent":"sent {gift} x{count}","followed":"followed","joined":"joined","likedBurst":"liked +{n} (compound burst)","liked":"liked +{n}","viewersUser":"viewers","viewersNow":"now {n}","battleUser":"battle","battleStarted":"Battle / co-host started","battleEnded":"Battle ended","subscribed":"subscribed ({months}mo)","envelope":"red envelope ({n} diamonds)","systemUser":"system","pinned":"Pinned message"}},"homeGamingRanksBar":{"title":"Gaming Ranks","tag":"NEW · AGENCY EXCLUSIVE","regionGaming":"{region} Gaming","defaultRegion":"United States","regionAria":"Gaming ranks region","allRegions":"All regions","top5Now":"Top 5 now","fullBoard":"Full board","live":"LIVE","empty":"No gaming board is live in this region right now.","lockNote":"Locked names unlock on any agency plan.","seePlans":"See plans"},"homeHeroTabs":{"tablistAria":"Product surfaces","tabs":{"intel":"Agency Intel","api":"Live API"},"intelEyebrow":"Live data surface","intelSubs":{"creators":"Creators","gifters":"Gifters","rankings":"Rankings","gaming":"Gaming","shop":"Shop"},"liveCount":"{n} live","liveNow":"Live now","warmingUp":"Warming up the live board...","apiEyebrow":"Build on the stream","apiSubs":{"gifts":"Gifts","events":"Events","websocket":"WebSocket","webhooks":"Webhooks"},"yourApp":"Your app","openDocs":"Open docs"},"bookLiveDemo":{"brand":"Book Live Demo","closeAria":"Close demo request","stepOf":"Step {step} of {total}","back":"Back","persona":{"title":"I'm a...","developer":{"label":"Developer","sub":"Building on the API"},"liveAgency":{"label":"Live Agency","sub":"Manage LIVE creators"},"shopAgency":{"label":"Shop Agency","sub":"Drive Shop & sales"}},"interest":{"title":"Interested in","enterprise":"Enterprise","customRequest":"Custom request"},"trial":{"tag":"3-day Pro Pass","title":"Skip the call - just try Pro","lede":"We run live demos for Ultra and above, but you do not need a call to see {plan} in action. Grab the 3-day Pro Pass and explore everything yourself. Cancel anytime.","cta":"Get the 3-day Pro Pass"},"details":{"title":"A few details","firstName":"First name","agencyName":"Agency name","email":"Email","region":"Region","optional":"optional","regionPlaceholder":"US, EU, SEA...","callDetails":"A few details about the call","callDetailsPlaceholder":"What would you like to cover?","bestTime":"Best time to schedule","bestTimePlaceholder":"Weekday mornings, after 3pm...","timezone":"Time zone","usingAccountEmail":"Using your account email","invalidEmail":"Enter a valid email."},"done":{"title":"Request received","lede":"We've received your request - someone from our team will reach back as soon as possible. Thank you.","close":"Close"},"sending":"Sending...","submit":"Submit request","submitError":"Something went wrong sending your request. Please try again."}},"tools":{"giftDetail":{"notFound":"Gift not found.","backToCatalog":"Back to catalog","allGifts":"← All gifts","fallbackName":"TikTok LIVE gift","hero":{"titleSub":"TikTok LIVE gift","titleSubPriced":"TikTok LIVE gift, {coins}","subPriced":"Sending one {gift} costs {coins}, about {buyerUsd} at the reference rate of {rate} coins per $1. The creator is credited {diamonds}, about {creatorUsd} in payout.","subUnpriced":"A virtual gift sent on TikTok LIVE. We do not have a confirmed coin price for this gift yet."},"stats":{"coin":"Coin","coins":"Coins"},"buyerCost":"Buyer cost (approx.)","creatorPayout":"Creator payout (approx.)","cta":{"download":"Download PNG","overlays":"Build TikTok LIVE Overlays"},"breakdown":{"title":"What {gift} {costs} and what the creator gets","titleAccent":"costs","giftsSent":"Gifts sent","diamondsToCreator":"Diamonds to creator","qtyRow":"{qty} x {gift}","note":"Buyer cost uses a reference rate of {rate} coins per $1. TikTok sells coins in packs, and the price per coin depends on the pack size, the store and your region; web checkout and in-app purchases (which include app store fees) usually cost more than this rate. Creator payout uses ${payout} per diamond, before any agency share. {link}.","calculatorLink":"Convert any amount with the diamonds calculator"},"pitch":{"api":{"title":"Free TikTok LIVE API","body":"Connect to any TikTok LIVE stream over WebSocket. Receive every gift event - including {gift} - within 50 ms. Sandbox tier free, no credit card.","link":"Read the docs →"},"gifters":{"title":"See top gifters","body":"Browse the global gifter leaderboard - real users sending {gift} and every other gift across {count} regions, updated continuously.","link":"Gifters leaderboard →"},"sdk":{"title":"Production-ready SDK","body":"One npm install -> live events in your terminal. Node.js + Python officially supported. Used by 1000+ developers.","link":"Quick start →"}},"related":{"title":"Gifts at a similar {price}","titleAccent":"price"},"units":{"coin":"{count} coin","coins":"{count} coins","diamond":"{count} diamond","diamonds":"{count} diamonds"},"faq":{"title":"{gift} gift {faq}","titleAccent":"FAQ","price":{"q":"How much is the {gift} gift on TikTok?","a":"{gift} costs {coins}. At the reference rate of {rate} coins per $1 that is about {usd}. The real checkout price depends on the coin pack, store and region, and in-app purchases usually cost more because of app store fees."},"earn":{"q":"How much does a creator earn from one {gift}?","a":"The creator is credited {diamonds}. At the payout rate of ${payout} per diamond that is about {usd}, before any agency share."},"ten":{"q":"How many coins are 10 {gift} gifts?","a":"10 {gift} gifts cost {coins} (about {buyerUsd}) and credit the creator {diamonds} (about {creatorUsd})."},"similar":{"q":"Which TikTok gifts cost about the same as {gift}?","a":"Gifts at a similar price include {list}."},"listAnd":"{items} and {last}"},"final":{"title":"Want every gift event in {realTime}?","titleAccent":"real time","body":"Drop the free SDK in your app and stream gift, chat, like, follow, and battle events from any TikTok LIVE room.","getKey":"Get API Key (Free)","gifters":"See Gifters Leaderboard"},"seo":{"titleMissing":"TikTok LIVE Gift","titleUnpriced":"TikTok {gift} Gift","titlePricedOne":"TikTok {gift} Gift: {count} Coin (about {usd})","titlePricedMany":"TikTok {gift} Gift: {count} Coins (about {usd})","descriptionMissing":"TikTok LIVE gift details: coin price, creator payout in diamonds and similar gifts.","descriptionUnpriced":"{gift} is a TikTok LIVE virtual gift. Free transparent PNG download and live gift events through the tik.tools API.","descriptionLong":"TikTok {gift} gift costs {coins} (about {buyerUsd}). The creator receives {diamonds}, about {creatorUsd}. Price table and similar gifts.","descriptionMedium":"TikTok {gift} gift costs {coins} (about {buyerUsd}). The creator receives {diamonds}, about {creatorUsd}.","descriptionShort":"{gift}: {coins} (about {buyerUsd}); creator gets {diamonds} (about {creatorUsd})."},"jsonLd":{"breadcrumbHome":"Home","breadcrumbGifts":"TikTok Gifts"},"og":{"subtitle":"{coins} / about {usd}","badge":"GIFT"}},"guidesHub":{"hero":{"badge":"Developer Guides","title":"TikTok LIVE API","titleHighlight":"Developer Guides","subtitle":"Step-by-step tutorials to help you build with TikTok LIVE data. From your first connection to production-ready applications."},"more":{"title":"More Resources","docs":{"title":"API Documentation","desc":"Complete SDK reference, WebSocket events, REST endpoints, and code examples."},"useCases":{"title":"Use Cases","desc":"See what developers build - assistants, overlays, analytics, AI integrations, and more."}},"seo":{"title":"TikTok LIVE API Developer Guides - Tutorials & Quick Start","description":"Step-by-step TikTok LIVE API tutorials: getting started guide, build a chat assistant, create OBS stream overlays, connect from Python, WebSocket API reference. Free tier available.","ogTitle":"TikTok LIVE API Developer Guides - Tutorials & Quick Start","ogDescription":"Quick start guide, chat assistant tutorial, stream overlay tutorial, events reference - learn to build with TikTok LIVE data step by step."},"og":{"title":"TikTok LIVE API Guides","subtitle":"Tutorials and quickstarts for building on TikTok LIVE.","badge":"GUIDE"},"minRead":"{count} min read","levels":{"beginner":"Beginner","intermediate":"Intermediate","allLevels":"All Levels"},"badges":{"quickStart":"Quick Start","guide":"Guide","tutorial":"Tutorial","reference":"Reference","migration":"Migration"},"guides":{"gettingStarted":{"title":"Getting Started with TikTok LIVE API","desc":"Install the SDK, get a free API key, connect to any live stream, and receive real-time events in under 30 seconds."},"websocket":{"title":"TikTok LIVE WebSocket API","desc":"Connect to any TikTok LIVE stream via WebSocket. Receive real-time chat, gifts, viewer counts, battles with sub-50ms latency."},"webhooks":{"title":"TikTok LIVE Webhooks","desc":"Get a signed HTTPS POST when a creator goes live or ends a stream. live.start and live.end with retries, replay and signature checks."},"chatAssistant":{"title":"Build a TikTok Live Chat Assistant in 5 Minutes","desc":"Create a fully functional chat assistant that responds to commands, tracks gifts, maintains a leaderboard, and welcomes viewers."},"overlay":{"title":"Build a TikTok LIVE Stream Overlay","desc":"Create an OBS-compatible browser source overlay with real-time chat feed, animated gift alerts, and viewer count display."},"python":{"title":"TikTok LIVE API Python Guide","desc":"Connect to any TikTok LIVE stream from Python using WebSocket. Real-time chat, gifts, viewer counts - a production-ready alternative to TikTokLive library."},"events":{"title":"TikTok LIVE API Events Reference","desc":"Complete reference for all real-time WebSocket events: chat, gift, like, follow, viewer count, battles, subscriptions, and more."},"tts":{"title":"Text to Speech TTS on TikTok Live","desc":"Learn how to use text-to-speech on TikTok Live streams. Build TTS assistants, read chat aloud, and create interactive voice experiences."},"migrate":{"title":"Migrate from TikTok-Live-Connector","desc":"Switch from tiktok-live-connector to tiktok-live-api in one line. Same event names, same constructor - just change the import."}}},"agencyGuidesHub":{"hero":{"badge":"For Agencies","title":"TikTok Agency","titleHighlight":"Guides","subtitle":"Practical playbooks for finding, qualifying and signing TikTok LIVE creators - built on live earnings, region and growth data."},"guides":{"findCreators":{"title":"How to Find Creators for Your TikTok Agency","desc":"The full playbook: leaderboards, live-now, rising, eligibility and vetting."},"byCountry":{"title":"Find TikTok Creators by Country","desc":"Region-by-region discovery using the 28+ country leaderboards."},"eligibility":{"title":"Check TikTok Creator Eligibility","desc":"Qualify a shortlist to creators who can actually join an agency."}},"cta":{"title":"Recruiting across many regions?","body":"Agency PASS unlocks the full boards, league tiers and history.","button":"See Agency PASS"},"seo":{"title":"TikTok Agency Guides - Find and Sign Creators {'|'} TikTool","description":"Guides for TikTok LIVE agencies: how to find creators by country and niche, qualify eligibility, and vet earnings before signing. Built on live tik.tools data.","ogTitle":"TikTok Agency Guides","ogDescription":"Playbooks for finding, qualifying and signing TikTok LIVE creators on live data."},"jsonLd":{"breadcrumbHome":"Home","breadcrumbPage":"Agency Guides"},"og":{"title":"TikTok Agency Guides","subtitle":"Find, qualify and sign creators.","badge":"FOR AGENCIES"}},"wsDecoder":{"hero":{"eyebrow":"Developer Tool","title":"TikTok LIVE {accent}","titleAccent":"WebSocket Decoder","subtitle":"Paste a base64 or hex frame captured from TikTok's WebCast WebSocket. We decode the protobuf wire format, auto-gunzip the inner payload, and render the field tree. Runs against TikTool's signing infra - no schema upload required."},"input":{"label":"Input","placeholder":"Paste a base64-encoded WebCast frame here...","decode":"Decode","decoding":"Decoding...","loadSample":"Load sample frame","clear":"Clear"},"output":{"label":"Decoded","bytes":"{count} bytes","gzipped":"gzipped payload","copyJson":"Copy JSON","empty":"Decoded protobuf field tree renders here.","outerFrame":"Outer frame","innerPayload":"Inner payload (auto-gunzipped)"},"howto":{"title":"How to capture a WebCast frame","steps":{"open":"Open a TikTok LIVE stream in Chrome.","devtools":"DevTools > Network > WS. Click the {code} WebSocket.","pick":"Pick any message frame. Right-click > \"Copy message\".","paste":"Paste it here. We accept both base64 and hex representations."},"tail":"Capturing from your own clients? The official Node.js + Python SDKs expose each raw frame via the {code} event - log it once, paste here for inspection. {link}","docsLink":"Full WebSocket docs"},"errors":{"decodeFailed":"Decode failed"},"seo":{"title":"TikTok LIVE WebSocket Decoder","description":"Decode base64 WebSocket frames from TikTok's WebCast push API. Paste a captured message, auto-gunzip the payload, inspect the protobuf field tree.","ogTitle":"TikTok LIVE WebSocket Decoder","ogDescription":"Decode base64 WebSocket frames from TikTok's WebCast push API. Paste, gunzip, inspect the protobuf field tree."},"protoTree":{"fieldOne":"{count} field","fieldMany":"{count} fields"}},"agencyNames":{"seo":{"title":"TikTok Live Agency Names","description":"New creators, new gifters, leaderboards, leagues, gaming ranks, live shops.","ogTitle":"TikTok Live Agency Names"},"jsonLd":{"name":"TikTok Live Agency Names","about":"TikTok LIVE agencies"},"og":{"title":"TikTok Live Agency Names"},"hero":{"eyebrow":"TikTok LIVE · Agencies","title":"TikTok Live data {accent}","titleAccent":"for Agency"},"pillarsTitle":"Everything an agency tracks, in one place","pillars":{"newCreators":{"title":"New creators","copy":"Fresh creators surfacing on LIVE leaderboards, ready to check and recruit."},"newGifters":{"title":"New gifters","copy":"Rising whales and top gifters across every region."},"leaderboards":{"title":"Leaderboards","copy":"Regional and global TikTok LIVE creator rankings, updated live."},"leagues":{"title":"Leagues","copy":"A1 to D5 Diamond Rush league ladders per region."},"gamingRanks":{"title":"Gaming ranks","copy":"Live gaming leaderboards by game and region."},"liveShops":{"title":"Live shops","copy":"Live shopping activity, products and auctions in real time."}},"links":{"title":"Explore the platform","agencyDirectory":"Agency directory","agencyDashboard":"Agency dashboard","agencyPulse":"Agency pulse","newCreators":"New creators","risingCreators":"Rising creators","regionalLeaderboards":"Regional leaderboards","leagues":"Leagues","topGifters":"Top gifters","gamingRanks":"Gaming ranks","giftCatalog":"Gift catalog","bestTime":"Best time to stream","diamondsCalculator":"Diamonds calculator","gifterLevels":"Gifter levels","api":"TikTok LIVE API","docs":"Developer docs","pricing":"Pricing"},"cta":{"title":"List your TikTok LIVE agency for free","body":"Claim your agency name, feature your top creators, and get found first.","button":"List your agency →"}},"gamingRanks":{"nav":{"creators":"Creators","gifters":"Gifters","gaming":"Gaming"},"hero":{"badge":"Agency Feature","badgeIncluded":"Included in {plan}","badgeGlobal":"Agency Global Feature","badgeNew":"NEW","title":"TikTok LIVE {accent}","titleAccent":"Gaming Ranks","subtitle":"The live gaming leaderboard TikTok shows inside the app - every region, refreshed continuously. See which creators are topping the Gaming Ranking right now, ranked by diamonds, with estimated earnings. Agency-exclusive.","login":"Log in","unlock":"Unlock with Agency"},"regionGlobal":"Global","tabs":{"overall":"{region} Gaming","shopping":"Shopping"},"titles":{"shopping":"Shopping Ranking","gaming":"Gaming Ranking","gameWeekly":"{game} · Weekly","gameFallback":"Game"},"meta":{"ranked":"ranked","updated":"updated {time}","justNow":"just now","minutesAgo":"{n}m ago","hoursAgo":"{n}h ago"},"reset":{"nextUpdate":"Next update","resetsIn":"Resets in","dailyResetIn":"Daily reset in","weeklyResetIn":"Weekly reset in"},"resetTitle":{"weekly":"{region} weekly resets","hourly":"{region} hourly resets","daily":"{region} daily resets"},"countdown":{"now":"now","daysHours":"{d}d {h}h","hoursMinutes":"{h}h {m}m"},"copyUsernames":"Copy usernames","shareTitle":"{region} TikTok LIVE Gaming Ranks","share":"Share","loading":{"shopping":"Loading shopping ranks...","gaming":"Loading gaming ranks..."},"table":{"creator":"Creator","gmv":"GMV","diamonds":"Diamonds","estEarnings":"Est. earnings","peakRank":"Peak #","peakDiamonds":"Peak diamonds","toReenter":"To re-enter","then":"Then","now":"Now","bestRank":"Best #","diamondsGained":"Diamonds gained"},"empty":{"shopping":"No shopping ranks for this region yet.","gaming":"No gaming ranks for this region yet.","sub":"Boards fill automatically as creators go live - check another region or come back shortly."},"upsell":{"board":{"titleShopping":"Unlock the full shopping rank, all regions","titleGaming":"Unlock every gaming rank, all regions","bodyShopping":"You are seeing a 3-name preview - GMV scores are real, names are hidden. {plan} unlocks the full shopping board unmasked across all regions, plus the recruiting feed, gifter intel and the private Telegram bot.","bodyGaming":"You are seeing a 3-name preview - scores are real, names are hidden. {starterPlan} and {plan} both unlock the full board unmasked, plus the recruiting feed and the private Telegram bot."},"movers":{"titleShopping":"Unlock the full shopping movers feed","titleGaming":"Unlock the full movers feed","bodyShopping":"Names are hidden - peak ranks and GMV scores are real. {plan} unmasks every seller who churned through the shopping ranks this week, across all regions, for live recruiting.","bodyGaming":"Names are hidden - peak ranks and scores are real. Any agency plan unmasks every creator who churned through the ranks today, plus diamonds-to-reenter for live recruiting."},"rewind":{"title":"Unlock the full rewind","body":"Names are hidden - the ranks, peaks and diamond gains are real. Any agency plan unmasks every creator who entered, dropped out or climbed, in every window up to 3 days back."},"shoppingFeature":"The shopping board","upgradeTo":"Upgrade to {plan}","seePlans":"See Agency plans"},"movers":{"titleShopping":"Seen this week","tagShopping":"below top 99 now","titleGaming":"Entered Top 99 today","tagGaming":"below cutoff now","count":"{count} movers","noteShopping":"Seen in the {region} Shopping Ranking this week, below the current top 99 right now. The reset-cycle churn TikTok never shows.","noteGaming":"Creators who held a Top 99 spot at some point during today's cycle but sit below the current #99 cutoff ({cutoff} diamonds) right now. The reset-time churn TikTok never shows."},"rewind":{"title":"Rewind","note":"The board as it moved over the last window, not just how it looks now. {best} is the highest rank a creator actually touched at any point inside it, so a spike that rose and fell back before you looked still shows up.","replaying":"Replaying the board...","noHistory":"No usable history for this board in this window yet.","nobody":"Nobody in this list for the last {window}.","since":"since {time}","windows":{"h2":"2 hours","h6":"6 hours","h12":"12 hours","h24":"24 hours","d3":"3 days"},"views":{"movers":"Climbed","entered":"Entered","left":"Dropped out"}},"links":{"creators":"Creators Leaderboard","gifters":"Gifters Leaderboard","newCreators":"New Creators","pulseBot":"Telegram Pulse Bot"},"seo":{"title":"TikTok LIVE Gaming Ranks · {region}","description":"TikTok LIVE Gaming Ranks for {region} - the live in-app gaming leaderboard, {count} creators ranked by diamonds with estimated earnings. Agency-exclusive, refreshed continuously across all regions.","ogTitle":"TikTok LIVE Gaming Ranks"},"og":{"title":"TikTok LIVE Gaming Ranks","subtitle":"Top gaming creators across regions, refreshed live.","badge":"GAMING"}}},"agencyGuides":{"common":{"badge":"Agency Guide","ogBadge":"AGENCY GUIDE","faqHeading":"Frequently asked questions","relatedHeading":"Related agency guides","onThisPage":"On This Page","sidebarDemo":"Live board demo","sidebarFaq":"FAQ","loadingLeaderboard":"Loading live leaderboard...","agencyPass":"Agency PASS","breadcrumbHome":"Home","breadcrumbGuides":"Agency Guides"},"regions":{"unitedStates":"United States","uk":"UK","brazil":"Brazil","balkans":"Balkans","indonesia":"Indonesia","latam":"LATAM"},"leaderboardDemo":{"regionLabel":"Region","liveNow":"{count} live now","loading":"Loading live board...","liveBadge":"LIVE","diamondsToday":"diamonds today","empty":"No board data right now. Try another region.","upsell":"Entries past the top two are masked on the free view. {link} unmask the full top 100, every region, in real time.","upsellLink":"Agency plans","openBoard":"Open the live {region} board"},"findCreators":{"hero":{"title":"How to Find Creators for","titleHighlight":"Your TikTok Agency","subtitle":"The practical playbook agencies use to discover, qualify and sign TikTok LIVE creators - by country, by niche, by growth, and by real earnings. Every method below runs on live tik.tools data."},"lead":"If you run a TikTok LIVE agency, the hard part is not managing creators - it is {strong}. The most reliable signal of a creator worth signing is public and measurable: who is actually earning diamonds, in which country, growing how fast, and live right now. tik.tools turns that signal into ranked, filterable lists you can work from every day. Here is exactly how to use it.","leadStrong":"finding the right ones before a competitor does","tldr":{"text":"{label} Start from the {ranking} for your target country, filter to {live}, watch {rising} for early growth, confirm {eligibility} yourself, then vet earnings history on each creator's profile before you reach out. Agencies scale this with {pass}.","label":"Short answer:","ranking":"regional leaderboards","live":"creators live right now","rising":"rising creators","eligibility":"agency eligibility"},"demo":{"heading":"Try it: live creators earning right now","body":"This is a real board, updating live. Pick a region - these are the top TikTok LIVE earners today. On the free view the top two are shown; an agency plan unmasks the full top 100 across every region."},"methodsHeading":"Six ways agencies find creators on tik.tools","methods":{"regional":{"title":"Regional leaderboards - who earns the most in your country","body":"The {link} rank the top 100 TikTok LIVE creators by diamonds earned today, for {count} regions. This is the single best starting point: high earners are proven monetisers who convert gifts into revenue. Open your target country, sort by today or by all-time, and shortlist creators who are consistently near the top.","link":"country leaderboards","tip":"Best for: proven earners, established creators, market mapping by country."},"liveNow":{"title":"Live now - reach creators while they are streaming","body":"{link} shows every creator who is broadcasting at this moment, ranked by current room activity. Contacting a creator on the day they are live - when they can see their own numbers - lands far better than a cold message a week later. Filter to your region and category and work the list in real time.","link":"Popular Live","tip":"Best for: timely outreach, catching creators mid-momentum."},"rising":{"title":"Rising creators - sign them before they blow up","body":"The {link} surfaces creators whose earnings are accelerating fastest, not just whoever is already big. This is where agencies win: a creator climbing quickly is cheaper to sign and more receptive than an established name. Check it daily and move on the steep climbers.","link":"Rising board","tip":"Best for: early signings, lower acquisition cost, long-term upside."},"category":{"title":"Category and gaming boards - find creators in your niche","body":"If your agency specialises, use the category boards. The {link} rank live gaming creators per region and per game, updated in near real time. Niche-specific discovery beats a generic top-100 when you need creators who fit a particular vertical.","link":"gaming leaderboards","tip":"Best for: specialised agencies, niche rosters, category fit."},"eligibility":{"title":"Eligibility check - confirm they can actually join an agency","body":"Before you spend time on outreach, confirm a creator is eligible for agency partnership. Copy the handles from the {link} board and check them yourself with the Chrome eligibility checker or a bulk paste in your backstage, so you are not chasing creators who cannot sign. This alone saves hours of dead-end conversations.","link":"new creators","tip":"Best for: qualifying a shortlist, avoiding wasted outreach."},"vet":{"title":"Vet earnings history before you reach out","body":"Every creator has a profile page with their diamond history, home region, live cadence and recent ranking positions. A creator who spiked once is different from one who earns steadily every week. Read the history, confirm the trend is real, and only then send a tailored offer. Use the {link} view to track a whole shortlist over time.","link":"Agency Pulse","tip":"Best for: due diligence, personalised outreach, avoiding one-hit wonders."}},"scale":{"heading":"Doing it at scale","body":"Working a few countries by hand is fine to start. Once you are recruiting across many regions or want the full unmasked boards, league (class) data and history, agencies move to {pass} - it unlocks the complete top-100 for every region, competitive league tiers, growth history and multi-region tracking in one place. Teams that recruit programmatically pull the same data through the {api}.","apiLink":"leaderboard API"},"cta":{"title":"Ready to build your shortlist?","text":"Open the live boards and start with your target country.","button":"Open live leaderboards"},"faq":{"best":{"q":"What is the best way to find TikTok creators for an agency?","a":"Start from the regional leaderboards for your target country - they rank the top 100 TikTok LIVE creators by diamonds earned, so you are looking at proven monetisers. Cross-reference with the rising board to catch fast-growing creators early, filter to who is live right now for timely outreach, confirm agency eligibility, and vet each creator's earnings history before reaching out."},"country":{"q":"How do I find TikTok creators in a specific country?","a":"Open the {link} and select your region - tik.tools covers {count} regions including the United States, United Kingdom, Balkans, Southeast Asia, Latin America and Brazil. Each region has its own independent top-100 board of the creators earning the most there today.","link":"country leaderboards"},"early":{"q":"How can I find TikTok creators before they get big?","a":"Use the {link}. Instead of ranking by total earnings, it surfaces creators whose earnings are accelerating fastest. Signing a fast climber early costs less and has more upside than chasing an already-established name.","link":"rising creators board"},"eligible":{"q":"How do I know if a TikTok creator is eligible to join an agency?","a":"Copy the handles from the {link} board and check them yourself with the Chrome eligibility checker or a bulk paste in your TikTok backstage. Qualifying a shortlist first means you only spend outreach time on creators who can actually sign.","link":"new creators"},"vet":{"q":"How do I vet a TikTok creator before signing them?","a":"Check the creator's profile for diamond history, home region, live cadence and recent ranking positions. A creator who earns steadily every week is a safer signing than one who spiked once. Consistent, repeatable earnings are the signal to look for."},"paid":{"q":"Do I need a paid plan to find creators?","a":"No - the leaderboards, rising board and live-now views are open to browse, with the top entries visible for free. {link} unlocks the full unmasked top 100 for every region, competitive league tiers, growth history and multi-region tracking for agencies recruiting at scale."},"fresh":{"q":"How fresh is the creator data?","a":"The regional and live boards update continuously through the day, and category boards such as gaming refresh in near real time, so the creators you see are the ones earning and streaming right now - not a stale weekly snapshot."}},"next":{"byCountry":{"title":"Find creators by country","text":"Region-by-region discovery playbook"},"eligibility":{"title":"Check creator eligibility","text":"Qualify a shortlist before outreach"},"leaderboards":{"title":"Live leaderboards","text":"Top 100 earners in {count} regions"},"pass":{"text":"Full boards, leagues, history, scale"}},"sidebar":{"regional":"1. Regional leaderboards","liveNow":"2. Live now","rising":"3. Rising creators","category":"4. Category boards","eligibility":"5. Eligibility check","vet":"6. Vet earnings history"},"seo":{"title":"How to Find Creators for Your TikTok Agency (2026 Guide) {'|'} TikTool","description":"The practical playbook TikTok agencies use to find creators: regional leaderboards, live-now discovery, rising creators, category boards, eligibility checks and earnings vetting - all on live tik.tools data.","ogTitle":"How to Find Creators for Your TikTok Agency","ogDescription":"Discover, qualify and sign TikTok LIVE creators by country, niche, growth and real earnings. Six methods on live data."},"og":{"title":"Find Creators for Your TikTok Agency","subtitle":"Discover, qualify and sign on live data."},"jsonLd":{"name":"How to Find Creators for Your TikTok Agency","description":"A step-by-step method agencies use to discover, qualify and sign TikTok LIVE creators using live earnings, region and growth data.","steps":{"regional":{"name":"Start from regional leaderboards","text":"Open the country leaderboard for your target region and shortlist the top TikTok LIVE creators by diamonds earned today."},"liveNow":{"name":"Filter to creators live now","text":"Use the live-now view to reach creators while they are actively streaming for far better outreach response."},"rising":{"name":"Watch the rising board","text":"Check the rising creators board daily to sign fast-growing creators early, before competitors."},"category":{"name":"Use category boards for niche fit","text":"Use gaming and category boards to find creators in your specific vertical."},"eligibility":{"name":"Confirm agency eligibility","text":"Check your shortlist for agency eligibility in your backstage before spending time on outreach."},"vet":{"name":"Vet earnings history","text":"Review each creator's diamond history and live cadence to confirm steady, repeatable earnings before reaching out."}}}},"byCountry":{"hero":{"title":"Find TikTok Creators","titleHighlight":"by Country","subtitle":"TikTok LIVE earnings are ranked per region. Here is how agencies use the 28+ country leaderboards to map a market and build a local roster."},"lead":"TikTok LIVE gifting is intensely regional - the top earners in Brazil, the Balkans and Southeast Asia are entirely different rosters. If your agency operates in specific markets, the fastest way to find creators is to open that market's leaderboard and work top-down. Every board below is live.","demo":{"heading":"Pick your market and shortlist the top earners","body":"Each region has its own independent top-100 board ranked by diamonds earned today. Switch regions here, then open the full board for the one you recruit in."},"methodsHeading":"How to work a country board","methods":{"region":{"title":"Open your region","body":"Go to {link} and select your country or region. The board shows the top 100 creators by today's diamonds, with live status and current room.","link":"the leaderboards"},"steady":{"title":"Separate steady earners from one-off spikes","body":"Open a creator's profile to see their earnings history. Consistent weekly earners are the roster you want; a single spike is a weaker signal. Recruit the creators who repeat."},"live":{"title":"Catch them live for outreach","body":"Filter to {link} in your region and reach out on a day they are streaming - response rates are far higher than cold messages.","link":"creators live right now"},"eligibility":{"title":"Confirm eligibility before you invest time","body":"Copy your shortlist from the {link} board and check it yourself with the Chrome eligibility checker or a bulk paste in your backstage, so you only pursue creators who can actually join an agency.","link":"new creators"}},"cta":{"title":"Recruiting in more than one region?","text":"Agency PASS unlocks the full top 100 for every country.","button":"See Agency PASS"},"faq":{"regions":{"q":"Which countries have TikTok creator leaderboards?","a":"tik.tools covers {count} regions, including the United States, United Kingdom, Brazil, the Balkans, Southeast Asia, Latin America, and more. Each has its own independent top-100 board of the creators earning the most there today."},"topInCountry":{"q":"How do I find the top TikTok creators in one country?","a":"Open the {link}, select the country, and read the top-100 ranked by diamonds earned today. That is your starting shortlist of proven earners in that market.","link":"leaderboards"},"realCountry":{"q":"Are creators grouped by their real country?","a":"Yes. Boards are built from where a creator actually earns, so a country board reflects that market's real roster rather than a global mix."}},"next":{"playbook":{"title":"Find creators: full playbook","text":"All six discovery methods"},"eligibility":{"title":"Check eligibility","text":"Qualify before outreach"}},"sidebar":{"region":"1. Open your region","steady":"2. Steady vs spikes","live":"3. Catch them live","eligibility":"4. Confirm eligibility"},"seo":{"title":"Find TikTok Creators by Country - Agency Guide {'|'} TikTool","description":"How TikTok agencies find creators in a specific country using the {count} regional leaderboards. Shortlist top earners, catch them live, and confirm eligibility - on live data.","ogTitle":"Find TikTok Creators by Country","ogDescription":"Map any market with per-country TikTok LIVE leaderboards. {count} regions, live earnings."},"og":{"title":"Find TikTok Creators by Country","subtitle":"{count} regional leaderboards, live."},"jsonLd":{"breadcrumbPage":"Find Creators by Country"}},"eligibility":{"hero":{"title":"Check TikTok Creator","titleHighlight":"Eligibility","subtitle":"Before you spend time on outreach, confirm a creator can actually join an agency. Here is how agencies qualify a shortlist first."},"lead":"The most common way agencies waste recruiting time is chasing creators who cannot sign. Qualifying a shortlist up front - before any message goes out - means every conversation you start can actually lead to a partnership. tik.tools gives you the new creators to check, the Chrome eligibility checker and a bulk copy for your backstage, so you work from a clean list you verified yourself.","cta":{"title":"Open the new creators board","text":"Copy the handles, then check them in your backstage.","button":"New creators"},"methodsHeading":"How to qualify a creator before outreach","methods":{"shortlist":{"title":"Build a shortlist from the boards","body":"Start from the {ranking} or {rising} and pull together the creators you would want to sign in your market.","rankingLink":"regional leaderboards","risingLink":"rising creators"},"check":{"title":"Check eligibility yourself","body":"Copy the shortlist from the {link} board and run it through the Chrome eligibility checker or a bulk paste in your backstage. That removes accounts that do not meet TikTok's LIVE agency requirements, so you are not chasing dead ends.","link":"new creators"},"earnings":{"title":"Confirm earnings are real and repeatable","body":"Open each creator's profile and read the diamond history. Eligibility plus a steady weekly earnings trend is the combination worth pursuing - a creator who qualifies but only spiked once is a weaker bet."},"live":{"title":"Reach out while they are live","body":"Message qualified creators on a day they are {link}. Timing your outreach to an active session consistently gets a better response.","link":"streaming"}},"faq":{"canJoin":{"q":"How do I know if a TikTok creator can join an agency?","a":"Copy the handles from the {link} board and check them with the Chrome eligibility checker or a bulk paste in your TikTok backstage. A creator that passes your check is in a position to sign with an agency.","link":"new creators"},"why":{"q":"Why qualify creators before reaching out?","a":"Outreach takes time. Qualifying a shortlist first means every conversation you start can actually lead to a partnership, instead of discovering mid-conversation that a creator cannot join."},"enough":{"q":"Is eligibility enough on its own?","a":"No - pair it with earnings history. A creator who is eligible and earns steadily every week is the strongest signing. Eligibility plus a one-off spike is a weaker signal."}},"next":{"playbook":{"title":"Find creators: full playbook","text":"All six discovery methods"},"byCountry":{"title":"Find creators by country","text":"Region-by-region discovery"}},"sidebar":{"shortlist":"1. Build a shortlist","check":"2. Check eligibility","earnings":"3. Confirm earnings","live":"4. Reach out live"},"seo":{"title":"Check TikTok Creator Eligibility - Agency Guide {'|'} TikTool","description":"How TikTok agencies qualify creators before outreach: check a shortlist for agency eligibility in your backstage, then confirm earnings are steady. On live data.","ogTitle":"Check TikTok Creator Eligibility","ogDescription":"Qualify a shortlist to creators who can actually join an agency before you spend time on outreach."},"og":{"title":"Check TikTok Creator Eligibility","subtitle":"Qualify before you reach out."},"jsonLd":{"breadcrumbPage":"Check Creator Eligibility"}}},"agencyProfile":{"page":{"seo":{"title":"{name} - TikTok LIVE Agency {'|'} TikTool","fallbackTitle":"Agency - TikTool","fallbackDescription":"TikTok LIVE agency profile on TikTool."},"missing":{"title":"Agency not found","body":"This listing does not exist or is not public yet.","back":"Back to directory"},"uploading":"Uploading...","submitting":"Submitting...","sending":"Sending...","close":"Close","cancel":"Cancel","messageAgency":"Message agency","reportFakeData":"Report fake data","status":{"draft":{"tag":"DRAFT","title":"Finish your listing: upload backstage proof + submit for review.","sub":"Upload a screenshot of your agency backstage (LIVE agency dashboard) so we can verify ownership.","proofUploaded":"Proof uploaded - replace","uploadProof":"Upload backstage proof","submit":"Submit for review"},"pending":{"tag":"PENDING REVIEW","title":"We review every listing manually. Average turnaround: a few hours.","chat":"CHAT WITH US"},"needsInfo":{"tag":"MORE INFO NEEDED","title":"Our review team left a note.","proofUploaded":"New proof uploaded - replace","uploadProof":"Upload new proof","resubmitting":"Resubmitting...","resubmit":"Resubmit"},"rejected":{"tag":"REJECTED","title":"This listing was not approved.","chat":"Chat with us"}},"analytics":{"title":"Page analytics","onlyYou":"Only you can see this","pageViews":"Page views","last7":"Last 7 days","last30":"Last 30 days","sparkLabel":"Daily page views, last {count} days","barTitle":"{date}: {views} views","loading":"Loading analytics...","unavailable":"Analytics unavailable right now."},"featured":{"active":"FEATURED AGENCY - active","upsellTitle":"Show as Featured Agency","upsellSub":"Featured agencies appear at the top of the directory. Included with any active Agency plan (weekly or monthly).","cta":"Get featured"},"roster":{"featuredTitle":"Featured","featuredHint":"Star up to 3 creators to feature them here","live":"LIVE","unfeature":"Unfeature","unfeatureCreator":"Unfeature creator","feature":"Feature","confirmRemove":"Confirm remove","removeFromRoster":"Remove from roster","removeAsk":"Remove?","noFeatured":"No featured creators yet.","liveNow":"Live now","watch":"Watch","title":"Roster","allFeaturedOrLive":"Everyone is featured or live right now.","noCreators":"No claimed creators yet."},"add":{"title":"Add creators","placeholder":"Search creators by {'@'}username or display name","ariaLabel":"Search creators","claimed":"Claimed","claim":"Claim","noResults":"No creators found."},"edit":{"title":"Edit details","languages":"Languages","languagesPlaceholder":"Add a language, press Enter","tags":"Tags","tagsPlaceholder":"Add a tag, press Enter","contactEmail":"Contact email","contactPhone":"Contact phone","private":"Private - never shown publicly"},"reports":{"title":"Reports","none":"No open reports against this roster.","responsePlaceholder":"Optional response to the reviewer","evidenceSent":"Evidence sent - replace","uploadEvidence":"Upload evidence","deadlinePassed":"deadline passed","timeLeft":"{hours}h {minutes}m left"},"inbox":{"title":"Inbox","empty":"No messages yet. Visitors can message you from this page; replies go out by email through TikTool.","replyPlaceholder":"Reply...","reply":"Reply"},"messageModal":{"title":"Message {name}","sub":"Your message is delivered privately. The agency replies by email through TikTool - contact details are never shown.","placeholder":"Introduce yourself and what you are looking for...","send":"Send message"},"reportModal":{"title":"Report fake data for {'@'}{username}","sub":"If this creator does not actually belong to this agency, tell us why. Both parties are notified and the agency gets 48 hours to provide evidence before the claim is removed.","placeholder":"What is wrong with this claim? (min 10 characters)","submit":"Submit report","doneTitle":"Report submitted","doneSub":"Both parties have been notified. The agency has 48 hours to provide evidence."},"creatorMenu":{"aria":"Creator actions"},"time":{"justNow":"just now","minutesAgo":"{n}m ago","hoursAgo":"{n}h ago","daysAgo":"{n}d ago"},"toast":{"sent":"Sent - the agency will reply by email through TikTool"},"errors":{"uploadFailed":"Upload failed - try a smaller image","evidenceFailed":"Evidence upload failed - try again.","submitFailed":"Submit failed - try again.","featureLimit":"Up to 3 featured creators - unstar one first.","featureFailed":"Could not update featured creators.","claimFailed":"Claim failed - try again.","removeFailed":"Remove failed - try again","reportEvidenceFailed":"Evidence upload failed.","replyFailed":"Reply failed.","messageFailed":"Message failed - try again.","reportFailed":"Report failed - try again."}},"view":{"bannerAlt":"{name} banner","logoAlt":"{name} logo","bannerCta":"Click to upload your banner","uploading":"Uploading...","changeBanner":"Change banner","uploadBanner":"Upload banner","addLogo":"Add logo","change":"Change","regionsAria":"Regions","done":"Done","editRegions":"Edit regions","addRegions":"Add regions","nameAria":"Agency name","verified":"Verified agency","featuredTitle":"Featured agency","featuredBadge":"FEATURED AGENCY","newPill":"NEW","taglineAria":"Tagline","website":"Website","about":"About","tooLong":"- too long, trim {count} characters","saving":"Saving...","saved":"Saved","saveFailed":"Save failed"},"chipInput":{"placeholder":"Add, press Enter","remove":"Remove {item}"},"sdk":{"seo":{"title":"TikTok LIVE Agency SDK for JavaScript and Python","description":"Unofficial TikTok LIVE agency SDK by tik.tools for npm and PyPI: find creators to recruit, track roster live status and diamonds, receive go-live webhooks and build custom agency dashboards."},"jsonLd":{"breadcrumbHome":"Home"},"ogImage":{"subtitle":"Recruiting, roster live status, diamonds and webhooks."},"hero":{"subtitle":"Find creators to recruit, see who on your roster is live, track diamonds, get go-live webhooks and build your own agency dashboard. One API key, for JavaScript, TypeScript and Python.","npm":"npm package","pypi":"PyPI package"},"what":{"title":"What it does for agencies","intro":"{pkg} wraps the tik.tools API in a typed client built for TikTok LIVE agencies (Creator Networks, TCN, MCN). The same package name is on npm and PyPI, and both clients share one method list.","facts":{"recruit":{"title":"Find creators to recruit.","body":"Ranked creators per region who are candidates to join an agency, new arrivals in the recruit pool, and creators dropping out of the leagues."},"roster":{"title":"Roster live status and diamonds.","body":"Check which of your creators are live right now, and read diamonds per creator and per roster from gifts captured during their streams."},"webhooks":{"title":"Webhooks.","body":"Signed go-live and stream-end alerts to your server, with a verifier for Node, Edge, Workers and Python."},"dashboards":{"title":"Custom dashboards.","body":"Plain JSON with the API's own field names, so the data drops straight into a Next.js page, a notebook or a spreadsheet export."}}},"install":{"title":"Install","js":"JavaScript and TypeScript","key":"Set your key in the {envVar} environment variable on the server. Never ship it to a browser: the TypeScript client refuses to start in a browser page. Keys are on the {link}.","pricingLink":"pricing page"},"examples":{"title":"Examples","live":"Which of my creators are live (TypeScript)","webhook":"Verify a go-live webhook in a Next.js Route Handler (TypeScript)","python":"Creators to recruit and roster diamonds (Python)","planError":"A call your plan does not include throws {error} with the required plan and an upgrade link, so a dashboard can show an upgrade card instead of crashing. Webhook payloads and signatures are documented in the {link}.","apiReferenceLink":"API reference"},"methods":{"title":"Method groups","group":"Group","methods":"Methods","python":"Python uses the same names in snake_case, for example {first} and {second}. Every method with its plan is listed in each package README."},"groups":{"recruit":"Find creators to recruit","rankings":"Rankings and market","vet":"Vet a creator","stats":"Creator stats","rosters":"Rosters","live":"Live status","bigGifts":"Big gifts stream","eligibility":"Eligibility verdicts","webhooks":"Webhooks","account":"Account"},"ai":{"title":"For AI assistants","body":"A machine-readable summary of every method lives at {link}. Point Cursor, Claude, ChatGPT or any AI builder at it, and name the package {pkg}, so generated code uses real data from the API."},"source":{"title":"Source and packages","line":"{label} {repo} and {registry}","license":"License:"},"disclaimer":"Unofficial, not affiliated with TikTok or ByteDance. tiktok-live-agency is an independent SDK for the tik.tools API. TikTok is a trademark of its respective owner, used here only to describe compatibility.","next":{"docsTitle":"API Reference","docsBody":"Every endpoint behind the SDK","plansTitle":"Plans","plansBody":"Get an API key"}},"live":{"seo":{"titleLive":"LIVE - {'@'}{username} is streaming - tik.tools","titleOffline":"{'@'}{username} - tik.tools Live","descriptionLive":"Watch {'@'}{username} live on TikTok - {title} - {viewers} viewers","defaultStreamTitle":"Live Stream","descriptionOffline":"{'@'}{username} is currently offline on TikTok."},"watching":"{count} watching","watchOnTikTok":"Watch on TikTok","offline":{"title":"{'@'}{username} is offline","body":"This streamer is not currently live on TikTok.","visitProfile":"Visit TikTok Profile"}},"obsOverlay":{"seo":{"title":"TikTok LIVE Gifts for OBS - tik.tools","description":"Drop one URL into OBS, get cinematic 3D gift animations on every TikTok LIVE gift. Real-time, transparent, 9:16. Free with watermark, watermark-free on Agency.","ogTitle":"TikTok LIVE Gifts for OBS","ogDescription":"Drop one URL into OBS, get cinematic 3D gift animations on every TikTok LIVE gift. Real-time, transparent, 9:16."},"hero":{"badge":"Free for every creator. No install. No API key.","title":"TikTok LIVE Gifts for OBS"},"search":{"placeholder":"Enter your TikTok username","clear":"Clear"},"status":{"generating":"Generating overlay link..."},"link":{"label":"Your overlay URL","copied":"Copied","copy":"Copy","watermarkFree":"{plan} - watermark-free","watermarkVisible":"tik.tools watermark visible (Free tier)","open":"Open overlay in a new tab"},"setup":{"label":"Setup","title":"Add it to OBS in under a minute"},"steps":{"one":{"title":"Open the Sources panel","body":"Click the {plus} button below the Sources list and choose {browser}."},"two":{"title":"Name the source","body":"Pick {createNew}, type a name like {name}, leave {visible} checked, click {ok}."},"three":{"title":"Paste the URL, set dimensions","body":"Paste the overlay URL into {url}. Set {width} to {widthValue} and {height} to {heightValue} (TikTok LIVE aspect ratio). Click {ok}."},"four":{"title":"Move the source to the top","body":"In your Sources list, drag the {name} source above your video capture so gifts render on top of everything else. That's it - start your stream."}},"mock":{"appAudio":"Application Audio Capture (BETA)","audioInput":"Audio Input Capture","audioOutput":"Audio Output Capture","browser":"Browser","colorSource":"Color Source","displayCapture":"Display Capture","gameCapture":"Game Capture","createSelect":"Create / Select Source","createNew":"Create new","addExisting":"Add Existing","makeVisible":"Make source visible","ok":"OK","properties":"Properties for 'TikTools'","urlPlaceholder":"paste your overlay URL","width":"Width","height":"Height","confirm":"Confirm"},"preview":{"label":"Live preview - exactly what your audience sees","foot":"9:16 - 1080 x 1920 - transparent background"},"features":{"detection":{"title":"Zero-setup gift detection","body":"The server tracks every TikTok LIVE creator's gift feed already. The moment you go live, the overlay fires - no API key, no per-stream config, nothing to install on your machine."},"gpu":{"title":"Three.js, GPU accelerated","body":"Transparent 9:16 WebGL canvas, particle bursts on the compositor, sprite caching, instanced materials. Stays light on CPU and integrates cleanly with vMix, Streamlabs, OBS Studio."},"watermark":{"title":"Watermark removed on Agency","body":"The free overlay shows a subtle {wordmark} wordmark at 30% from the bottom. {link} to ship pristine overlays with zero branding.","link":"Upgrade to any Agency tier"},"impact":{"title":"Built for impact","body":"The overlay fires on gifts of 1,000 diamonds and above. Small thank-you roses don't trigger so your scene stays clean and reserves the spotlight for moments worth celebrating."}},"errors":{"invalidChars":"Use 2-40 chars: letters, numbers, dots, underscores","warmingUp":"Service warming up - retrying ({attempt}/{max})...","invalidUsername":"That username is not valid","unavailable":"Service is briefly unavailable - try again in a moment."}},"giftsCanvas":{"livePreview":"Live Preview","anonymous":"Anonymous"}},"company":{"about":{"hero":{"badge":"About Us","title":"The TikTok LIVE{br}Data API for {accent}","titleAccent":"Developers","desc":"TikTools was built by developers, for developers. We believe real-time stream data should be accessible, affordable, and easy to use."},"mission":{"title":"Our Mission","p1":"TikTok is the fastest-growing live streaming platform in the world, but developers have no official API to access live stream data. TikTools fills that gap with a production-grade API that delivers real-time chat, gifts, viewer counts, battles, and engagement data through a single WebSocket connection.","p2":"We handle the complexity of live stream connectivity, connection management, and data normalization - so you can focus on building amazing applications."},"provide":{"title":"What We Provide","websocket":{"title":"Real-Time WebSocket API","text":"{title} - Sub-50ms event delivery for chat, gifts, likes, follows, shares, battles, and viewer counts"},"rest":{"title":"REST API Endpoints","text":"{title} - Room info, user profiles, live stream feeds, gift rankings"},"sdk":{"title":"Open Source Node.js SDK","text":"{title} - MIT-licensed, TypeScript-first, available on npm as {package}"},"gameEngine":{"title":"Game engine ready","text":"{title} - WebSocket delivery works with any engine (C++, C#, Godot, web) for interactive game experiences"},"sandbox":{"title":"Sandbox tier","text":"{title} - {requests} requests/day, {sessions} WebSocket sessions per 24h and up to {streams} concurrent streams, no credit card required. Upgrade to a paid tier (from {price}/week) for {paidRequests} requests/day and production access."}},"users":{"title":"Who Uses TikTools?","intro":"Hundreds of developers and companies use TikTools to power:","items":{"chatAssistants":"Live stream chat assistants and command bots","overlays":"OBS overlays and donor alerts","analytics":"Analytics dashboards and engagement tracking","moderation":"AI-powered content moderation and sentiment analysis","games":"Interactive game integrations (any WebSocket engine)","multiStream":"Multi-stream monitoring platforms"}},"compare":{"title":"Why Not EchoTik or Other Tools?","p1":"TikTools focuses exclusively on {focus} for developers. Unlike e-commerce analytics tools like EchoTik (which focuses on TikTok Shop data - product rankings, GMV trends, seller analytics), TikTools is built for live streaming applications.","p1Focus":"real-time LIVE stream data","p2":"We offer what no alternative provides in one package: real-time WebSocket streaming, an open-source SDK, agency intel, and a free tier. If you're building anything that interacts with TikTok LIVE streams, TikTools is purpose-built for your use case."},"commitment":{"title":"Our Commitment","reliability":{"title":"Reliability","text":"{title} - automatic failover and continuous health monitoring"},"transparency":{"title":"Transparency","text":"{title} - Clear pricing, no hidden fees, no bait-and-switch"},"devExperience":{"title":"Developer Experience","text":"{title} - From {command} to live data in under 30 seconds"},"openSource":{"title":"Open Source","text":"{title} - Our SDK is MIT licensed. No vendor lock-in, ever"},"support":{"title":"Responsive Support","text":"{title} - Real-time chat support with human engineers, not chat assistants"}},"sidebar":{"quickLinks":"Quick Links","docs":"API Documentation","pricing":"Pricing & Plans","useCases":"Use Cases","npmPackage":"npm Package","getStarted":"Get Started","freeTier":"Free tier available - no credit card required.","getApiKey":"Get API Key"},"seo":{"title":"About TikTool - TikTok LIVE API for Developers","description":"TikTools is the developer-first TikTok LIVE API. Real-time WebSocket streaming, open-source Node.js & Python SDK, creator leaderboards. Free tier - no credit card required. Built by developers, for developers.","ogDescription":"The developer-first TikTok LIVE data API. Real-time WebSocket, open-source SDK, creator leaderboards. Free tier available.","ogImageTitle":"About TikTool","ogImageSubtitle":"The managed TikTok LIVE data platform built for developers.","ogImageBadge":"ABOUT"}},"methodology":{"hero":{"badge":"Methodology","title":"How tik.tools collects{br}TikTok LIVE {accent}","titleAccent":"data","desc":"What each board is, how often it refreshes, how regions map to countries, what is masked on each plan and why, how much history we keep, and where our coverage has gaps."},"sources":{"title":"Where the data comes from","p1":"tik.tools reads the TikTok LIVE ranking boards and LIVE rooms that TikTok shows in its app: the daily, league, gaming, shopping, Popular LIVE and team boards, and the public LIVE rooms of the creators on them. Every number on a board is the value TikTok showed at the moment we captured it; tik.tools does not adjust, smooth or project those numbers, except where a figure is labelled as an estimate.","p2":"tik.tools is independent and is not affiliated with TikTok or ByteDance."},"boards":{"title":"Boards and refresh cadence","intro":"Each board is refreshed on its own schedule. Every board page shows the time its data was captured, so quote that time with the number.","colBoard":"Board","colWhat":"What it ranks","colRefreshed":"Refreshed","rows":{"daily":{"name":"Daily creator ranking","what":"Creators by diamonds received today, per region","cadence":"Continuously"},"countryBoards":{"name":"Standalone country boards","what":"Single-country daily boards TikTok publishes inside a pool","cadence":"Frequently"},"league":{"name":"League divisions","what":"Creators in each weekly league division (A1 to D5), per region","cadence":"Frequently"},"gaming":{"name":"Gaming boards","what":"Gaming creators overall and per tracked game title, per region","cadence":"Frequently, with live status updated continuously"},"shopping":{"name":"Live shopping boards","what":"Live shopping creators, per region, weekly window","cadence":"Frequently, and right after the weekly reset"},"popular":{"name":"Popular LIVE","what":"Rooms TikTok is featuring on Popular LIVE right now","cadence":"Continuously"},"teams":{"name":"Teams","what":"Team rankings, per region","cadence":"Frequently"},"rising":{"name":"Rising creators","what":"Creators climbing fastest","cadence":"Regularly through the day"},"gifters":{"name":"Gifter boards","what":"Top gifters by diamonds sent, daily, weekly and monthly","cadence":"Daily board frequently; weekly and monthly boards regularly"},"liveCounts":{"name":"Live counts","what":"How many ranked creators are live in a region","cadence":"Continuously"}},"resets":"Daily boards reset once a day at each region's own reset hour (listed per region below), so a daily score is a running total for the current rank-day. League divisions reset weekly on Monday at the region's reset hour. {regions} have no daily board on TikTok; for those regions we show the hourly board, and their league divisions reset daily."},"joinAnd":"{first} and {last}","regions":{"title":"Regions and countries","p1":"tik.tools ranks {count} TikTok LIVE regions. A region is one TikTok ranking pool: a single daily board that TikTok publishes for one country or for a group of countries. A creator's region is the pool they rank in, not their nationality. TikTok does not publish a country for individual creators, so tik.tools does not assign one.","p2":"Besides these regions, TikTok publishes standalone boards for some single countries inside a pool. Those boards appear on the {link} while TikTok publishes them and drop off when it stops.","p2Link":"rankings page","colRegion":"Region","colCountries":"Countries on the board","colReset":"Daily reset","hourly":"Hourly","resetAt":"{time} UTC","note":"Reset hours are the hour TikTok's board most often rolls over in that region, measured from our own capture history. Region pages show the live countdown TikTok publishes when we have it."},"masking":{"title":"What is masked on each plan, and why","intro":"Scores, ranks and counts are never masked: every row keeps its real rank and diamonds, so totals and positions are correct on every plan. What changes by plan is whether a row shows the creator's or gifter's name. A masked name appears as dots followed by its last characters.","colSurface":"Surface","colPreview":"Without the unlocking plan","colFull":"Fully named from","rows":{"daily":{"surface":"Daily regional boards","preview":"Top 10 offline creators named; creators who are live right now are never named"},"global":{"surface":"Global overview","preview":"Names masked"},"league":{"surface":"League divisions","preview":"1 creator named per division"},"gaming":{"surface":"Gaming boards","preview":"1 creator named per board"},"shopping":{"surface":"Live shopping boards","preview":"1 creator named"},"popular":{"surface":"Popular LIVE","preview":"Top 10 offline creators named"},"movers":{"surface":"Top movers","preview":"3 creators named"},"gifterBoards":{"surface":"Gifter boards","preview":"Diamonds and counts shown; below Agency the top 3 gifters are named, and Agency Starter names every gifter on its own region's board"},"creatorPages":{"surface":"Creator pages","preview":"Numbers shown, identifiers masked"},"gifterPages":{"surface":"Gifter pages","preview":"Numbers shown, identifiers masked"}},"why":"Why we mask: the numbers are public and stay public, but a full list of names, and above all a list of who is live right now, is exactly what someone would pull from free views at scale to poach creators or resell the data. Masking keeps the boards useful to read while tying bulk identity data to a paid, accountable plan. Plans and prices: {link}.","whyLink":"pricing"},"history":{"title":"How much history we keep","rows":{"creatorPages":{"product":"Creator pages","depth":"ranking history for the last 90 days."},"creatorDiamonds":{"product":"Creator diamond history (Agency)","depth":"the last 12 months."},"gifterPages":{"product":"Gifter pages","depth":"a rolling 90-day window; individual gift events are kept for about 3 months."},"gifterBoards":{"product":"Gifter boards","depth":"daily, weekly and monthly windows."},"gamingMovers":{"product":"Gaming movers","depth":"windows from the last 2 hours up to the last 3 days."},"dailyBoards":{"product":"Daily boards","depth":"the current rank-day live, plus recent daily winners on each region page."},"league":{"product":"League divisions","depth":"the current weekly window."}}},"gaps":{"title":"Known gaps","unavailable":{"title":"Boards marked unavailable.","text":"{title} When the API returns {code} for a board, we have no usable capture for that region and window. It is a coverage gap, not a statement that the region has no ranked creators. Gaming boards, for example, are not available for every region."},"hourlyOnly":{"title":"Hourly-only regions.","text":"{title} {regions} have no daily board on TikTok, so their \"daily\" view is the current hourly board."},"archived":{"title":"Archived daily pages.","text":"{title} Per-date archive pages for past daily boards are not published for every region and date. A past date that shows no rows means we have no published snapshot for it, not that nobody ranked."},"emptyDivisions":{"title":"Empty divisions.","text":"{title} League divisions with no ranked creators are not listed, and a division TikTok re-seeds can change between captures."},"outages":{"title":"Brief outages.","text":"{title} If TikTok stops answering for a while, a board keeps its last good capture and its capture time stops moving. Check the capture time before relying on a number."}},"quoting":{"title":"Before you quote our numbers","diamonds":{"title":"Diamonds","text":"{title} on a board are the score TikTok displayed at the capture time, for the current rank-day (daily boards), rank-week (league divisions) or rank-hour (hourly boards)."},"earnings":{"title":"Earnings and revenue","text":"{title} figures are estimates derived from diamonds. They are not payouts; what a creator receives depends on TikTok and agency terms."},"masked":{"title":"Masked rows","text":"{title} are real rows with the name hidden. Count them in totals and ranks; do not treat them as missing."},"regions":{"title":"Regions","text":"{title} are TikTok ranking pools, not countries of residence. Say \"ranked in the {region} region\", not \"from\" a country."},"captureTime":{"title":"Capture time","text":"{title}: cite the time shown on the page or in the API response, in UTC where possible."},"eventTypes":"The WebSocket API documents {count} LIVE event types; see the {link}.","eventTypesLink":"API docs"},"report":{"title":"Report a data issue","text":"If a number looks wrong, email {email} with the page URL or API request, the region, the time you saw it (with time zone) and what you expected to see. A screenshot of the same board in the TikTok app at the same time is the fastest way for us to confirm and fix it. For privacy requests, see the {privacyLink}.","privacyLink":"privacy policy"},"sidebar":{"onThisPage":"On this page","related":"Related","rankings":"TikTok LIVE rankings","rankingsOverview":"Rankings overview","docs":"API documentation","pricing":"Plans and pricing"},"toc":{"sources":"Where the data comes from","boards":"Boards and refresh cadence","regions":"Regions and countries","masking":"Masking by plan","history":"History depth","gaps":"Known gaps","quoting":"Before you quote our numbers","report":"Report a data issue"},"seo":{"title":"Data methodology - how tik.tools collects TikTok LIVE data","description":"How tik.tools captures and refreshes TikTok LIVE rankings across {count} regions: board refresh cadence, region and country mapping, masking by plan, history depth and known gaps.","ogImageTitle":"Data methodology","ogImageSubtitle":"How TikTok LIVE boards are captured across {count} regions.","ogImageBadge":"METHODOLOGY"},"jsonLd":{"measurementTechnique":"Periodic capture of public TikTok LIVE ranking boards","variables":{"rank":"Rank","diamonds":"Diamonds","liveStatus":"Live status"},"datasets":{"dailyRankings":{"name":"TikTok LIVE daily creator rankings by region","description":"Daily TikTok LIVE creator rankings by diamonds for {count} regions, updated continuously and reset at each region's daily reset hour."},"leagueDivisions":{"name":"TikTok LIVE league divisions by region","description":"Weekly TikTok LIVE league division rosters and scores per region, refreshed frequently."},"gamingBoards":{"name":"TikTok LIVE gaming creator rankings by region","description":"TikTok LIVE gaming creator rankings overall and per tracked game title, per region, refreshed frequently."},"gifterBoards":{"name":"TikTok LIVE top gifter rankings","description":"Top TikTok LIVE gifters by diamonds sent over daily, weekly and monthly windows."}}}},"status":{"hero":{"titleHighlight":"Status","subtitle":"Live health of customer-facing services. Updated every 5 seconds."},"activeIncidents":"Active incidents","started":"Started {time}","recently":"recently","components":"Components","errorRateWindow":"{pct}% error rate in last {minutes} min","upstream":"Upstream dependencies","percent":"{value}%","me":{"title":"Your account","loading":"Loading your activity...","requests24h":"Requests (24h)","successRate":"Success rate","serverErrors":"Server errors","clientErrors":"Client errors","perEndpoint":"Per endpoint","colEndpoint":"Endpoint","colRequests":"Requests","colErrorRate":"Error rate","recentFailures":"Recent failures","hint":"Most of your errors are 4xx. Those usually mean the request shape needs adjustment - check the response message field for the specific reason. {link}.","hintLink":"Docs"},"signInCta":"{link} to see your personalised request history and per-endpoint health.","signIn":"Sign in","history":"History","uptime90d":"90-day uptime: {value}","noIncidents":"No incidents in the last 30 days.","overall":{"operational":"All systems operational","minor":"Minor issues","degraded":"Degraded performance","outage":"Active outage","unknown":"Status unknown"},"component":{"operational":"Operational","minor":"Minor issues","degraded":"Degraded","outage":"Outage","unknown":"Unknown"},"rel":{"justNow":"just now","minutes":"{n}m ago","hours":"{n}h ago","days":"{n}d ago"},"sparkline":{"aria":"{hours}-hour status history","noData":"no data","errors":"{pct}% errors","requests":"{count} req","hours":"{count}h","now":"now","titleNoData":"{time} - no data","title":"{time} - {pct}% errors ({count} req)"},"seo":{"title":"TikTool Status","description":"Live health of the TikTool API, realtime events, signing, and dashboard. Updated every 5 seconds.","ogDescription":"Live operational status for the TikTool API + realtime events."}},"help":{"hero":{"badge":"Support","title":"How can we {accent}?","titleAccent":"help","desc":"Chat with our team in real time. We typically respond within minutes."},"resources":{"title":"Resources","docs":{"label":"API Documentation","desc":"SDK reference, endpoints & examples"},"pricing":{"label":"Pricing & Plans","desc":"Compare tiers and upgrade your account"}},"faq":{"title":"Common Questions","items":{"apiKey":{"q":"How do I get an API key?","a":"Sign up at tik.tools/pricing. The Sandbox tier includes {requests} requests/day and {connections} concurrent WebSocket connections - no credit card needed. Upgrade to a paid tier (from {price}/week) for {paidRequests} requests/day and production access."},"connect":{"q":"Why can't I connect to a stream?","a":"Make sure the streamer is currently LIVE and the username is correct (without {'@'}). Also verify your API key is valid and hasn't exceeded its quota."},"languages":{"q":"What programming languages and engines do you support?","a":"Any language or engine that supports WebSocket connections. Official SDKs for Node.js/TypeScript and Python, plus raw WebSocket access ({url}) for Go, Rust, Java, C#, C++, and any game engine."},"upgrade":{"q":"How do I upgrade my plan?","a":"Go to tik.tools/pricing, select a plan, and follow the checkout flow. Upgrades are instant and pro-rated."}}},"seo":{"title":"Help & Support - TikTool","description":"Get instant support for TikTool. Chat with our team, browse documentation, and find answers to common questions.","ogTitle":"TikTool - Help & Support","ogDescription":"Chat with our support team in real time. Browse docs, troubleshoot, and get your questions answered."}},"supportChat":{"header":{"title":"Dev Human Live Chat. Not AI.","online":"Online","offline":"Leave a message - we'll get back to you"},"auth":{"title":"Sign in to chat with us","desc":"We typically respond within minutes during business hours.","google":"Continue with Google","or":"or","emailPlaceholder":"Email address","passwordPlaceholder":"Password","signIn":"Sign In"},"welcome":{"title":"Hi there","desc":"Send us a message and we'll get back to you as soon as possible."},"pass":{"body":"{title} Full Agency Global access is live on your account. {link}","activated2h":"2-Hour Agency Pass activated.","activatedDay":"Agency Day Pass activated.","dashboardLink":"Open the Agency dashboard"},"notSent":"not sent","typing":"TikTools is typing","input":{"placeholder":"Type a message...","send":"Send message"},"errors":{"required":"Email and password required","loginFailed":"Login failed. Try again."}},"login":{"eyebrow":"Secure Access","title":"Welcome back","sub":"Sign in or create your account instantly.","google":"Continue with Google","divider":"or continue with email","emailLabel":"Email address","googleNotice":"This email uses Google Sign-In. Please use the button above.","passwordLabel":"Password","passwordPlaceholder":"Enter your password","passwordHint":"New account? Use min 8 chars, 1 uppercase, 1 number.","forgot":"Forgot your password?","codeLabel":"Verification code","codePlaceholder":"6-digit code","codeSent":"We emailed a 6-digit code to {email}. {resend}","sending":"Sending...","resend":"Resend","verifyAndCreate":"Verify and create account","continue":"Continue","emailMeCode":"Email me a sign-in code","usePassword":"Use password instead","signInWithCode":"Sign in","errors":{"createFailed":"Account creation failed. Please try again or use Google sign-in.","invalidToken":"Authentication session expired. Please try again.","authFailed":"Authentication failed. Please try again.","blockedDomain":"This email domain is not allowed. Please use a business email or Gmail.","passwordAccount":"An account with this email signs in with a password. Sign in with your password, or reset it with 'Forgot your password?'.","codeSendFailed":"Could not send the code. Please try again.","codeFormat":"Enter the 6-digit code from your email.","codeInvalid":"That code is incorrect or has expired. Request a new one.","invalidEmail":"Invalid email","passwordRequired":"Password is required","generic":"Something went wrong. Please try again.","captcha":"Verification failed. Please complete the check and try again.","contactSupport":"If you believe this is wrong, contact {email}","linkExpired":"That sign-in link has expired or was already used. Request a new code below."},"seo":{"title":"Sign In - TikTool","description":"Sign in to TikTool to access the TikTok LIVE leaderboard, creator profiles, and API dashboard."}}},"devLanding":{"websocket":{"seo":{"title":"TikTok LIVE WebSocket API - Real-Time Chat & Gifts in 3 Lines of Code","description":"Stream TikTok LIVE chat, gifts, likes, follows, PK battles, native captions, polls, karaoke, pictionary, live shopping and 90+ event types via one WebSocket. Sub-50ms latency. Anonymous mode - no key required to start. Works with Node.js, Python, Go, Rust, Java, C#.","ogTitle":"TikTok LIVE WebSocket API - Real-Time Chat & Gifts in 3 Lines","ogDescription":"90+ real-time event types. Sub-50ms latency. Sandbox tier. Works with any language - Node.js, Python, Go, Rust, Java, C#.","twitterTitle":"TikTok LIVE WebSocket API - Chat & Gifts in 3 Lines of Code","twitterDescription":"One WebSocket URL for all TikTok LIVE events. Chat, gifts, viewers, battles. Sub-50ms. Sandbox tier - start building now."},"og":{"title":"TikTok LIVE WebSocket API","subtitle":"Real-time chat and gifts in three lines of code. Managed signing included.","badge":"WEBSOCKET"},"hero":{"badge":"WebSocket API","titleLead":"TikTok LIVE","titleAccent":"WebSocket API","sub":"Stream real-time TikTok LIVE events - chat, gifts, likes, follows, viewer counts, battles - through a single managed WebSocket connection. Sub-50ms latency.","ctaKey":"Get Free API Key","ctaDocs":"View Documentation"},"stats":{"latency":"Latency","eventTypes":"Event Types","anyValue":"Any","language":"Language"},"how":{"title":"Connect in 3 lines of code","sub":"No binary parsing, no infrastructure overhead. Just a WebSocket URL delivering clean JSON.","copy":"Copy","copied":"Copied","copyCode":"Copy code"},"events":{"title":"Explore every event","sub":"Pick an event to see the exact JSON your WebSocket delivers, with each field explained."},"compare":{"title":"How TikTools compares","sub":"Side-by-side comparisons with other TikTok LIVE data providers, each dated and checked against their public pages.","cta":"See comparisons"},"pricing":{"title":"Transparent Pricing","sub":"Evaluate free for 7 days, then pick the plan you need.","testKey":"Test key","fromWeekly":"From {price}/wk","ctaTestKey":"Get a test key","ctaPlans":"View Plans","sandbox":{"evaluation":"7-day evaluation","everyEvent":"Every event type","noCard":"No card needed"},"pro":{"limits":"Production request and WebSocket limits","webhooks":"Signed webhooks","sdks":"Node.js and Python SDKs"},"ultra":{"limits":"Highest limits below Agency","leagues":"League boards unmasked","everyEvent":"Every event type"}},"sdks":{"title":"Works with every language","sub":"Official SDKs for Node.js and Python. WebSocket works with everything else."},"cta":{"title":"Start streaming TikTok LIVE data today","sub":"Sandbox tier - 5,000 requests/day, 3 concurrent WebSocket connections. No credit card required.","github":"Star on GitHub"}},"mcp":{"seo":{"title":"TikTok LIVE MCP + API integrations - tik.tools","description":"Add live TikTok LIVE data to Claude, Cursor, VSCode and any MCP client. Plus RapidAPI, Apify, Custom GPT, SDKs and a real-time WebSocket. Free tier.","ogTitle":"TikTok LIVE, wired into your AI","ogDescription":"One MCP server drops live TikTok data into Claude, Cursor and VSCode. Free tier."},"hero":{"eyebrow":"For AI agents and developers","title":"TikTok LIVE, wired into your AI","lead":"One MCP server drops live TikTok data into Claude, Cursor, VSCode and any MCP client. Detect who is live, pull creator and room data, gifts, and leaderboards - straight from a prompt. Free tier, no credit card.","ctaKey":"Get a free key","ctaIntegrations":"All integrations"},"install":{"title":"Add the MCP server","sub":"One click wires it straight into your client. Swap {code} for your free key once it is added.","hideConfig":"Hide the config","showConfig":"Prefer to paste it yourself?","toolsNote":"11 tools. Full list with the tier each one needs is below."},"oneClick":{"cursor":{"add":"Add to Cursor","done":"Opening Cursor"},"vscode":{"add":"Add to VS Code","done":"Opening VS Code"},"claude":{"add":"Copy config, open Claude","done":"Copied - opening Claude"}},"copy":"Copy","copied":"Copied","key":{"title":"Set your API key","sub":"Every tool call is authenticated. With no key set, each call comes back with {error}, so do this before the first prompt.","step1":"Get a free key at {link}. No credit card.","step2":"Put it in the server's {env} block as {name}.","step3":"Restart your client so it reloads the server.","vscodeNote":"VS Code uses {servers} instead of {mcpServers} - see the config tabs above. {altKey1} and {altKey2} also work if your setup already uses one of those names."},"tools":{"title":"The 11 tools","sub":"Ask in plain language and the client picks the tool. The tier column is the lowest key that returns data for that tool.","colTool":"Tool","colTier":"Minimum tier","anyKey":"Any key","notes":{"giftCatalog":"No arguments needed. Optional username, search, limit.","leaderboard":"Daily board. type=league needs Ultra, type=weekly, gaming and shopping need Agency.","popularLive":"Masked below Agency."}},"connect":{"title":"Every way to connect","sub":"Same data, whichever surface your stack lives on.","items":{"mcp":{"tag":"AI agents","title":"MCP server","desc":"npx tiktok-live-mcp in Claude, Cursor, VSCode and Windsurf.","cta":"View on npm"},"gpt":{"tag":"Custom GPT","desc":"Point a Custom GPT at the OpenAPI spec and query live data in chat.","cta":"Get the schema"},"rapidapi":{"tag":"Marketplace","desc":"The full REST API on the RapidAPI marketplace, free tier included.","cta":"Open listing"},"apify":{"tag":"Automation","desc":"Run live detection and leaderboards as an Apify Actor.","cta":"Open Actor"},"sdks":{"tag":"SDKs","title":"Node and Python","desc":"{'@'}tiktool/live and tiktok-live-api - stream chat and gifts in 20 lines.","cta":"View docs"},"websocket":{"tag":"Realtime","desc":"wss://api.tik.tools - chat, gifts, likes and battles as they happen.","cta":"Read the docs"}}},"foot":{"title":"Premium data, direct","sub":"Free tier covers live detection, room data, gifts and rankings. Full unmasked leaderboards, league and gaming boards, creator and gifter earnings, the new-creator recruiting feed, and the real-time event WebSocket unlock at tik.tools.","cta":"See pricing"}},"useCases":{"seo":{"title":"TikTok LIVE API Use Cases - Chat Assistants, Overlays & AI","description":"Build chat assistants, stream overlays, gift leaderboards, analytics dashboards, AI integrations, and interactive games with the TikTok LIVE API. Code examples included. Free tier - no credit card needed.","ogTitle":"TikTok LIVE API Use Cases - What Can You Build?","ogDescription":"Chat assistants, stream overlays, gift tracking, analytics, AI integrations, game integrations - real-world TikTok LIVE API use cases with code."},"og":{"title":"What you can build","subtitle":"Chat assistants, stream overlays, gift alerts, analytics and AI integrations.","badge":"USE CASES"},"hero":{"badge":"Use Cases","titleLead":"What Can You Build with","titleAccent":"TikTok LIVE API?","desc":"From chat assistants to analytics dashboards - TikTools powers thousands of real-time TikTok applications. Here's what developers build with our API."},"items":{"chatAssistants":{"title":"TikTok Live Chat Assistants","desc":"Build automated chat assistants that respond to messages, run interactive games, welcome new viewers, and moderate chat in real-time. React to specific keywords, commands, or user actions instantly."},"overlays":{"title":"Real-Time Stream Overlays","desc":"Create OBS-compatible browser source overlays that display live chat, gift alerts, viewer counts, and engagement metrics directly on your stream. Fully customizable with HTML/CSS."},"giftTracking":{"title":"Gift Tracking & Donation Alerts","desc":"Track virtual gifts in real-time with diamond values, streak combos, and repeat counts. Build donation leaderboards, goal trackers, and animated gift alerts for your stream."},"analytics":{"title":"Analytics Dashboards","desc":"Build real-time and historical analytics dashboards tracking engagement rates, chat velocity, gift revenue, viewer retention, peak concurrent viewers, and growth trends."},"ai":{"title":"AI-Powered Integrations","desc":"Feed live stream data into AI models for sentiment analysis, real-time content moderation, automated highlight detection, audience mood tracking, and intelligent chat responses using GPT, Claude, or custom models."},"moderation":{"title":"Chat Moderation Tools","desc":"Automated moderation that filters spam, blocks toxic messages, rate-limits repeat offenders, and provides real-time moderation dashboards. Protect your community with custom rules and AI filters."},"multiStream":{"title":"Multi-Stream Monitoring","desc":"Monitor multiple TikTok LIVE streams simultaneously. Track competitor streams, manage agency talent, or build discovery feeds. Pro tier supports 50 concurrent connections, Ultra 250 and Agency 500."},"games":{"title":"Game Integrations","desc":"Let TikTok viewers interact with your game in real-time. Viewers can trigger in-game events via chat commands, gifts spawn items, and battles control game mechanics. Works with any WebSocket-capable engine (C++, C#, Godot, web)."},"scouting":{"title":"Creator Scouting","desc":"Spot rising creators and their top gifters with regional leaderboards, league rankings, and live gift events. Built for agencies managing creator rosters."}},"cta":{"title":"Ready to build?","desc":"Get your free API key and start streaming TikTok LIVE data in under 30 seconds.","key":"Get Free API Key","docs":"Read the Docs"}},"discord":{"seo":{"title":"Free TikTok LIVE Discord Assistant - Live Alerts, Battles, Rankings, AI Support","description":"The free Discord assistant for TikTok LIVE creators and agencies. Real-time live alerts, cross-server battle matchmaking, follow-for-follow network, AI API support, live rankings lookup. No limits, no sign-up required.","ogTitle":"Free TikTok LIVE Discord Assistant - Alerts, Battles, Rankings","ogDescription":"Track creators, schedule battles, build a follow network, and look up live rankings - all from Discord. 100% free, no account needed.","keywords":"TikTok LIVE assistant, Discord assistant, TikTok live notifications, TikTok battle assistant, follow for follow, F4F, TikTok API, free discord assistant, TikTok stream alerts, TikTok agency assistant"},"og":{"title":"Free TikTok LIVE Discord Assistant","subtitle":"Live alerts, battles, rankings and AI support for your server.","badge":"DISCORD"},"hero":{"badge":"Free for every server. No API key. No limits.","titleLead":"The Discord Bot for","titleAccent":"TikTok LIVE Creators & Agencies","subtitle":"Live stream alerts, cross-server battle matchmaking, gifter rankings, AI support, and agency roster tools - all in one assistant, completely free.","stats":{"servers":"Discord servers","members":"Members reached","free":"Free, always","detectionValue":"Always on","detection":"Live detection"}},"install":"Add to Discord - It's Free","watch":{"label":"Most used command","desc":"Drop this in any channel to track a creator. The assistant pings the channel the second they go live, every time.","cta":"See all commands"},"webdash":{"label":"Manage your bot from the web:","text":"{label} run {command} in your server to change alert channels, your LIVE message and watched creators from one page."},"setup":{"label":"Setup","title":"Up and running in under a minute","step1":{"title":"Click \"Add to Discord\"","body":"Use the button above or any of the install buttons on this page. You'll be taken to Discord's standard authorization page."},"step2":{"title":"Select your server","body":"Choose the server you want to add the assistant to. You need to be an admin (or server owner) to authorize the assistant."},"step3":{"title":"Done - assistant sets up automatically","body":"The assistant creates a private {channel} channel, posts setup instructions, and creates all required channels. No commands needed."}},"features":{"label":"Features","title":"Everything your server needs","items":{"alerts":{"title":"Live Stream Alerts","desc":"Track any TikTok account. The moment they go live, the assistant posts a rich notification in your chosen channel - profile picture, stream title, viewer count, and rank if they're on the leaderboard.","tag":"Auto-detects offline too. Posts update when stream ends."},"battles":{"title":"Cross-Server Battle Network","desc":"Schedule TikTok LIVE battles with a specific opponent or broadcast an open challenge to every server in the network. The assistant matches you, handles DM reminders, and tracks results.","tag":"DM reminders 24h, 30min, 10min before battle"},"f4f":{"title":"Follow-for-Follow Network","desc":"Type \"follow me {'@'}username\" or \"f4f\" in any monitored channel. The assistant posts your profile in your server's F4F channel and broadcasts it to every connected server in the network simultaneously.","tag":"No commands needed - natural language works"},"ai":{"title":"AI-Powered Q&A","desc":"Ask anything about TikTok LIVE in plain English. The assistant is powered by GPT-4o with full knowledge of the TikTool API docs, events reference, SDKs, pricing, and common issues.","tag":"{command} How do I receive gift events in Python?"},"rankings":{"title":"Live Rankings Lookup","desc":"Check any creator's current position on the tik.tools live leaderboard - region, class, diamond score - directly from Discord. Updated continuously from real stream data.","tag":"{command} - instant leaderboard position"},"roster":{"title":"Agency Roster Management","desc":"Manage your entire creator roster inside Discord. Add creators, track their battles, schedule live sessions on their behalf, and get live alerts for every creator you represent.","tag":"{add} · {list} · {upgrade} for agency intel"},"naturalLanguage":{"title":"Smart Natural Language","desc":"The assistant understands plain conversation - no slash commands required. Say \"I need a battle tonight at 9\" and it creates the request. Say \"follow me\" and the F4F post goes out.","tag":"Works in any monitored channel, any phrasing"},"liveNow":{"title":"Who's Live Right Now","desc":"Run {command} at any time to see which of your tracked creators are currently streaming, with direct links to watch on tik.tools or TikTok.","tag":"{command} - instant snapshot of all watched creators"}}},"audience":{"label":"Who it's for","title":"One bot, three types of creator","items":{"streamers":{"title":"Streamers","desc":"Track your favorite creators. Get notified the second they go live. Schedule battles, find opponents across other servers, and build a follow network that spans the whole platform.","bullets":{"liveAlerts":"Live alerts for unlimited accounts","battleScheduling":"Battle scheduling with auto-reminders","followNetwork":"Cross-server follow-for-follow","rankDisplay":"Live rank display in notifications"}},"agencies":{"title":"Agencies","desc":"Manage your creator roster from a single Discord server. Get live alerts for every creator you represent, schedule battles on their behalf, and track the whole operation in one place.","bullets":{"roster":"Full roster management (/roster)","liveAlerts":"Live alerts for all creators","battleCoordination":"Battle coordination for roster","strikes":"Strike tracking and no-show enforcement","upgrade":"Agency upgrade to league intel (/upgrade)"}},"developers":{"title":"Developers","desc":"Get instant answers about the TikTool LIVE API, SDKs, events, authentication, and common errors - without leaving Discord. Link your API key and check usage from any server you're in.","bullets":{"aiSupport":"AI support with full API docs knowledge","quickLinks":"Quick links to docs, events, SDKs","apiKey":"API key linking and usage check","eventsReference":"Live stream events reference (/docs)"}}}},"commandsRef":{"label":"Commands","title":"Complete command reference","sub":"Every slash command available in the assistant. Most features also work with natural language - no slash needed."},"commandGroups":{"notifications":"Live Notifications","battles":"Battle Matchmaking","rankings":"Rankings & Data","roster":"Agency Roster","ai":"AI & Docs","setup":"Server Setup (admin only)"},"commands":{"watchAdd":"Start tracking a TikTok account for live alerts","watchAddChannel":"Track and post alerts to a specific channel","watchRemove":"Stop tracking an account","watchList":"See all accounts your server is currently tracking","livenow":"See which of your tracked creators are live right now","battleSchedule":"Schedule a battle at a specific date and time","battleRequest":"Broadcast an open challenge to all servers in the network","battleList":"View all upcoming battles","rank":"Look up a creator's current position on the live leaderboard","usage":"Check your tik.tools API key usage and current tier limits","upgrade":"View Agency PASS plans - unlock league rankings and gifter intel (admin only)","rosterAdd":"Add a creator to your agency roster","rosterRemove":"Remove a creator from your roster","rosterList":"View your full agency roster","ask":"Ask anything about the TikTok LIVE API, SDKs, events, or pricing","docs":"Get a direct link to docs, SDK guides, rankings, agencies, PASS plans, and more","dashboard":"Open the web dashboard to manage the bot for this server","setupApiKey":"Link your tik.tools API key to this server","setupTiktok":"Link a TikTok username to this server","setupEventsChannel":"Set where live notifications get posted","setupBattleChannel":"Set where battle requests get posted","setupF4fChannel":"Set the follow-for-follow channel","setupBattleNetwork":"Join or leave the cross-server battle network","setupBattleWizard":"Turn the chat battle wizard on or off for this server"},"responds":{"label":"Good to know","title":"Where the bot responds","ai":{"title":"AI answers","body":"The bot answers questions on its own in the TikTool home server help channels. In your own server, {'@'}mention it and it answers anywhere."},"wizard":{"title":"Battle wizard","body":"Typed battle requests (\"I need a battle tonight at 9\") only trigger the wizard in channels with \"battle\" in the name, like {channel1} or {channel2}."},"toggle":{"title":"Admin toggle","body":"Server admins can turn the battle wizard off (or back on) at any time with {command}. Slash commands keep working either way."}},"agency":{"kicker":"Agency Exclusive - Super Feature","title":"Post live TikTok rank feeds straight into Discord","sub":"Creator ranks, gaming ranks, and 99+ movers across all {count} regions - pulled on demand into a private channel, button-driven.","requirement":"Requires an active Agency Global subscription","step1":{"title":"Add the bot and set up","body":"Invite the bot to your server, then run {command} (admin only) to start."},"step2":{"title":"Connect your API key","body":"The bot DMs you a private prompt - paste your agency API key there. It is never shown in the channel."},"step3":{"title":"Choose what to track","body":"Select regions and boards: Creator ranks, Gaming ranks, and 99+ movers (entered today / below cutoff)."},"step4":{"title":"Pick channel and role","body":"Set the channel to post in and the Manager role allowed to pull the feeds."},"step5":{"title":"Pull on demand","body":"Use the buttons:"}},"cta":{"badge":"Free to install. No credit card. No account needed.","title":"Add it to your server now","sub":"Click below, select your server, and the assistant sets everything up automatically. Takes under a minute.","pricing":"API Pricing"}}},"guidesApi":{"gettingStarted":{"seo":{"title":"Getting Started with TikTok LIVE API - Developer Quick Start Guide","description":"Step-by-step guide to get started with TikTok LIVE API. Install the SDK, get a free API key, connect to any TikTok LIVE stream, and receive real-time chat, gift, and viewer data in under 30 seconds.","ogTitle":"Getting Started with TikTok LIVE API - Quick Start Guide","ogDescription":"Connect to any TikTok LIVE stream in under 30 seconds. Free SDK, free API key, real-time data. Step-by-step developer guide."},"og":{"title":"Getting Started with TikTok LIVE","subtitle":"Your first connection in minutes.","badge":"GUIDE"},"jsonLd":{"name":"How to Connect to TikTok Live Stream API","description":"Step-by-step guide to connect to any TikTok LIVE stream and receive real-time chat, gift, and viewer data using TikTools API.","toolNode":"Node.js (version 18 or later)","steps":{"apiKey":{"name":"Get a free API key","text":"Sign up at tik.tools/login to get your free API key. No credit card required."},"install":{"name":"Install the SDK","text":"Run npm install {'@'}tiktool/live to install the TikTools SDK."},"connect":{"name":"Connect to a live stream","text":"Create a TikTokLive client with the streamer username and your API key, then call client.connect()."},"receive":{"name":"Receive real-time events","text":"Listen for events like chat, gift, like, follow, and viewer_count. All events are delivered as structured JSON objects."}}},"hero":{"badge":"Quick Start Guide","title":"Getting Started with","titleHighlight":"TikTok LIVE API","subtitle":"Connect to any TikTok LIVE stream and receive real-time data in under 30 seconds. Sandbox tier - no credit card required."},"step1":{"title":"Get Your Free API Key","signUp":"Sign up at {link} with your Google account. Your free API key is generated instantly - no credit card, no approval process.","limits":"The Sandbox tier includes {sandboxRequests} and {sandboxConnections} (50 sessions per day, 2h per connection). Upgrade to a paid tier (from {price}/week) for {paidRequests} and {paidConnections} for production use.","sandboxRequests":"5,000 requests/day","sandboxConnections":"3 concurrent WebSocket connections","paidRequests":"10,000 requests/day","paidConnections":"20 concurrent WebSocket connections"},"step2":{"title":"Install the SDK","body":"Install the TikTools SDK from npm. Works with Node.js, Bun, and Deno."},"step3":{"title":"Connect to a Live Stream","body":"Use the SDK to connect to any TikTok user who is currently live streaming:"},"step4":{"title":"Run It","saveAs":"Save as {file} and run:","output":"You'll see live events flowing in your terminal within seconds:"},"step5":{"title":"Alternative: Raw WebSocket","body":"Don't want to use the SDK? Connect directly via WebSocket from any language:","languages":"Works with Python, Go, Rust, Java, C#, Ruby - any language with WebSocket support."},"next":{"title":"What's Next?","useCases":{"title":"Use Cases","sub":"See what developers build with the API"},"reference":{"title":"Full API Reference","sub":"All events, endpoints & SDK methods"},"bot":{"title":"Build a Chat Assistant","sub":"Step-by-step assistant tutorial"},"overlay":{"title":"Build a Stream Overlay","sub":"OBS browser source tutorial"}},"sidebar":{"title":"On This Page","apiKey":"1. Get Your Free API Key","install":"2. Install the SDK","connect":"3. Connect to a Stream","run":"4. Run It","raw":"5. Raw WebSocket"}},"websocket":{"seo":{"title":"TikTok LIVE WebSocket API - Real-time Stream Data","description":"Connect to TikTok Live streams via WebSocket API. Real-time chat messages, gifts, viewer counts, battles - works with JavaScript, Python, Go, Rust, and any language. Sandbox tier available.","ogTitle":"TikTok LIVE WebSocket API - Real-time Stream Data","ogDescription":"Connect to any TikTok Live stream via WebSocket. Real-time events for chat, gifts, viewers, battles. Works with any programming language. Free tier available."},"og":{"title":"TikTok LIVE WebSocket Guide","subtitle":"Connect and handle real-time stream events.","badge":"GUIDE"},"jsonLd":{"headline":"TikTok LIVE WebSocket API - Connect to Any Live Stream","description":"Complete guide to connecting to TikTok LIVE streams via WebSocket. Real-time chat, gifts, viewers, battles. Works with JavaScript, Python, Go, Rust, and any language.","faq":{"connect":"Connect to {url} using any WebSocket library. You will receive real-time JSON events for chat, gifts, viewers, and more.","languages":"Any language with WebSocket support: JavaScript/Node.js, Python, Go, Rust, Java, C#, Ruby, PHP, and more. TikTool also provides an official Node.js SDK ({'@'}tiktool/live).","free":"Yes, the Sandbox tier is free with 3 concurrent WebSocket connections and 5,000 REST requests/day. Paid plans start from {price}/week (Basic) for 20 concurrent connections and 10,000 requests/day."}},"hero":{"badge":"Guide","title":"TikTok LIVE","titleHighlight":"WebSocket API","subtitle":"Connect to any TikTok LIVE stream via WebSocket. Receive real-time chat messages, gifts, viewer counts, battles, and engagement data with sub-50ms latency. Works with any programming language."},"how":{"title":"How the TikTok LIVE WebSocket Works","endpoint":"TikTool provides a managed WebSocket endpoint at {endpoint} that streams real-time events from any TikTok LIVE stream. You connect with your API key and a TikTok username - the server handles all protocol negotiation, authentication, and reconnection logic.","relay":"Unlike direct protocol connections to TikTok's broadcast infrastructure (which break frequently), TikTool's WebSocket API is a {relay}.","relayStrong":"stable, production-grade relay"},"quickStart":{"title":"Quick Start - Connect in 3 Lines","native":"Or connect directly with native WebSocket (no SDK needed):","anyLanguage":"Any Language","anyLanguageBody":"Any language with WebSocket support works - Go, Rust, Java, C#, Ruby, PHP. Just connect to:"},"params":{"title":"WebSocket Connection Parameters","parameter":"Parameter","required":"Required","description":"Description","uniqueId":"TikTok username (without {'@'}) of the streamer","apiKey":"Your TikTool API key","jwtKey":"JWT-based auth (alternative to apiKey for tokenized browser clients)"},"eventTypes":{"title":"Event Types","intro":"Every WebSocket message is a JSON object with {event} and {data} fields. Here are the events you'll receive:"},"events":{"chat":"New chat message from a viewer. Includes user info, message text, and badges.","gift":"Virtual gift sent by a viewer. Includes gift name, diamond value, and repeat count.","like":"A viewer liked the stream. Includes total like count.","member":"A viewer joined the stream. Fires when users enter the live room.","social":"Follow / share / favourite. The data.action field tells you which (follow, share, favourite).","roomUserSeq":"Viewer count update. Includes current viewerCount and topViewers.","subscribe":"A viewer subscribed to the streamer.","battle":"LinkMic battle event. Includes battle status, scores, duration, and participants.","battleArmies":"Battle armies update. Team scores and participant rankings.","linkMic":"LinkMic guest layout update. Includes slot/guest user IDs for multi-host streams.","roomPin":"A chat message was pinned by the streamer.","liveIntro":"Stream introduction update. Includes stream title and description.","emoteChat":"Custom emote sent in chat. Includes emote ID and image URL.","envelope":"Treasure chest / red-envelope event in the stream.","question":"Viewer-submitted Q&A question.","rankUpdate":"Per-region rank refresh for the streamer.","barrage":"Top-of-screen barrage/announcement message.","superFan":"A viewer became a Super Fan or levelled up. Includes the new level.","superFanJoin":"A Super Fan joined the room.","superFanBox":"Super Fan box / reward event.","control":"Stream lifecycle control (pause, end, etc.)."},"limits":{"title":"Connection Limits by Tier","tier":"Tier","connections":"Connections","price":"Price","sandboxFree":"Sandbox (free)","sandboxTier":"Sandbox Tier","proPrice":"from {price}/week","ultraPrice":"from {price}/week","agencyConnections":"500 + Firehose","agencyPrice":"from {price}/week"},"errors":{"title":"Error Handling & Reconnection","body":"The WebSocket will close with standard close codes. Your client should handle reconnection:"},"faq":{"title":"Frequently Asked Questions","connect":{"q":"How do I connect to a TikTok live stream via WebSocket?","a":"Connect to {url} using any WebSocket library. You will receive real-time JSON events for chat, gifts, viewers, and more. The SDK ({'@'}tiktool/live) handles this automatically."},"languages":{"q":"What programming languages work with TikTok LIVE WebSocket?","a":"Any language with WebSocket support: JavaScript/Node.js, Python, Go, Rust, Java, C#, Ruby, PHP, and more. TikTool also provides an official Node.js SDK ({'@'}tiktool/live on npm) and a Python package (tiktok-live-api on PyPI)."},"free":{"q":"Is the TikTok LIVE WebSocket API free?","a":"Yes, the Sandbox tier is free with 3 concurrent WebSocket connections and 5,000 REST requests/day. No credit card required. Paid plans from {price}/week (Basic) offer 20 concurrent connections and 10,000 requests/day for production use."},"openSource":{"q":"How is this different from open-source live stream libraries?","a":"Open-source libraries require you to maintain your own connection infrastructure and frequently break when the platform updates. TikTool is a managed API service that handles all maintenance for you."},"latency":{"q":"What is the latency of the WebSocket connection?","a":"TikTool delivers events within 50ms of them occurring on TikTok. The WebSocket connection is optimized for low-latency real-time data delivery."}},"next":{"python":{"title":"Python Guide","sub":"Connect with Python"},"events":{"title":"Events Reference","sub":"All event types & data"}}},"webhooks":{"seo":{"title":"TikTok LIVE Webhooks - Go-Live and Stream-End Alerts","description":"Receive a signed HTTPS POST when a TikTok creator goes live or ends a stream. live.start and live.end webhooks with retries, replay and HMAC signatures, included on every paid plan."},"og":{"title":"TikTok LIVE Webhooks","subtitle":"Go-live and stream-end alerts at your endpoint.","badge":"GUIDE"},"jsonLd":{"breadcrumbHome":"Home","breadcrumbGuides":"Guides","breadcrumbPage":"TikTok LIVE Webhooks"},"hero":{"badge":"Guide","title":"TikTok LIVE","titleHighlight":"Webhooks","subtitle":"Get a signed HTTPS POST the moment a TikTok creator goes live or ends a stream. No socket to keep open and nothing to poll: pick the creators, give us a URL, and live.start and live.end arrive at your endpoint.","seePlans":"See plans","apiReference":"API reference"},"what":{"title":"What a TikTok LIVE webhook does","body":"A webhook is a go-live alert delivered to your server. We watch the creators you list and send an HTTPS POST to your URL when one of them starts a LIVE ({start}) and again when the stream ends ({end}). Your service does not need to hold a connection open or run a scheduler - it only has to answer a POST.","uses":"Typical uses: post to Discord or Slack when a creator goes live, start recording or analytics the moment a stream begins, open a {link} for chat and gifts only while the creator is actually live, or keep an agency roster's live status current.","usesLink":"WebSocket connection"},"how":{"title":"How it works","register":"{strong} with your endpoint URL, the events you want and the TikTok usernames to watch.","registerStrong":"Register a webhook","secret":"{strong} returned once on creation. Every delivery is signed with it.","secretStrong":"Store the signing secret","receive":"{strong} as JSON POSTs. Verify the signature, answer 200, then do your work.","receiveStrong":"Receive live.start and live.end"},"events":{"title":"Events","ariaLabel":"Webhook events","event":"Event","plans":"Plans","when":"When it fires","plansAllPaid":"All paid plans","plansUltraGlobal":"Ultra and Agency Global","plansGlobal":"Agency Global","liveStart":"A watched creator started a LIVE. Includes the room id, start time and live URL.","liveEnd":"A watched creator ended the stream. Same envelope, with the end time.","peakViewers":"A stream reached a new viewer peak.","highValueGift":"A high-value gift was sent during a watched stream.","followerMilestone":"A watched creator crossed a follower milestone."},"register":{"title":"Register a webhook","body":"Create webhooks from the dashboard, or server-to-server with your API key. The response includes the signing secret, shown only once.","creators":"Keep {creators} scoped to the accounts you care about (up to 1,000 per webhook). To change the list later, {patch} the webhook with the full new array - it replaces the previous list. Full parameters are in the {link}.","creatorsLink":"API reference"},"payloads":{"title":"Payloads","headers":"Every delivery also carries {timestamp}, {event}, {eventId}, {deliveryId}, {attempt} and {webhookId} headers."},"verify":{"title":"Verify the signature","body":"Each POST includes {header}, where {v1} is the HMAC-SHA256 of {signed} keyed with your webhook secret. Compute it over the raw body before parsing JSON, compare in constant time, and reject timestamps older than five minutes."},"delivery":{"title":"Delivery and retries","atLeastOnce":"{strong} The same event can arrive more than once, so dedupe on {eventId}.","atLeastOnceStrong":"At-least-once.","retries":"{strong} A failed delivery is retried on a schedule of 0s, 30s, 2m, 10m, 1h and 6h. After the last attempt it is kept as a dead letter you can replay from the dashboard or the API once your endpoint is healthy.","retriesStrong":"Retries.","fast":"{strong} Return a 2xx as soon as the POST arrives and process afterwards. Connect timeout is 10 seconds and read timeout 15 seconds; a refused connection or a timeout counts as a failed attempt.","fastStrong":"Answer fast.","test":"{strong} Send a signed test delivery to your endpoint from the dashboard or the test endpoint to check parsing and signature handling before a creator goes live.","testStrong":"Test anytime."},"plans":{"title":"Plans","body":"Webhooks with {start} and {end} are included on every paid plan, with more endpoints and a larger daily delivery allowance on higher plans. A Sandbox account can set up one test webhook from the dashboard and send signed test deliveries to it, so the integration can be built before you subscribe. Live deliveries, and registering webhooks with an API key, need a paid plan. See {link} for plan details.","pricingLink":"pricing"},"faq":{"title":"Frequently Asked Questions","offer":{"q":"Does TikTok offer webhooks for LIVE streams?","a":"TikTok does not provide public webhooks for when a creator goes live. Tik Tools watches the creators you choose and sends live.start and live.end webhooks to your HTTPS endpoint."},"speed":{"q":"How fast does live.start arrive?","a":"Usually within seconds of the creator going live. Detection is continuous but not instantaneous, so a stream that starts and ends within a few seconds may not be seen. Streams of normal length are caught reliably."},"twice":{"q":"Can the same event be delivered twice?","a":"Yes. Delivery is at-least-once, so a retry can repeat an event your server already processed. Every payload carries a stable event_id - store it and skip any id you have seen."},"down":{"q":"What happens if my server is down?","a":"Failed deliveries are retried at 0s, 30s, 2m, 10m, 1h and 6h. After the last attempt the event is kept as a dead letter that you can replay once your endpoint is back."},"websocket":{"q":"Do I need a WebSocket connection as well?","a":"Not for go-live alerts. Webhooks cover live.start and live.end on their own. Use the WebSocket API when you also need the chat, gifts and viewer events from inside the stream."},"plans":{"q":"Which plans include webhooks?","a":"live.start and live.end webhooks are included on every paid plan. Higher plans add more endpoints, a larger daily delivery allowance and extra events. A Sandbox account can set up one test webhook from the dashboard and send signed test deliveries; live deliveries and registering webhooks with an API key need a paid plan."}},"next":{"websocket":{"title":"WebSocket Guide","sub":"Stream chat and gifts once a creator is live"},"bot":{"title":"Build a Live Bot","sub":"Discord and chat automation"}}},"events":{"seo":{"title":"TikTok LIVE Events Reference - tik.tools","description":"Every TikTok LIVE WebSocket event documented with live firehose data: chat, gift, like, follow, join, battle, subscription. Drop-in code in Node, Python, curl, Go.","ogTitle":"TikTok LIVE API Events Reference","ogDescription":"All TikTok LIVE WebSocket events documented with live firehose samples. Drop-in code in Node, Python, curl, Go."},"og":{"title":"TikTok LIVE Events Reference","subtitle":"Every event you can subscribe to.","badge":"GUIDE"},"hero":{"eyebrow":"EVENTS REFERENCE · LIVE FIREHOSE · STREAMING NOW","title":"The full event vocabulary of {brand}","sub":"Chat. Gifts. Likes. Joins. Follows. Battles. Subscriptions. Every event on TikTok LIVE streams through one WebSocket with rich metadata. The feed below is the real public firehose right now - not a mockup.","ctaKey":"Get a free sandbox key","ctaDocs":"Read the docs"},"feed":{"title":"Live event feed","flag":"{count} events buffered · real public stream","giftAlt":"gift","someone":"someone","giftFallback":"Gift","actions":{"sent":"sent"},"secondsAgo":"{n}s ago","minutesAgo":"{n}m ago","empty":"Waiting for the next live event...","caption":"The public firehose is masked, but every event is a real push from a real TikTok LIVE room. Connect with your own key to receive the full unmasked payload (real usernames, real avatars, real diamond counts) - the only thing that changes between tiers is the concurrent-connection cap."},"code":{"title":"Subscribe to the firehose in your stack","lead":"Pick your language. Copy. Run. Sandbox key from {link}.","tabsLabel":"Code language"},"docs":{"title":"Every event, what fires it, what's in the payload","intro":"All events share the envelope {envelope}. Below: every event type and the data it carries.","items":{"chat":{"description":"Fired when a viewer sends a chat message. Most common event.","frequency":"Very frequent","fields":{"comment":"The message text","userId":"Numeric TikTok user ID"}},"gift":{"description":"Fired when a viewer sends a virtual gift. Includes gift name, diamond value, streak data.","frequency":"Moderate","fields":{"user":"Sender","giftName":"e.g. \"Rose\", \"Galaxy\"","giftId":"Numeric gift ID","diamondCount":"Diamond value","repeatCount":"Streak count","repeatEnd":"True when streak ends"}},"like":{"description":"Fired when a viewer taps the like button. Includes total accumulated likes.","frequency":"Very frequent","fields":{"user":"Liker","likeCount":"This event count","totalLikeCount":"Stream total"}},"member":{"description":"Fired when a viewer joins the live stream room.","frequency":"Moderate","fields":{"user":"Joining user"}},"follow":{"description":"Fired when a viewer follows the streamer during the live.","frequency":"Low","fields":{"user":"Following user"}},"share":{"description":"Fired when a viewer shares the live stream.","frequency":"Low","fields":{"user":"Sharing user"}},"roomUserSeq":{"description":"Periodic viewer count update. Primary way to track real-time viewer numbers. The SDK also emits it as viewer_count (alias, same payload).","frequency":"Periodic","fields":{"viewerCount":"Live viewers right now","topViewers":"Ranked by engagement"}},"subscribe":{"description":"Fired when a viewer subscribes to the streamer.","frequency":"Rare","fields":{"user":"Subscriber"}},"linkMicBattle":{"description":"Fired when a TikTok LIVE battle starts, updates, or ends. Includes scores + participants.","frequency":"During battles","fields":{"battleUsers":"Participants with scores","type":"1=start, 2=update, 3=end"}},"roomPin":{"description":"Fired when the streamer pins a chat message.","frequency":"Rare","fields":{"pinnedMessage":"Message content + sender"}}}},"faq":{"title":"Frequently asked","paid":{"q":"Do I need a paid plan to receive events?","a":"No. The Sandbox tier is free and ships the full real event payload (real usernames, real diamonds, etc) - your client signs the upstream WebSocket with its own TikTok cookie. The only hard caps are 3 concurrent WebSocket connections and 5,000 REST requests/day. Basic at {price}/wk lifts the cap to 20 concurrent WS + 10,000 req/day."},"frequent":{"q":"Which event fires most often on a busy stream?","a":"`like` and `chat` dominate by frequency. `gift` is the highest-value signal per event."},"multiple":{"q":"Can I subscribe to multiple TikTok creators at once?","a":"Yes. Open one WebSocket per uniqueId. Pro tier allows 50 concurrent WS, Ultra 250."},"streak":{"q":"How do I detect when a gift streak ends?","a":"Only streakable gifts (`giftType` 1) run a streak: watch for `repeatEnd === true`, or close it yourself when no new frame arrives for a few seconds, and take the highest `repeatCount`. Other gifts never send an end frame: a quantity send such as 8x is one frame with `repeatCount` 8, so count it as it arrives. Either way the total diamonds = `diamondCount * repeatCount`."},"latency":{"q":"What is the latency vs the actual stream?","a":"Events arrive ~150-400ms after they fire on TikTok. Faster than the video stream itself on most CDNs."},"battles":{"q":"Do battles fire for both creators?","a":"Yes. Connect to either creator in the battle - both receive the same `linkMicBattle` event with both `battleUsers` populated."}}}},"guidesBuild":{"shared":{"ogBadge":"GUIDE"},"bot":{"seo":{"title":"How to Build a TikTok Live Chat Bot (Node.js + Python) - tik.tools","description":"Build a TikTok LIVE chat bot in Node.js or Python that reads chat, gifts, and joins, and reacts to commands. Working code, tested examples, rate-limit info. Free API key.","ogTitle":"How to Build a TikTok Live Chat Bot in 5 Minutes","ogDescription":"Working Node.js and Python TikTok LIVE chat bot examples. Read events, react to commands, run 24/7. Free tier."},"og":{"title":"Build a TikTok Live Chat Bot","subtitle":"Node.js and Python walkthrough."},"jsonLd":{"name":"Build a TikTok LIVE chat bot","description":"Step-by-step Node.js and Python tutorial for a TikTok LIVE chat bot that reads chat/gift events and reacts to viewer commands in your own app.","steps":{"install":{"name":"Install the SDK","text":"Install the TikTool SDK via npm or pip."},"credentials":{"name":"Set credentials","text":"Export your TikTool API key."},"write":{"name":"Write the bot","text":"Listen for chat/gift events and react to commands in your own code."},"run":{"name":"Run it","text":"Run with node or python; bot reconnects automatically."}}},"hero":{"badge":"Tutorial · Free · 5 minutes","title":"Build a TikTok LIVE chat bot","sub":"Read every chat, gift, and join event from any TikTok LIVE stream and react to commands in your own app. Run in Node.js or Python with under 60 lines of code.","ctaKey":"Get a free API key","ctaGithub":"View on GitHub"},"mock":{"terminal":"terminal","liveOutput":"bot live output","productionKey":"Production key","active":"active","limit":"Limit","limitValue":"10,000 events/min"},"step1":{"title":"Install the SDK","body":"One package. No build step. Works in any Node 18+ or Python 3.9+ environment."},"step2":{"title":"Set your credentials","intro":"You need one thing:","apiKeyItem":"{label} - from {link}. The free tier is fine for one stream.","apiKeyLabel":"API key","dashboardLink":"your dashboard"},"step3":{"title":"Write the bot","body":"Listens for chat, gifts, joins, likes. Reacts to {hello} and {ping} commands with your own action: an overlay, a sound, a webhook."},"step4":{"title":"Run it","body":"The bot stays connected until you stop it. Reconnect logic is built into the SDK.","tryIt":"Type {hello} or {ping} from any TikTok account into the streamer's chat and watch your bot react."},"limits":{"label":"Important","title":"Limitations to plan around","sub":"Everything below is what TikTok enforces on your account/IP - not something tik.tools can lift. Build your bot logic with these in mind.","volume":{"title":"events per stream per minute","body":"Big creators (1M+ viewers) push tens of thousands of events per minute. Your bot needs to process them lazily - don't block the event loop on every chat. Drop or queue heavy work."},"streamEnd":{"chip":"stream end","title":"session ends with the LIVE","body":"When the streamer ends their LIVE, the WebSocket closes. The SDK fires {event}. Reconnect after the streamer goes live again - poll {endpoint} or use webhooks."},"unofficial":{"chip":"not affiliated","title":"not endorsed by TikTok","body":"This is an {unofficial} integration. Don't impersonate creators, and keep whatever your bot triggers within TikTok's community guidelines.","strong":"unofficial"}},"next":{"title":"Where to next","overlay":{"title":"OBS overlay","desc":"Stream gift animations on top of your video"},"game":{"title":"Build a chat game","desc":"Viewers vote with comments, gifts trigger actions"},"tts":{"title":"Text-to-speech","desc":"Have the bot speak chat messages out loud"}}},"overlay":{"seo":{"title":"Build a TikTok LIVE Stream Overlay - OBS Browser Source Tutorial","description":"Build a TikTok LIVE Stream Overlay for OBS with real-time chat, gift alerts, and viewer counts. Complete tutorial with HTML, CSS, and Node.js code. Uses TikTok LIVE API - free tier available.","ogTitle":"Build a TikTok LIVE Stream Overlay for OBS","ogDescription":"Create a real-time TikTok LIVE overlay with chat feed, gift alerts, and viewer counts. Complete code tutorial for OBS browser sources."},"og":{"title":"Build a TikTok LIVE Stream Overlay","subtitle":"Chat, gifts and alerts for OBS."},"jsonLd":{"howTo":{"name":"How to Build a TikTok LIVE Stream Overlay for OBS","description":"Create a real-time OBS overlay showing TikTok LIVE chat, gift alerts, and viewer counts using TikTools API.","steps":{"setup":{"name":"Set up the project","text":"Create a Node.js project with {pkg} and express."},"server":{"name":"Create the server","text":"Build an Express server that connects to TikTok and broadcasts events via SSE."},"html":{"name":"Create the overlay HTML","text":"Design the browser-based overlay with chat feed, gift alerts, and viewer count."},"obs":{"name":"Add to OBS","text":"Add the overlay URL as a Browser Source in OBS with 1920x1080 resolution."}}},"article":{"headline":"Build a TikTok LIVE Stream Overlay with Real-Time Data","description":"Complete tutorial: create an OBS-compatible overlay for TikTok LIVE streams with real-time chat, gift alerts, and viewer counts."}},"hero":{"badge":"Tutorial","title":"Build a TikTok LIVE","highlight":"Stream Overlay","subtitle":"Create a real-time OBS-compatible browser source overlay that shows live chat, gift alerts, and viewer counts from any TikTok LIVE stream."},"build":{"title":"What You'll Build","intro":"A browser-based stream overlay that works with OBS, Streamlabs, or any software that supports browser sources. It displays:","items":{"chat":"Live chat messages in real-time","gifts":"Animated gift alerts with diamond values","viewers":"Current viewer count","feed":"A scrolling chat feed with user avatars"}},"prereq":{"title":"Prerequisites","node":"Node.js 18+ installed","apiKey":"A free TikTools API key - {link}","apiKeyLink":"get one here","obs":"OBS Studio (or any streaming software with Browser Source)"},"step1":{"title":"Step 1: Set Up the Project"},"step2":{"title":"Step 2: Create the Server","body":"Create {file} - this connects to TikTok and broadcasts events via Server-Sent Events (SSE) to the browser overlay:"},"step3":{"title":"Step 3: Create the Overlay HTML","body":"Create {file} - this is what OBS will render as a browser source:"},"step4":{"title":"Step 4: Run & Add to OBS","thenObs":"Then in OBS:","addSource":"Add a new {source}","sourceLabel":"Browser Source","setUrl":"Set URL to {url}","setSize":"Set width to {width} and height to {height}","shutdown":"Check \"Shutdown source when not visible\""},"custom":{"title":"Customization Ideas","themes":{"label":"Custom themes","text":"{label} - change colors, fonts, and layout to match your stream brand"},"sounds":{"label":"Sound effects","text":"{label} - play sounds when gifts arrive using the Web Audio API"},"gifs":{"label":"GIF animations","text":"{label} - show animated GIFs for specific gifts"},"goals":{"label":"Goal bars","text":"{label} - add donation/gift goal progress bars"},"podium":{"label":"Top gifter podium","text":"{label} - show the top 3 gifters in real-time"}},"next":{"bot":{"title":"Build a Chat Assistant","desc":"Automated chat assistant tutorial"},"useCases":{"title":"More Use Cases","desc":"See all API applications"}}},"game":{"seo":{"title":"How to Build a TikTok LIVE Interactive Game - Unity, C++ & Web","description":"Step-by-step guide to building interactive viewer-controlled games for TikTok LIVE. Viewers send gifts & chat commands to control your game. Works with Unity, C++, and web. Free SDK.","ogTitle":"Build a TikTok LIVE Interactive Game - Unity, C++ & Web","ogDescription":"Let viewers control your game with TikTok LIVE events. Gift-triggered effects, chat commands, like floods. Complete code for UE5, Unity, and JavaScript."},"og":{"title":"Build a TikTok LIVE Game","subtitle":"Let viewers control your game with gifts and chat."},"jsonLd":{"howTo":{"name":"Build a TikTok LIVE Interactive Game","description":"Create viewer-controlled games for TikTok LIVE streams. Viewers send gifts, chat commands, and likes to control gameplay. Works with Unity, C++, and web.","steps":{"engine":{"name":"Choose your engine","text":"Pick your game engine: Unity (C# WebSocket), C++, or web (JavaScript SDK)."},"connect":{"name":"Connect to TikTool API","text":"Install the SDK or connect via raw WebSocket to receive real-time event data from TikTok LIVE streams."},"map":{"name":"Map events to game actions","text":"Bind gift, chat, like, and follow events to in-game effects like spawning items, controlling characters, or changing difficulty."},"stream":{"name":"Stream to TikTok","text":"Use TikTok Live Studio or OBS to stream your game while the audience interacts in real-time."}}},"faq":{"official":{"q":"Do I need TikTok's official API to make a LIVE game?","a":"No. TikTok does not offer a public API for LIVE stream events. TikTool provides a managed API with WebSocket delivery that works with any game engine including Unity, Godot, C++, and web browsers."},"engines":{"q":"What game engines work with TikTok LIVE interactive games?","a":"Any engine that supports WebSocket connections: Unity (C# WebSocket), C++, Godot, GameMaker, web browsers, and custom engines."}}},"hero":{"badge":"Game Dev Guide","title":"Build a TikTok LIVE","highlight":"Interactive Game","subtitle":"Let viewers control your game with chat commands, gifts, and likes. Works with Unity, C++, web browsers, and any WebSocket-capable engine."},"what":{"title":"What Are TikTok LIVE Games?","body":"TikTok LIVE interactive games are viewer-controlled experiences where the audience's actions directly affect gameplay. When viewers send chat messages, gifts, likes, or follow the streamer, those events trigger in-game responses - spawning enemies, changing the environment, or controlling characters.","examplesIntro":"Popular examples include:","battles":{"label":"Chat-controlled battles","text":"{label} - viewers type commands to join teams and fight"},"gifts":{"label":"Gift-triggered effects","text":"{label} - sending a Rose spawns an item, a Universe triggers a boss fight"},"likes":{"label":"Like floods","text":"{label} - likes affect gravity, speed, or difficulty"},"follows":{"label":"Follow alerts","text":"{label} - new followers spawn friendly NPCs"}},"how":{"title":"How It Works","body":"Your game connects to the TikTools API via WebSocket and receives real-time events from the TikTok LIVE stream. Each event includes the viewer's username, the action they took, and relevant data (gift value, chat message, etc.)."},"option1":{"title":"Option 1: Web Game (JavaScript)","body":"The simplest approach - connect directly from a browser or Node.js backend:"},"option2":{"title":"Option 2: Unity (C#)","body":"Use the raw WebSocket connection from Unity - no additional plugin required:"},"tips":{"title":"Game Design Tips","names":{"label":"Show viewer names","text":"{label} - display the gifter's or chatter's username in-game so viewers feel recognized"},"scale":{"label":"Scale with viewers","text":"{label} - use {event} events to dynamically adjust difficulty"},"tiers":{"label":"Gift tiers","text":"{label} - map TikTok gift values (1{diamond} = small, 10{diamond} = medium, 100{diamond}+ = epic) to in-game effects"},"cooldowns":{"label":"Cooldowns","text":"{label} - prevent spam by adding per-user cooldowns on chat commands"},"feedback":{"label":"Visual feedback","text":"{label} - always show what happened when a viewer interacts so the audience stays engaged"}},"faq":{"title":"FAQ","official":{"q":"Do I need TikTok's official API to make a LIVE game?","a":"No. TikTok does not offer a public API for LIVE stream events. TikTool provides a managed third-party API with WebSocket delivery that works with any game engine. A free 7-day Sandbox evaluation is enough to prototype your game."},"events":{"q":"What events can I use in my game?","a":"All events: {chat}, {gift}, {like}, {follow}, {share}, {member} (join), {viewerCount}. See the {link} for full documentation.","link":"Events Reference"},"engines":{"q":"Can I use this with Godot, GameMaker, or other engines?","a":"Yes. Any engine that supports WebSocket connections can use the TikTool API. Connect to {url} and parse the JSON messages. No SDK required."}},"next":{"overlay":{"title":"Build an Overlay","desc":"OBS stream overlay tutorial"},"events":{"title":"Events Reference","desc":"All event types documented"}}},"tts":{"seo":{"title":"How to Add Text-to-Speech (TTS) on TikTok LIVE - Free TTS Assistant Guide","description":"How to add text-to-speech on TikTok LIVE. Build a free TTS assistant that reads chat messages aloud using AI voices - ElevenLabs, OpenAI, or free browser TTS. Step-by-step guide for Node.js & Python.","ogTitle":"How to Use Text to Speech on TikTok Live - TTS Assistant Guide","ogDescription":"Build a TikTok LIVE TTS assistant. Read chat messages aloud with AI voices. Works with any TTS engine. Free API for developers."},"og":{"title":"TikTok LIVE Text-to-Speech","subtitle":"Turn chat and gifts into live audio."},"jsonLd":{"name":"How to Use Text to Speech on TikTok Live","description":"Build a TTS assistant that reads TikTok Live chat messages aloud using the TikTool API and any TTS engine.","steps":{"connect":{"name":"Connect to the Live Stream","text":"Install the TikTool SDK and connect to a TikTok LIVE stream with your API key."},"listen":{"name":"Listen for Chat Messages","text":"Use {code} to receive every chat message in real-time."},"send":{"name":"Send to TTS Engine","text":"Pipe the chat message text to your preferred TTS engine (Web Speech API, ElevenLabs, Google TTS)."}},"toolEngine":"Any TTS Engine (Web Speech API, ElevenLabs, Google Cloud TTS)"},"hero":{"badge":"TTS Assistant Guide","title":"Text to Speech","highlight":"TTS","line2":"on TikTok LIVE","subtitle":"Build a TTS assistant that reads TikTok Live chat messages aloud using AI voices. Works with any TTS engine - ElevenLabs, Google Cloud, OpenAI, or the free browser Web Speech API."},"intro":{"heading":"How to Use{accent} on TikTok Live","headingAccent":"Text to Speech","sub":"TTS (Text to Speech) on TikTok Live reads chat messages aloud using AI voices. Learn how TTS works, how to enable it, and how to build TTS assistants with the TikTool API."},"what":{"title":"What is TikTok LIVE TTS?","body":"Text to Speech (TTS) on TikTok Live converts {strong} during a live broadcast. When viewers send messages, TTS reads them aloud so the streamer and audience can hear them. This is especially useful for:","strong":"chat messages into spoken audio","items":{"streamers":"Streamers who can't constantly read chat","accessibility":"Accessibility for visually impaired users","entertainment":"Interactive entertainment experiences","assistants":"AI-powered voice assistants on stream"}},"howGet":{"title":"How to Get Text to Speech on TikTok Live","body":"TikTok's built-in TTS is limited - it only works for specific donation/gift messages. For {strong}, developers use TikTool's API to capture chat in real-time and pipe it to a TTS engine:","strong":"full TTS on all chat messages"},"step1":{"title":"Step 1: Connect to the Live Stream"},"step2":{"title":"Step 2: Listen for Chat Messages"},"step3":{"title":"Step 3: Add a TTS Engine","body":"Choose any TTS engine - browser Web Speech API, Google Cloud TTS, Amazon Polly, ElevenLabs, or OpenAI TTS:"},"useCasesTitle":"TTS Use Cases for TikTok Live","useCases":{"chat":{"title":"Chat TTS Assistant","desc":"Read every chat message aloud. Viewers hear their messages spoken by AI - drives engagement and donations."},"gifts":{"title":"Gift Thanks Assistant","desc":"Automatically thank viewers who send gifts. Custom voice messages for roses, lions, and universe gifts."},"games":{"title":"Game Commands","desc":"Voice-controlled interactive games. Chat messages become voice commands that control gameplay on stream."},"multiLang":{"title":"Multi-Language TTS","desc":"Detect message language and use the appropriate voice. Stream to global audiences with auto-translated TTS."}},"compare":{"title":"TikTok LIVE TTS vs. Built-in TTS","feature":"Feature","ours":"TikTool + Custom TTS","builtIn":"TikTok Built-in TTS","yes":"Yes","no":"No","allChat":"All chat messages","giftsOnly":"Gifts only","customVoices":"Custom voices","anyEngine":"Any engine","fixedVoices":"Fixed voices","aiVoices":"AI voices (ElevenLabs, OpenAI)","multiLang":"Multi-language","languages":"50+ languages","limited":"Limited","filtering":"Filtering/moderation","customRules":"Custom rules","overlay":"Stream overlay","obs":"OBS compatible"},"python":{"title":"Python TTS Assistant for TikTok Live","body":"Build a TTS assistant in Python using {pkg} and {engine}:"},"faq":{"title":"Frequently Asked Questions","howTo":{"q":"How to do text to speech on TikTok live?","a":"Use TikTool's WebSocket API to capture chat messages in real-time, then pipe them to any TTS engine (Web Speech API, Google Cloud TTS, ElevenLabs, OpenAI TTS). The API provides every chat message as JSON - you just need to send the text to your TTS of choice."},"howGet":{"q":"How to get text to speech on TikTok live?","a":"Install the TikTool SDK with {command}, connect to a live stream with your API key, and listen for chat events. Each chat event includes the message text and user info. Send the text to any TTS engine to hear it spoken aloud."},"builtIn":{"q":"Does TikTok have built-in TTS for live streams?","a":"TikTok has limited built-in TTS that only reads certain gift/donation messages. For full TTS on all chat messages, you need an external solution like TikTool's API connected to a TTS engine."},"python":{"q":"Can I build a TTS assistant for TikTok Live in Python?","a":"Yes. Use the tiktok-live-api Python package or connect directly to wss://api.tik.tools via websockets. Combine with pyttsx3 (offline) or gTTS (Google) for speech output. See the Python example above."},"bestEngine":{"q":"What is the best TTS engine for TikTok Live?","a":"For free/basic use: browser Web Speech API or pyttsx3 (Python). For high-quality AI voices: ElevenLabs, OpenAI TTS, or Google Cloud TTS. Each has different pricing, voice quality, and latency trade-offs."},"free":{"q":"How to use TTS on TikTok live for free?","a":"TikTool offers a free 7-day Sandbox evaluation (5,000 requests/day, 3 concurrent WebSocket connections). Combined with the browser's free Web Speech API or Python's pyttsx3, you can build and evaluate a TTS assistant for TikTok Live at no cost, then continue on a paid plan."}},"cta":{"title":"Build Your TikTok LIVE TTS Assistant","desc":"Sandbox tier - 5,000 requests/day, 3 concurrent WebSocket connections. Start building in minutes.","primary":"Get Free API Key","secondary":"Quick Start Guide"}}},"guidesData":{"common":{"badge":"Developer Guide","ogBadge":"GUIDE","breadcrumbHome":"Home","breadcrumbGuides":"Guides"},"leaderboardApi":{"seo":{"title":"TikTok LIVE Leaderboard API Guide {'|'} TikTools","description":"Complete developer guide for the TikTools leaderboard and league ranking API. Get daily regional leaderboards, query all {count} league divisions ({range}), and monitor live creators across {regions} regions. Code examples in Node.js, Python, Go, PHP, and cURL.","ogTitle":"TikTok LIVE Leaderboard & League API Guide {'|'} TikTools","ogDescription":"Real-time TikTok LIVE leaderboard data for {regions} regions. Query league rankings in all {count} divisions ({range}), detect live creators, and build creator monitoring tools. All paid plans. Full code examples.","ogImageTitle":"TikTok LIVE Leaderboard API","ogImageSubtitle":"Top creators and gifters as live data.","breadcrumbName":"Leaderboard & League API"},"hero":{"title":"Leaderboard &","titleHighlight":"League API","subtitle":"Real-time TikTok LIVE leaderboard data. Get daily rankings across {count} regions, query live league class data, and monitor creator performance."},"badges":{"allPaidPlansCaps":"ALL PAID PLANS","ultraOnlyLeaguesCaps":"ULTRA ONLY - Leagues","allPaidPlans":"All Paid Plans","ultraOnly":"Ultra Only","ultraDeveloperOnly":"Ultra Developer Plan Only"},"headings":{"pathParameters":"Path Parameters","responseSchema":"Response Schema","exampleResponse":"Example Response","codeExamples":"Code Examples"},"table":{"parameter":"Parameter","type":"Type","description":"Description","field":"Field","slug":"Slug","regionCode":"Region Code","class":"Class"},"overview":{"heading":"Overview","intro":"TikTool exposes two categories of leaderboard data through its website API at {host}. Both endpoints return real-time competitive ranking data for TikTok LIVE creators sorted by diamond earnings.","regional":{"title":"Regional Leaderboards","body":"Daily rankings of the top 100 creators by total diamonds earned, broken down by geographic region. Updated continuously throughout the day. Available to Basic, Pro, and Ultra subscribers.","items":{"top100":"Top 100 creators per region","fields":"Rank, score (diamonds), live status, room ID","regions":"{count} regions worldwide","refresh":"Data refreshes continuously"}},"league":{"title":"League Rankings","body":"Class-based competitive ranking data ({range}) for creators competing in TikTok LIVE leagues. Reveals who is in each competitive tier in any region. Requires {plan}. Agency PASS ({vipPath}) is a website subscription - it gives frontend access to league data on the website, not programmatic API access.","plan":"Ultra developer plan","items":{"divisions":"{count} league divisions: {list}","entries":"Per-class ranked entries with live status","teaser":"Glass-wall teaser for lower tiers (5 entries)","refresh":"Data refreshes frequently"}}},"auth":{"label":"Authentication:","body":"{label} These endpoints are on {host} (not {apiHost}) and use session-based auth. Call them from your server with a valid session cookie obtained by logging into tik.tools with a paid developer account. All paid developer plans (Basic, Pro, Ultra) have access to regional leaderboard endpoints. {leagueRule} The Agency PASS subscription (at {vipPath}) is a separate website-only product - it grants access to league data through the tik.tools website interface, not via this developer API.","leagueRule":"League endpoints require the Ultra developer plan."},"regions":{"heading":"Region Reference","intro":"{count} regional leaderboards are available. Use the {slug} in the country leaderboard endpoint URL, and the {code} in league endpoints."},"country":{"heading":"Endpoint: Regional Leaderboard","intro":"Returns the current day's top-100 leaderboard for a region. Entries are sorted by {field} (total diamonds earned today) descending.","params":{"slug":"Region slug from the Region Reference table above (e.g., {first}, {second})"},"fields":{"rank":"Position on the leaderboard (1 = highest earner)","uniqueId":"TikTok username (without {'@'})","nickname":"Display name shown on TikTok","score":"Total diamonds earned today in this region","isLive":"Whether the creator is currently streaming live","roomId":"Live room ID if currently streaming, otherwise null"}},"leagues":{"heading":"League Endpoints","warning":{"label":"Ultra required.","plan":"Ultra developer plan","body":"{label} League endpoints require an {plan}. Requests from Basic and Pro plans receive a teaser of 5 entries - the {fullAccessField} field in the response will be {falseValue} and {maskedField} will indicate how many entries are hidden. Note: Agency PASS subscription ({vipPath}) gives website access to league data but is not a developer API subscription."},"list":{"heading":"4a. List Leagues for a Region","intro":"Lists the available league classes for a given region, including how many creators are in each class and when the data was last updated.","params":{"region":"Region code (e.g., {first}, {second}, {third}) from the Region Reference table"},"fields":{"classType":"Numeric class identifier (see {field} Reference below)","classLabel":"Human-readable class name (e.g., \"A1\", \"B5\")","count":"Number of creators currently in this class","updatedAt":"ISO 8601 timestamp of the last data refresh"}},"entries":{"heading":"4b. Get League Entries","intro":"Returns the ranked list of creators in a specific league class for a region. This is the primary endpoint for building league-aware tools and creator monitoring dashboards.","params":{"region":"Region code (e.g., {first}, {second})","classType":"Numeric class identifier (2000=A1, 1900=A2, 1100=B5, etc.)"},"fields":{"hasFullAccess":"True if your tier has full access; false = teaser mode (5 entries)","maskedCount":"Number of entries hidden due to tier restrictions (0 if {field})","totalCount":"Total number of creators in this class","rank":"Position within this class","userId":"TikTok numeric user ID (stable backend ID, never changes)","uniqueId":"TikTok username/handle without {'@'} (user-changeable)","nickname":"Display name (user-changeable)","score":"Diamonds earned in the current league period"}}},"classRef":{"heading":"{field} Reference","intro":"League classes map numeric {field} values to competitive tiers. A1 is the highest tier - the elite creators earning the most diamonds. {bottom} is the entry point into league competition.","note":"Not all {count} divisions may be present in every region. Call the {endpoint} endpoint first to discover which classes exist for your target region, then fetch the specific class you need.","noteEndpoint":"List Leagues","classes":{"A1":"Elite tier. Top earners in the region. Highest competition, highest diamond requirements for placement.","A2":"Senior tier. Established high-earning creators working toward A1 promotion.","A3":"Established A-class. Consistent high earners holding their spot in the elite range.","B1":"Top of the B range. Creators one promotion away from the A divisions.","B2":"Upper B-class. Strong earners competing for B1.","B3":"Mid B-class. Steady earners in the middle of the B range.","B4":"Lower B-class. Creators building toward the upper B divisions.","B5":"B-class entry. Creators with strong consistent earnings across the league period.","C1":"Top of the C range. Active earners building toward the B-class range.","C2":"Upper C-class. Moderate earners competing for C1 promotion.","C3":"Mid C-class. Regular earners in the middle of the C range.","C4":"Lower C-class. Creators climbing toward the upper C divisions.","C5":"C-class entry. Recently promoted from the D range.","D1":"Top of the D range. Creators beginning to earn meaningfully in the region.","D2":"Upper D-class. Newer or lower-volume earners.","D3":"Mid D-class. Creators settling into league competition.","D4":"Lower D-class. Early league earners.","D5":"Entry league. The starting point for league-eligible creators."}},"example":{"heading":"Working Example: Find All A1 Creators Streaming Now in Balkans","intro":"This complete multi-step example shows the recommended pattern: discover available classes, find the one you need, fetch its entries, then filter for live creators. This works for any region and class combination.","steps":{"fetchLeagues":"Fetch available leagues for region BK (Balkans)","findClass":"Find the A1 entry and confirm it exists","fetchEntries":"Fetch A1 league entries","filterLive":"Filter for {condition} creators"}},"tips":{"heading":"Rate Limits & Best Practices","cache":{"title":"Cache responses client-side","body":"Leaderboard positions shift gradually. Cache for 10-30 seconds before re-fetching to avoid hammering the API unnecessarily."},"leagueRefresh":{"title":"League data refreshes on a fixed schedule","body":"League boards change slowly, so there is no benefit to polling league endpoints more than every few minutes."},"parallel":{"title":"Poll regions independently","body":"All {count} regions can be polled in parallel. If you need multi-region data, fan out requests concurrently rather than sequentially."},"connect":{"title":"Use {live} + {room} to connect","body":"When {live} is true on a leaderboard entry, you can open a WebSocket to that creator immediately using their {uniqueId} and your API key."},"cookies":{"title":"Store session cookies securely","body":"Session cookies grant access to your account. Store them in environment variables, never in source code or public repositories."},"listFirst":{"title":"List leagues before fetching entries","body":"Not every class exists in every region. Always call the list endpoint first to confirm which {field} values are available for your target region."}},"faq":{"heading":"Frequently Asked Questions","plans":{"q":"What plans include leaderboard API access?","a":"All paid plans (Basic, Pro, and Ultra) include access to the regional leaderboard endpoint. The free Sandbox key (a 7-day evaluation) does not include leaderboard access."},"league":{"q":"What is required to access league ranking data?","a":"League endpoints require the Ultra developer plan. The Agency PASS subscription ({vipPath}) is a website product - it gives access to league data through the tik.tools interface, not via this developer API. Basic and Pro developer subscribers receive a teaser of 5 entries per league class but cannot see the full list."},"refresh":{"q":"How often does the leaderboard data update?","a":"Regional leaderboard data refreshes continuously throughout the day as creators earn diamonds. League class data is refreshed frequently. Cache your responses for at least 10 seconds to avoid redundant fetches."},"regions":{"q":"How many regions are available?","a":"TikTool provides leaderboard data for {count} regions worldwide, including North America, United Kingdom, Balkans, Southeast Asia, Latin America, and more. Each region has its own independent leaderboard and league competition."},"live":{"q":"Can I tell if a creator is currently live from the leaderboard?","a":"Yes. Every leaderboard entry and league entry includes an {field} boolean field. When true, the creator is actively streaming. You can connect to their stream immediately using their {uniqueId} with the TikTool WebSocket API at {wsUrl}."},"missingClasses":{"q":"Not all {field} values appear for my region. Why?","a":"Not every league class exists in every region - it depends on how many creators are competing there. Call the list leagues endpoint first to see which {field} values are active for your target region before fetching entries."},"pollAll":{"q":"Can I poll all {count} regions at once?","a":"Yes. Regions are fully independent and can be polled in parallel. If you need a multi-region snapshot, fan out all {count} requests concurrently and aggregate the results. Be mindful of your plan rate limits when doing so."}},"jsonLd":{"refreshA":"Regional leaderboard data refreshes continuously throughout the day. League class data is refreshed frequently. Creators appear on the leaderboard the moment they start earning diamonds in a given region.","regionsA":"TikTool provides leaderboard data for {count} regions worldwide, including North America, United Kingdom, Balkans, Southeast Asia, Latin America, and more. Each region has its own independent leaderboard.","liveQ":"Can I tell if a creator is currently live from the leaderboard API?","liveA":"Yes. Every leaderboard entry and league entry includes an {field} boolean field. When true, you can connect to that creator's stream immediately using their {uniqueId} with the TikTool WebSocket API.","classTypeQ":"What is the {field} numbering system?","classTypeA":"{field} is a numeric identifier for each of the {count} league divisions: {list}. Higher numbers correspond to higher-tier, more competitive classes."},"next":{"prevTitle":"WebSocket API","prevDesc":"Connect to live streams in real time","nextTitle":"Events Reference","nextDesc":"All event types and data fields"}},"analytics":{"seo":{"title":"TikTok LIVE Analytics API - Track Viewers, Gifts & Engagement in Real-Time","description":"Track viewer counts, gift revenue, chat volume, and engagement in real-time for any TikTok LIVE stream. Build analytics dashboards with free API. Node.js, Python & any language.","ogTitle":"TikTok LIVE Analytics API - Track Viewers, Gifts & Engagement","ogDescription":"Real-time TikTok LIVE analytics: viewer counts, gift revenue, chat volume, engagement rates. Build dashboards with free API.","ogImageTitle":"TikTok LIVE Analytics API","ogImageSubtitle":"Track viewers, gifts and engagement in real time."},"hero":{"title":"TikTok LIVE","titleHighlight":"Analytics API","subtitle":"Track viewer counts, gift revenue, chat volume, and engagement metrics in real-time for any TikTok LIVE stream. Build dashboards, alert systems, and analytics tools."},"available":{"heading":"What Analytics Data Is Available?","intro":"TikTok does not provide a public analytics API for LIVE streams. The TikTools API fills this gap by delivering every stream event in real-time via WebSocket. You can compute any metric from these raw events:","items":{"viewers":{"label":"Viewer count","desc":"real-time viewer count updates every few seconds"},"revenue":{"label":"Gift revenue","desc":"every gift event includes diamond value (1 diamond ≈ $0.005)"},"chat":{"label":"Chat volume","desc":"messages per minute, unique chatters, keyword frequency"},"engagement":{"label":"Engagement rate","desc":"likes, shares, follows per time period"},"peak":{"label":"Peak viewership","desc":"track high-water marks across the session"},"leaderboard":{"label":"Gift leaderboard","desc":"top supporters ranked by total diamond spend"}}},"quickStart":{"heading":"Quick Start: Real-Time Dashboard Data","intro":"This example collects all analytics data in real-time. Plug it into any frontend framework or save to a database:"},"output":{"heading":"Expected Output"},"database":{"heading":"Save to a Database","intro":"Store events in PostgreSQL, MongoDB, or any database for historical analysis:"},"raw":{"heading":"Raw WebSocket (Any Language)","intro":"Build analytics in Python, Go, Rust, or any language with WebSocket support:"},"faq":{"heading":"FAQ","official":{"q":"Does TikTok have an official analytics API for LIVE streams?","a":"No. TikTok provides in-app analytics via LIVE Center for creators, but there is no public API to access this data programmatically. The TikTools API delivers raw events in real-time that you can use to build your own analytics."},"multiple":{"q":"Can I track multiple streams simultaneously?","a":"Yes. Create multiple {client} clients - one per stream. The Pro tier supports up to 50 simultaneous WebSocket connections."},"accuracy":{"q":"How accurate is the viewer count?","a":"The viewer count is provided directly by TikTok's internal data and updates every few seconds. It matches the count shown in the TikTok app."}},"jsonLd":{"howToName":"How to Build TikTok LIVE Analytics","howToDescription":"Track viewer counts, gift revenue, chat volume, and engagement in real-time for any TikTok LIVE stream using the TikTools API.","steps":{"install":{"name":"Install the SDK","text":"Run {command} to install the TikTools SDK."},"listen":{"name":"Set up event listeners","text":"Listen for viewer_count, chat, gift, like, follow, and share events to collect analytics data."},"compute":{"name":"Compute metrics","text":"Track peak viewers, messages per minute, gift revenue in diamonds, unique chatters, and engagement rates."},"store":{"name":"Store and display","text":"Save events to a database or display in a real-time dashboard."}},"officialA":"No. TikTok provides in-app analytics via LIVE Center for creators, but there is no public API to access this data programmatically. The TikTools API delivers raw events in real-time for building custom analytics.","multipleQ":"Can I track multiple TikTok LIVE streams at once?"},"next":{"prevTitle":"Events Reference","prevDesc":"All event types documented","nextTitle":"Node.js Guide","nextDesc":"Complete JavaScript/TypeScript guide"}}},"guidesSdk":{"livePreview":{"defaultTitle":"Live preview","running":"RUNNING","iframeTitle":"Live code preview","placeholder":"Preview loads once visible."},"migrateShared":{"getFreeKey":"Get free API key","livePreviewBadge":"Live preview","copyThisCode":"Copy this code","colTier":"Tier","responseShapeBadge":"Response shape","responseShapeTitle":"Identical JSON, plus a migration hint"},"migrateEuler":{"seo":{"title":"Migrate from Euler Stream to Tik.Tools - one config line","description":"Drop-in migration from Euler Stream to Tik.Tools. Same SDKs (TikTokLive, tiktok-live-connector), same endpoints, same response shape. Swap the sign-provider host - that is it.","ogTitle":"Migrate from Euler Stream to Tik.Tools","ogDescription":"Swap the sign-provider host. Keep TikTokLive / tiktok-live-connector. Free tier covers the migration.","ogImageTitle":"Migrate from Euler Stream","ogImageSubtitle":"Switch with one config line.","ogImageBadge":"MIGRATE"},"hero":{"badge":"One-config-line migration","title":"Move from {legacy} to {brand} in one config line","sub":"Keep TikTokLive (Python) or tiktok-live-connector (Node). Swap the sign-provider host. Same event names, same SDKs, same code.","copyCta":"Copy migration code"},"live":{"title":"See the drop-in working right here","desc":"Same handshake Euler exposes: signed-token mint -> WebSocket. The iframe below runs the exact HTML version of the snippet against api.tik.tools - copy and paste it, you get the same output.","note":"Pick any language (Node / Python / HTML / LLM prompt)"},"steps":{"badge":"Step by step","title":"Two steps. Zero refactor.","one":{"title":"Swap the sign-provider host","body":"Two config lines in your SDK init - point the signing backend at {newHost} instead of {oldHost}. Existing event handlers, room IDs, and SDK code stay unchanged. All {tiersLink} work as drop-in replacements; the demo key {demoKey} works without signup at reduced limits.","tiersLink":"tik.tools API tiers","copyCta":"Copy full Node + Python"},"two":{"title":"Grab a real API key (when ready)","body":"The demo key {demoKey} works without signup but is capped at 1 WebSocket / 10-minute sessions / 6 connects per hour per IP. {link} for higher limits + full Euler endpoint parity.","link":"Get a free Tik.Tools key"}},"endpoints":{"badge":"Endpoint parity","title":"Every Euler endpoint maps 1:1","desc":"Tik.Tools mirrors the Euler endpoint surface so SDKs that already speak Euler keep working with zero patches.","colTikTools":"Tik.Tools (same path)","tierDemo":"Demo","bonusRow":"{label} public ticker, leaderboards","bonusLabel":"Bonus (not in Euler):","note":"{lead} sign_url returns {shape}. Your existing parser keeps working.","noteLead":"Same response shape."},"pricing":{"title":"Free tier covers the migration + your first production deploy","body":"Sandbox + Basic tiers free. No credit card. Higher rate limits when you ship.","seePricing":"See pricing"}},"migrateTikapi":{"seo":{"title":"Migrate from TikAPI to Tik.Tools - 30-second drop-in","description":"Drop-in migration from TikAPI to Tik.Tools. Same endpoints, same response shape, plus real-time WebSocket events for TikTok Live.","ogTitle":"Migrate from TikAPI to Tik.Tools","ogDescription":"Swap the base URL, keep your code. Free tier covers migration + testing.","ogImageTitle":"Migrate from TikAPI","ogImageSubtitle":"A 30-second drop-in replacement.","ogImageBadge":"MIGRATE"},"hero":{"badge":"One-line migration","title":"Move from {legacy} to {brand} in 30 seconds","sub":"Same endpoints. Same response shape. Real-time WebSocket events on top. Swap the base URL, keep your code.","copyCta":"Copy live events code"},"live":{"title":"Same TikAPI shape, served from api.tik.tools","desc":"The iframe below is the literal HTML example file - it pulls live channels from {endpoint} and streams events via WebSocket. Copy it, save as {ext}, double-click. Identical output.","note":"Node / Python / HTML / LLM prompt"},"steps":{"one":{"title":"Change one line","body":"Point your existing TikAPI base URL at {host}. The path stays the same."},"two":{"title":"Use your Tik.Tools API key","body":"Get one free at {link}. Pass it as {query} or {header} header - both work."},"three":{"title":"That's it","body":"Your existing handlers keep working. Every migration response carries a {hint} hint pointing at the native endpoint - switch when you're ready for faster + richer data."}},"endpoints":{"badge":"Endpoint map","title":"Every TikAPI live-data call works against Tik.Tools","desc":"VOD, profile metadata, and search are TikAPI-only - we are a TikTok LIVE specialist. Everything below is a drop-in.","colTikapi":"TikAPI endpoint","colCompat":"Tik.Tools (compat)","colNative":"Native equivalent","tierFree":"Free","tierFreeConn":"Free (15 conn)","returnsEmptyLiveStatus":"returns empty + live status","returnsUserLiveStatus":"returns user + live status","returnsEmptyNote":"returns empty + note","bonusWs":"{label} real-time WS events for chat / gifts / likes / joins / battles","bonusWsLabel":"Bonus (not in TikAPI):","bonusBoards":"{label} creator + gifter leaderboards ({count} regions)","bonusBoardsLabel":"Bonus:","note":"{lead} {endpoints} all return HTTP 200 with empty arrays + a {hint} note. The user-shaped endpoints also include {liveStatus} so your migration script keeps shipping. Keep TikAPI for actual VOD data; we cover everything LIVE.","noteLead":"VOD endpoints don't crash your code:"},"response":{"desc":"Every compat response carries a {hint} envelope so you know exactly which native endpoint to call when you're ready to switch."},"pricing":{"title":"Free tier is enough to migrate + test","body":"5,000 REST requests/day. 3 concurrent WebSocket connections, 50 sessions a day. No credit card. Upgrade only when you ship.","readDocs":"Read full docs"}},"python":{"seo":{"title":"TikTok LIVE API Python Guide - Connect to Any Live Stream","description":"Connect to TikTok LIVE streams from Python with TikTools API. Real-time chat, gifts, viewer counts via WebSocket. Production-ready alternative to TikTokLive library. Free tier, fully managed.","ogTitle":"TikTok LIVE API Python Guide - Connect to Any Live Stream","ogDescription":"Complete Python guide for TikTok LIVE data. WebSocket + REST examples, production-ready. Free API key - fully managed service.","ogImageTitle":"TikTok LIVE API for Python","ogImageSubtitle":"Connect to any live stream in Python.","ogImageBadge":"GUIDE"},"jsonLd":{"howTo":{"name":"How to Connect to TikTok Live with Python","description":"Connect to any TikTok LIVE stream from Python using TikTools WebSocket API. Receive chat, gifts, viewer counts in real-time.","step1":{"name":"Install websockets","text":"Install the Python websockets library with pip install websockets."},"step2":{"name":"Connect to WebSocket","text":"Connect to wss://api.tik.tools with your uniqueId and apiKey parameters."},"step3":{"name":"Handle events","text":"Parse JSON events for chat, gift, member, and roomUserSeq event types."}},"article":{"description":"Complete Python guide for connecting to TikTok LIVE streams. WebSocket and REST API examples. Production-ready alternative to TikTokLive library."}},"hero":{"badge":"Tutorial","titleHighlight":"Python Guide","subtitle":"Connect to any TikTok LIVE stream from Python using the TikTools WebSocket API. Receive real-time chat messages, gifts, viewer counts, and more - production-ready, fully managed."},"why":{"title":"Why Use TikTools for Python?","p1":"The MIT-licensed {lib} Python client connects directly to TikTok's broadcast protocol and delegates signing to a managed backend (the default is Euler Stream, which has its own free tier and paid plans). It is a self-host-the-client + managed-signing model maintained by the Euler Stream team.","p2":"TikTools is an independent {service}. It handles protocol changes server-side and works with any language via standard WebSocket. No protocol handling required - just connect and receive events. Choose whichever model fits your team.","p2Service":"managed API service"},"comparison":{"hosting":{"label":"Hosting model","tiktools":"Fully managed","other":"Self-hosted client + managed signing"},"setupLabel":"Setup","maintenance":{"label":"Maintenance surface","tiktools":"Zero - handled server-side","other":"Client + signing backend updates"}},"prereq":{"title":"Prerequisites","python":"Python 3.8+ installed","key":"A free TikTools API key - {link}","keyLink":"get one here"},"option1":{"title":"Option 1: asyncio + websockets","intro":"The simplest approach - use the standard {lib} library to connect to the TikTools WebSocket API:"},"option2":{"title":"Option 2: REST API with requests","intro":"For one-off data fetching (room info, user profiles), use the REST API:"},"running":{"title":"Running the Scripts"},"output":{"title":"Expected Output"},"nextSteps":{"title":"Next Steps","database":{"title":"Store events in a database","text":"{title} - pipe events to PostgreSQL, MongoDB, or SQLite"},"dashboard":{"title":"Build a dashboard","text":"{title} - use Flask or FastAPI to create a real-time web dashboard"},"ai":{"title":"AI analysis","text":"{title} - feed chat messages to GPT/Claude for sentiment analysis"},"multiStream":{"title":"Multi-stream","text":"{title} - monitor multiple streams simultaneously (Pro tier: 50 connections)"}},"nextLinks":{"bot":{"title":"Node.js Chat Assistant","sub":"Build a chat assistant with the SDK"},"docs":{"title":"Full API Docs","sub":"Complete API reference"}}},"node":{"seo":{"title":"TikTok LIVE API for Node.js - Build Assistants & Apps in JavaScript","description":"Build TikTok LIVE assistants and apps in JavaScript/TypeScript. npm install {pkg}, connect in 3 lines, receive real-time chat, gifts, viewers. Free SDK, open-source, MIT license.","ogTitle":"TikTok LIVE API for Node.js - Build Assistants & Apps in JavaScript","ogDescription":"The complete Node.js guide for TikTok LIVE API. Install from npm, full TypeScript support, all events documented. Free tier available.","ogImageTitle":"TikTok LIVE API for Node.js","ogImageSubtitle":"Build assistants and apps in JavaScript.","ogImageBadge":"GUIDE"},"jsonLd":{"howTo":{"name":"How to Use TikTok LIVE API with Node.js","description":"Install the {pkg} npm package and connect to any TikTok LIVE stream to receive real-time chat, gifts, and viewer data in JavaScript.","toolNode":"Node.js (version 18 or later)","step1":{"name":"Install the SDK","text":"Run npm install {pkg} to install the TikTools SDK from npm."},"step2":{"name":"Create a client","text":"Import TikTokLive and create a client with the streamer username and your API key."},"step3":{"name":"Listen for events","text":"Use client.on() to listen for chat, gift, follow, like, and viewer_count events."},"step4":{"name":"Connect","text":"Call await client.connect() to start receiving real-time events."}},"faq":{"official":{"q":"Does TikTok have an official Node.js API for live streams?","a":"No. TikTok does not offer a public API for LIVE stream data. TikTools is a managed third-party API with a free npm SDK ({pkg}) for real-time chat, gifts, viewers, and other LIVE events."},"free":{"q":"Is the TikTok LIVE Node.js SDK free?","a":"Yes. The Sandbox tier gives you 5,000 requests/day and 3 concurrent WebSocket connections for free. No credit card required. Paid plans start at {price}/week (Basic) for 10,000 requests/day, 20 concurrent connections and production access."},"runtimes":{"q":"Does the SDK work with Bun and Deno?","a":"Yes. The {pkg} SDK is compatible with Node.js 18+, Bun, and Deno."}}},"hero":{"badge":"Developer Guide","titleHighlight":"for Node.js","subtitle":"Build TikTok LIVE assistants, overlays, and dashboards in JavaScript. npm install, connect in 3 lines, receive real-time events. Free SDK, open-source, MIT license."},"why":{"title":"Why Node.js?","intro":"Node.js is the most popular runtime for TikTok LIVE integrations. The official {pkg} SDK is written in TypeScript, published on npm, and includes full type definitions out of the box. You get:","typeSafety":{"title":"Type safety","text":"{title} - full TypeScript definitions for every event and method"},"autoReconnect":{"title":"Auto-reconnection","text":"{title} - the SDK handles dropped connections automatically"},"eventDriven":{"title":"Event-driven","text":"{title} - familiar {code} pattern"},"everywhere":{"title":"Works everywhere","text":"{title} - Node.js 18+, Bun, Deno"}},"install":{"title":"Install the SDK","other":"Or with other package managers:"},"quickStart":{"title":"Quick Start: 3 Lines to Live Data","create":"Create {file} and paste:","run":"Run it:","result":"You'll see chat messages flowing in your terminal within seconds."},"events":{"title":"All Available Events","intro":"The SDK emits structured events for every interaction on the stream:"},"output":{"title":"Expected Output"},"typescript":{"title":"TypeScript Support","intro":"The SDK is written in TypeScript. Types are included automatically - no {types} package needed:"},"raw":{"title":"Raw WebSocket (No SDK)","intro":"Prefer to use the raw WebSocket directly? It works with any language or framework:"},"faq":{"title":"FAQ","official":{"q":"Does TikTok have an official Node.js API?","a":"No. TikTok does not offer a public API for LIVE stream data. The TikTools API is a managed third-party service that provides reliable real-time access to chat, gifts, viewers, and other LIVE events. The {pkg} npm package is the official SDK for this API."},"free":{"q":"Is it free?","a":"Yes. The Sandbox tier gives you 5,000 requests/day and 3 concurrent WebSocket connections - free, evaluation only, no credit card required. {link}.","link":"Sign up here"},"frameworks":{"q":"Can I use it with Express, Fastify, or Next.js?","a":"Yes. The SDK works in any Node.js environment. Use it in Express route handlers, Fastify plugins, Next.js API routes, or standalone scripts."},"runtimes":{"q":"Does it work with Bun and Deno?","a":"Yes. The SDK is compatible with Bun and Deno. Install via {cmd} or import from npm in Deno."}},"nextLinks":{"start":{"title":"Getting Started","sub":"Complete API quick start"},"bot":{"title":"Build a Chat Assistant","sub":"Step-by-step assistant tutorial"}}}},"leaderboards":{"brightMode":{"toLight":"Switch bright sections to light","toggleDark":"Toggle dark mode"},"shopping":{"crumbTail":"Live Shopping","seoBoard":"Shopping","h1":"TikTok LIVE {region} Live Shopping","h2":"{region} sellers ranked by weekly sales volume","intro":"The {region} live shopping board ranks the creators selling on TikTok LIVE in this region by the sales volume their streams generate over the weekly cycle. It is a different population from the gifting leaderboard: a seller can rank here on product revenue while sending almost no diamonds, which is why agencies scout the two boards separately. Rows marked LIVE were broadcasting when this page was rendered.","pageTitle":"{region} TikTok LIVE Shopping Ranking","ogSubtitle":"Live shopping sellers ranked by sales volume","ogBadge":"SHOPPING"},"gaming":{"board":"Gaming","h1Game":"TikTok LIVE {region} Gaming - {game}","h1":"TikTok LIVE {region} Gaming Ranking","h2Game":"{game} streamers ranked by diamonds","h2":"{count} tracked titles, ranked by diamonds","introGame":"The {game} ranking lists the TikTok LIVE creators streaming {game} to the {region} audience, ordered by the diamonds their viewers sent during the current cycle. Game rankings reset on their own cadence, so a strong session can move a creator several places within hours. Rows marked LIVE are broadcasting as this page was rendered.","intro":"The {region} gaming ranking pools every TikTok LIVE creator streaming a tracked title to the region, ordered by diamonds received in the running cycle. {count} individual game rankings sit underneath it, each with its own reset cycle and its own set of contenders, and a creator can hold a place in both at once.","pageTitle":"{region} TikTok LIVE {board} Ranking","ogSubtitle":"Gaming creators ranked by diamonds","ogBadge":"GAMING"},"league":{"board":"{label} League","h1":"TikTok LIVE {region} {label} League","h2":"{label} division standings, ranked by diamonds","intro":"{label} is one of {siblings} TikTok LIVE league divisions competing inside the {region} pool. This board tracks the {total} creators seeded into the division for the running cycle, their diamond totals and who is broadcasting right now. Divisions are re-seeded every cycle, so placement here follows gifting volume rather than follower count, which is why it moves far faster than a follower chart.","docTitle":"{region} TikTok LIVE League {label} ranking","pageTitle":"{region} TikTok LIVE {label} League Ranking","ogSubtitle":"League standings by diamonds, refreshed live","ogBadge":"LEAGUES"},"dated":{"loading":"Loading historical leaderboard...","notFound":{"title":"No data available","body":"No leaderboard snapshot found for this date.","back":"← Back to current leaderboard"},"crumbRankings":"Rankings","heading":"{board} TikTok LIVE Leaderboard","historicalBadge":"Historical Snapshot","stats":{"totalDiamonds":"Total Diamonds","totalRevenue":"Total Revenue","estEarnings":"Est. Earnings"},"goToday":"Go to Today's Leaderboard","todaysRankings":"Today's Rankings","empty":"No snapshot was stored for this date. {link}.","emptyLink":"See today's board","cols":{"streamer":"Streamer","diamonds":"Diamonds","revenue":"Revenue","earnings":"Earnings"},"seo":{"title":"{country} TikTok LIVE Leaderboard - {date}","titleFallback":"Historical TikTok LIVE Leaderboard","descriptionEmpty":"No {country} TikTok LIVE leaderboard snapshot is stored for {date}.","description":"{country} TikTok LIVE leaderboard snapshot for {date} - {count} creators, {earned} in estimated earnings."},"jsonLd":{"home":"Home","rankings":"TikTok LIVE Rankings","board":"{country} Leaderboard"}},"nav":{"creatorsRank":"Creators Rank","giftersRank":"Gifters Rank","rising":"Rising","creators":"Creators","gifters":"Gifters","gaming":"Gaming"},"rising":{"title":"{accent} Intel","titleAccent":"Rising","sub":"New whales emerging + creators on a hot streak. Refreshed regularly.","tabs":{"gifters":"Rising Gifters","creators":"Rising Creators"},"gate":{"title":"Agency Global tier only","body":"Rising Intel surfaces accounts most platforms haven't caught yet. Available exclusively to Agency Global subscribers.","cta":"Upgrade to Agency Global"},"featureName":"Rising Intel","loading":"Loading rising signal...","empty":"No movers in this window yet. Check back in a few.","stats":{"last24h":"last 24h","vsAvg":"vs avg","ageDays":"{n}d","age":"age","gifters":"gifters"},"updated":"Updated {when}.","seo":{"title":"Rising Intel - tik.tools","description":"New gifters and creators trending hard on TikTok LIVE. Agency-tier intel feed."}},"time":{"minAgo":"{n} min ago","hoursAgo":"{n}h ago","shortly":"shortly","inHours":"in {n}h","inMin":"in {n} min"},"live":"LIVE","teams":{"title":"{accent} & Clubs","titleAccent":"Teams","sub":"TikTok clubs ranked by their members' combined diamonds, per region. Every other board ranks creators; this one ranks the teams behind them.","loading":"Loading Teams board...","empty":"No Teams board cached for this region yet - building. Check back in a few minutes.","count":"{n} clubs","copyHosts":"Copy hosts","featureName":"The Teams / Clubs board","level":"Lv {n}","members":"{n} members","host":"host {'@'}{handle}","diamonds":"diamonds","upsell":{"body":"{more} are hidden. The full Teams board, every club and host unmasked across all {regions} regions, is an Agency Global feature.","more":"{n} more clubs","cta":"See Agency plans"},"updated":"Updated {when}","resets":", board resets {when}","seo":{"title":"TikTok LIVE Teams and Clubs Rankings - tik.tools","description":"TikTok's Teams and Clubs leaderboard per region: clubs ranked by their members' combined diamonds, with club level, member count and host. Agency-tier intel."}},"team":{"notFound":{"title":"Team not found","body":"This host is not leading a TikTok club we currently track.","back":"Browse the Teams board"},"crumb":"Teams & Clubs","level":"Level {n}","rankIn":"#{rank} in {region}","regionFallback":"region","stats":{"diamonds":"Diamonds","members":"Members","regionalRank":"Regional rank","estEarnings":"Est. earnings"},"hostedBy":"Hosted by","upsell":"Club name, host and roster are unmasked on the {plan} plan. The stats above are live for everyone.","loading":"Loading team...","seo":{"maskedName":"A TikTok LIVE club in {region}","itsRegion":"its region","fallbackName":"TikTok LIVE Team","title":"{name} - TikTok LIVE Team {'|'} tik.tools","description":"TikTok LIVE club ranked #{rank} in {region} - {members} members, {diamonds} combined diamonds. Level {level}.","descriptionFallback":"TikTok LIVE team and club stats.","ogTitle":"{name} - TikTok LIVE Team"}},"radar":{"badge":"Creator Intelligence","title":"Radar","sub":"Who's spending on your streams. Your whale intelligence dashboard.","gate":{"title":"Log in to access Radar","body":"Sign in as a creator to see who's gifting you, their spending patterns, and when your whales are online.","cta":"Sign In →"},"placeholder":"{'@'}creator handle","loadingBtn":"Loading...","analyze":"Analyze","scanning":"Scanning gifter data...","topWhales":"Your Top Whales (All Time)","gifts":"{n} gifts","allGifters":"All Gifters","cols":{"gifter":"Gifter","diamonds":"Diamonds","value":"Value","gifts":"Gifts"},"verified":"Verified","empty":"No gifter data for {'@'}{handle} yet. Gift tracking builds up as streams happen.","upgrade":{"title":"Want whale alerts and full analytics?","body":"Upgrade to get notified when your top whales are online on other streams.","cta":"Upgrade →"},"seo":{"title":"Creator Radar - Gifter Intelligence"}},"hub":{"hero":{"title":"TikTok LIVE Leaderboard","sub":"Real-time rankings across {regions} regions worldwide","apiNote":"Also available via API for developers.","apiLink":"See leaderboard API guide →","streamingNow":"Streaming Now","activeRegions":"Active Regions"},"card":{"live":"{n} live","earnings":"Earnings","resetsIn":"Resets in"},"countries":{"eyebrow":"BY COUNTRY","title":"Browse by Country","sub":"Every country links to its regional leaderboard - countries in the same TikTok pool share one leaderboard. {link}","link":"All rankings by country and how they work","tabLive":"Live","tabAll":"All Countries","loading":"Loading..."},"gaming":{"title":"TikTok LIVE Gaming Ranks","new":"NEW","sub":"The live in-app gaming leaderboard, every region, refreshed continuously.","tag":"Agency-exclusive","open":"Open","preview":"Preview"},"seo":{"titleLive":"{live} Live · Global TikTok LIVE Leaderboard","title":"Global TikTok LIVE Leaderboard","descriptionLive":"Real-time TikTok LIVE leaderboards across {regions} regions - {live} creators streaming now, {earned} earned today. See top creators, diamonds & estimated revenue - updated continuously.","description":"Real-time TikTok LIVE daily leaderboards for {regions} regions worldwide. See top creators, diamonds earned, estimated revenue, and live status - updated continuously."}},"gifters":{"eyebrow":"EXCLUSIVE GIFTER LEADERBOARD","title":"TikTok Gifters Leaderboard","share":"Share","periods":{"daily":"Today","weekly":"This Week","monthly":"This Month"},"statsHeading":{"global":{"daily":"Gifting totals today worldwide","weekly":"Gifting totals this week worldwide","monthly":"Gifting totals this month worldwide"},"region":{"daily":"Gifting totals today in {region}","weekly":"Gifting totals this week in {region}","monthly":"Gifting totals this month in {region}"}},"tableHeading":{"global":{"daily":"Top gifters today worldwide","weekly":"Top gifters this week worldwide","monthly":"Top gifters this month worldwide"},"region":{"daily":"Top gifters today in {region}","weekly":"Top gifters this week in {region}","monthly":"Top gifters this month in {region}"}},"stats":{"totalDiamonds":"Total Diamonds","estValue":"Est. Value","activeGifters":"Active Gifters"},"logIn":"Log in","unlock":{"upgradeGlobal":"Upgrade to Agency Global","withAgency":"Unlock with Agency"},"global":"Global","count":"{n} gifters","copyAll":"Copy all","cols":{"gifter":"Gifter","diamonds":"Diamonds","estValue":"Est. Value","creatorsGifted":"Creators Gifted","gifts":"Gifts"},"mask":{"all":{"board":"All {n} top gifters on this board are masked on your plan.","region":"All {n} top gifters in {region} are masked on your plan."},"some":{"board":"{n} of the top {total} gifters on this board are masked.","region":"{n} of the top {total} gifters in {region} are masked."},"detailShown":"The top {shown} are shown in full; the rest keep their rank, with names, diamonds and value hidden.","detailNone":"Ranks are real; names, diamonds and value are hidden.","unlockWhales":"Unlock the whales bankrolling your creators."},"row":{"passGifter":"PASS Gifter","verifiedGifter":"Verified Gifter","watching":"Currently watching a live stream","passPrivate":"PASS PRIVATE"},"empty":"No gifter data yet - check back soon.","seo":{"title":"TikTok Gifters Leaderboard - Top LIVE Gifters Worldwide","titleRegion":"TikTok Gifters Leaderboard - {region}","description":"Real-time TikTok LIVE gifters leaderboard. Top gifters ranked by diamonds worldwide.","descriptionRegion":"TikTok LIVE gifters leaderboard for {region}. Top gifters ranked by diamonds."},"og":{"title":"Top TikTok LIVE Gifters","subtitle":"The biggest gifters across TikTok LIVE, refreshed live.","badge":"GIFTERS"}},"ranks":{"hero":{"eyebrow":"LEADERBOARDS & RANKS","title":"TikTok LIVE {accent} & Ranks","titleAccent":"Leaderboards","sub":"Every region, every board, refreshed in real time. Creators by diamonds, the gifters behind them, per-game gaming ladders, the weekly TikTok Shop GMV race, and the A1-D5 league classes - one place.","ctaBrowse":"Browse the leaderboards","ctaGaming":"Gaming & Shopping ranks"},"seePricing":"See pricing","trust":{"regions":"regions","products":"rank products","live":"Live","refreshed":"refreshed"},"new":"NEW","viz":{"unmasked":"Unmasked","hoverToUnmask":"Hover to unmask","weeklyGmv":"WEEKLY GMV - {label}","global":"Global","cutoff":"TIKTOK CUTOFF","peak":"peak #{n}","leagueTags":{"elite":"Elite","rising":"Rising","mid":"Mid","entry":"Entry"}},"features":{"creators":{"tier":"Unmasked on Pro+","title":"Creator Leaderboards","text":"The top creators in every region, ranked by diamonds. Real handles you can copy and reach out to - no masked placeholders once you unlock.","cta":"Open the creator boards"},"gifters":{"title":"Gifter Intelligence","text":"The real top gifters behind every creator. Who funds whom, where a whale spreads their spend - find the money before the competition does.","cta":"Explore gifter intel"},"gaming":{"title":"Gaming Ranks","text":"Per-region, per-game leaderboards built from the live gaming boards. See who is climbing in every title, region by region.","cta":"See gaming ranks"},"shop":{"title":"Live Shopping Ranks","text":"The weekly TikTok Shop GMV leaderboard per region - who is actually selling on LIVE - plus the products moving fastest.","cta":"Open shopping ranks"},"leagues":{"tier":"Leagues unmask on Ultra+","title":"League Rankings","text":"The A1 to D5 class ladders per region - TikTok competitive earnings classes, snapshotted continuously. See exactly which class a creator competes in.","cta":"Browse league classes"},"movers":{"title":"Finder & the 99+ movers","text":"Find creators worth approaching region by region, and reveal everyone who entered a region Top 99 today - even after TikTok drops them below the cutoff.","cta":"Reveal the movers"}},"final":{"title":"Every board, unmasked, in one subscription.","sub":"Pro unlocks the creator boards. Ultra adds the league classes. Agency unlocks gifters, gaming, shopping and the recruiting tools.","browse":"Browse the boards"},"seo":{"title":"TikTok LIVE Leaderboards & Ranks - tik.tools","description":"Every TikTok LIVE leaderboard in one place: creators by diamonds, top gifters, gaming ranks, the weekly TikTok Shop GMV race, and A1-D5 league classes across {regions} regions, refreshed live.","ogDescription":"Creators, gifters, gaming, live shopping and league ranks across {regions} regions, refreshed in real time."},"og":{"title":"TikTok LIVE Leaderboards and Ranks","subtitle":"Creators, gifters, gaming, shopping and league ranks across {regions} regions.","badge":"LEADERBOARDS"}}},"legal":{"lastUpdated":"Last updated: {date}","ogImageBadge":"LEGAL","terms":{"seo":{"title":"Terms of Service - Sandbox Free Tier, Non-Refund, Fair Use","description":"TikTool TikTok LIVE API terms: free 7-day Sandbox evaluation (5,000 req/day, no credit card). Paid plans are non-refundable - partial refunds only when service is broken on our side. Fair-use rate limits. Open-source SDK.","ogDescription":"Sandbox tier (5,000 req/day, no card). Paid plans non-refundable. Partial refunds only when service is broken on our side. Developer-friendly terms for TikTok LIVE API.","ogImageTitle":"Terms of Service","ogImageSubtitle":"Sandbox free tier, fair use and billing terms."},"title":"Terms of Service","intro":"By using this website and the TikTools API (\"Service\"), you are agreeing to be bound by the following terms and conditions (\"Terms of Service\"). {strong} Violations of any of the terms below will result in the termination of your Account. You agree to use the Service at your own risk.","introStrong":"IF YOU DO NOT AGREE WITH THESE TERMS AND CONDITIONS, YOU MUST NOT ACCEPT THIS AGREEMENT AND MAY NOT USE THE SERVICE.","serviceDescription":{"h":"1. Service Description & Third-Party API Disclaimer","c1":"1.1 TikTools provides a {strong} that enables developers to access real-time TikTok LIVE broadcast telemetry, including chat messages, virtual gifts, viewer counts, and other engagement metrics.","c1Strong":"managed third-party API","c2":"1.2 {strong} \"TikTok\" is a trademark of ByteDance Ltd. All TikTok-related trademarks and content are the property of their respective owners.","c2Strong":"TikTools is not affiliated with, endorsed by, or sponsored by TikTok or ByteDance Ltd.","c3":"1.3 {strong} Our Service processes publicly accessible broadcast data to deliver structured event telemetry. This data pipeline is independently operated and not officially supported by TikTok.","c3Strong":"TikTok does not offer a native, public API for TikTok LIVE stream data.","c4":"1.4 {strong} When this occurs, TikTools will attempt to update its systems to restore access, but there is absolutely no guarantee of success or timeline. You acknowledge and accept that the Service may become temporarily or permanently unavailable due to actions taken by TikTok.","c4Strong":"TikTok may suppress, modify, block, or remove access to its endpoints at any time without notice.","c5":"1.5 This Service relies on access to TikTok's platform. {strong} if TikTok restricts, blocks, or otherwise limits access to its platform or data. TikTools assumes no liability for any such interruptions.","c5Strong":"The Service may be interrupted, modified, or discontinued at any time without notice"},"accountTerms":{"h":"2. Account Terms","c1":"2.1 Your user account may only be used by one organization. A single account shared by multiple organizations is not permitted.","c2":"2.2 You are responsible for maintaining the security of your username, password, and API keys. TikTools cannot and will not be liable for any loss or damage from your failure to comply with this security obligation.","c3":"2.3 You must not use the Service to carry on any illegal or unauthorized activities, including but not limited to copyright or trademark infringement, harassment, spam, or abuse of TikTok or its creators.","c4":"2.4 You may not violate TikTok's intellectual property rights or those of TikTok creators. You will be banned from the Service if you are reported to have engaged in such violations.","c5":"2.5 {strong} The Service may not be accessed or used by, or on behalf of, any business, product, or individual that operates, develops, or is affiliated with a service that competes with TikTools, including for the purpose of benchmarking, replicating, or sourcing data or functionality for a competing offering. We reserve the right, in our sole discretion, to suspend or permanently ban any account we determine to be operated by or affiliated with a competitor, without notice and without an obligation to provide an appeal channel.","c5Strong":"Competing services."},"multiAccount":{"h":"3. Multi-Account Policy & Abuse Prevention","c1":"3.1 {strong} Each individual or organization is entitled to one account unless explicitly authorized by TikTools.","c1Strong":"You may not create multiple accounts to circumvent usage limits, rate limits, or other restrictions.","c2":"3.2 We monitor account creation patterns including IP addresses, email addresses (including normalized variations), and browser fingerprints. Creating accounts with email aliases or other variations of the same email address to obtain additional free API keys is a violation of these terms.","c3":"3.3 If our systems detect potential multi-account abuse, you will be presented with a warning. Continued creation of duplicate accounts after receiving this warning may result in:","c3a":"(a) Suspension or termination of all associated accounts;","c3b":"(b) Revocation of all API keys across associated accounts;","c3c":"(c) A permanent ban from the Service.","c4":"3.4 Accounts with active paid subscriptions are permitted to have multiple API keys as provided by their subscription tier. The multi-account restriction applies specifically to creating separate accounts to obtain additional free-tier access.","c5":"3.5 We reserve the right to flag, restrict, or terminate any accounts that we believe, in our sole discretion, are being used to abuse the Service."},"sandbox":{"h":"4. Sandbox Tier & API Key Access","c1":"4.1 The free Sandbox tier (a 7-day evaluation from account creation) provides access to all API endpoints with reduced rate limits, daily request quotas, and identifier masking on intelligence endpoints. Sandbox access is intended exclusively for {evaluation} and is available for {period}. After that period API access on a Sandbox key ends and every request returns an \"Evaluation period ended\" response until a paid plan is selected.","c1Evaluation":"evaluation","c1Period":"7 days from account creation","c2":"4.2 Sandbox usage is subject to limits including but not limited to: daily request caps, per-minute rate limits, WebSocket connection limits, WebSocket session duration caps, and bulk-check limits. These limits may be adjusted at any time without notice.","c3":"4.3 {strong} \"Production use\" includes, but is not limited to: any deployment that powers a live customer-facing product or website, any internal commercial workload, any paid or monetised service, any agency / scouting / lead-generation pipeline, any automated bot or integration that runs on a schedule outside developer-test sessions, any application running on shared infrastructure, and any application accessed by users other than yourself. Multi-accounting, rotating free keys, IP-cycling to bypass the daily cap, or aggregating multiple Sandbox keys into a single workload all qualify as production use.","c3Strong":"Production use of the Sandbox tier is forbidden.","c4":"4.4 {strong} TikTools monitors Sandbox-tier usage to make sure it stays within evaluation use. When we determine that a Sandbox key is being used in production or to serve end users, we may {ban}. We are not obligated to disclose how a determination was made. If you require production access, subscribe to Basic, Pro, Ultra, or Global Agency before going live.","c4Strong":"Detection & enforcement.","c4Ban":"permanently ban the account and every associated key without warning and without refund","c5":"4.5 If you require higher limits for production applications, you must subscribe to a paid tier. Using multiple Sandbox accounts to build a production application is itself a production-use violation per 4.3.","c6":"4.6 TikTools reserves the right to modify, restrict, or remove Sandbox tier access at any time without notice."},"payment":{"h":"5. Payment and Refunds","c1":"5.1 Beyond the free tier limits, you may be required to enter a valid payment method to access premium features or higher usage limits.","c2":"5.2 Subscriptions are billed in advance on a recurring basis (weekly, monthly, or yearly). You may cancel at any time, and your subscription will continue until the end of the current billing period.","c3":"5.3 {strong} The free 7-day Sandbox evaluation exists so you can verify the product before paying. We do not issue refunds for buyer's remorse, accidental purchase, testing or scraping use, change of plan, or any \"no-questions-asked\" scenario - the moment a paid key is activated it consumes real-time data and WebSocket bandwidth we have already paid for.","c3Strong":"Paid plans are non-refundable.","c4":"5.4 {strong} - sustained outage attributable to our infrastructure, a duplicate charge, or a billing error. Credit covers the affected billing period only and is at our sole discretion. To request review, email support with your account email, key label, and the dates the issue occurred.","c4Strong":"Partial refunds are issued only when a service is provably broken on our side","c5":"5.5 {strong} for the remaining period of your subscription. TikTools will make reasonable efforts to restore service but cannot guarantee any timeline or outcome.","c5Strong":"If TikTok blocks or restricts access to its platform, causing the Service to become temporarily or permanently unavailable, you are not entitled to a refund","c3Policy":"5.3 API and agency plans are non-refundable, except as described in 5.4. Reading hours are refundable under section 16 (Refunds).","c4Policy":"5.4 If a service is provably broken on our side (a sustained outage attributable to our infrastructure), or there is a duplicate charge or a billing error, we may issue a credit. Credit covers the affected billing period only and is at our sole discretion. To request review, email support with your account email, key label, and the dates the issue occurred.","c5Policy":"5.5 If TikTok blocks or restricts access to its platform, causing the Service to become temporarily or permanently unavailable, this does not give a right to a refund beyond section 16 (Refunds). TikTools will make reasonable efforts to restore service but cannot guarantee any timeline or outcome."},"cancellation":{"h":"6. Cancellation and Termination","c1":"6.1 You are solely responsible for properly canceling your account. An email or phone request to cancel an account is not considered cancellation. You can cancel your subscription at any time through the billing portal in your dashboard.","c2":"6.2 If you delete your account, all content and data associated with that account will be immediately deleted from the Service. This information cannot be recovered once deleted.","c3":"6.3 TikTools, in its sole discretion, has the right to suspend or terminate any account at any time, for any reason or no reason, including but not limited to suspected abuse, violation of these terms, or at the request of law enforcement.","c4":"6.4 TikTools reserves the right to refuse service to anyone for any reason at any time."},"copyright":{"h":"7. Copyright and Content Ownership","c1":"7.1 We claim no intellectual property rights over the material you provide to the Service. Your materials remain yours.","c2":"7.2 You shall defend TikTools against any claim, demand, suit, or proceeding made or brought against TikTools alleging that your content, or your use of the Service, infringes or misappropriates the intellectual property rights of a third party or violates applicable laws.","c3":"7.3 You shall indemnify TikTools for any damages finally awarded against, and for reasonable attorney's fees incurred by, TikTools in connection with any such claim."},"privacy":{"h":"8. Privacy","c1":"8.1 We collect information used solely to provide and improve the Service, including but not limited to email addresses, IP addresses, usage metrics, and anti-abuse data.","c2":"8.2 We will not sell any personally identifiable information to third parties for profit.","c3":"8.3 We may disclose personally identifiable information under special circumstances, such as to comply with subpoenas or other legal process.","c4":"8.4 Cookies are required to use certain features of the Service, including authentication and anti-abuse detection.","c5":"8.5 For more details, please see our {link}.","c5Link":"Privacy Policy","c6":"8.6 {strong} The Service reproduces publicly available TikTok data, including TikTok's own public LIVE ranking boards. We are not the origin of that data and publish nothing about a creator that TikTok has not already made public.","c6Strong":"Public ranking data.","c7":"8.7 We do not de-list or suppress individual creators from public ranking data on request. A creator who does not wish to appear in public rankings should cease appearing on TikTok's public boards at the source, via their TikTok account and TikTok's LIVE ranking settings; they will then stop appearing here.","c8":"8.8 Clauses 8.6 and 8.7 concern public ranking data only. They do not affect data you provide to us as an account holder, which you may delete, and they do not limit rights you may have under applicable law or any obligation we have to act on a verified legal request."},"warranties":{"h":"9. Disclaimer of Warranties","c1":"9.1 {strong} The Service is provided on an \"as is\" and \"as available\" basis, without warranties of any kind, either express or implied, including but not limited to implied warranties of merchantability, fitness for a particular purpose, or non-infringement.","c1Strong":"You use the Service at your own risk.","c2":"9.2 TikTools does not guarantee the accuracy, completeness, reliability, or availability of any data provided through the Service.","c3":"9.3 TikTools is not responsible for any actions taken by TikTok that may affect the availability of this Service, including but not limited to API changes, endpoint suppression, rate limiting, IP bans, or platform policy changes.","c4":"9.4 {strong} The Service may be interrupted, degraded, or discontinued at any time due to factors including but not limited to: TikTok platform changes, infrastructure issues, maintenance, or business decisions.","c4Strong":"TikTools makes no guarantee that the Service will be available at any particular time or for any particular duration.","c5":"9.5 You acknowledge that the Service depends on a third-party integration with TikTok's platform and that this integration may fail, break, or become permanently unavailable without any fault on the part of TikTools."},"liability":{"h":"10. Limitation of Liability","c1":"10.1 {strong}, including without limitation, loss of profits, data, use, goodwill, business opportunities, revenue, or other intangible losses resulting from:","c1Strong":"In no event shall TikTools, its operators, directors, employees, or affiliates be liable for any indirect, incidental, special, consequential, or punitive damages","c1a":"(a) Your use of or inability to use the Service;","c1b":"(b) TikTok blocking, restricting, or modifying access to its platform;","c1c":"(c) Unauthorized access to your data or API keys;","c1d":"(d) Any bugs, errors, or inaccuracies in the Service;","c1e":"(e) Service interruptions, downtime, or discontinuation;","c1f":"(f) Any third-party conduct or content accessed through the Service.","c2":"10.2 TikTools's total aggregate liability for all claims shall not exceed the lesser of: (a) the amount you paid to TikTools in the three (3) months preceding the claim, or (b) one hundred US dollars ($100).","c3":"10.3 {strong}","c3Strong":"You expressly waive any claim for damages arising from the interruption, modification, or discontinuation of the Service due to TikTok platform changes or any other reason beyond TikTools's control."},"rateLimits":{"h":"11. Rate Limiting & Fair Use","c1":"11.1 Rate limits and daily request quotas are subject to change at any time, without notice. Exceeding rate limits may result in temporary or permanent suspension of your account or API key.","c2":"11.2 Premium tier subscribers receive higher rate limits, priority routing, and dedicated support. These benefits are subject to fair use and may be adjusted if we determine that usage patterns are abusive or adversely affecting other users.","c3":"11.3 Figures published on our pricing page, documentation, guides and marketing pages are indicative of the plan at the time of writing and are not a contractual guarantee of a specific throughput. Limits are tuned continuously in response to capacity, upstream platform behaviour and abuse, so a published figure may differ from the limit in force at any given moment.","c4":"11.4 The limits actually applied to your key are authoritative and are visible to you: your account dashboard shows your current plan, daily quota and usage, and {endpoint} returns the live per-minute, concurrent-WebSocket and bulk-check values for the key you call it with. Where a published figure and the value applied to your key disagree, the applied value governs. If a limit in force is materially lower than the plan you purchased and it is affecting your usage, contact support and we will correct it or adjust your plan.","c5":"11.5 {strong} Your subscription grants a limited, non-exclusive, non-transferable licence to access the API and use the data it returns for your own internal business operations - for example, monitoring the regions, creators, and boards you actively work with. The licence is to {use} the data in your operations, not to acquire, copy, or accumulate the dataset itself.","c5Strong":"Permitted use and data licence.","c5Use":"use","c6":"11.6 {strong} The aggregate ranking, leaderboard, league, gifter, and related datasets are the core product. You may not use the API, in whole or in part, to systematically extract, harvest, scrape, mirror, or reconstruct the dataset across regions or over time beyond your own operational use. No plan entitles you to a bulk feed of every region or the entire dataset at once; any technique intended to obtain the whole dataset - including spreading requests across every region, cycling keys or accounts, or aggregating multiple keys into a single extraction workload - is prohibited regardless of tier.","c6Strong":"No bulk extraction or scraping.","c7":"11.7 {strong} You may not resell, sublicense, republish, redistribute, or otherwise make the data (or any substantial or derived part of it) available to any third party, nor use it to build, populate, or train a competing dataset or service, without our prior written permission. The rate and daily limits exist in part to enforce these boundaries; circumventing them, or using access for wholesale extraction or redistribution rather than your own operational use, is a violation of these Terms and may result in suspension or termination without refund.","c7Strong":"No redistribution or resale."},"indemnification":{"h":"12. Indemnification","c1":"12.1 You agree to indemnify and hold harmless TikTools and its operators from any claims, damages, obligations, losses, liabilities, costs, and expenses (including attorney's fees) arising from: (a) your use of the Service; (b) your violation of these Terms; (c) your violation of any third-party right, including any intellectual property right; or (d) any claim that your use of the Service caused damage to a third party."},"discordBot":{"h":"13. Discord Bot Usage","intro":"If you invite the TikTools Discord Bot to your server, the following additional terms apply:","c1":"13.1 {strong} By using the bot, you agree to strictly comply with Discord's Terms of Service and Community Guidelines.","c1Strong":"Platform Compliance:","c2":"13.2 {strong} By configuring the bot to send alerts to a specific channel, you confirm that you have the necessary server permissions to do so. You are responsible for ensuring that the channel's notification volume complies with your server's rules.","c2Strong":"Administrator Liability:","c3":"13.3 {strong} Exploiting the bot's slash commands, attempting to bypass command cooldowns, or using the bot to intentionally flood Discord channels with excessive messages will result in your Discord Server ID being permanently blacklisted from using the bot, and may result in the termination of your linked TikTools API account.","c3Strong":"Abuse & Spam:","c4":"13.4 {strong} TikTools is an independent integration and is not affiliated with Discord Inc. We assume no liability for any moderation actions taken against your server or Discord account by Discord.","c4Strong":"Liability Disclaimer:"},"youtube":{"h":"14. YouTube API Services","c1":"14.1 TikTools uses YouTube API Services to publish and maintain our own tutorial videos on our own YouTube channel. Where our Service interacts with YouTube, the {terms} also apply, and information handled by Google is governed by the {privacy}.","c1Terms":"YouTube Terms of Service","c1Privacy":"Google Privacy Policy","c2":"14.2 No customer data is sent to YouTube and no customer authenticates with YouTube through the Service. See our {link} for what is stored and how access is revoked.","c2Link":"Privacy Policy"},"general":{"h":"15. General Conditions","c1":"15.1 You agree not to reproduce, duplicate, modify, sell, or resell the Service without express written permission from TikTools.","c2":"15.2 Do not tamper with or attempt unauthorized access to the Service, or falsely imply that you are associated with TikTools or any of its services.","c3":"15.3 These Terms are governed by the laws of the State of Delaware, United States, and shall be construed in accordance with them, without regard to its conflict of law provisions.","c4":"15.4 The failure of TikTools to enforce any right or provision of these Terms will not be deemed a waiver of such right or provision.","c5":"15.5 Questions about these Terms of Service should be sent to {email}.","c6":"15.6 The Service is provided by B4Battle LLC, 131 Continental Drive, Newark, DE 19713, United States (email: {email}, telephone: +1 610 552 3035). References to \"TikTools\" in these Terms mean B4Battle LLC."},"refunds":{"h":"16. Refunds","c1":"Refunds. You can ask for one refund per account. When you ask, your access ends straight away: any remaining reading hours are removed and automatic top-ups are switched off. We then refund the unused part of what you paid, worked out from the price you paid for those hours, minus the payment processor's fees for that payment. Hours you have already used are not refunded. An account can receive one refund only; any further refund request is declined. Refunds go back to the original payment method and can take 5 to 10 business days to appear. This does not limit any rights you have under the law that applies to you.","c2":"If translations differ, the English version applies."}},"privacy":{"seo":{"title":"Privacy Policy - Zero Tracking, No Data Selling","description":"TikTool never sells your data. Zero ad trackers. API keys encrypted with scrypt. TikTok LIVE stream data is relayed in real-time only - nothing stored. Read our full privacy commitment.","ogDescription":"No ad trackers. No data selling. Encrypted API keys. TikTok LIVE data relayed in real-time only - never stored. Full transparency.","ogImageTitle":"Privacy Policy","ogImageSubtitle":"Zero tracking and no data selling."},"title":"Privacy Policy","intro":"By using this website and the TikTools API (\"The Service\"), you are agreeing to be bound by the following privacy policy (\"Privacy Policy\"). {strong} TikTools takes your privacy seriously. This policy explains how your personal information is collected and used.","introStrong":"IF YOU DO NOT AGREE WITH THE TERMS OF THIS PRIVACY POLICY, YOU MUST NOT ACCEPT AND MAY NOT USE THE SERVICE.","routine":{"h":"1. Collection of Routine Information","p1":"The Service tracks basic information about its users. This information includes, but is not limited to, IP addresses, browser details, timestamps, and referring pages. None of this information can personally identify a specific user of the Service. The information is tracked for routine administration and maintenance purposes."},"account":{"h":"2. Account Information","p1":"When you create an account, we collect information such as your email address, name, and authentication credentials (password hash or Google OAuth token). This information is used solely to provide, maintain, and improve the Service.","p2":"We will not sell any personally identifiable information to third parties for profit.","p3":"We may disclose personally identifiable information under special circumstances, such as to comply with subpoenas, court orders, or other legal process."},"antiAbuse":{"h":"3. Anti-Abuse Data Collection","intro":"To prevent abuse and enforce our {link}, we collect and process the following data:","introLink":"Terms of Service","ipLabel":"IP Address at Signup:","ip":"{label} Your IP address is recorded when you create an account. This is used to detect multiple account creation from the same device or network.","emailLabel":"Email Normalization:","email":"{label} We normalize email addresses to detect duplicate accounts created with variations of the same address.","flagsLabel":"Account Flags:","flags":"{label} If our system detects potential multi-account abuse, we create an internal record linking the flagged account to other accounts from the same IP address or normalized email. This data includes the flag type, related account IDs, IP address, and timestamp.","fingerprintLabel":"Device Fingerprinting Cookies:","fingerprint":"{label} We may set cookies to identify browsers that have been associated with multiple account creation. These cookies are used solely for abuse detection and are not used for advertising or tracking purposes.","competitorLabel":"Competitor & Repeat-Abuse Detection:","competitor":"{label} The data described in this section is also used to identify accounts operated by or affiliated with competing services and to recognize a previously banned party returning under a new account. Where such an association is detected, the account may be suspended or permanently banned in accordance with our Terms of Service.","paidExempt":"Accounts with active paid subscriptions are exempt from multi-account warnings, as multiple legitimate accounts are expected in business contexts."},"cookies":{"h":"4. Cookies","p1":"Where necessary, the Service uses cookies to store information about a visitor's preferences and history in order to better serve the user and/or present the user with customized content. Cookies are required to use certain features of the Service.","p2":"We use the following types of cookies:","authLabel":"Authentication cookies:","auth":"{label} Required to maintain your login session.","antiAbuseLabel":"Anti-abuse cookies:","antiAbuse":"{label} Used to detect and warn about potential multi-account creation. These cookies may persist for up to 30 days.","preferenceLabel":"Preference cookies:","preference":"{label} Used to remember your settings and preferences."},"apiUsage":{"h":"5. API Usage Data","p1":"We collect usage metrics related to your API calls, including request counts, endpoints accessed, response times, and error rates. This data is used to monitor service health, enforce rate limits, and improve the Service.","p2":"We do not store the content of the TikTok LIVE data that passes through our API. Data streams are relayed in real-time and are not retained on our servers.","p3":"The ranking, leaderboard, league, gifter, and related data returned through the API is provided under a limited licence for your own operational use, as set out in our Terms of Service. It may not be bulk-extracted, scraped, mirrored, redistributed, resold, or used to build a competing dataset. Our rate and daily limits exist in part to enforce this boundary."},"thirdParties":{"h":"6. Third Parties","p1":"Third-party services may use cookies, scripts, and/or web beacons to track user activities on the Service. Such tracking is done directly by the third parties through their own servers and is subject to their own privacy policies. The Service has no access or control over these cookies, scripts, and/or web beacons.","p2":"We use {stripe} for payment processing. When you subscribe to a paid plan, your payment information is handled directly by Stripe and is subject to {link}. We do not store your credit card details.","p2Link":"Stripe's Privacy Policy"},"links":{"h":"7. Links to Third-Party Websites","p1":"We have included links on this website for your use and reference. We are not responsible for the privacy policies on these websites. You should be aware that the privacy policies of these websites may differ from our own."},"tiktokData":{"h":"8. TikTok Data & Third-Party API Disclaimer","p1":"TikTools is not affiliated with, endorsed by, or sponsored by TikTok or ByteDance Ltd.","p2":"TikTools provides a {strong} for accessing publicly available TikTok LIVE broadcast data. TikTok does not offer a native, public API for live stream data. Our Service processes publicly accessible broadcast telemetry to deliver structured event data.","p2Strong":"managed third-party API","p3":"Any TikTok data accessed through the Service is publicly available data from TikTok LIVE streams. We do not access, collect, or store private TikTok account information.","p4":"{strong} When this occurs, we update our systems to restore access where possible, but we cannot guarantee uninterrupted service. The availability of TikTok data through our Service depends entirely on TikTok's platform policies and technical infrastructure, which are outside our control.","p4Strong":"TikTok may suppress, modify, or block access to its endpoints at any time without notice.","p5":"{strong} Our leaderboards, rankings and related pages reflect information TikTok itself publishes publicly, including TikTok's own public LIVE ranking boards. We are not the origin of that information, and we do not reveal anything about a creator that TikTok has not already made public. A creator appears on our boards as a consequence of appearing on TikTok's.","p5Strong":"Creator ranking data.","p6":"For that reason, {strong} Removing an entry here would not remove it from TikTok, would not make the underlying information any less public, and would leave our boards showing a misleading version of what TikTok publishes. A creator who does not wish to appear in public rankings should change that at the source, through their TikTok account and TikTok's own LIVE ranking settings. Once a creator no longer appears on TikTok's public boards, they stop appearing on ours.","p6Strong":"we do not de-list or suppress individual creators from public ranking data on request.","p7":"This is separate from your own account data. If you hold a tik.tools account, the information you gave us is covered by the Data Retention section below and you may delete it. It also does not displace obligations we have under applicable law: where we receive a verified request that the law requires us to act on, we act on it."},"security":{"h":"9. Data Security","p1":"The internet is a complex system. Your content is transmitted, stored, and manipulated using third-party networks and devices that TikTools has no control over. We make a reasonable effort to keep your data private and secure to the best of our abilities, but we cannot guarantee absolute security.","p2":"API keys are stored securely and transmitted only over encrypted connections. Password hashes use strong cryptographic algorithms (scrypt with random salts)."},"retention":{"h":"10. Data Retention","p1":"We retain your account information for as long as your account is active. If you delete your account, all associated personally identifiable information will be removed from our systems within 30 days.","p2":"Aggregated, anonymized usage data may be retained indefinitely for analytical and improvement purposes.","p3":"Anti-abuse flags and related records may be retained for up to 12 months after account deletion to prevent repeat abuse."},"changes":{"h":"11. Changes to This Policy","p1":"We reserve the right to modify this privacy policy at any time. Changes will be effective immediately upon posting to this page. Your continued use of the Service after any changes constitutes acceptance of the revised policy."},"discordBot":{"h":"12. Discord Bot Data and Privacy","intro":"If you choose to use the TikTools Discord Bot on your server, the following additional privacy terms apply in compliance with Discord's Developer Terms:","collectedLabel":"Data Collected:","collected":"{label} The bot collects and stores only the data strictly necessary for its operation. This includes your Discord Server ID (Guild ID), Channel IDs (where alerts are routed), and the User IDs of administrators who execute slash commands to configure the bot.","messageLabel":"Message Content:","message":"{label} To enable our seamless cross-server matchmaking feature, the bot processes message content ephemerally within designated channels to detect battle acceptances. This data is processed purely in-memory for real-time contextual matching and is instantly discarded. We DO NOT log, store, or export human message content, direct messages, or conversational data to any database, nor do we use it to train AI models.","usageLabel":"Data Usage:","usage":"{label} The collected Discord IDs are used solely to route your requested TikTok LIVE telemetry (e.g., gifts, chat, battles) to the correct Discord channels.","retentionLabel":"Data Retention & Deletion:","retention":"{label} If you kick or remove the TikTools bot from your Discord server, the automated alert configurations associated with your Server ID are orphaned and automatically purged from our active routing database. You may also request immediate manual deletion of your server's data at any time by contacting us."},"youtube":{"h":"13. YouTube API Services","p1":"TikTools uses {strong} for one purpose only: to publish our own tutorial videos to our own YouTube channel and to maintain their titles, descriptions, thumbnails, captions and playlists.","p1Strong":"YouTube API Services","p2":"We do not access, collect, store or process data belonging to any other YouTube channel, video or user, and no TikTools customer authenticates with YouTube through our Service. The only account involved is our own, authorised once by the channel owner.","p3":"By using the YouTube-connected parts of our Service you agree to the {terms}. Information handled by Google in connection with these services is governed by the {privacy}.","p3Terms":"YouTube Terms of Service","p3Privacy":"Google Privacy Policy","storeLabel":"What we store:","store":"{label} an OAuth refresh token for our own YouTube channel, plus the video IDs and listing metadata of videos we have published. Nothing else is retrieved from the YouTube API.","revocationLabel":"Retention and revocation:","revocation":"{label} the refresh token is held on our own servers with restricted access and is deleted when the integration is disabled. Authorisation can be revoked at any time at {link}, which immediately and permanently ends our access. Stored video IDs and listing metadata are deleted within 30 days of a revocation request.","revocationLink":"Google security settings"},"gdpr":{"h":"14. Data Controller and Your Rights","controllerLabel":"Who is responsible for your data:","controller":"{label} TikTools is operated by B4Battle LLC, 131 Continental Drive, Newark, DE 19713, United States. B4Battle LLC is the controller of the personal data described in this policy. For any privacy request, contact {email}.","purposesLabel":"Why we process your data:","purposeContract":"To provide the service you signed up for: your account, API keys, plan and usage limits (performance of a contract).","purposePayment":"To take payment and keep the records the law requires (legal obligation).","purposeSecurity":"To protect the service against abuse, fraud and multiple free accounts (legitimate interest in keeping the service secure and fair).","purposeSupport":"To answer your support messages (performance of a contract, or legitimate interest when you are not a customer).","rightsLabel":"Your rights:","rightsIntro":"{label} If you are in the European Economic Area, the United Kingdom or Switzerland, you have the right to:","rightAccess":"access the personal data we hold about you and get a copy of it;","rightRectify":"have inaccurate data corrected;","rightErase":"have your data deleted, unless we must keep it by law (for example payment records);","rightRestrict":"restrict or object to processing based on our legitimate interest;","rightPortability":"receive your data in a portable, machine-readable format;","rightWithdraw":"withdraw consent at any time where processing is based on consent.","exercise":"To use any of these rights, email {email} from the address on your account. We answer within one month.","complaint":"You can also complain to the data protection authority where you live or work.","transfersLabel":"International transfers:","transfers":"{label} We are based in the United States and process data there. Where the law requires it, transfers from the EEA, UK or Switzerland rely on the European Commission's Standard Contractual Clauses or an equivalent safeguard."},"contact":{"h":"15. Contact Us","p1":"For any questions or concerns regarding this privacy policy, please contact us at {email}."}},"changelog":{"seo":{"title":"Changelog - TikTool","description":"TikTool platform changelog - all updates and fixes."},"title":"Platform {accent}","titleAccent":"Changelog","subtitle":"All updates, fixes and improvements to the TikTool platform.","loading":"Loading...","empty":"No entries yet."},"updates":{"seo":{"title":"Updates - tik.tools","description":"Customer-only platform updates."},"customerBadge":"(Customer Area)","title":"Platform {accent}","titleAccent":"Updates","subtitle":"What's new on tik.tools - the full changelog of fixes, performance bumps, and new capabilities.","loading":"Loading updates...","locked":{"title":"Subscriber updates","body":"Real platform updates are reserved for active subscribers. The feed below shows placeholder entries.","cta":"Subscribe to view real updates"},"empty":"No updates yet.","placeholderBadge":"PLACEHOLDER","badges":{"new":"New","fix":"Fix","performance":"Performance","update":"Update","security":"Security","docs":"Docs"}},"captions":{"headings":{"liveCaptions":"Live Captions","captionsGuide":"TikTok LIVE Captions Guide","obsGuide":"Captions on OBS Guide"},"seo":{"description":"Live Captions is no longer offered to new customers. Existing caption customers can keep using it from their Dashboard.","obsDescription":"Live Captions is no longer offered to new customers. Existing caption customers can keep using the caption overlay tools from their Dashboard."},"notice":{"lead":"Live Captions is no longer offered to new customers.","body":"Already using Live Captions? Nothing changes for you. Manage your captions from your Dashboard, and keep adding them to your stream with the caption overlay tools.","openDashboard":"Open Dashboard","overlayTools":"Caption overlay tools","foot":"Building on TikTok LIVE? See the {link}."}}},"agencyDesk":{"pulse":{"title":"Board","regions":"Regions","diamondFilter":{"title":"Filter by monthly diamonds","from":"From","fromAria":"Diamonds from","to":"To","toAria":"Diamonds to"},"hideIneligible":{"title":"Hide creators you marked ineligible","label":"Hide ineligible"},"helpAria":"How this board works","refreshAria":"Refresh board","locked":{"title":"Agency Global unlocks the live regional board","sub":"See everyone across every league, leaderboard, gaming rank and Top 99+ in your chosen regions, deduped with live online status, plus the private Telegram bot."},"capped":"{starter} shows 1 region at a time. Every region at once is part of {global}.","upgrade":"Upgrade","namesUnlocked":"Names unlocked","purpose":{"live":"Everyone across your regions, live first then offline, minus who you have checked. Copy a batch of 30, check them in backstage, then mark them done to pull the next 30.","rising":"Creators climbing back toward the ranked boards. Catch them before another agency does.","recruit":"Fresh creators to check for your region. Done clears one for the whole team, Claim puts your name on them.","gifters":"The whales. Who is spending today, this week, this month - and who just started.","digest":"What changed since you last looked, across every list.","team":"Who owns what: claims with outreach stages, the contacted log, seats and alerts."},"seo":{"title":"Agency Pulse - every creator in your regions, live","description":"The agency live board: everyone across each region's leaderboard, leagues, gaming ranks and Top 99 movers, deduped with live online status. Pick your regions, work one fresh list.","ogDescription":"Pick your regions and get the deduped union of every creator across leaderboards, leagues, gaming and Top 99 movers, with live online status."}},"views":{"live":"Live","rising":"Rising","recruit":"Recruit","gifters":"Gifters","digest":"Digest","team":"Team"},"segmentNav":{"aria":"Board views"},"batchBar":{"checkedThese":"Checked these {count}","next":"next {count}","undo":"Undo"},"copyAll":{"titleOne":"Copy {count} handle, one per line","titleMany":"Copy {count} handles, one per line","copied":"Copied {count}","label":"Copy all"},"deskRail":{"myClaims":"My claims","claimsEmpty":"Nothing claimed yet. Claim on any card puts your name on a creator.","teamNotes":"Team notes","notesEmpty":"No notes yet. Note on any card is shared with every manager.","teammate":"Teammate"},"claimStatus":{"claimed":"claimed","contacted":"contacted","responded":"responded","interested":"interested","signed":"signed","not_interested":"not_interested"},"explainer":{"dismiss":"Dismiss","title":"How your team works this board","lines":{"claim":"Claim a creator or gifter to put your name on them - then move the stage with the big CONTACTED / RESPONDED / INTERESTED buttons. The whole team sees who owns what.","done":"Done (on the recruiting feed) clears a creator from everyone's board - no one double-contacts.","notes":"Notes you add are shared with the whole team.","copyAll":"Copy all puts every visible username on your clipboard, one per line, ready for a bulk check."}},"helpSheet":{"aria":"How this board works","title":"How to work this board","close":"Close","gotIt":"Got it","steps":{"regions":{"title":"Pick your regions","text":"The Regions pill up top drives every tab. Your selection is saved."},"lists":{"title":"Hunt on the four lists","text":"Live = on air right now. Rising = climbing back toward rank. Recruit = fresh creators to check. Gifters = the whales spending."},"intel":{"title":"Tap a name for intel","text":"The card opens instantly with earnings, ranks and gifters. Swipe to step through the list."},"claim":{"title":"Claim who you are working","text":"Claim puts your name on a creator for the whole team, then the big CONTACTED / RESPONDED / INTERESTED buttons track where the outreach is. Nobody double-contacts a claimed name."},"notes":{"title":"Notes are shared","text":"Note on any card = one team note per creator. Every manager sees it."},"copy":{"title":"Copy for bulk checks","text":"Copy grabs one handle; Copy all grabs the whole visible list, one per line, ready to paste into a bulk eligibility check."},"clear":{"title":"Clear what is handled","text":"Done (on Recruit) removes a creator for the WHOLE team. The small x hides a card just for YOU."},"team":{"title":"Team is the registry","text":"Every claim grouped per manager with its stage, the contacted log, seats and alert hookups live there."}}},"claimSheet":{"aria":"Claim on {'@'}{handle}","claimedByYou":"Claimed by you","claimedBy":"Claimed by {name}","notClaimed":"Not claimed","close":"Close","hintMine":"Where is this outreach right now? Your team sees the stage instantly.","hintOther":"Outreach stage - only the claiming manager can move it.","roster":{"added":"On your roster","adding":"Adding...","add":"Add to roster","error":"Could not add to the roster. Try again in a moment.","full":"Your roster is full. Remove a creator first."},"done":"Done","release":"Release claim","stages":{"contacted":"CONTACTED","responded":"RESPONDED","interested":"INTERESTED","signed":"SIGNED","not_interested":"NOT INTERESTED"}},"lockedAccess":"Agency access required","card":{"locked":"Locked","new":"NEW","monthlyDiamonds":"Monthly diamonds: {band}","mark":{"eligible":"Eligible","premiumTitle":"Invitable only through a premium invite slot","premium":"Premium eligible","ineligible":"Ineligible","checked":"Checked"},"claimedBy":"Claimed by {name}","eligibility":"Eligibility","markEligible":"Mark eligible","markIneligible":"Mark ineligible","copied":"Copied","copyHandle":"Copy {'@'}{handle}","copy":"Copy","editNote":"Edit team note","addNote":"Add team note","note":"Note","markedDone":"Marked done","markDone":"Mark done - clears this creator from the whole team's feed","done":"Done","claimThis":"Claim this creator","claimed":"Claimed","claim":"Claim","hide":"Hide from my board","liveStat":"LIVE","active":{"today":"active today","oneDay":"active 1d ago","days":"active {days}d ago","oneMonth":"active 1mo ago","months":"active {months}mo ago"}},"noteSheet":{"title":"Note on {'@'}{handle}","close":"Close","placeholder":"Add a note for your team - a warm intro, a rate, a reminder...","lastEditedBy":"Last edited by {name}","cancel":"Cancel","save":"Save"},"regionSheet":{"aria":"Choose your regions","title":"Your regions","sub":"{count} active - tap to toggle, saved automatically","close":"Close","done":"Done"},"live":{"progress":"{online} live - {total} to check in {regions}","copyThese":"Copy these","loading":"Loading your board...","empty":{"title":"All caught up in your regions","sub":"You have worked through every creator here. New names drop in on their own - this board watches live and refreshes every few seconds. Checked names cycle back in 30 days."},"undoLast":"Undo last batch","regionsCount":"{count} regions"},"rising":{"empty":{"title":"No creators on the rise right now","sub":"Nobody in your selected regions has climbed back toward re-entry this cycle. New risers appear here as ranks shift."},"peak":"Peak #{rank}","backInReach":"back in reach: {amount}","liveNow":"live now"},"recruit":{"regionAria":"Recruiting region","progress":"{remaining} remaining of {total}","empty":{"title":"All caught up in this region","sub":"You have worked through every candidate ranked here right now. Checked names cycle back in 30 days, or switch regions above."},"points":"{score} pts"},"gifters":{"listAria":"Gifter list","rising":"Rising","top":"Top","periodAria":"Time period","regionTitle":"Region: {region}","loading":"Loading gifters...","upgradeFeature":"Gifter intel","emptyRising":"No new whales this period. When a gifter spikes above their usual, they surface here.","emptyTop":"No gifter activity for this region yet. It fills in as gifts land on LIVE.","period":{"daily":"Today","weekly":"Week","monthly":"Month"},"global":"Global","diamonds":"{amount} diamonds","creatorsGiftedOne":"{count} creator gifted","creatorsGiftedMany":"{count} creators gifted"},"digest":{"caption":"Your digest updates live here. Telegram and Discord delivery arrives several times a day.","seeAll":"See all in {view}","empty":"Nothing new to catch up on yet. As creators go live and whales start spending, your digest fills in here.","offline":"Offline","sections":{"since":"Since you last looked","earlier":"Earlier today","live":"Live right now","gifters":"New gifters today"}},"team":{"claimed":{"title":"Claimed","lede":"Creators and gifters a teammate has put their name on, with the outreach stage. Everyone sees who owns what.","empty":"No creators claimed yet. Tap Claim on a creator to put your name on them."},"contacted":{"title":"Contacted","lede":"Names your team marks Done leave everyone's board - no double contacting.","empty":"Nothing contacted yet. Marking a creator Done logs them here for the whole team."},"members":{"title":"Team members","member":"Member","inviteLink":"Invite link","awaiting":"Awaiting acceptance","pending":"Pending","empty":"Just you so far. Invite a manager or scout to share the board."},"invite":{"placeholder":"teammate{'@'}email.com","manager":"Manager","scout":"Scout","sending":"Sending...","send":"Invite","sent":"Invite sent.","error":"Could not send that invite. Check the email and try again."},"alerts":{"title":"Alert delivery","lede":"Get new-creator alerts where your team already works.","connected":"Connected","tapToConnect":"Tap to connect"},"seats":"{used} of {cap} seats","roles":{"owner":"owner","manager":"manager","scout":"scout"},"claimStatusLabel":{"claimed":"Claimed","contacted":"Contacted","responded":"Responded","interested":"Interested","signed":"Signed","not_interested":"Not interested"}},"unlockCard":{"paymentReceived":"Payment received","unlocking":"Unlocking names...","namesShortly":"Names appear shortly.","confirming":"Confirming access.","title":"Unlock names","billingAria":"Billing window","weekly":"Weekly","perWeek":"/wk","monthly":"Monthly","perMonth":"/mo","buy":"Buy access","note":"Instant unlock. Cancel anytime.","more":"See full agency features"},"discord":{"aria":"Connect Discord","close":"Close","eyebrow":"CONNECT DISCORD","title":"Get your ranks in {brand}","sub":"Three steps and your agency rank feeds post straight into your server.","step1":{"title":"Add the bot","desc":"Open the invite, pick your server, and authorize. You need to be a server admin.","cta":"Add the bot to Discord"},"step2":{"title":"Link your key","desc":"In your server run {command} and paste this key when the bot asks. It stays private - the bot never shows it in the channel."},"keyCopied":"Key copied","copyKey":"Copy key","copied":"Copied","copy":"Copy","step3":{"title":"See your ranks","desc":"Run {command} to start the rank feeds, then use the buttons to pull creators, gaming and 99+ movers on demand."},"noKey":"No API key found on your account yet.","keyLoadError":"Could not load your API key - try again in a moment.","loadingKey":"Loading your key...","copyFailed":"Copy failed - select the key and copy it manually."},"telegram":{"aria":"Connect Telegram","close":"Close","eyebrow":"CONNECT TELEGRAM","title":"Get live alerts in {brand}","sub":"Scan the QR or tap the link - one device per link.","qrAria":"Telegram QR code","qrCaption":"Scan with phone camera or Telegram app","linkActive":"Link active for {seconds}s","open":"Open in Telegram","copied":"Copied","copyLink":"Copy link","hintPc":"On {device}: tap Open in Telegram.","pc":"PC","hintPhone":"On {device}: scan the QR.","phone":"phone","generating":"Generating...","generate":"Generate new link","mintError":"Could not generate your link - try again in a moment.","copyFailed":"Copy failed - select the link and copy it manually."},"eligible":{"hero":{"title":"Find {accent} to Recruit","titleAccent":"New Creators","sub":"New creators found on leaderboards and leagues, earning now across every active region. Copy the handles, check eligibility yourself with the Chrome extension or a bulk paste in your backstage, and mark the results."},"preview":{"statLive":"creators live right now","statRegions":"regions covered","statEarned":"earned across today's boards","title":"Who is earning right now, region by region","sub":"Every row below is a real creator on today's board. Agency access reveals the handles, adds the monthly-diamond band, and lets you mark who you have already checked.","liveCount":"{count} live","seeBoard":"See the {region} board","unlock":"Unlock the handles with Agency","login":"Already a member? Log in"},"gate":{"title":"An Agency plan unlocks the recruiting board","sub":"Check creators with the extension or by hand in your backstage, mark the results, and work one clean per-region board of candidates.","cta":"Unlock with Agency"},"mode":{"aria":"Check mode","auto":"Auto check","manual":"Manual check"},"regionAria":"Region","noRegions":"No regions yet","starterNote":"{starter} works one region at a time. Every region at once is part of {global}.","upgrade":"Upgrade","counts":{"eligible":"{count} marked eligible","premium":"{count} premium","ineligible":"{count} ineligible","checked":"{count} checked"},"hideIneligible":"Hide ineligible","copyEligible":"Copy marked eligible","manual":{"title":"Creators to check","hint":"{region} - copy the batch, run them through the backstage eligibility check, then mark each result.","loading":"Loading ranked creators...","emptyTitle":"All caught up in {region}","emptySub":"You have worked through every ranked creator here. Checked names cycle back in 30 days, or switch regions above."},"checked":{"title":"Checked creators","loading":"Loading your board...","allIneligibleTitle":"Every creator you checked here is marked ineligible","allIneligibleSub":"Turn off {toggle} to see them, or switch regions.","emptyTitle":"No creators checked yet in this region","emptyAuto":"Install the extension above to check automatically.","emptyManual":"Copy a batch from the left and mark the results to fill this board."},"auto":{"title":"Automatic checking","sub":"Install the extension, connect a burner backstage account per region, and it works the ranked lists for you - every result lands on this board as your own eligibility mark.","cta":"Get the extension"},"candidates":{"title":"Recruitment candidates","sub":"Lower divisions in {region} - live creators first.","note":"Language is detected from the creator's live chat. It indicates the market they broadcast to, not a verified account country.","loading":"Loading candidates...","empty":"No lower-division creators on the {region} board right now."},"seen":"seen {date}","thisRegion":"this region","rateLimit":"TikTok allows about 600 checks per hour. Please wait {minutes}m {seconds}s.","seo":{"title":"Find New TikTok Creators to Recruit · Check Eligibility Yourself","description":"New TikTok creators found on leaderboards and leagues: who is earning now, in every region, ranked by who is climbing. Copy the handles, check eligibility with the Chrome extension or a bulk paste in your backstage, and mark what you checked.","ogDescription":"New creators found on leaderboards and leagues across every active region. Copy the handles, check eligibility in your backstage."},"og":{"title":"New TikTok LIVE Creators to Recruit","subtitle":"A per-region board of creators to check and recruit.","badge":"AGENCY"}}},"compare":{"ui":{"getTestKey":"Get a free test key","seePricing":"See pricing","swipeHint":"Swipe the table sideways to see every column","whoBuilds":"Who builds tik.tools","breadcrumbAria":"Breadcrumb","breadcrumbHome":"Home","breadcrumbCompare":"Compare","vsTitle":"tik.tools vs {name}","ogBadge":"COMPARE"},"hub":{"title":"How tik.tools compares","intro":"Factual comparisons with other TikTok LIVE data and agency tools, built from each vendor's own published prices and features. Every page is dated and links its sources; tik.tools prices and limits on these pages are read live from our plans.","listHeading":"Comparisons","checked":"Checked {date}","migrateNote":"Moving off an open-source TikTok LIVE connector library instead? See {link}.","migrateLink":"the one-step migration","glanceHeading":"At a glance","columns":{"vendor":"Vendor","entryPrice":"Entry price","realtime":"Realtime LIVE events","webhooks":"Signed webhooks","mcp":"MCP server"},"glanceNote":"Summary of the detail pages; each row links to the full comparison and its sources.","codeAndPackages":"Code and packages: {github}, {npm}, {pypi}.","seo":{"title":"Compare tik.tools with {toktik}, {rng} and {tikleap}","description":"Dated, sourced comparisons of tik.tools with {toktik}, {rngFull} and {tikleap}: published prices, realtime events, webhooks, MCP, SDKs and agency recruiting tools.","ogSubtitle":"Dated, sourced comparisons with {toktik}, {rng} and {tikleap}."},"jsonLd":{"listName":"tik.tools comparisons"}},"detail":{"notFound":"Comparison not found","checked":"{name} figures checked on {date} from its public pages. tik.tools figures are live.","factsHeading":"Side by side","topic":"Topic","plansAria":"Plans and prices","ourPlans":"tik.tools plans","theirPlans":"{name} plans","ourPlansNote":"Current prices and every limit: {link}.","ourPlansNoteLink":"pricing","chooseAria":"Which one fits","chooseUs":"Choose tik.tools if","chooseThem":"Choose {name} if","sourcesHeading":"Sources","ourPricing":"tik.tools pricing","ourDocs":"tik.tools API docs","correction":"Vendors change prices. If a figure here is out of date, tell us through {help} and we will correct it. Other comparisons: {all}.","correctionHelp":"help","correctionAll":"all comparisons","seo":{"title":"tik.tools vs {displayName}: prices and features compared","description":"{name} and tik.tools side by side: published prices, realtime events, webhooks, MCP, SDKs and agency tools. {name} figures checked {date}."}},"adoption":{"heading":"Public package downloads","intro":"The one adoption figure every vendor here publishes the same way. npm counts cover {npmWindow} ({npmSite}); PyPI counts are the {pypiWindow} ({pypiSite}).","npmWindow":"{from} to {to}","pypiWindow":"last 30 days, read {date}","columns":{"vendor":"Vendor","package":"Package","downloads":"Downloads"},"notes":{"officialOnly":"Official SDKs only; community libraries that use Euler Stream are not counted","noSdk":"No SDK published on npm or PyPI"}},"migrate":{"hero":{"badge":"One-Step Migration","title":"Switch from TikTok-Live-Connector in {accent}","titleAccent":"Seconds","desc":"Already using {pkg}? Switch to the managed TikTool API with a single import line change. Same event names, same methods, zero code changes."},"steps":{"install":"Install the SDK","import":"Change one import line","key":"Use your TikTools API key","keyNote":"Get a free key at {link} - no credit card required."},"done":{"strong":"That's it.","text":"{strong} All your existing event handlers work identically - {events}."},"example":{"title":"Full Working Example","desc":"This code runs identically with both {old} and {new}. Only the import changes."},"compat":{"title":"100% Event Name Compatibility","desc":"Every TTLC event name works exactly the same. We also fire the native TikTools name simultaneously.","columns":{"event":"TTLC Event Name","status":"Status","notes":"Notes"},"notes":{"identical":"Identical","alias":"Alias for {event} - both fire","newIn":"New in {version} - supported","rawData":"Fires with full raw event payload","wsOpen":"Fires on WS open"}},"why":{"title":"Why Switch to the Managed API?","items":{"neverBreaks":{"title":"Never Breaks","desc":"TikTok updates their protocol regularly, breaking direct integrations. TikTool handles all protocol changes for you - zero downtime."},"fasterDelivery":{"title":"Faster Event Delivery","desc":"Sub-50ms event latency through our optimized infrastructure. No protobuf decoding on your end."},"zeroDeps":{"title":"Zero Dependencies","desc":"No protobufjs, no ws-client, no HTTP signing. Just one npm package with zero external dependencies."},"autoReconnect":{"title":"Auto Reconnection","desc":"Built-in exponential backoff reconnection. Your connection survives network blips and TikTok server restarts."},"dashboard":{"title":"Usage Dashboard","desc":"Monitor your API usage, WebSocket connections, and event volume in real-time at tik.tools/dashboard."},"support":{"title":"Developer Support","desc":"Get help via Discord, email, or the in-app support chat. Response time under 4 hours."}}},"faq":{"title":"Common Questions","items":{"types":{"q":"Will my TypeScript types still work?","a":"Yes. {pkg} ships full TypeScript definitions for every event payload - {chat}, {gift}, {roomUser}, and all others. If you were using TTLC's community-maintained types, ours are stricter and kept up to date with TikTok's actual protobuf schema."},"options":{"q":"What about TTLC options like sessionId, processInitialData, and requestPollingIntervalMs?","a":"The constructor options that control connection behavior - {sessionId}, {requestPollingIntervalMs}, {enableExtendedGiftInfo}, and similar - are accepted and forwarded. Options that no longer apply (like {processInitialData}) are silently ignored so your config object doesn't need cleanup."},"apiKey":{"q":"TTLC sometimes works without an API key. Do I need one for TikTool?","a":"Yes - a {signApiKey} is required. The free Sandbox key takes 30 seconds to get at {loginLink} with no credit card. Sandbox includes 5,000 API calls/day and 3 concurrent WebSocket connections, which is enough for development and testing."},"protocol":{"q":"What actually happens when TikTok updates their protocol?","a":"With TTLC, TikTok's periodic signature algorithm and protobuf schema updates cause the library to stop working - sometimes within hours of a TikTok deploy, with no fix until the open-source maintainer patches it. With TikTool, protocol updates are handled on our managed servers. Your code sees nothing change; events keep arriving."}}},"bonus":{"title":"Bonus: Features TTLC Doesn't Have","items":{"liveFeed":{"title":"Live Feed Discovery","desc":"Search and discover who's currently live on TikTok. Filter by language, region, and viewer count."},"pythonSdk":{"title":"Python SDK","desc":"Full Python SDK available: pip install tiktok-live-api. Same API, same events, different language."}}},"cta":{"title":"Ready to Migrate?","desc":"Get a free API key - no credit card needed. The Sandbox tier includes 5,000 requests/day and 3 concurrent WebSocket connections - free, development & evaluation only.","getKey":"Get Free API Key","docs":"Read the Docs"},"seo":{"title":"Migrate from TikTok-Live-Connector - One-Step Switch to TikTool API","description":"Switch from tiktok-live-connector to the managed TikTool API with one import line change. Same event names, same methods, zero code changes. No maintenance.","ogTitle":"Migrate from TikTok-Live-Connector - One-Step Switch","ogDescription":"Switch from tiktok-live-connector to TikTool with one import line change. Same events, same API, zero code changes.","ogImageTitle":"Migrate to TikTool in one step","ogImageSubtitle":"Drop-in replacement for TikTok-Live-Connector with zero protocol maintenance.","ogBadge":"MIGRATE"}},"vendors":{"eulerstream":{"tagline":"TikTok LIVE API with a free tier, a $50/month Business plan and paid add-ons","summary":"{name} sells a TikTok LIVE API: a WebSocket that forwards TikTok LIVE events as binary protobuf, REST routes for live status, room info, rankings, gifts and agencies, a signing API, TikTok LIVE Alerts sent to your HTTP endpoint, and a hosted MCP server in public beta. {name} is a trademark of its owner; tik.tools is not affiliated with it.","plansNote":"Add-ons listed on every plan, with prices not shown on the pricing page: Premium Webcast Routes, Priority API Requests, Enterprise Server Access, TikTok LIVE Signature Access, TikTok CAPTCHA Routes and TikTok Dataset Catalog Routes. The pricing slider also shows 50,000 to 200,000 requests/day steps; their prices were not stated in the page text. Its terms say plan rate limits may change without notice.","plans":{"community":{"price":"$0, no card","detail":"2,500 requests/day, 25 cloud WebSockets, 5 TikTok LIVE Alerts"},"business":{"price":"$50/month","detail":"10,000 requests/day, 100 cloud WebSockets, 50 TikTok LIVE Alerts; 7-day free trial"},"enterprise":{"price":"Custom quote","detail":"250,000+ requests/day, 1,500+ cloud WebSockets, 1,000+ TikTok LIVE Alerts"}},"facts":{"entry":{"topic":"Entry option","ours":"Sandbox key for a 7-day evaluation, then from {apiBasicWeekly}/week","them":"Community plan at $0 with 2,500 requests/day and 25 cloud WebSockets; Business has a 7-day free trial"},"around10k":{"topic":"Around 10,000 requests a day","ours":"Basic, {apiBasicMonthly}/month: {basicDailyLimit} requests/day, {basicWsLimit} concurrent live streams","them":"Business, $50/month: 10,000 requests/day, 100 cloud WebSockets"},"higherVolumes":{"topic":"Higher volumes","ours":"Self-serve Pro, Ultra and Agency plans with published prices, up to {agencyDailyLimit} requests/day and {agencyWsLimit} concurrent streams","them":"Enterprise at a custom quote for 250,000+ requests/day"},"eventFormat":{"topic":"Live event format","ours":"Decoded JSON events, {eventTypes} documented WebSocket event types","them":"Forwards all TikTok LIVE events as binary protobuf, decoded with its SDK or a community library"},"connectionLifetime":{"topic":"Live connection lifetime","ours":"12 hours on Pro, 24 hours on Ultra and Agency","them":"8 hours, per its WebSocket close codes"},"alerts":{"topic":"Alerts and webhooks","ours":"HMAC-signed on every paid plan: live start and end; peak viewers and high-value gifts on Ultra and Agency; follower milestones and recruit alerts on Agency","them":"TikTok LIVE Alerts sent to your HTTP endpoint: 5, 50 or 1,000+ by plan; the triggering events are not listed on its alert targets page"},"mcp":{"topic":"MCP server for AI assistants","ours":"tiktok-live-mcp on npm, 11 tools, works in Claude, Cursor and VS Code","them":"Hosted MCP endpoint in public beta (\"not yet production-ready\"), 19 tools for moderation and rankings"},"sdks":{"topic":"SDKs","ours":"Node.js/TypeScript and Python","them":"TypeScript, Python, C#, Java and Go, generated from its OpenAPI spec, plus a WebSocket SDK"},"rankings":{"topic":"Rankings","ours":"44 ranking regions with daily, league, gaming and Popular LIVE boards","them":"Leaderboards by country, league and diamonds earned; the number of regions is not stated"},"agencyTools":{"topic":"Agency tools","ours":"Agency plan: creator recruiting feed and a Backstage eligibility checker","them":"Agency Registry search of 100,000+ TikTok LIVE agencies, and agency catalog API routes"}},"chooseThem":{"freePlan":"You want a free plan with no time limit for low volumes.","moreWebsockets":"You need more concurrent WebSockets at around 10,000 requests a day.","otherLanguages":"You build in C#, Java or Go and want an official SDK, or you want the raw protobuf events."},"chooseUs":{"decodedJson":"You want decoded JSON events and signed webhooks without writing a protobuf decoder.","publishedPrices":"You need published self-serve prices above 10,000 requests a day.","agencyTools":"You run an agency and need recruiting and eligibility tools.","rankings":"You need rankings across 44 regions with daily, league, gaming and Popular LIVE boards."},"glance":{"entry":"Free plan; Business $50/month","realtime":"WebSocket, all events as binary protobuf","webhooks":"LIVE Alerts: 5 / 50 / 1,000+ by plan","mcp":"Hosted, public beta"},"sources":{"pricing":"{name} pricing","websocketDocs":"{name} WebSocket docs","eventTypes":"{name} event types","alertTargets":"{name} LIVE alert targets","mcp":"{name} MCP","terms":"{name} terms"}},"toktik":{"tagline":"TikTok LIVE intelligence site and developer API with credit-metered plans","summary":"{name} publishes TikTok LIVE rankings, gifter boards, an agency directory and a recruit pool, and sells a REST and WebSocket developer API. Its plans are monthly, backed by a prepaid credit wallet, with realtime streams billed per room-minute.","plansNote":"Prices are for the Live module. The Lookup Data module adds $5 to $79/month, or $18 to $279/month as a bundle. A cached read costs 1 credit; a fresh fetch from TikTok costs 1,250 credits; realtime streams are billed per room-minute.","plans":{"free":{"price":"$0/month","detail":"5,000 requests/day, cached reads only, masked leaderboards, 7-day history"},"starter":{"price":"$15/month","detail":"15,000 requests/day, top 3 unmasked, 90-day history, CSV export"},"pro":{"price":"$39/month","detail":"100,000 requests/day, leaderboards unmasked, 180-day history, 3 seats"},"scale":{"price":"$99/month","detail":"400,000 requests/day, league rankings unmasked, XLSX export, 12-month history, 5 seats"},"agency":{"price":"$249/month","detail":"1,200,000 requests/day, host roster tools, recruit handles, creator digest, 10 seats; sold through their sales team"}},"facts":{"pricingModel":{"topic":"Pricing model","ours":"Flat weekly or monthly plans with daily request and concurrent-stream caps. Live streams are not billed per minute.","them":"Monthly plans plus a prepaid credit wallet. Fresh fetches from TikTok cost 1,250 credits each and realtime streams are billed per room-minute."},"eventTypes":{"topic":"Realtime event types","ours":"{eventTypes} documented WebSocket event types","them":"15 event types, per its realtime reference"},"connecting":{"topic":"Connecting to a live room","ours":"Connect by username with your API key; up to {proWsLimit} concurrent streams on Pro and {agencyWsLimit} on Agency","them":"Mint a short-lived token, then subscribe to creators over one socket; each subscription reports queued, active or offline"},"webhooks":{"topic":"Webhooks","ours":"HMAC-signed on every paid plan: live start and end; peak viewers and high-value gifts on Ultra and Agency; follower milestones and recruit alerts on Agency","them":"Webhooks and alerts listed on every plan"},"gifterFirehose":{"topic":"Live gifter firehose","ours":"Included on Agency","them":"Listed as coming on Agency"},"mcp":{"topic":"MCP server for AI assistants","ours":"tiktok-live-mcp on npm, 11 tools, works in Claude, Cursor and VS Code","them":"None listed on its pricing or developer pages"},"sdks":{"topic":"SDKs","ours":"Node.js/TypeScript and Python","them":"JavaScript and Python"},"agencyDirectory":{"topic":"Agency directory","ours":"Agencies claim a listing and receive private messages; agency contact details are not republished","them":"Public directory of TikTok LIVE agencies; contact details unlock on the Agency plan"},"eligibility":{"topic":"Creator eligibility","ours":"Agency plan includes a Chrome extension that checks agency eligibility inside your own Backstage","them":"Recruit handles and marks on the Agency plan"},"exports":{"topic":"Exports","ours":"Copy whole boards to the clipboard on Ultra and Agency","them":"CSV from Starter, XLSX from Scale"},"entry":{"topic":"Entry option","ours":"Sandbox key for a 7-day evaluation, then from {apiBasicWeekly}/week","them":"Free tier: 5,000 cached reads/day, masked leaderboards, no card"}},"chooseThem":{"freeTier":"You want a no-cost tier for low-volume cached reads.","exports":"You need CSV or XLSX exports and a stated history depth on lower plans.","creditWallet":"You prefer one monthly credit wallet shared by a web app and an API."},"chooseUs":{"noPerMinute":"You follow many live rooms at once and do not want per-minute billing.","fullEvents":"You need the full range of LIVE events, not a subset.","oneVendor":"You want signed webhooks, an MCP server and SDKs from one vendor.","eligibility":"Your agency checks creator eligibility inside its own Backstage."},"glance":{"entry":"Free tier; paid from $15/month","realtime":"WebSocket, 15 event types, billed per room-minute","webhooks":"Listed on every plan","mcp":"None listed"},"sources":{"pricing":"{name} pricing","realtime":"{name} realtime reference","developerApi":"{name} developer API"}},"rngrow":{"tagline":"Per-country recruiting leads for TikTok LIVE agencies, with AI outreach add-ons","summary":"{displayName} sells per-country Radar access to TikTok LIVE creators it has checked as free to join an agency, with diamond earnings data. AI Recruiter and AI Manager are sold on top, and API access comes with each Radar country.","plansNote":"Prices include VAT. Markets listed: Romania, United Kingdom, United States, Germany, Italy, France, Poland, Spain, Australia, MENA and LATAM, with Central Asia listed as coming soon. A 1-day Radar trial for one country is offered once per account, after approval.","plans":{"radar":{"price":"€1,599/month per country","detail":"Recruitable creator leads for one market; first month €799; API access included (60 requests/min, 10,000 requests/day)"},"radarWeekly":{"name":"Radar weekly","price":"€399/week per country","detail":"The same Radar access billed weekly"},"additionalCountry":{"name":"Additional country","price":"€1,199/month each","detail":"A second market added to an existing Radar plan"},"dayPass":{"price":"€49","detail":"24 hours of access to one market"},"aiRecruiter":{"price":"€299 to €1,199/month","detail":"1,500 to 25,000 AI replies; needs an active Radar plan in each country"},"aiManager":{"price":"€299 to €1,199/month","detail":"Creator coaching over WhatsApp, metered on AI replies"}},"facts":{"oneMarket":{"topic":"One market for one month","ours":"{agencyGlobalMonthly}/month covers every region we rank","them":"€1,599/month per country (€799 for the first month)"},"weekly":{"topic":"Weekly option","ours":"{agencyGlobalWeekly}/week, every region","them":"€399/week per country"},"moreMarkets":{"topic":"More markets","ours":"Included","them":"€1,199/month for each additional country"},"findingCreators":{"topic":"Finding creators free to join","ours":"New creators surfacing on regional leaderboards and leagues, ranked by who is climbing; you confirm eligibility yourself","them":"{name} checks creators against agency eligibility and delivers leads to its dashboard"},"eligibility":{"topic":"Eligibility check","ours":"Chrome extension checks eligibility inside your own Backstage, or bulk-paste a list there","them":"Done by {name} before leads are delivered"},"outreach":{"topic":"Outreach","ours":"Not automated; your team contacts creators","them":"AI Recruiter sends openers, replies and invitations from your Backstage, from €299/month on top of Radar"},"api":{"topic":"API on the plan","ours":"{agencyDailyLimit} requests/day, {agencyRateLimit}/min, {agencyWsLimit} concurrent live streams","them":"10,000 requests/day and 60/min per country"},"diamonds":{"topic":"Diamond tracking","ours":"Daily, league, gaming and Popular LIVE boards with diamonds, creator pages and a live gifter firehose","them":"Leads include diamond earnings data; public gifter and league leaderboards"},"realtime":{"topic":"Realtime and alerts","ours":"WebSocket stream ({eventTypes} documented WebSocket event types) and signed webhooks, including recruit alerts","them":"REST API with HOT signals for creators whose gifting is surging; no live-room event stream or webhooks in its API docs"},"devTools":{"topic":"Developer tools","ours":"Node.js and Python SDKs, MCP server","them":"JavaScript SDK ({'@'}rngrow/sdk)"}},"chooseThem":{"checkedLeads":"You recruit in one or two countries and want leads already checked for you.","autoOutreach":"You want outreach sent automatically from your Backstage."},"chooseUs":{"severalRegions":"You recruit in several regions and want one price for all of them.","ownTeam":"Your own team verifies eligibility in your own Backstage and makes contact.","allInOne":"You also need diamond tracking, live alerts, an API, webhooks or an MCP server on the same plan."},"glance":{"entry":"€1,599/month per country (€799 first month)","realtime":"REST API with HOT signals; no live-room event stream listed","webhooks":"None in its API docs","mcp":"None listed"},"sources":{"pricing":"{name} pricing","aiRecruiter":"{name} AI Recruiter","apiDocs":"{name} API docs"}},"tikleap":{"tagline":"Public TikTok LIVE rankings site with a weekly-package REST API","summary":"{name} publishes TikTok LIVE country rankings, leagues, gaming boards and gifter data, and sells REST API access in one-time weekly packages. It also offers a hosted MCP endpoint that uses the same API key.","plansNote":"Packages are one-time 7-day payments, not subscriptions. Unique creator lookups count toward a separate creators/day cap.","plans":{"basic":{"price":"$5/week","detail":"11,000 requests/day, 600 creators/day, current data only, 60 requests/min"},"pro":{"price":"$10/week","detail":"77,000 requests/day, 2,200 creators/day, 30 days of history, 180 requests/min"},"ultra":{"price":"$25/week","detail":"320,000 requests/day, 22,000 creators/day, 60 days of history, 600 requests/min"}},"facts":{"weeklyPrice":{"topic":"Weekly price (Basic / Pro / Ultra)","ours":"{apiBasicWeekly} / {apiProWeekly} / {apiUltraWeekly}","them":"$5 / $10 / $25"},"requestsPerDay":{"topic":"Requests per day","ours":"{basicDailyLimit} / {proDailyLimit} / {ultraDailyLimit}","them":"11,000 / 77,000 / 320,000"},"requestsPerMinute":{"topic":"Requests per minute","ours":"{basicRateLimit} / {proRateLimit} / {ultraRateLimit}","them":"60 / 180 / 600"},"billing":{"topic":"Billing","ours":"Weekly or monthly subscription","them":"One-time 7-day packages"},"realtime":{"topic":"Realtime LIVE events","ours":"WebSocket stream for any live creator, {eventTypes} documented WebSocket event types, {basicWsLimit} to {ultraWsLimit} concurrent streams","them":"REST endpoints only in its API docs (rankings, creators, streams and stream events)"},"webhooks":{"topic":"Webhooks","ours":"HMAC-signed on every paid plan: live start and end; peak viewers and high-value gifts on Ultra and Agency; follower milestones and recruit alerts on Agency","them":"None in its API docs"},"mcp":{"topic":"MCP server","ours":"tiktok-live-mcp, runs locally through npx","them":"Hosted MCP endpoint over HTTP"},"sdks":{"topic":"SDKs","ours":"Node.js/TypeScript and Python","them":"None published on npm or PyPI"},"boards":{"topic":"Boards","ours":"Regional boards on every plan (fully unmasked from Pro); league boards fully unmasked from Ultra; gaming, Popular LIVE and teams boards on Agency","them":"Rankings, leagues, gaming and real-time gifts on every package"},"agencyTools":{"topic":"Agency tools","ours":"Agency plan: recruiting feed, Backstage eligibility checker, gifter firehose","them":"No agency recruiting tools listed"}},"chooseThem":{"restOnly":"You only need ranking and league data over REST at the lowest weekly price.","hostedMcp":"You want a hosted MCP endpoint with nothing to install.","oneTime":"You prefer one-time weekly packages to a subscription."},"chooseUs":{"realtime":"You need realtime events from live rooms (chat, gifts, battles) over WebSocket.","webhooksSdks":"You want signed webhooks and SDKs for Node.js and Python.","agencyTools":"You run an agency and need recruiting and eligibility tools."},"glance":{"entry":"$5/week","realtime":"REST only","webhooks":"None in its API docs","mcp":"Hosted endpoint"},"sources":{"apiPackages":"{name} API packages","apiDocs":"{name} API docs"}}},"ours":{"ownership":"tik.tools is an independent product. It is not a reseller, wrapper or brand of any other TikTok LIVE data vendor, and it is not affiliated with TikTok or ByteDance. tik.tools runs its own data collection and builds and operates its own WebSocket API, HMAC-signed live webhooks, MCP server (tiktok-live-mcp) and SDKs ({'@'}tiktool/live and tiktok-live-api).","glance":{"entry":"From {apiBasicWeekly}/week; Agency {agencyGlobalMonthly}/month, every region","realtime":"WebSocket, {eventTypes} event types","webhooks":"HMAC-signed, every paid plan","mcp":"Yes, tiktok-live-mcp on npm"},"plans":{"basic":{"price":"{apiBasicWeekly}/week or {apiBasicMonthly}/month","detail":"{basicDailyLimit} requests/day, {basicWsLimit} concurrent live streams, signed webhooks"},"pro":{"price":"{apiProWeekly}/week or {apiProMonthly}/month","detail":"{proDailyLimit} requests/day, {proWsLimit} concurrent live streams, regional boards fully unmasked"},"ultra":{"price":"{apiUltraWeekly}/week or {apiUltraMonthly}/month","detail":"{ultraDailyLimit} requests/day, {ultraWsLimit} concurrent live streams, league boards fully unmasked"},"agency":{"price":"{agencyGlobalWeekly}/week or {agencyGlobalMonthly}/month","detail":"Every region we rank, creator recruiting feed, Backstage eligibility checker, gaming and Popular LIVE boards, live gifter firehose, {agencyDailyLimit} requests/day, {agencyWsLimit} concurrent live streams"}}}},"agency":{"seo":{"title":"TikTok LIVE agency tools - scout creators, copy rosters, gifter intel {'|'} tik.tools","description":"Agency Starter and Agency Global for TikTok LIVE agencies: copy-paste rosters, recruit pipeline, team seats, Telegram + Discord scout alerts. Global adds roster health, all-regions scouting, top-gifter intel and Ultra-tier API.","ogImageTitle":"TikTok LIVE Agency Tools","ogImageSubtitle":"Scout creators, copy rosters and read gifter intel.","ogImageBadge":"AGENCY"},"hero":{"kicker":"For TikTok LIVE agencies","openWord":"Open {label}","words":{"creatorScouting":"Creator Scouting","topGifters":"Top Gifters","newCreators":"New Creators","rosterApi":"Roster API","seats":"{count} Seats"},"sub":"Scout creators, copy-paste rosters, top-gifter intel, {seats} manager seats on every plan, and custom-dev API limits - on two agency plans, {starterPlan} and {globalPlan}.","cta":{"newCreators":"New Creators","manageTeam":"Manage team","getAccess":"Get Agency access","chat":"Chat with us","billing":"Billing","openDashboard":"Open dashboard"},"trust":{"aria":"Agency facts","regions":"{count} regions","seats":"{count} seats included on every plan","api":"Agency Global API"}},"rosterTabs":{"aria":"Agency rosters","tabs":{"creators":"Creators","gifters":"Top Gifters","eligible":"New Creators"},"meta":{"creators":{"title":"Top creators, all regions","cta":"See all creators"},"gifters":{"title":"Top gifters","cta":"See all gifters"},"eligible":{"title":"New creators to scout","cta":"See all new creators"}},"livePill":"{count} live","copyAllAria":{"creators":"Copy all {count} creators","gifters":"Copy all {count} gifters"},"copiedCount":"Copied {count}","copyAllCount":"Copy all {count}","liveNow":"Live now","copyOneAria":"Copy {name}","empty":"Warming up the roster...","unlockMore":{"creators":"more real creators - unlock every name + copy-all","gifters":"more real gifters - unlock every name + copy-all"},"fallbackName":"creator","perThirtyDays":"{amount} / 30d"},"valueModules":{"kicker":"Everything an agency runs on","title":"Two plans. The whole toolkit.","seats":{"tag":"Team","title":"{count} seats on every plan, no extra cost","body":"Your whole management team uses the app on one agency subscription, {starterPlan} or {globalPlan}.","caption":"{count} managers on Starter and on Global"},"api":{"tag":"Developer","title":"Custom-dev API limits","body":"{starterPlan} includes Pro-level API; {globalPlan} unlocks Ultra-tier API + WebSocket access - the top of the ladder.","rungs":{"entry":"Entry","production":"Production","included":"Included"}},"copy":{"tag":"Workflow","title":"Copy-paste rosters","body":"Creators, top gifters, recruit candidates - filled into a tray and copied in one click.","copied":"Copied {count}","copyAll":"Copy all {count}"},"alerts":{"tag":"Alerts","title":"Scout alerts","body":"Telegram + Discord rank feeds drop fresh names straight to your team - copy on sight.","feedHead":"#rank-feed - rising creators","copyAria":"Copy {handle}"},"reveal":{"tag":"Unmask","title":"Masked to real, instantly","body":"Free shows masked names. Agency reveals every real handle to copy.","hintTouch":"Auto-revealed for agencies","hintHover":"Hover to unmask"},"constellation":{"tag":"All included","title":"Global: every feature","body":"{globalPlan}: New Creators, gifter intel, alerts, Ultra API, bulk copy, dashboard, {seats} seats - one price. {starterPlan} covers the dashboard, recruiting and team for less.","satellites":{"talents":"Talents","gifters":"Gifters","alerts":"Alerts","ultraApi":"Ultra API","bulkCopy":"Bulk copy","teamSeats":"Team seats"}}},"pricing":{"seo":{"title":"Agency access for TikTok LIVE agencies - scout, copy rosters, gifter intel {'|'} tik.tools","description":"Agency Starter and Agency Global: copy-paste rosters, recruit pipeline, team seats, Telegram + Discord scout alerts. Global adds roster health, all-regions scouting, top-gifter intel and Ultra-tier API."},"kicker":"Agency plans","title":"Start with the dashboard. Unlock everything with Global.","sub":"{starterPlan} runs your roster, pipeline and team with {seats} seats. {globalPlan} adds roster health, the all-regions recruit feed, every Global-only board, gifter intel and Ultra-plus API capacity.","badges":{"monthly":"MONTHLY","weekly":"WEEKLY","save":"save {percent}%"},"perMonth":"/month","perWeek":"/week","billed":{"monthly":"Billed every month","monthlyOnly":"Billed every month - monthly only","weekly":"Billed every week - about {price} a month","monthlyOneCharge":"Billed every month - one charge, not four"},"hooks":{"starter":"The agency dashboard and Pro-level API. Included, no credits. Cancel anytime.","weekly":"Full unmasked intel + {seats} seats + Ultra API + alerts + bulk copy. Cancel anytime.","monthly":"Same full access, billed monthly for the best effective rate. Cancel anytime."},"globalAdds":"{plan} adds","opening":"Opening...","processing":"Processing...","confirming":"Confirming payment...","preparing":"Preparing secure checkout...","cta":{"onPlanManage":"You're on {plan} - Manage plan","switchInBilling":"Switch to {plan} in Billing","onAgencyManage":"You're on Agency - Manage plan","get":"Get {plan}","upgradeToGlobal":"Upgrade to Global","getAgency":"Get Agency","everyMonth":"{action} - {price} every month","everyWeek":"{action} - {price} every week"},"fine":{"monthly":"Recurring monthly. {link}.","weekly":"Recurring weekly. {link}."},"manageInBilling":"Manage or cancel in Billing","crosslink":"Not an Agency? See Developer Pricing","modal":{"close":"Close","badgeStarterMonthly":"AGENCY STARTER MONTHLY","badgeWeekly":"AGENCY WEEKLY","badgeMonthly":"AGENCY MONTHLY"},"success":{"title":"Access unlocked","body":"Agency intel is live. Head to your dashboard.","cta":"Open dashboard"},"order":{"credit":"Credit for unused time on your current plan","tax":"Tax","creditedNextInvoice":"Credited to your next invoice","chargedToday":"Charged today","totalToday":"Total today","labelWeekly":"{plan} weekly","labelMonthly":"{plan} monthly"},"paypalSwap":{"opening":"Opening PayPal...","continue":"Continue to PayPal","footnote":"Approve the new plan in PayPal. Your current PayPal plan is cancelled once it is approved, so you are never billed twice."},"proration":{"confirmChange":"Confirm change - {amount} today","confirmUpgrade":"Confirm upgrade - {amount} today","footnote":"Charged to your card on file. One subscription, no double-charge - your current plan is credited."},"business":{"label":"Business purchase","companyName":"Company name"},"methods":{"card":"Subscribe with Card","cardSub":"Visa - Mastercard - Amex - Google Pay - Apple Pay","once":"Pay once - no auto-renewal","onceSub":"Alipay - WeChat - Crypto - Card - iDEAL - Pix - OXXO","paypal":"Subscribe with PayPal","paypalSub":"PayPal balance - linked card - opens in popup","footnote":"Secured by Stripe and PayPal - cancel anytime from your Agency Billing page"},"back":"Back","oneTimeTag":"one-time","pay":"Pay {amount}","chooseAnother":"Choose another method","errors":{"upgradeFailed":"Upgrade failed. Your plan has not changed.","noApprovalLink":"PayPal did not return an approval link. Try again.","paypalChangeFailed":"Could not start the PayPal change. Your plan has not changed.","initFailed":"Could not initialize payment. Try again.","checkoutFailed":"Checkout failed","paymentFailed":"Payment failed."},"features":{"global":{"realUsernames":"Real usernames + profile URLs (every active region)","copyAll":"Copy any name + copy-all across every board","newCreators":"New Creators finder (full list)","popularLive":"Popular LIVE - real-time top creators per region","gifterIntel":"Top-gifter intel + cross-creator graph","seats":"{seats} manager seats, one price","ultraApi":"Ultra-tier API + WebSocket access","alerts":"Telegram + Discord scout alerts","bulkCopy":"Bulk copy + agency dashboard"},"starter":{"apiRequests":"Pro-level API requests ({dailyRequests} a day)","wsRooms":"{wsConnections} live WebSocket rooms","accountChecks":"{accountChecks} account checks a day","boards":"Standard, league and gaming boards unmasked","gifterBoard":"Gifter board unmasked for your region","dashboard":"Agency dashboard: roster, pipeline, per-region recruit, Gifter DB","digest":"Creator digest, scout alerts and team page","seats":"{seats} seats included","backstage":"Backstage eligibility extension ({backstageChecks} checks a day)","noCredits":"Included, no credits to buy"},"globalAdds":{"rosterHealth":"Roster health, health alerts and the roster-health digest","allRegions":"All-regions recruit and eligible-creators feed","shoppingWeekly":"Shopping and weekly boards","gifterFirehose":"Worldwide gifter board, gifter firehose and top-gifter intel","hotSpikes":"Hot spikes and league dropouts","popularLive":"Popular LIVE, rising and other Global-only boards","unlimitedBackstage":"Unlimited Backstage eligibility checks","ultraPlus":"Ultra-plus API capacity: {wsConnections} WebSocket rooms, {accountChecks} account checks a day"}}},"trialModal":{"close":"Close","eyebrow":"GLOBAL AGENCY","next":"Next","back":"Back","step1":{"title":"What's your agency?","sub":"Full Agency Global access. See pricing to choose a plan.","label":"Enter your agency name","placeholder":"e.g. Northstar Talent"},"step2":{"title":"Which region?","sub":"The region your agency scouts and operates in.","label":"Enter your region","placeholder":"e.g. United States, MENA, SEA","activating":"Activating...","activate":"Activate 20 minutes"},"success":{"title":"You're in","sub":"20 minutes of full access unlocked."},"upsell":{"eyebrow":"AGENCY ACCESS","title":"Keep the full access","cta":"See weekly & monthly pass"},"errors":{"generic":"Something went wrong. Please try again.","sessionExpired":"Your session expired. Please sign in again."}},"onboarding":{"aria":"Agency access onboarding","skip":"Skip","back":"Back","next":"Next","finish":"Start exploring","stepOf":"STEP {step} OF {total}","welcome":{"eyebrow":"GLOBAL AGENCY ACTIVE","title":"Welcome to your {accent}","accentTrial":"agency pass","accentAccess":"agency access","subTrial":"Full Agency Global access is live on your account right now - every creator unmasked, every gifter, every rising signing. Your clock has started, so let's get you straight into the data.","subPaid":"Full Agency Global access is live on your account - every creator unmasked, every gifter, every rising signing, across all {count} regions. Let's get you straight into the data.","cta":"Let's go","clockLabel":"ACCESS ENDS IN","clockAria":"Time remaining","clockNote":"Full access until the timer runs out","paidLabel":"FULL ACCESS UNLOCKED","paidNote":"Every region, every creator, unmasked - for your whole team."},"copy":{"title":"Copy any creator, {accent}","accent":"anywhere","sub":"Every {'@'}username across tik.tools is now yours to grab. Open New Creators, a leaderboard, a gifter page - one tap copies the handle straight into your backstage workflow. No masks, no placeholders.","live":"LIVE","copied":"copied","copy":"copy"},"rising":{"title":"See who is {accent}","accent":"rising","sub":"Discover upcoming talent before anyone else - plus full access to top gifters, per-game gaming ranks, and every creator who hit a region Top 99+ today but is not live right now. The signings hiding behind the cutoff.","cutoff":"TIKTOK CUTOFF","peak":"peak #{rank}","features":{"rising":{"label":"Rising creators","desc":"Velocity over volume - hot streaks the moment they begin."},"gifters":{"label":"Top gifters","desc":"The real whales behind every creator, unmasked."},"gaming":{"label":"Gaming ranks","desc":"Per-region, per-game ladders across every title."}}},"team":{"title":"Put your team to work {accent}","accent":"all day","sub":"Pipe the same scouting feeds straight into Discord and Telegram so your managers get copy-paste rosters wherever they work.","installDiscord":"Install Discord bot","opening":"Opening...","telegram":"Get Telegram access","commandsHead":"Three steps in your server","emptyHint":"Tap {button} to open the invite, then the three setup commands appear here.","steps":{"add":{"cmd":"Add the bot","desc":"Pick your server in the invite tab that just opened, then authorize."},"setup":{"desc":"Link your tik.tools API key so the bot answers with your agency data."},"rank":{"desc":"Look up any creator - then add /watch and /roster for your team."}},"tgError":"Could not generate a personal link - the public bot link above still works."}},"creatorDigest":{"seo":{"title":"Creator Digest - new TikTok creators to recruit, emailed {'|'} tik.tools","description":"Get the new TikTok LIVE creators found on leaderboards and leagues in your regions by email: copy-paste usernames plus a CSV sheet, every {hours} hours to weekly, across {count} regions. Only creators whose best month in the last {months} months stayed under {cap} diamonds; you check eligibility.","name":"Creator Digest","ogImageSubtitle":"New creators to recruit in your regions, emailed as usernames + CSV.","ogImageBadge":"AGENCY"},"jsonLd":{"breadcrumbHome":"Home"},"getStarter":"Get {plan} - {price}/month","hero":{"kicker":"Agency exclusive","title":"New creators to recruit in your regions. {highlight}","titleHighlight":"In your inbox.","sub":"The Creator Digest mails you the new creators found on leaderboards and leagues in your regions, as copy-paste usernames plus a CSV sheet, ready for your own eligibility check. Every 6 hours, daily or weekly - you pick.","setup":"Set up your digest","sample":"See a sample email"},"facts":{"aria":"Digest at a glance","regions":"regions to pick from","hoursValue":"{hours}h","cadence":"fastest cadence, up to weekly","sheet":"sheet attached to every email","ceiling":"diamond cap on the best month, last {months} months"},"features":{"kicker":"What you get","title":"New talent to recruit, on a schedule","lede":"Same candidates as the {link} page: creators earning right now whose highest month in the last {months} months stayed under {cap} diamonds, TikTok's invite rule. The digest delivers the names; you check eligibility with the Chrome extension or a bulk paste in your backstage.","ledeLink":"New Creators","items":{"copy":{"title":"Copy-paste usernames","body":"One handle per line, grouped by region. Select, copy, paste into your backstage bulk eligibility check or your outreach sheet. No scraping, no formatting."},"csv":{"title":"A CSV sheet with every email","body":"Username, display name, region and the score that ranked them. Opens in Sheets or Excel; import it into your CRM as is."},"delta":{"title":"New since last digest","body":"Names that were not in your previous email sit at the top. Switch to \"only new names\" and each digest becomes a pure delta."},"cadence":{"title":"Your cadence","body":"Every 6, 12 or 18 hours, daily or weekly. Fast enough to reach a creator on the day they start earning, slow enough to batch on Mondays."},"regions":{"title":"{count} regions","body":"Pick one market or all of them. Each region is its own block in the email and its own column in the sheet."},"ceiling":{"title":"Ceiling filter built in","body":"Only creators whose highest monthly diamonds over the last {months} months are under {cap} make the list - TikTok's invite rule, and the same filter the New Creators page applies. Eligibility itself is yours to check."}}},"sample":{"kicker":"Sample email","title":"What lands in your inbox","lede":"One email per digest. Names arrive one per line so you can paste the block straight into your backstage bulk eligibility check, a spreadsheet or a message. The CSV carries the same names with region, display name and the score that ranked them.","list":{"newFirst":"New since last digest, listed first","fullList":"Full region list underneath (or only the new names, if you prefer)","csv":"CSV sheet attached to every email","recipient":"Sent to your account email, nobody else's"},"aria":"Sample digest email","when":"Every 6 hours","subject":"New creators to check - North America, Brazil - 248 names","greeting":"Hi Maya, here are the new creators found in your regions right now.","newTag":"New since last digest","regionNorthAmerica":"North America","regionBrazil":"Brazil","rows":"{count} rows"},"steps":{"kicker":"Setup","title":"Three steps, about a minute","items":{"open":{"title":"Open your digest settings","body":"Agency accounts find them on this page and inside the scouting board under Team. Flip the toggle on."},"pick":{"title":"Pick regions, cadence and mode","body":"Tap the regions you recruit in, choose how often you want mail, and decide between the full list every time or only the new names."},"save":{"title":"Save","body":"The first digest goes out on the next scheduled run to your account email. Change anything later and the next email picks it up."}}},"settings":{"kicker":"Your digest","title":"Configure it here","lede":"Digests go to your account email. Change regions or cadence any time; the next digest uses the new settings."},"price":{"kicker":"Included with Agency","title":"Part of every Agency plan","lede":"The digest ships with every Agency account, Starter and Global, alongside the agency dashboard, copy-paste rosters, team seats and the Telegram scout bot. No add-on, no per-region fee.","perMonth":"/ month","alt":"or {plan} from {price} a week","note":"Instant unlock. Cancel anytime."},"faq":{"kicker":"FAQ","title":"Questions agencies ask","items":{"eligibility":{"q":"Does the digest check eligibility?","a":"No. The digest finds new creators on leaderboards and leagues and filters out anyone who reached {cap} diamonds or more in any month of the last {months} months, TikTok's invite rule. You check eligibility yourself with the Chrome extension or by pasting the usernames into your backstage bulk check."},"regions":{"q":"How many regions can I subscribe to?","a":"Any number up to all {count}. Each region is a separate block in the email and a separate group in the CSV, so a wide selection stays readable."},"modes":{"q":"What is the difference between the full list and only new names?","a":"Full list sends every candidate in your regions each time, with the new ones marked at the top. Only new names sends just the creators that were not in your previous digest."},"recipient":{"q":"Where does the email go?","a":"To the email on your tik.tools account. The recipient is set from your account, not from the form, so a digest can never be pointed at someone else."},"charge":{"q":"Is the digest an extra charge?","a":"No. It is part of every Agency plan, Starter and Global, together with the agency dashboard, copy-paste rosters, team seats and the Telegram scout bot."}}}},"digestSettings":{"title":"Email digests","lede":"You get the new creators found in each region as copy-paste usernames and a CSV sheet attached, mailed to your account email on the cadence you pick.","regions":{"label":"Regions","count":"{active} active, {picked} picked","loadError":"Regions could not be loaded. Reload the page and try again."},"countryBoards":"Country boards","cadence":{"label":"Cadence","hours":{"6":"Every 6 hours","12":"Every 12 hours","18":"Every 18 hours","24":"Daily","168":"Weekly"},"atSetTimes":"At set times"},"sendAt":{"label":"Send at","hint":"up to {max} times a day, {tz} time"},"timezone":"Timezone","perRegion":{"label":"Different times per region","hint":"optional - regions without their own times go out at the times above","ownTimes":": own times","sameAsAbove":": same as above"},"mode":{"label":"Each email","options":{"full":"Full list every time","new":"Only new names"}},"include":{"label":"Include","creators":"Creators","gifters":"Gifters + their top 3 creators"},"attachment":{"label":"Attachment","hint":"for bulk copy-paste work, one sheet per region is easier to hand to a team","combined":"One combined sheet","split":"One sheet per region, usernames only"},"saving":"Saving...","save":"Save digest settings","feedback":{"pickTime":"Pick at least one send time.","ownTimesOne":", {count} region on its own times","ownTimesMany":", {count} regions on their own times","atTimes":"at {times} ({tz}){ownTimes}","cadence":{"6":"every 6 hours","12":"every 12 hours","18":"every 18 hours","24":"daily","168":"weekly"},"saved":"Saved - {when} to your account email.","savedOff":"Saved - digests off.","saveFailed":"Could not save. Check a region is selected."}},"recruit":{"seo":{"title":"Recruit creators by earning band - tik.tools","description":"Agency creator recruiting search. Shortlist creators by average monthly diamond band across regions."},"badge":"Agency Feature","title":"Recruit by {highlight}","titleHighlight":"earning band","sub":"Shortlist creators by their average monthly diamonds. Results are banded ranges built to guide recruiting, not to export our dataset.","upsell":{"title":"Creator recruiting search is Agency-only","body":"Upgrade to filter creators by monthly earning band across every region.","unlock":"Unlock with Agency","login":"Log in"},"filters":{"region":"Region","allRegions":"All regions","avgMonth":"Avg / month","searching":"Searching...","search":"Search"},"table":{"creator":"Creator","active":"Active","liveDays":"Live days","months":"{count} mo","days":"{count}d","foot":"Showing up to 50 - figures are banded ranges, not exact totals."},"empty":"No creators match this band and region.","notices":{"dailyCap":"Daily search limit reached. Resets in 24 hours.","rate":"Too many searches - slow down a moment and try again.","allRegions":"{starterPlan} searches one region at a time. Pick a region, or upgrade to {globalPlan} to search every region at once.","planRequired":"Agency plan required.","unavailable":"Search is temporarily unavailable. Try again shortly."}},"watchedGifters":{"nav":"Watched gifters","intro":"Add the gifters you care about by {'@'}username or TikTok profile link. We follow the creators they support and follow, so more of their gifts get recorded.","disclosureTitle":"Coverage is partial","disclosure":"Coverage is not 100%: we record a gifter's gifts in the LIVE rooms we're connected to. We automatically follow the creators this gifter supports and follows to catch more, but gifts in rooms we're not in can be missed.","inputLabel":"TikTok username or profile link","inputPlaceholder":"{'@'}username or tiktok.com/{'@'}username","add":"Add gifter","adding":"Adding...","counter":"{count} of {limit} watched gifters","added":"Now watching {'@'}{handle}.","alreadyWatching":"{'@'}{handle} is already on your list.","removed":"Stopped watching {'@'}{handle}.","empty":"No watched gifters yet. Add one above to start recording their gifts.","loadError":"Could not load your watched gifters.","retry":"Retry","remove":"Remove","removeConfirm":"Stop watching {'@'}{handle}? Their recorded gifts stay in our data, but we stop expanding coverage around them.","showGifts":"Show gifts","hideGifts":"Hide gifts","lastGift":"Last gift","lastGiftLine":"{gift} to {'@'}{creator}","noGiftsYet":"No gifts recorded yet","totalDiamonds":"Recorded diamonds","gifts":"Gifts","creators":"Creators gifted","diamondsShort":"{count} diamonds","coverage":{"full":"Following {total} creators for this gifter: {gifted} they gifted, {follows} they follow, {seen} rooms they were seen in. {live} live now, {recording} recording.","private":"Following {total} creators for this gifter: {gifted} they gifted, {seen} rooms they were seen in. {live} live now, {recording} recording. Their following list is private on TikTok, so only gift history and room sightings are used.","notChecked":"Following {total} creators for this gifter: {gifted} they gifted, {seen} rooms they were seen in. {live} live now, {recording} recording. Their following list has not been checked yet.","starting":"Coverage expansion starting, check back in a few minutes.","updated":"Updated {ago}"},"panel":{"giftsTitle":"Recorded gifts","creatorsTitle":"Creators gifted","time":"Time","creator":"Creator","gift":"Gift","diamonds":"Diamonds","creatorSummary":"{diamonds} diamonds in {gifts} gifts","noFeed":"No gifts recorded for this gifter yet.","loading":"Loading gifts...","loadMore":"Load more"},"alerts":{"title":"Gift alert","label":"Alert me when this gifter sends a gift of at least","unit":"coins","save":"Save","saving":"Saving...","turnOff":"Turn off","on":"Alert on: gifts of {coins} coins or more.","off":"No alert set for this gifter.","saved":"Alert saved.","turnedOff":"Alert turned off.","unavailable":"Alert settings could not be loaded right now.","delivery":"Alerts arrive through your account's webhooks subscribed to gifter.watched_gift, or your agency Telegram seats.","webhooksLink":"Manage webhooks","errors":{"range":"Enter a whole number of coins from {min} to {max}.","failed":"Could not save the alert. Your alert list may be full, or please retry in a moment."}},"errors":{"invalid":"Enter a TikTok {'@'}username or profile link.","notFound":"We could not find that TikTok account.","limit":"Your plan includes {limit} watched gifters. Remove one to add another.","rate":"Too many changes. Please wait a few minutes and try again.","locked":"Watched gifters are part of the paid Agency plans.","notWatched":"This gifter is no longer on your watched list.","feed":"Could not load this gifter's gifts.","generic":"Something went wrong. Please retry."},"locked":{"title":"Watched gifters are part of the paid Agency plans","body":"Agency Starter includes {starter} watched gifters and Agency Global includes {global}. We expand live coverage around each one so more of their gifts are recorded.","cta":"See Agency plans"}}},"legalNotice":{"text":"This is a courtesy translation. If it differs from the English version, the English version applies. {link}","link":"Read the English version"},"dashboard":{"meta":{"title":"Dashboard - TikTool Live"},"loading":"Loading dashboard...","common":{"seePricing":"See pricing"},"actions":{"copy":"Copy","copied":"Copied","copiedBang":"Copied!","copyKey":"Copy key","hide":"Hide","show":"Show","hideKey":"Hide key","showKey":"Show key","revealKey":"Reveal key"},"units":{"hours":"{n}h","days":"{n}d","thousands":"{n}k","millions":"{n}M"},"ago":{"seconds":"{n}s ago","minutes":"{n}m ago","hours":"{n}h ago","days":"{n}d ago"},"blocked":{"title":"Account Restricted","logout":"Logout","seePlans":"See plans","contact":"Contact Us","defaultMessage":"Your account has been restricted. Contact support if you believe this is a mistake."},"header":{"title":"Dashboard","billing":"Billing","resetTitle":"All daily limits reset at midnight UTC","resetIn":"Daily limits reset in {time}"},"keyBar":{"unnamed":"Unnamed","live":"{count} live","upgradeKey":"Upgrade Key"},"nudge":{"title":"Run your first request in {seconds} seconds","sub":"This key has not made a request yet. Working file pre-filled with your API key. Pick a language - copy, paste, run.","copyLabel":"Copy first-run code","dismiss":"Dismiss"},"fpWarn":{"title":"Production usage detected on a Sandbox key","foot":"Sandbox keys are for development & evaluation only. Continued production use will trigger an automatic permanent ban (no refund, no warning). {link}.","termsLink":"See Terms §4.3-4.4","upgradeNow":"Upgrade now"},"evaluation":{"endedLabel":"Evaluation ended","endedOn":"Ended {date}","endedHint":"Your Sandbox evaluation is over, so API requests and live sessions on this account are refused. Choose a plan to keep going."},"community":{"label":"Daily Free Sessions Used","reached":"Daily Demo Limit Reached","hint":"Max {duration} per session. Resets at UTC midnight.","upgrade":"Upgrade"},"live":{"title":"Live activity","sub":"Realtime - pushed live from your in-flight traffic","state":{"connecting":"CONNECTING","idle":"LISTENING","active":"LIVE"},"idleTitle":"Listening for live activity","idleBody":"Make your first API call and this panel lights up instantly.","copyLabel":"Copy first-call code","statWs":"WS {window}","statRest":"REST {window}","statErrors":"Errors {window}"},"welcome":{"title":"Your API Key is Ready","subtitle":"A Sandbox-tier key has been provisioned for your account. Store it securely - this is the only time the full key is displayed.","keyLabel":"API Key","copied":"Copied to clipboard","getStarted":"Get Started","docs":"Documentation","starTitle":"Star us on GitHub","star":"Star on GitHub","reqPerDay":"{count} requests / day","wsConnections":"{count} WebSocket connections","upgradeAnytime":"Upgrade anytime"},"empty":{"title":"Welcome to TikTool Live","desc":"Create your first API key to start connecting to TikTok Live streams in real-time.","creating":"Creating...","create":"Create Your First API Key"},"stats":{"todayRequests":"Today's Requests","evalEnded":"Evaluation ended - {link}","seePricing":"see pricing","ofDailyLimit":"of {limit} daily limit","wsToday":"WS Connections Today","wsPerDay":"of {limit} per day, resets midnight UTC","wsNoCap":"no daily cap on this tier","totalRequests":"Total Requests","allTime":"all time","wsConnections":"WebSocket Connections","live":"Live","idle":"Idle","activeConnections":"active connections","subscription":"Subscription","activePlan":"Active - {plan}","monthly":"Monthly","upgrade":"UPGRADE","upgradeTo":"UPGRADE TO {plan}"},"expiry":{"evalEndedUpgrade":"Evaluation ended - upgrade to continue","expired":"Access expired","evalEndsToday":"Evaluation ends today","evalDaysLeft":"Evaluation: {days} days left","expiresToday":"Expires today","daysLeft":"{days} days left"},"badge":{"renewing":"RENEWING","expiring":"EXPIRING","expired":"EXPIRED"},"upgradeNudge":{"title":"You're at {pct}% of today's request quota","reqPerDay":"{value} req/day","webSockets":"{value} WebSockets","unlock":"Unlock {plan}"},"limits":{"title":"Effective Limits","custom":"CUSTOM","override":"OVERRIDE","evalEnded":"Evaluation ended: the API refuses this key, so these limits no longer apply. {link} to continue.","items":{"dailyLimit":"Requests / day","rateLimit":"Requests / min","wsLimit":"WebSocket connections","bulkCheckLimit":"Bulk check IDs","wsDailyLimit":"WS connections / day"}},"key":{"title":"API Key - {label}","titleEditing":"API Key -","rename":"Rename key","meta":{"plan":"Plan","status":"Status","renews":"Renews","cancels":"Cancels","giftExpires":"Gift Expires","expired":"Expired","accessUntil":"Access until","created":"Created"},"regenerateTitle":"Rotate this API key (new value, same limits + same ID)","regenerate":"Regenerate Key","deleteTitle":"Remove this API key from your dashboard","delete":"Delete Key","cancelSubTitle":"Cancel this key's subscription","cancelSub":"Cancel Subscription"},"quickStart":{"title":"Quick Start"},"usage":{"title":"Usage Analytics","metric":{"all":"All","requests":"Requests","errors":"Errors"},"range":{"today":"Today (UTC)","yesterday":"Yesterday (UTC)","lastHours":"Last {n} Hours","days":"{n} Days"},"loading":"Loading usage data...","unit":{"connections":"connections","errors":"errors","requests":"requests"},"series":{"requests":"Requests","ws":"WS","errors":"Errors"},"stats":{"totalRequests":"Total Requests","errorRate":"Error Rate","avgResponse":"Avg Response","uniqueIps":"Unique IPs","wsSessions":"WS Sessions"},"seriesMissing":"The time breakdown for this period is not available right now. Your top endpoints for the period are listed below.","showLastHours":"Show the last {n} hours","empty":"No requests recorded for this period.","methods":"Methods","statusCodes":"Status Codes"},"traffic":{"title":"{window} Traffic","total":"Total","errors":"Errors","empty":"No requests in the last {window}.","hover":"{hour} - {count} req","hoverWithErrors":"{hour} - {count} req, {errors} err"},"topEndpoints":"Top Endpoints","recent":{"title":"Recent API Calls","endpoint":"Endpoint","method":"Method","status":"Status","time":"Time","details":"Details"},"newKey":{"title":"Name Your New API Key","desc":"Give your key a name to identify it in your dashboard.","placeholder":"e.g. Production, Staging, Assistant 2...","continue":"Continue to Plan Selection"},"upgrade":{"keyCreated":"Key Created!","activated":"Subscription Activated!","choosePlanFor":"Choose a Plan for {label}","upgradeYourKey":"Upgrade Your Key","descNewKey":"Select a plan for your new API key","descUpgrade":"Choose a plan to unlock higher limits and premium features","successNewKey":"Your new API key {label} has been created with the {plan} plan. The dashboard will refresh momentarily.","successUpgrade":"Your API key has been upgraded to {plan}. The dashboard will refresh momentarily.","backToDashboard":"Back to Dashboard","cycle":{"weekly":"Weekly","monthly":"Monthly"},"cycleLower":{"weekly":"weekly","monthly":"monthly"},"period":{"wk":"wk","mo":"mo"},"feat":{"reqPerDay":"{value} req/day","ws":"{count} WS","wsFirehose":"{count} WS + Firehose","captionOne":"{count} Caption","captionOther":"{count} Captions","priorityRouting":"Priority routing","proLevelApi":"Pro-level API","agencyDashboard":"Agency dashboard","seats":"{count} seats","unmaskedGifter":"Unmasked Gifter API"},"select":"Select","selected":"Selected","discountNamed":"Discount ({name})","discount":"Discount","subtotal":"Subtotal","total":"Total","taxNextStep":"Tax calculated in next step","taxAuto":"Tax calculated automatically if applicable","couponToggle":"Have a coupon code?","couponPlaceholder":"Coupon code","checking":"Checking...","apply":"Apply","remove":"Remove","couponApplied":"Coupon applied!","business":"Business purchase","companyName":"Company name","taxId":"Tax ID / VAT number (optional)","continueToPayment":"Continue to Payment","swapCredit":"Credit for unused time on your current plan","swapLine":"{plan} {cycle}","continueToPaypal":"Continue to PayPal","keepCurrent":"Keep current plan","creditedNext":"Credited to your next invoice","chargedToday":"Charged to your card today","confirmChange":"Confirm plan change","or":"or","compare":"Compare All Features","settingUp":"Setting up payment...","paymentMethod":"Payment method","processing":"Processing...","pay":"Pay {amount}","backToSummary":"Back to summary","secured":"Secured by Stripe. We never store your card details.","errors":{"alreadyOnPlan":"This key is already on that plan.","pricePlanFailed":"Could not price this plan change. Try again.","paypalNoLink":"PayPal did not return an approval link. Try again.","changeFailedRetry":"Could not change the plan. Try again or contact support.","changeFailedUnchanged":"Could not change the plan. Your plan has not changed.","invalidCoupon":"Invalid coupon code","couponValidateFailed":"Could not validate coupon","fixCoupon":"Please fix or remove the invalid coupon before continuing.","stripeNotLoaded":"Payment system not loaded. Please try again.","initFailed":"Payment could not be initialized. Please try again.","createSubFailed":"Failed to create subscription","paymentFailed":"Payment failed"}},"topUp":{"added":"Credits Added!","title":"Top Up Caption Credits","desc":"Select a credit package. {n} credit = {n} min × {n} language.","success":"{credits} have been added to your account. Your dashboard will refresh momentarily.","done":"Done","bestValue":"Best Value","credits":"credits","creditsCount":"{count} credits","ratePerCredit":"{price}/credit","savings":"{percent}% savings","backToPackages":"Back to packages","errors":{"invalidCoupon":"Invalid coupon","createFailed":"Failed to create payment"}},"regenerate":{"title":"Regenerate API Key?","desc":"This will {replace} your current API key with a new one. The old key will {stop}. Your subscription and tier will transfer to the new key.","replace":"replace","stop":"stop working immediately","cancel":"Cancel","loading":"Regenerating...","confirm":"Yes, Regenerate","failed":"Regenerate failed. Try again."},"cancelSub":{"title":"Cancel Subscription?","desc":"This will {cancel} for this key and {revoke}. This action cannot be undone.","cancelStrong":"cancel the Stripe subscription","revokeStrong":"revoke the API key","warning":"{forfeit} when your subscription ends. Caption credits require an active {plan} or higher subscription.","forfeit":"All purchased caption credits will be forfeited","keep":"Keep Subscription","loading":"Cancelling...","confirm":"Yes, Cancel & Revoke"},"deleteKey":{"title":"Delete API Key?","desc":"This removes the key from your dashboard and {deactivate} - it stops working right away. Any active subscription on it is cancelled.","deactivate":"deactivates it immediately","keep":"Keep Key","loading":"Deleting...","confirm":"Yes, Delete Key","failed":"Failed to delete key"},"subStatus":{"active":"Active","paymentFailed":"Payment failed","awaitingPayment":"Awaiting payment","paymentIncomplete":"Payment incomplete","cancelled":"Cancelled","unpaid":"Unpaid","expired":"Expired","free":"Free"}},"account":{"billing":{"seoTitle":"Billing - TikTools","title":"Billing","dashboard":"Dashboard","loading":"Loading billing data...","loadFailed":"Failed to load billing data. {retry}","retry":"Retry","subsTitle":"Subscriptions & Keys","empty":"No active subscriptions or keys.","viewPlans":"View Plans","keyRevoked":"Key revoked","weekendCountdown":"{time} until auto-renew to Weekly {plan} ({date})","labels":{"status":"Status","plan":"Plan","billing":"Billing","amount":"Amount","accessUntil":"Access until","renews":"Renews","ended":"Ended"},"cancelling":"Cancelling","interval":{"year":"Annual","week":"Weekly","month":"Monthly"},"per":{"year":"{amount}/yr","week":"{amount}/wk","month":"{amount}/mo"},"cancelNotice":"Subscription will end on {date}","pausedOn":"Paused - no charges. Billing resumes on {date}.","pausedAuto":"Paused - no charges. Billing resumes automatically.","resumeNow":"Resume now","changePlan":"Change Plan","cancelSubscription":"Cancel Subscription","reactivate":"Reactivate / New Plan","prepaid":"Prepaid","renewStack":"Renew now - days are added on top","appStorePlan":"App Store plan","appStoreManage":"Manage in the App Store","renewNow":"Renew now","sandboxNoSub":"{plan} tier - no subscription","notLinked":"Subscription not linked","upgrade":"Upgrade","getPlan":"Get a Plan","paymentMethod":"Payment Method","noPaymentMethod":"No payment method on file","opening":"Opening...","updatePm":"Update payment method","addPm":"Add payment method","details":{"title":"Invoice Details","intro":"Shown as \"Bill to\" on your invoices. To invoice a company, enter its name, address and VAT number.","name":"Company or full name","address":"Address","address2":"Address line 2","optional":"optional","city":"City","postalCode":"Postal code","state":"State or region","country":"Country","chooseCountry":"Choose a country","taxId":"VAT or tax ID","taxIdUnavailable":"Not available for this country","verification":"Verification: {status}","saving":"Saving...","save":"Save details","saved":"Saved. New invoices will use these details.","saveFailed":"Could not save your invoice details. Please try again."},"nextPayment":"Next Payment","due":"Due {date}","invoiceHistory":"Invoice History","th":{"invoice":"Invoice","date":"Date","amount":"Amount","status":"Status"},"view":"View","downloadPdf":"Download PDF","cancelModal":{"title":"Cancel Subscription?","desc":"Your subscription will remain active until the end of the current billing period. After that, the key will be downgraded to the {plan} tier.","pauseHead":"Need a break instead?","pauseDesc":"Pause for {days} days - keep your key, plan and history. No charges while paused, and billing resumes automatically.","pauseCta":"Pause for {days} days","working":"Working...","keep":"Keep Subscription","cancelling":"Cancelling..."},"paymentModal":{"updateTitle":"Update Payment Method","addTitle":"Add Payment Method","cancel":"Cancel","saving":"Saving...","save":"Save Card"},"errors":{"pauseFailed":"Failed to pause subscription","resumeFailed":"Failed to resume subscription","cancelFailed":"Failed to cancel subscription","portalFailed":"Could not open billing portal. Please contact {email}","notLoaded":"Payment system not loaded","loadFormFailed":"Failed to load payment form","updateFailed":"Failed to update payment method"},"previousKey":"Previous key","unknownPlan":"Unknown","timeLeft":{"renewing":"Renewing now","days":"{d}d {h}h left","hours":"{h}h {m}m left"},"status":{"active":"Active","trialing":"Active","past_due":"Past due","unpaid":"Unpaid","incomplete":"Payment pending","incomplete_expired":"Payment not completed","canceled":"Cancelled","cancelled":"Cancelled","paused":"Paused","suspended":"Suspended","expired":"Expired","approval_pending":"Awaiting approval","approved":"Approved","pending":"Pending","processing":"Processing","failed":"Payment failed","refunded":"Refunded","partially_refunded":"Partially refunded","paid":"Paid","open":"Open","draft":"Draft","void":"Void","uncollectible":"Uncollectible","verified":"Verified","unverified":"Unverified","unavailable":"Unavailable","unknown":"Unknown"}},"vipBilling":{"seoTitle":"PASS Billing - TikTool","title":"PASS Billing","plans":"PASS Plans","apiBilling":"API Billing","empty":"No active PASS subscription.","viewPlans":"View PASS Plans","subscription":"PASS Subscription","membership":"PASS Membership","endsOn":"Subscription ends {date}","managePlan":"Manage Plan","noInvoices":"No PASS invoices yet.","cancelTitle":"Cancel PASS Subscription?","cancelDesc":"Your plan stays active until the end of the billing period. After that, PASS features are removed. No refunds for partial months.","keepPlan":"Keep Plan","cancelFailed":"Cancellation failed. Please try again."},"daypass":{"seoTitle":"{plan} Access - Tik.Tools","eyebrow":"invitation","title":"Your free {pass}","lede":"Full {plan} access - every region leaderboard, league + gaming ranks, gifter intel, and the Discord ranks bot.","giftersDesc":"Top gifters + creator profiles","success":{"title":"You're in.","sub":"Full {plan} access unlocked for {hours} hours. Jump in:","ranksTitle":"Live Ranks","ranksDesc":"Every region, real-time, unmasked","botTitle":"Add the Discord bot","botDesc":"Then type {command} in your server","giftersTitle":"Creators & gifters","foot":"Pass expires in {hours}h. We'll email you a one-tap way to keep going."},"demo":{"unmaskTitle":"Unmasked leaderboards","unmaskDesc":"Every region + league rank, real names","intelTitle":"Gifter intel","discordDesc":"Live boards inside your server"},"activating":"Activating your pass...","activate":"Activate my day pass","google":"Continue with Google to start","fineprint":"Billed monthly or weekly · cancel anytime.","startFailed":"Could not start your pass. Please try again."},"daypassKeep":{"seoTitle":"Continue with {plan} - Tik.Tools","errorTitle":"Something went wrong","retry":"Try again","redirecting":"Taking you to secure checkout...","payWith":"{plan} - pay with Apple Pay, Google Pay, PayPal or card.","planMonthly":"{plan} - {price}/month","planWeekly":"{plan} - {price}/week","notOpened":"Checkout did not open. Please try again.","failed":"Checkout failed. Please try again."},"page":{"seoTitle":"Account - TikTools","avatarAlt":"You","fallbackName":"Your account","loading":"Loading your account...","profile":"Profile","displayName":"Display name","namePlaceholder":"Your name","saving":"Saving...","save":"Save","saved":"Saved","saveFailed":"Could not save","email":"Email","googleSignIn":"Google sign-in","emailPassword":"Email + password","password":"Password","googleNote":"You sign in with Google, so there is no password to change here. Manage it in your Google account.","currentPassword":"Current password","newPassword":"New password","newPasswordPlaceholder":"At least {min} chars, 1 uppercase, 1 number","confirmPassword":"Confirm new password","repeatPassword":"Repeat new password","hintLength":"{min}+ characters","hintUpper":"1 uppercase","hintNumber":"1 number","updating":"Updating...","changePassword":"Change password","pwFine":"We send a confirmation email to {email} whenever your password changes.","planBilling":"Plan & billing","currentPlan":"Current plan","subscription":"Subscription","noSubscription":"No active subscription","manageBilling":"Manage billing","viewPlans":"View plans","signOut":"Sign out","pwMismatch":"New passwords do not match","pwChanged":"Password changed. A confirmation email is on its way.","pwFailed":"Could not change password"},"completeProfile":{"seoTitle":"Complete Profile - TikTool","connected":"TikTok connected","title":"One last step","sub":"Add your email to receive alerts, receipts, and account recovery options.","save":"Save and continue","skip":"Skip for now","invalidEmail":"Enter a valid email address.","saveFailed":"Could not save email. Please try again."},"forgot":{"seoTitle":"Reset your password - tik.tools","title":"Reset your password","subStep1":"We will email you a {digits}-digit code.","subStep2":"Enter the code we emailed you and choose a new password.","sending":"Sending...","sendCode":"Send reset code","codeLabel":"{digits}-digit code","passwordPlaceholder":"At least {min} characters","passwordHint":"At least {min} characters, with one uppercase letter and one number.","saving":"Saving...","setPassword":"Set new password","differentEmail":"Use a different email","back":"Back to sign in","checkEmail":"Check your email.","updated":"Password updated. Redirecting you to sign in...","genericError":"Something went wrong. Try again."},"banned":{"seoTitle":"Account Suspended","title":"BANNED","sub":"Account suspended for API abuse","permanent":"PERMANENT","perma":"PERMA","minutes":"{min} MIN","continue":"Continue"},"claimError":{"seoTitle":"Verification Error","title":"Verification Failed","close":"Close","fallback":"An error occurred during verification. Please try again."},"refundPolicy":{"text":"Reading hour packs: one refund per account. Access ends when you ask, and unused hours are refunded minus payment processor fees. API and agency plans are non-refundable, except for an outage on our side, a duplicate charge or a billing error (Terms 5.4). {link}.","link":"See the Terms"}},"agencyDash":{"sections":{"home":"Dashboard","watchlist":"Watchlist","roster":"Roster","health":"Roster Health","pipeline":"Recruit Pipeline","tracker":"Live Tracker","notes":"Notes","archive":"Archive","battles":"Battle Logs","gifters":"Gifter DB","tasks":"Tasks","teamActivity":"Team Activity","teamTasks":"Team Tasks","team":"Team"},"shell":{"agencyTools":"Agency tools","dashboard":"Dashboard","upgrade":"Upgrade","billing":"Billing","openMenu":"Open agency menu","menu":"Agency menu","closeMenu":"Close agency menu","workspace":"Workspace","account":"Account","seePlans":"See agency plans","backTo":"Back to {brand}","explore":{"newCreators":"New Creators","agencyPulse":"Agency Pulse","rising":"Rising","agencies":"Agencies"}},"wall":{"title":"Agency CRM","body":"Live roster tracking, gifter intel, battle logs and team tools are available on agency plans.","cta":"See agency plans"},"common":{"followers":"{count} followers","live":"LIVE","off":"OFF","offline":"offline","archive":"Archive","openProfile":"Open profile"},"time":{"justNow":"just now","minutesAgo":"{n}m ago","hoursAgo":"{n}h ago","daysAgo":"{n}d ago","secondsShort":"{n}s","minutesShort":"{n}m","hoursShort":"{n}h","daysShort":"{n}d","agoSuffix":"{ago} ago","now":"Now"},"home":{"liveNow":"Live now","watched":"Watched","diamonds24h":"Diamonds · 24h","viewersNow":"Viewers now","viewers":"viewers","last24h":"24h","liveEmpty":"None of your watched creators are live right now. We refresh their status every few seconds.","recruit":"Recruit","recruitSub":"New creators to recruit in {region}, found on leaderboards and leagues. Add one to start watching every time they go live.","recruitLoading":"Loading recruits...","watchButton":"+ Watch","recruitEmpty":"No recruits for {region} yet. Check creators on the {link} to fill this list.","recruitPageLink":"recruit page","watchedOffline":"Watched · offline","offlineEmpty":"No offline watched creators."},"watchlist":{"intro":"Unsigned creators you're scouting - every entry shows the full CRM record: who added them, who reached out, when, eligibility, and the running note. Click any card to open the creator profile + edit the note.","copyAll":"Copy all usernames for backstage","addTarget":"+ Add target","usernamePrompt":"TikTok username (no {'@'}):","daily":"Daily","topGifter":"Top gifter","addedBy":"Added by","added":"Added","status":{"newTarget":"New Target","outreachSent":"Outreach Sent","inTalks":"In Talks","signed":"Signed","cold":"Cold"},"notePlaceholder":"Outreach attempts, owner intel, payout terms, response patterns...","trail":"Full log trail","trailSystem":"system","trailEmpty":"No prior events recorded.","toRoster":"Roster","archiveTitle":"Move to skipped archive","empty":"Watchlist is empty. Use Discover (Tikter) to add creators.","outreachNote":"Outreach happens on your own TikTok backstage or DMs - we never message creators on your behalf."},"roster":{"intro":"Your signed talent. Per-creator notes for internal staff. Transcripts + chat-spy unlock on Global.","cols":{"creator":"Creator","status":"Status","today":"Today (◇)","split":"Split %","lastLive":"Last live"},"remove":"Remove","removeTitle":"Remove from roster","notes":"Notes","removeConfirm":"Remove {handle} from your roster? They stay in your watchlist and can be re-signed anytime.","removeFailed":"Could not remove creator from roster","signFailed":"Could not sign creator"},"notes":{"intro":"Every creator your team has notes on. Click a card to open the full profile and edit.","withNotes":"With notes","allDecisions":"All decisions","empty":"No notes yet. Open any creator profile to add one.","verified":"verified","noNote":"No note yet - click to add","decision":{"yes":"yes","no":"no","maybe":"maybe"}},"archive":{"intro":"Creators you swiped left in Discover. Restore one to re-surface them in the deck.","empty":"No skipped creators yet.","restore":"Restore"},"battles":{"intro":"PK match history. The opponent-whale column shows who to poach next.","cols":{"date":"Date","yourCreator":"Your creator","opponent":"Opponent","result":"Result","margin":"Margin","oppWhale":"Opp. whale"},"win":"WIN","loss":"LOSS"},"gifters":{"intro":"Top spenders across your roster. Click a gifter for cross-donation breakdown.","cols":{"gifter":"Gifter","total":"Total ◇","thisWeek":"This week","creatorsSupported":"Creators supported","alsoFunds":"Also funds (outside)"},"outsideMasked":"+ • outside","outside":"+ {amount}◇ across {count} outside","exclusive":"exclusive to roster"},"tasks":{"intro":"Simple CRM tasks - assign, due-date, mark done. Free with a Google sign-up. The rest of the dashboard upgrades when you subscribe.","placeholder":"New task... e.g. 'DM {'@'}creator about contract terms'","add":"Add","deleteAria":"Delete","empty":"Nothing yet. Add your first task above."},"teamActivity":{"locked":"Team Activity unlocks on Agency plans.","defaultTeamName":"Your Team","membersActiveOne":"{count} member active","membersActiveOther":"{count} members active","all":"All","online":"Online {count}","idle":"Idle {count}","offline":"Offline {count}","searchPlaceholder":"Search name or email...","empty":"No member activity recorded yet. Members appear here once they start using the dashboard.","noMatch":"No members match this filter."},"teamTasks":{"locked":"Team Tasks unlocks on Agency plans.","intro":"Assign work to your team - title, assignee, priority, due date. Drag-free status changes via the per-card dropdown."}},"agencyCrm":{"billing":{"title":"Agency Billing","subActive":"Manage your subscription, payment method, and Telegram seats. Cancel or resume anytime.","subNone":"Pick an Agency plan to unlock the agency dashboard.","loading":"Loading...","empty":{"title":"No active agency plan","body":"{starter} bills monthly. {global} bills weekly or monthly. Pick one to open checkout.","eyebrowMonthly":"{plan} - MONTHLY","eyebrowWeekly":"{plan} - WEEKLY","perMonth":"/month","perWeek":"/week","billedMonthly":"Billed every month","billedMonthlyOnly":"Billed every month - monthly only","billedWeekly":"Billed every week - about {price} a month","billedMonthlyOneCharge":"Billed every month - one charge, not four","ctaMonthly":"Get {plan} - {price} every month","ctaWeekly":"Get {plan} - {price} every week","save":"save {percent}%"},"current":{"eyebrow":"CURRENT PLAN","meta":"{period} · status:","resuming":"Resuming...","resume":"Resume auto-renewal","openingCheckout":"Opening checkout...","renew":"Renew now","canceling":"Canceling...","cancelPlan":"Cancel plan","nextRenewal":"Next renewal","cancelsOn":"Cancels on this date.","nextCharge":"Next charge","payment":"Payment","expires":"Exp {month}/{year}"},"period":{"weekly":"Weekly","monthly":"Monthly","annual":"Annual","fallback":"Agency plan"},"status":{"cancelingAtPeriodEnd":"canceling at period end","unknown":"unknown","active":"active","trialing":"trialing","past_due":"past_due","unpaid":"unpaid","canceled":"canceled","incomplete":"incomplete","incomplete_expired":"incomplete_expired","paused":"paused"},"seatStatus":{"active":"active","inactive":"inactive","revoked":"revoked","pending_invite":"pending_invite"},"cycle":{"weekly":"weekly","monthly":"monthly","annual":"annual"},"cadence":{"weekly":"a week","monthly":"a month","annual":"a year"},"switch":{"upgradeTo":"Upgrade to {plan}","switchTo":"Switch to {plan}","toGlobalBody":"{plan} adds every Global-only surface on top of what you have now. Your unused Starter time is credited.","toStarterBody":"{plan} keeps the agency dashboard, recruiting and team for {price} a month. You lose the Global-only surfaces below; your unused Global time is credited.","billedPaypal":"Billed through PayPal.","billedCard":"Billed through your card on file.","checking":"Checking...","globalWeekly":"Global weekly - {price}/week","globalMonthly":"Global monthly - {price}/month","starterMonthly":"{plan} - {price}/month"},"seats":{"title":"Team Seats","titleWithPrice":"Team Seats - {price} per extra seat","pricePerWeek":"{price}/week","pricePerMonth":"{price}/month","includes":"Your plan includes {seats} ({used} of {cap} in use).","teamSeats":"{count} team seats","billedWeekly":"Each extra seat is billed weekly with your Agency plan. Adding seats charges today only for the rest of the current week.","billedMonthly":"Each extra seat is billed monthly with your Agency plan. Adding seats charges today only for the rest of the current month.","removeNote":"Removing a seat takes effect right away and the unused time is credited to your next invoice.","extraSeats":"extra seats","testMode":"Test mode - seat purchases do not charge a real card.","add":"Add seats","updating":"Updating...","removeOne":"Remove one seat","unassigned":"Unassigned","memberFallback":"member"},"telegram":{"title":"Telegram Radar - Agency Seats","body":"Your {plan} subscription includes {seats}. Scan the QR or tap the link on a phone/PC to connect a device. Free a seat anytime by sending {command} in the bot.","seats":"{count} Telegram seats","linkActive":"Link active for {seconds}s","generating":"Generating...","generate":"Generate Telegram connect link","help":"One link binds one device. Repeat for each employee, up to your seat cap.","qrAria":"Telegram QR code","qrCaption":"Scan with phone camera or Telegram app","open":"Open in Telegram","copied":"Copied","copyLink":"Copy link","hintPc":"On {device}: tap \"{open}\" - it launches the desktop app or web Telegram.","pc":"PC","hintPhone":"On {device}: scan the QR or paste the link in a browser.","phone":"phone","generateNew":"Generate new link"},"modal":{"paypalCredit":"Your current PayPal plan is credited {credit} for unused time.","paypalCreditDays":"Your current PayPal plan is credited {credit} for unused time ({days} days).","newPlan":"The new plan is {price} {cadence}.","newPlanFirstCharge":"The new plan is {price} {cadence}, first charged {date}.","paypalNote":"PayPal opens to approve the new agreement; the old one is cancelled once it is approved.","creditUnused":"Credit for unused time","lineItem":"{plan} {cycle}","tax":"Tax","creditedNext":"Credited to your next invoice","chargedToday":"Charged today","cardNote":"Charged to your card on file. One subscription, no double charge.","keepCurrent":"Keep current plan","switching":"Switching...","continuePaypal":"Continue to PayPal","confirmChange":"Confirm change"},"cancel":{"title":"Cancel your subscription?","body":"You'll keep access until {date}. After that, the agency dashboard, unmasked intel, bulk copy and scout alerts lock back into preview mode.","pick":"Pick how to cancel:","endTitle":"Cancel at period end","endSub":"Recommended. Keep access until {date}.","immediateTitle":"Cancel immediately","immediateSub":"Access ends now. No refund for the current period.","keep":"Keep plan","confirm":"Confirm cancel"},"errors":{"removeSeat":"Could not remove seat.","assignSeat":"Could not update assignment.","cancel":"Cancel failed","resume":"Resume failed","samePlan":"You are already on this plan.","noSubscription":"No active subscription found to change. Start the plan from the agency pricing page instead.","priceFailed":"Could not price this change. Try again.","paypalNoLink":"PayPal did not return an approval link. Try again.","notCompleted":"The change did not complete. Refresh to check your plan before trying again.","planChangeFailed":"Plan change failed. Your plan has not changed.","linkFailed":"Could not generate link.","clipboardBlocked":"Clipboard blocked - long-press the \"Open in Telegram\" button to copy manually."}},"seatModal":{"close":"Close","eyebrow":"TEAM SEATS","title":"Add extra seats","subWeekly":"{price}/week per extra seat, billed weekly with your Agency plan. Your plan already includes {count} seats.","subMonthly":"{price}/month per extra seat, billed monthly with your Agency plan. Your plan already includes {count} seats.","testMode":"Test mode - no real card will be charged. Use a Stripe test card.","fewer":"Fewer seats","more":"More seats","extraSeats":"extra seats","countNoteOne":"You have {current} extra seat now. Total team size after this change: {total}.","countNoteOther":"You have {current} extra seats now. Total team size after this change: {total}.","dueTodayWeek":"Due today, for the rest of this week","dueTodayMonth":"Due today, for the rest of this month","tax":"Tax","totalToday":"Total today","thenWeek":"Then, each week with your plan","thenMonth":"Then, each month with your plan","review":"Review price","processing":"Processing...","payAndAdd":"Pay {amount} and add seats","footnote":"Charged to the card on your Agency plan · Secured by Stripe","payBadge":"{count} EXTRA SEATS","bankConfirm":"Your bank needs a card confirmation before the seats are added.","preparing":"Preparing secure form...","payButton":"Pay and add seats","payFootnote":"Seats are added as soon as the payment goes through","successTitle":"Seats added","successOne":"You now have {count} extra seat. Invite teammates from the team page.","successOther":"You now have {count} extra seats. Invite teammates from the team page.","done":"Done","errors":{"price":"Could not price the seat change.","start":"The payment could not be started. Try again.","add":"Could not add seats.","payment":"Payment failed."}},"team":{"seoTitle":"Team Management - TikTool Agency","title":"Team Management","loading":"Loading your team...","yourAgency":"your agency","teammate":"teammate","noEmail":"no email on file","backToDashboard":"Back to dashboard","copy":"Copy","copied":"Copied","roles":{"owner":"owner","manager":"manager","scout":"scout","member":"member"},"error":{"title":"Could not load your team","body":"Something went wrong reaching the team service. Try again in a moment.","retry":"Retry"},"gate":{"title":"Build your scouting team","body":"Team seats let you add managers and scouts who share your agency's data access - no separate subscription for them. Invites unlock on Agency plans.","plans":"See agency plans"},"member":{"title":"You're on {agency}","body":"Your role: {role}. Only the agency owner can invite or remove members. You have full access to the shared agency data."},"owner":{"lead":"Add managers and scouts to {agency}. They share your data access on a single subscription - {count} seats are included in your plan.","seatsUsed":"seats used"},"invite":{"title":"Invite a teammate","sub":"Enter an email (optional) and a role. If they already have a TikTool account we attach them instantly; otherwise you get a shareable invite link.","email":"Email","optional":"optional","emailPlaceholder":"name{'@'}yourorg.com - leave blank for link-only","role":"Role","roleManager":"Manager - sees assigned creators","roleScout":"Scout - watchlist + mass-copy, no revenue","sending":"Sending...","send":"Send invite","seatLimit":"Seat limit reached - remove a member below or buy more seats to invite again.","joined":"{email} joined {agency}","joinedBody":"Role: {role}. They can sign in and use the shared dashboard immediately.","another":"Invite another","linkReady":"Invite link ready","expires":"Link expires in {days} days. You can revoke it from the list below at any time.","sendAnother":"Send another"},"share":{"whatsappAria":"Share on WhatsApp","telegramAria":"Share on Telegram","emailAria":"Share via Email","smsAria":"Share via SMS","email":"Email","more":"More","message":"You've been invited to join my TikTool agency as {role}. Open the link to accept:","subject":"Join my TikTool agency"},"list":{"title":"Your team","entriesOne":"{count} entry","entriesOther":"{count} entries","presenceNote":"Live online presence is coming soon. Status below shows whether each invite has been accepted.","empty":"No teammates yet. Send your first invite above to start building your roster of managers and scouts.","you":"you","linkOnly":"link-only invite","pending":"Pending","accepted":"Accepted","copyLink":"Copy link","revoke":"Revoke","remove":"Remove","swapTitle":"Need to swap someone out?","swapBody":"Remove a member to free their seat, then send a fresh invite to their replacement."},"regions":{"label":"Region access","saving":"Saving...","saved":"Saved","failed":"Save failed - retry","selected":"{count} selected","all":"All regions"},"buy":{"title":"Need more than {count} seats?","includes":"Your plan includes {count} manager and scout seats.","includesExtra":"Your plan includes {count} manager and scout seats and you have {extra} extra.","addFromBilling":"Add extra seats from Billing - each one is billed with your Agency plan.","add":"Add seats"},"remove":{"title":"Remove {name}?","body":"They will lose access to the shared agency data right away and their seat is freed up. You can re-invite them later.","cancel":"Cancel","removing":"Removing...","confirm":"Remove member"},"errors":{"invalidEmail":"Enter a valid email or leave it blank for a link-only invite.","inviteFailed":"Invite failed. Try again.","revoke":"Could not revoke that invite.","remove":"Could not remove that member."}},"extension":{"seo":{"title":"Eligibility Checker Extension - Tik.Tools Agency","description":"Check TikTok LIVE invite-eligibility from your agency backstage with the Tik.Tools Chrome extension. Included with every agency plan."},"badge":"Agency Tool","title":"The {highlight} for Chrome","titleHighlight":"Eligibility Checker","sub":"Check TikTok LIVE invite-eligibility straight from your agency backstage - no keys, no copy-paste. It keeps checking while the results land on your shared list in real time.","login":"Log in to continue","unlock":"Unlock with Agency","included":"Included with {starter} ({count} checks a day) and {global} (unlimited).","download":"Download the extension","storeSoon":"Web Store version coming soon","copy":"Copy","copied":"Copied","step1":{"title":"Download & add to Chrome","body":"Download the file above and unzip it to a folder you will keep (do not delete it - Chrome loads the extension from there).","openTab":"Open a new tab, paste this into the address bar, and press Enter:","devMode":"Turn on {label} (top-right toggle).","devModeLabel":"Developer mode","loadUnpacked":"Click {label} and select the unzipped folder.","loadUnpackedLabel":"Load unpacked"},"step2":{"title":"Pin it","body":"Click the puzzle-piece icon in Chrome's toolbar, then the pin next to {name} so it is always one click away."},"step3":{"title":"Log in with Tik.Tools","body":"Open the extension and click {label}. It uses this same account - no API key to paste. Your agency plan unlocks it straight away ({starter}: {count} checks a day; {global}: unlimited).","loginLabel":"Log in"},"step4":{"title":"Connect backstage & start checking","body":"Open your TikTok LIVE backstage in the same browser, pick a region in the extension, and it connects automatically. Hit {label} - checked creators appear on your list with their result as it checks.","runLabel":"Run","openList":"Open your checked creators list"},"tips":{"title":"Tips for covering several regions","body":"One backstage account can only be logged in once per Chrome profile. To check several regions at the same time, run {emphasis}, each with the extension installed and logged in with this account. Every profile checks its own region and all results land on the same shared list here.","emphasis":"one backstage account per region in its own Chrome profile","warn":"Use throwaway backstage accounts for bulk checking - never the agency owner's main account."}},"join":{"seoTitle":"Join Agency · TikTool","loading":"Loading invite...","unavailable":"Invite unavailable","notValid":"Invite not valid","acceptFailed":"Could not accept invite","home":"← Home","eyebrow":"AGENCY INVITE","invited":"You've been invited to join as {role}.","clickBelow":"Click below to accept and start scouting together.","joining":"Joining...","accept":"Accept & join","loginToAccept":"Log in to accept","expiresSoon":"Invite expires soon.","expiresOn":"Invite expires {date}.","consent":"By accepting you agree to the agency owner being able to assign you creators and view your activity."},"drilldown":{"close":"Close","memberFallback":"member","loading":"Loading activity...","idleToday":"Idle today","activeToday":"Active today","listsCopied":"Lists copied","timePerPage":"Time per page (today)","page":"Page","time":"Time","unknownPage":"(unknown)","noPageTime":"No page time recorded today.","copyLog":"List-copy log","listFallback":"(list)","timeline":"Activity timeline","noEvents":"No events recorded today.","event":{"aPage":"a page","viewed":"Viewed {page}","left":"Left {page} after {duration}","copiedList":"Copied list {list}","copiedListBare":"Copied list","idle":"Went idle ({duration})","resumed":"Resumed activity","heartbeat":"Active"},"duration":{"seconds":"{s}s","minutes":"{m}m {s}s","hours":"{h}h {m}m"},"ago":{"justNow":"just now","minutes":"{n}m ago","hours":"{n}h ago","days":"{n}d ago"}}},"agencyOps":{"common":{"compactK":"{n}k","compactM":"{n}M","hours":"{n}h","filterCreatorsAria":"Filter creators","liveNow":"Live now","back":"Back","loading":"Loading...","close":"Close"},"nav":{"dashboard":"Dashboard","watchlist":"Watchlist","roster":"Roster","health":"Roster Health","pipeline":"Recruit Pipeline","tracker":"Live Tracker","notes":"Notes","archive":"Archive","battles":"Battle Logs","gifters":"Gifter DB","tasks":"Tasks","teamActivity":"Team Activity","teamTasks":"Team Tasks","team":"Team"},"healthBand":{"risk":"At risk","watch":"Watch","healthy":"Healthy","unseen":"Not seen yet"},"health":{"pageTitle":"Roster Health - Agency","lockTitle":"Roster Health","lockTextStarter":"Roster health, health alerts and the weekly health summary are part of {plan}. Upgrade from Agency Billing to see which hosts are slipping.","lockText":"See which hosts are slipping before they go quiet - on an agency plan.","title":"Roster health","sub":"Every host is compared with their own last four weeks, so a small creator keeping their usual week reads as healthy and a big one halving theirs does not.","updated":"Updated {time}","filterAria":"Filter by health","allHosts":"All hosts","alerts":{"title":"Health emails","sentTo":"Sent to {email}, on the timezone and send time of your creator digest.","accountEmail":"your account email","daily":"Daily alert when a host moves to At risk","weekly":"Weekly roster summary with a CSV, Mondays","saveError":"Could not save that. Try again in a moment."},"truncated":"Showing the first {shown} of {total} creators on your roster.","unavailable":"Health data is temporarily unavailable. Your roster is safe - try again in a few minutes.","empty":{"title":"No creators on your roster yet","sub":"Add creators in the Live Tracker, or sign them through the recruit pipeline, and their health shows up here.","cta":"Add creators"},"today":{"title":"Today","sub":"{count} need a look, most urgent first"},"wholeRoster":"Whole roster","searchPlaceholder":"Filter by name or {'@'}handle","cols":{"creator":"Creator","health":"Health","diamonds7d":"Diamonds 7d","diamonds30d":"Diamonds 30d","diamonds90d":"Diamonds 90d","d30":"30d","d90":"90d","live7d":"Live 7d","live30d":"Live 30d","live90d":"Live 90d","usualWeek":"Usual week"},"noMatch":"No creators match.","foot":"Diamonds and live hours are what we observed while tracking each creator; live hours count captured stream time. History builds from the day a creator joins your roster. Creators marked Not seen yet have no streams observed in the last 90 days, so they are not scored and are left out of At risk and Watch."},"tracker":{"pageTitle":"Live Tracker - Agency","glassTitle":"Live Tracker","glassSub":"Track your creators' gifts, gifters and chat - live and by day - on an agency plan.","glassCta":"See agency plans","yourCreators":"Your creators","addPlaceholder":"Add a creator - search {'@'}handle or name","track":"+ Track","notInDirectory":"Not in our directory yet.","adding":"Adding...","trackAnyway":"Track {'@'}{handle} anyway","noneFound":"No creators found.","emptyRoster":"No creators tracked yet. Search above to add one - we start tracking their gifts and chat right away.","followers":"{count} followers","watching":"watching","stopTracking":"Stop tracking {'@'}{handle}","confirmStop":"Stop tracking {'@'}{handle}?","history":"{'@'}{handle} - history","pickCreator":"Pick a creator","watch":"Watch","noActivity":"No tracked activity yet for this creator.","giftsCount":"{count} gifts","chatsCount":"{count} chats","dayHeader":"{date} · {'@'}{handle}","pickDay":"Pick a day","gifts":"Gifts","chat":"Chat","noGifts":"No gifts this day.","noChat":"No chat captured this day.","removeError":"Could not remove creator","addError":"Could not add creator"},"pipeline":{"pageTitle":"Recruit Pipeline - Agency","lockTitle":"Recruit Pipeline","lockText":"Track every creator from checked to signed, as a team - on an agency plan.","title":"Recruit pipeline","sub":"Creators you marked eligible or claimed on the boards, through contact to signed. A move here updates the claim your whole team sees, and a signed creator goes onto your roster in one tap.","searchPlaceholder":"Filter by {'@'}handle","tabsAria":"Pipeline stages","unavailable":"The pipeline is temporarily unavailable. Try again in a few minutes.","stage":{"checked":"Checked","contacted":"Contacted","signed":"Signed","not_interested":"Not interested"},"empty":{"checked":"Creators you mark eligible on the New Creators board, or claim on any board, land here.","contacted":"Move a creator here once you have reached out.","signed":"Creators who joined your agency. Add them to your roster to track their health.","not_interested":"Creators who said no. They stay here so nobody contacts them twice."},"move":{"checked":"Back to checked","contacted":"Contacted","signed":"Signed","not_interested":"Not interested"},"claimStatus":{"claimed":"Claimed","contacted":"Contacted","responded":"Responded","interested":"Interested","signed":"Signed","not_interested":"Not interested"},"markedEligible":"Marked eligible","premiumEligible":"Eligible (premium invite)","you":"you","onlyOwner":"Only {name} can move this one.","onRoster":"On your roster","addToRoster":"Add to roster","showMore":"Show {count} more","errors":{"teammateOwns":"A teammate owns that creator, so only they can move it.","moveFailed":"Could not move that creator. Try again in a moment.","rosterFull":"Your roster is full. Remove a creator before adding another.","addFailed":"Could not add to the roster. Try again in a moment."}},"tasks":{"everyone":"Everyone","member":"member","newTask":"+ New task","loading":"Loading tasks...","status":{"open":"Open","in_progress":"In Progress","done":"Done"},"priority":{"low":"Low","medium":"Medium","high":"High"},"archiveAria":"Archive task","unassigned":"Unassigned","nothingHere":"Nothing here","modal":{"title":"New task","fieldTitle":"Title","titlePlaceholder":"e.g. DM {'@'}creator about contract terms","description":"Description","descriptionPlaceholder":"Optional detail...","assignee":"Assignee","priority":"Priority","dueDate":"Due date","cancel":"Cancel","saving":"Saving...","create":"Create task","titleRequired":"Title is required","createError":"Could not create task"}},"intercom":{"team":"Team","connected":"Connected","connecting":"Connecting","searchPlaceholder":"Search members...","searchAria":"Search team members","members":"Members","noMembers":"No members match.","channels":"Channels","noChannels":"No channels yet.","directMessages":"Direct Messages","noDms":"Search a member to start a conversation.","loadEarlier":"Load earlier messages","sharedImage":"Shared image","editAria":"Edit message","saveEdit":"Save edit","cancelEdit":"Cancel edit","edit":"Edit","edited":"edited","closeImage":"Close image","reactions":{"up":"Thumbs up","heart":"Heart","check":"Done","eyes":"Seen"},"typingOne":"{name} is typing...","typingTwo":"{first} and {second} are typing...","typingMany":"Several people are typing...","you":"You","attachImage":"Attach image","placeholder":"Type a message...","messageAria":"Message","sendAria":"Send message","uploading":"Uploading image...","sheetAria":"Team chat","openChat":"Open team chat","collapseChat":"Collapse team chat","pickToStart":"Pick a channel or teammate to start.","channel":"Channel","directMessage":"Direct message"},"activity":{"member":"member","noPage":"No active page","status":{"online":"Online","idle":"Idle","offline":"Offline"},"onlineNow":"Online now","idleFor":"Idle {time}","lastSeen":"Last seen {time} ago","ago":"{time} ago","justNow":"just now","units":{"s":"{n}s","m":"{n}m","h":"{n}h","d":"{n}d"},"roles":{"owner":"Owner","manager":"Manager","scout":"Scout","member":"Member"}}},"accountTools":{"webhooks":{"seo":{"title":"Webhooks - TikTool","description":"Receive HMAC-signed live event notifications at your HTTPS endpoint. Tier-aware, retried, dedupable."},"nav":{"dashboard":"Dashboard","docs":"Docs"},"newWebhook":"New webhook","sub":"HMAC-signed HTTPS POSTs delivered to your endpoint when watched creators go live or end streams. Retried, replayable, dedupable via stable {field}.","loading":"Loading...","upgrade":{"title":"Webhooks require a paid plan","body":"Available on {basic}, {pro}, {ultra}, and {agency}. You're on {tier}.","cta":"View plans"},"stats":{"plan":"Plan","targetsUsed":"Targets used","dailyQuota":"Daily quota","allowedEvents":"Allowed events","allowedEventsValue":"{count} of {total}"},"empty":{"title":"No webhooks yet","body":"Create one to start receiving live events at your endpoint.","cta":"Create your first webhook"},"row":{"untitled":"Untitled","allCreators":"ALL creators · firehose","creatorsOne":"{count} creator","creatorsOther":"{count} creators","failStreak":"{count} fail streak","downgradeNote":"Paused - your current plan no longer includes one of its events. Upgrade to reactivate it automatically, or delete it."},"status":{"pausedPlan":"paused (plan)","disabled":"disabled","healthy":"healthy","failing":"failing","retrying":"retrying","pending":"pending"},"events":{"liveStart":"Watched creator started a live stream","liveEnd":"Watched creator ended a live stream","peakViewers":"Concurrent viewer count crossed a milestone","highValueGift":"High-value gift (≥{threshold} diamonds) received","followerMilestone":"Follower count crossed a milestone ({range})","eligible":"A recruit-worthy creator appeared or crossed a league-score milestone","watchedGift":"A gifter on your watchlist sent a gift at or above your threshold","hotSpike":"A creator took {diamonds}+ diamonds within {minutes} minutes","leagueDropout":"A creator fell off a league division board"},"everyCreator":"every creator on the platform","docs":{"verifyTitle":"How to verify a delivery","verifyBody":"Every POST includes {header} where {formula}. Reject any request older than {minutes} minutes (replay window).","payloadTitle":"Example payload ({event})","retryTitle":"Retry policy","retryBody":"Connect timeout {connect}s, read timeout {read}s. Retry schedule: {schedule} ({attempts} attempts ~{hours}h). After max attempts the event marks {deadLetter}; replay manually from any webhook's detail page for {days} days.","deadLetter":"dead-letter","scopingTitle":"Scoping & volume","scopingIntro":"The {field} list decides how much you receive:","scopingEmpty":"{lead} You get events for {every} - a high-volume firehose (hundreds of events per minute). Most single endpoints cannot keep up with this, and it is the usual cause of a webhook auto-disabling.","scopingEmptyLead":"Empty list = everything.","scopingScoped":"{lead} Up to {max} handles; you receive events for those creators only. Recommended for essentially every integration.","scopingScopedLead":"Scoped list = only yours.","rosterBody":"For a roster that changes often, manage the list from your own service: {endpoint} with {body} {replaces}. Read the webhook, compute the new set, and PATCH the full array on each sync - that is your programmatic add/remove.","rosterReplaces":"replaces the whole list","autoTitle":"Auto-disable","autoBody":"A delivery that fails all {attempts} attempts becomes a {deadLetter}. After {streak}, the webhook is disabled automatically to protect your endpoint. {reset}, so a healthy endpoint never trips it. If a webhook gets disabled, fix the endpoint and re-enable it from its detail page. If you are on the unscoped firehose, scope {field} first - no endpoint reliably survives the full firehose.","autoStreak":"{count} dead-letters in a row","autoReset":"Any successful delivery resets that counter to zero","quotaTitle":"Daily quota","quotaBody":"Each plan has a daily delivery cap (shown at the top of this page): {basic} {basicCap}, {pro} {proCap}, {ultra} {ultraCap}, {agency} {agencyCap}. It counts one per distinct event delivered; retries of the same event do not count again. The counter resets at {reset}. When you reach the cap, further events pause until reset - upgrade for a higher cap. Repeated endpoint failures also auto-disable a webhook (above)."},"create":{"title":"New webhook","close":"Close","name":"Name","optional":"(optional)","namePlaceholder":"Production - Supabase live alerts","targetUrl":"Target URL","targetHint":"HTTPS only, no private networks","eventTypes":"Event types","requires":"Requires {plan}","creators":"Creators","creatorsHint":"one handle per line; up to {max}","creatorsWarn":"Leave this empty and you receive {every} - a high-volume firehose (hundreds of events/min) that can overwhelm your endpoint and get the webhook auto-disabled. List the creators you want to scope delivery to only them.","bearer":"Bearer token","bearerHint":"(optional, sent as Authorization header)","cancel":"Cancel","creating":"Creating...","submit":"Create webhook"},"secret":{"title":"Save your webhook secret","warn":"This secret will not be shown again. Copy it now.","copied":"✓ Copied","copy":"Copy","saved":"I have saved it"},"errors":{"load":"Failed to load","create":"Create failed"}},"webhookDetail":{"back":"All webhooks","loading":"Loading...","untitled":"Untitled webhook","sending":"Sending...","sendTest":"Send test event","edit":"Edit","disable":"Disable","enable":"Enable","rotating":"Rotating...","rotate":"Rotate secret","delete":"Delete","downgrade":"{lead} Your current plan no longer includes one of this webhook's events, so delivery is paused. Upgrade to reactivate it automatically (your events + watchlist are kept), or delete it.","downgradeLead":"Paused by plan change.","cannotEnable":"Cannot enable:","test":{"succeeded":"Test succeeded:","failed":"Test failed:","result":"HTTP {status} in {ms}ms"},"editForm":{"title":"Edit webhook","name":"Name","namePlaceholder":"Production - live alerts","events":"Events","upgrade":"(upgrade)","creators":"Creators - one per line, no {'@'}. Leave empty for all watched (firehose).","creatorsOne":"{count} creator","creatorsOther":"{count} creators","cancel":"Cancel","saving":"Saving...","save":"Save changes"},"stats":{"status":"Status","secret":"Secret","events":"Events","creators":"Creators","failStreak":"Fail streak","lastDelivery":"Last delivery","allWatched":"all watched","never":"never"},"deliveries":{"title":"Recent deliveries (last {days} days)","empty":"No deliveries yet.","when":"When","event":"Event","creator":"Creator","attempt":"Attempt","status":"Status","latency":"Latency","ms":"{ms}ms","replay":"replay"},"notFound":"Webhook not found.","deleteModal":{"title":"Delete this webhook?","body":"This stops all future deliveries to {url}. Cannot be undone.","cancel":"Cancel","confirm":"Delete"},"newSecret":{"title":"New webhook secret","warn":"Old secret invalidated immediately. Update your endpoint now.","copied":"Copied","copy":"Copy","done":"Done"},"confirmRotate":"Rotate secret? Old secret stops working immediately.","errors":{"save":"Could not save changes.","status":"Could not change status.","test":"Test failed","replay":"Replay failed"}},"support":{"seoTitle":"Support - Tik.Tools","back":"Back to dashboard","title":"Support","online":"We're online - typically reply within minutes","offline":"Leave a message and we will get back to you","loading":"Loading your conversation...","emptyTitle":"How can we help?","emptyBody":"Send us a message and our team will get back to you here.","notSent":"(not sent)","placeholder":"Type your message...","send":"Send","time":{"now":"now","minutes":"{count}m","hours":"{count}h","days":"{count}d"}}},"pagesMisc":{"showcase":{"hero":{"title":"Built with","subtitle":"Featured projects and integrations built by our community using the TikTok LIVE API. Submit yours and get featured."},"visit":"Visit","empty":"No projects featured yet. Be the first to submit yours!","submit":{"heading":"Submit Your Project","sub":"Built something with TikTool? Submit it below and we'll review it for the showcase.","loginPrompt":"You need to be logged in to submit a project.","loginCta":"Register / Login","nameLabel":"Project Name","namePlaceholder":"e.g. My TikTok Assistant","descLabel":"Description","descPlaceholder":"What does your project do?","urlLabel":"Project URL","logoLabel":"Logo URL (square image)","success":"Project submitted for review. We'll feature it once approved!","submitting":"Submitting...","submit":"Submit Project","errorGeneric":"Something went wrong"},"seo":{"title":"Showcase - Projects Built with TikTok LIVE API","description":"Explore featured projects built with the TikTok LIVE API. See what developers are building - assistants, analytics, overlays, and more. Submit your own project to get featured.","ogTitle":"Showcase - Projects Built with TikTok LIVE API","ogDescription":"Explore featured community projects built with the TikTok LIVE API."}},"agencyNew":{"success":{"tag":"PENDING REVIEW","title":"Your listing is in review","sub":"We review every listing manually. Average turnaround: a few hours.","chat":"CHAT WITH US","view":"View your listing"},"intro":"This is your live listing preview. Edit anything directly - it saves as you go. Nothing is public until we approve it.","roster":{"title":"Roster","noteSignedIn":"Search below to claim the creators you represent.","noteSignedOut":"Claim your real creators after you sign in."},"details":{"title":"Details","languages":"Languages","languagesPlaceholder":"Add a language, press Enter","tags":"Tags","tagsPlaceholder":"Add a tag, press Enter","contactEmail":"Contact email","contactPhone":"Contact phone","private":"Private"},"verify":{"title":"Verification","copy":"Upload a screenshot of your agency backstage (LIVE agency dashboard) - this is how we verify ownership.","uploading":"Uploading...","done":"Proof uploaded - replace","upload":"Upload backstage screenshot","failed":"Evidence upload failed - try again."},"creators":{"title":"Your creators","copy":"Add the creators you represent. You can also do this after your listing is approved.","searchPlaceholder":"Search creators by {'@'}username or display name","searchAria":"Search creators","live":"LIVE","claimed":"Claimed","claim":"Claim","signIn":"Sign in to claim creators.","claimFailed":"Claim failed - try again."},"submit":{"note":"You will sign in with Google or work email; your draft is saved and will not be lost.","submitting":"Submitting...","submit":"Submit for review","signInSubmit":"Sign in and submit for review","failed":"Submit failed - try again."},"seo":{"title":"List your agency - TikTool","description":"Create a free TikTok LIVE agency listing on TikTool."}}},"captions":{"watch":{"badge":"LIVE TRANSCRIPT + VIDEO","title":"Watch any TikTok LIVE with real-time captions","sub":"Paste a username. See the live video + on-screen transcript translated to 20+ languages. Uses your account's captions plan.","streamStep":"{n}. Stream to watch","usernameLabel":"TikTok username","usernamePlaceholder":"{'@'}username or search","liveBadge":"LIVE","keyStep":"{n}. API key","keyLabel":"Use this key for captions","keyHint":"Only paid keys can run captions. Free / sandbox keys are hidden.","languagesStep":"{n}. Languages","sourceLabel":"Source (audio)","autoDetect":"Auto-detect","translateTo":"Translate to","noTranslation":"No translation","translationHint":"Translation costs 2 min per real minute of audio (transcript + 1 translation). No translation = 1 min/min.","minutesLeft":"Minutes left","cycleUsage":"{remaining} / {total} this cycle - resets on renewal","noPlan":"No active captions plan","upgradePlan":"Upgrade plan ->","getPlan":"Get a plan ->","stop":"Stop captions","start":"Start live captions ->","placeholderTitle":"Video + captions show here","placeholderBody":"Pick a creator + hit Start. Live video on top, transcript + translation below.","transcript":"Transcript","transcriptTranslation":"Transcript + Translation","statusIdle":"Idle","statusListening":"Listening...","statusLive":"Live","waitingAudio":"listening for audio...","overlayLink":"Build an OBS overlay instead ->","manageLink":"Manage account ->","modal":{"close":"Close","loginTitle":"Log in to start","paidTitle":"You need a paid plan","outTitle":"Out of caption minutes","loginBody":"Sign in (or sign up free) to use captions. Every new account starts with 10 demo minutes.","paidBody":"Captions need an API key on {plan} plan or higher. {plan} ({price}/wk) includes {hours}h of captions per week.","outBody":"You've used your bundle for this cycle. Grab more minutes (auto-refill keeps captions flowing).","loginCta":"Log in / Sign up ->","seePlans":"See plans ->","topUp":"Top up ->","notNow":"Not now"},"errors":{"offline":"Stream went offline. Pick another live creator.","connection":"Stream connection error. Retry.","couldNotStart":"Could not start"},"seo":{"title":"Watch any TikTok LIVE stream with real-time captions - tik.tools","description":"Paste a TikTok username, watch the live video, get real-time transcription + 20+ language translations on screen. No code, no app required."}},"topup":{"close":"Close","headline":"Captions hours","sub":"Captions plans bundle live + translated minutes per renewal. Auto-refill at <10% remaining (opt-out).","loadingPlans":"Loading plans...","weekly":"Weekly","monthly":"Monthly","save":"save 20%","mostPopular":"MOST POPULAR","perMonth":"/mo","perWeek":"/wk","planHours":"{hours} hours captions","loading":"Loading...","subscribe":"Subscribe →","perMinute":"{price} per minute","fineprint":"{price} · cancel anytime","autoRenewNote":"Auto-renews · cancel anytime from your dashboard","backToPlans":"← back to plans","checkoutEyebrow":"Captions plan","hoursPerMonth":"{hours} hours / month","hoursPerWeek":"{hours} hours / week","settingUp":"Setting up secure payment...","subtotal":"Subtotal","tax":"Tax","totalToday":"Total today","processing":"Processing...","payNow":"Pay {amount} now","autoRenewMonthly":"Auto-renews every month. Cancel anytime.","autoRenewWeekly":"Auto-renews every week. Cancel anytime.","doneTitle":"Captions plan active","doneBody":"Your hours are credited. Captions will resume on this stream immediately.","continue":"Continue","upgrade":{"eyebrow":"Upgrade captions plan","inPlace":"In-place upgrade. Single subscription, no double-charge.","creditUnused":"Credit for unused {plan} time","newLine":"New {plan} {billing}","chargedToday":"Charged to your card today","confirm":"Confirm upgrade - {amount}","cancel":"Cancel"},"errors":{"needsConfirmation":"Upgrade requires confirmation - please retry.","unexpected":"Unexpected response from upgrade endpoint.","upgradeFailed":"Upgrade failed.","samePlan":"You are already on this plan.","initFailed":"Payment could not be initialised. Please try again.","mountFailed":"Payment form failed to mount. Please refresh.","checkoutFailed":"Checkout failed","paymentFailed":"Payment failed.","notConfirmed":"Payment not confirmed. Try a different card."}}},"site":{"pricing":{"og":{"title":"Simple, transparent pricing","subtitle":"{days}-day free evaluation, then weekly or monthly plans. No credit card to evaluate.","badge":"PRICING"}},"home":{"og":{"subtitle":"Connect to any TikTok LIVE stream over WebSocket. Chat, gifts, likes and viewers in real time."}},"bestTime":{"og":{"title":"Best Time to Go LIVE on TikTok","subtitle":"Real-time engagement heatmap in your timezone.","badge":"TIMING"}},"featureCard":{"tag":"Feature","learnMore":"Learn more"},"heroTabs":{"giftFallback":"Gift"},"liveDemo":{"giftFallback":"Gift"},"bookLiveDemo":{"firstNamePlaceholder":"Jordan","agencyPlaceholder":"Acme Live","emailPlaceholder":"you{'@'}company.com"}},"siteDev":{"api":{"og":{"title":"TikTok LIVE API for Developers","subtitle":"Stream chat, gifts, likes and viewer counts from any TikTok LIVE room."}},"agencySdk":{"heroHighlight":"Agency SDK","name":"TikTok LIVE Agency SDK"},"eventSamples":{"labels":{"gift":"Virtual Gifts","chat":"Chat Messages","like":"Likes","member":"Member Joins","follow":"Follows","share":"Shares","subscribe":"Subscriptions","roomUser":"Viewer Count","emote":"Emote Chat","envelope":"Red Envelopes","linkMicBattle":"PK Battles","questionNew":"Q&A","liveShopping":"Live Shopping","roomInfo":"Stream Lifecycle","battle":"Battle State","battleArmies":"Battle Contributors","linkMicOpponentGift":"Opponent Gifts","linkMic":"Co-host Link","poll":"Polls","rankUpdate":"Live Rankings","rankNotice":"Rank Banner","streamStatus":"Stream Status","control":"Control Signals","caption":"Native Captions","giftPanelUpdate":"Gift Panel","goalUpdate":"Goals","superFan":"Super Fans","superFanJoin":"Super Fan Joins","roomPin":"Pinned Messages","barrage":"Barrage","fansEvent":"Fan Club","hostBoard":"Host Board","toast":"Toasts","questionSelected":"Question Picked","giftCollectionUpdate":"Gift Collections","linkMicLayout":"Co-host Layout"},"descs":{"gift":"Gift name, diamond value, repeat count, streaks, sender and relationship.","chat":"Every chat message with user data, badges, language and reply target.","like":"Like batches with sender info and the running room total.","member":"Who enters the room, with the entry source and current viewer count.","follow":"New follower events during the stream.","share":"When viewers share the livestream out.","subscribe":"Paid subscription joins and renewal notifications.","roomUser":"Live viewer count updates and the top-viewer snapshot.","emote":"Sticker / emoji-only comments, separated from text chat.","envelope":"Virtual red-envelope drops and portal bursts.","linkMicBattle":"Battle start, live score updates and the result.","questionNew":"Viewer questions submitted to the host Q&A panel.","liveShopping":"Live commerce events: featured product, billboard and short-item refresh.","roomInfo":"Connection ready, room metadata and stream status control messages.","battle":"Full PK battle state with team scores, host ids and layout.","battleArmies":"Per-host battle score with top contributors and the gift that moved it.","linkMicOpponentGift":"Gifts sent on the opposing PK host stream, itemized from one connection.","linkMic":"Co-host join and leave events for a multi-guest LIVE.","poll":"In-stream poll lifecycle - open, vote and close.","rankUpdate":"Ranked gifter and viewer leaderboards for the room.","rankNotice":"Leaderboard and league banner notices shown to viewers.","streamStatus":"Stream status flips - recording state and content rechecks.","control":"Stream control signals - start, pause and end status codes.","caption":"TikTok native auto-captions rendered on the LIVE, one window per frame.","giftPanelUpdate":"Gift panel refresh when the room gift catalog rotates.","goalUpdate":"Subscriber and gift goal progress toward a room target.","superFan":"Super-fan level status for a viewer in the room.","superFanJoin":"A viewer joining the super-fan club.","roomPin":"A chat message pinned by the host, with duration and operator.","barrage":"Highlighted barrage messages that scroll across the stream.","fansEvent":"Fan-club events such as tier-ups and community refreshes.","hostBoard":"Host-side ranking board snapshot for the room.","toast":"Transient on-screen system notifications pushed by the room.","questionSelected":"The question the host selected from the Q&A panel.","giftCollectionUpdate":"Gift-collection progress and completion status.","linkMicLayout":"Co-host seat layout with the room and user in each slot."},"fields":{"gift":{"giftName":"Display name of the gift sent.","diamondCount":"Diamond value of a single gift unit.","repeatCount":"How many were sent in the combo.","repeatEnd":"true when a streak has finished - sum on this frame.","user":"Sender profile: uniqueId, nickname, follow + subscriber status.","receiverUserId":"The creator the gift was sent to. In a multi-guest LIVE this is the specific guest/host, not always the room owner."},"chat":{"comment":"The message text.","language":"Auto-detected language code of the comment.","emotes":"Inline subscriber emotes referenced in the message.","user":"Author profile incl. moderator and follow role."},"like":{"likeCount":"Likes in this batch from the sender.","totalLikeCount":"Cumulative like total for the room.","user":"Who sent the like batch."},"member":{"enterSource":"Where the viewer came from (homepage_hot, follow tab, recommend).","viewerCount":"Live viewer count at the moment of join.","user":"The viewer who joined."},"follow":{"user":"The viewer who just followed.","actionType":"Social action code - 3 marks a follow."},"share":{"user":"The viewer who shared the stream.","actionType":"Social action code - 13 marks a share."},"subscribe":{"subMonth":"Consecutive months subscribed.","subscribeType":"New subscribe vs renewal.","user":"The subscribing viewer."},"roomUser":{"viewerCount":"Current concurrent viewers in the room.","topViewers":"Ranked top viewers with their coin contribution."},"emote":{"emotes":"Emote id + image URL for each sticker sent.","user":"Who sent the emote."},"envelope":{"coins":"Total coins in the envelope pool.","count":"How many viewers can claim a share.","user":"Who dropped the envelope."},"linkMicBattle":{"battleStatus":"start, progress or end of the PK match.","hosts":"Each side with its live point total.","battleDurationMs":"Length of the battle window."},"questionNew":{"questionText":"The viewer-submitted question.","user":"Who asked it."},"liveShopping":{"action":"Commerce action - featured, billboard, refresh.","productId":"Catalog id of the product in focus.","price":"Amount in minor units + currency."},"roomInfo":{"status":"Room status - 2 is live, 4 is ended.","roomId":"Unique room identifier for the session.","owner":"The host profile for the room."},"battle":{"status":"Battle phase code - start, in progress or ended.","teams":"Each side with its host id, host profile and live score.","battleDuration":"Battle length in seconds."},"battleArmies":{"hosts":"Each host with team total and ranked contributor breakdown.","lastGift":"The gift that triggered this score update, embedded inline.","secsRemaining":"Seconds left in the battle window."},"linkMicOpponentGift":{"senderUserId":"Viewer id who sent the gift on the opponent side.","opponentRoomId":"Room id of the opposing PK host.","diamondCount":"Per-unit diamond value of the gift.","repeatCount":"Running combo counter within the transaction."},"linkMic":{"action":"join or leave for the co-host seat.","users":"The co-host creators involved in the change."},"poll":{"pollId":"Identifier of the poll instance.","status":"Poll state - open, voting or closed.","optionsPayload":"Raw JSON of the poll options."},"rankUpdate":{"rankType":"Which leaderboard this update is for.","rankList":"Ranked entries with user, position and score."},"rankNotice":{"rankType":"Notice type code.","position":"Rank position carried on the banner.","noticeKey":"Banner key naming which notice this is."},"streamStatus":{"rawPayload":"Raw status payload as shipped by the room."},"control":{"action":"Control code - 3 typically marks the stream ended."},"caption":{"text":"Caption text for this window.","language":"Detected spoken language code.","isFinal":"false for interim, true for a settled window."},"giftPanelUpdate":{"panelId":"Identifier of the gift panel that changed.","updatedAtSec":"Unix second the panel was refreshed."},"goalUpdate":{"goalKey":"Which goal this progress belongs to.","contributionLevel":"Progress level toward the goal.","metadataJson":"Raw JSON with target and current totals."},"superFan":{"level":"Super-fan level of the viewer.","displayType":"Which super-fan status is being shown.","user":"The super-fan viewer."},"superFanJoin":{"user":"The viewer who joined the super-fan club.","displayType":"Which join status is being shown."},"roomPin":{"comment":"The pinned message text.","durationSeconds":"How long the pin stays up.","user":"Author of the pinned message."},"barrage":{"content":"The barrage message text.","displayType":"Which barrage style is used.","user":"Who sent the barrage."},"fansEvent":{"fanType":"Fan-club event category code.","eventKey":"Which fan-club event fired."},"hostBoard":{"rawPayload":"Raw host board payload as shipped by the room."},"toast":{"toastText":"The notification text shown to viewers.","scene":"Which toast this is (e.g. live_record)."},"questionSelected":{"questionText":"The question the host chose to answer."},"giftCollectionUpdate":{"collectionId":"Identifier of the gift collection.","status":"Collection state - in progress or complete."},"linkMicLayout":{"slots":"Each seat with its slot index, room id and user id."}}}},"widgets":{"tinderDeck":{"demoEmptyTitle":"Demo deck is empty here.","demoEmptyBody":"Subscribe to Tik.Tools Agency to scout every region, every league, every day.","seePlans":"See Agency Plans →","waitingTitle":"Waiting for more creators to come online...","waitingBody":"Deck shows only currently-live creators in this region + league. New cards appear as soon as more start streaming.","upgrade":{"eyebrow":"UPGRADE","title":"Unlock every league","blurb":"You have seen the demo cards in this league. Subscribe to the Agency plan to scout every region, every class, with persisted decisions across your team.","hint":"Swipe / arrow → to view next league"},"live":"LIVE","unmute":"Unmute","mute":"Mute","unmuteAll":"Unmute all cards","muteAll":"Mute all cards","stamp":{"watch":"WATCH","skip":"SKIP","maybe":"MAYBE"},"profile":"Profile →","skipAria":"Skip","watchAria":"Watch","hint":"← skip · → watchlist · or drag"},"cardLive":{"userFallback":"user","giftFallback":"gift","sentGift":"sent {gift}","sentGiftCount":"sent {gift} ×{count}","followed":"followed","joined":"joined","liked":"liked"}},"dataPages":{"gifterTags":{"earlyStriker":"Early Striker","lateCloser":"Late Closer","rhythmGifter":"Rhythm Gifter","heavyHitter":"Heavy Hitter","loyalFan":"Loyal Fan","creatorHopper":"Creator Hopper","burstGifter":"Burst Gifter","whaleGifter":"Whale Gifter","microGifter":"Micro Gifter"},"regions":{"northAmerica":"North America","latinAmerica":"Latin America","colombiaPeruDominicanRepublic":"Colombia, Peru & Dominican Republic","australiaPacific":"Australia & Pacific","bangladeshBhutanMaldives":"Bangladesh, Bhutan & Maldives","centralAsia":"Central Asia","germanyDach":"Germany & DACH","iberia":"Iberia","centralEurope":"Central Europe","lusophone":"Lusophone","irelandBalticsMalta":"Ireland, Baltics & Malta","nordics":"Nordics","balkans":"Balkans","nigeriaGhanaKenyaSouthAfrica":"Nigeria, Ghana, Kenya & South Africa"},"agencyDummy":{"name":"Your Agency Name","tagline":"A short line about what your agency does","description":"We are a TikTok LIVE agency helping creators grow their audience, go live with confidence, and earn more from gifting.\nWe handle scheduling, coaching and payouts so our creators can focus on performing.\nReplace this with your own story - who you work with, the results you deliver, and why creators should join you."}},"regions2":{"dummyRoster":{"yourcreator1":"Your Creator","yourcreator2":"Rising Star","yourcreator3":"Weekend Host","yourcreator4":"Top Gifter Streamer"}},"readingHours":{"checkout":{"successTitle":"Payment received","pendingTitle":"Payment processing","successHours":"{hours} added to your balance.","successPending":"Your hours are added as soon as the payment is confirmed.","backToApp":"Back to the app","tryAgain":"Try again","failedTitle":"Payment did not go through","payCardPaypal":"Pay with card or PayPal","errors":{"generic":"The payment did not go through. You have not been charged.","cardDeclined":"Your card was declined.","insufficientFunds":"Your card has insufficient funds.","expiredCard":"Your card has expired.","incorrectCvc":"The security code is incorrect.","incorrectNumber":"The card number is incorrect.","invalidExpiry":"The expiry date is invalid.","processingError":"Your card could not be processed. Please try again.","authenticationRequired":"Your bank needs you to confirm this payment. Please try again.","authenticationFailed":"Your bank could not confirm this payment. You have not been charged.","tooManyAttempts":"Too many attempts with this card. Try another card or try again later.","cardNotSupported":"This card does not support this payment. Try another card.","checkoutStart":"Checkout could not start. Nothing was charged.","notCompleted":"The payment was not completed. You have not been charged.","unconfirmed":"We could not confirm the payment yet. If you were charged, your hours are added within a few minutes.","paypalStart":"PayPal checkout could not start. Nothing was charged.","paypalFailed":"The PayPal payment did not go through. You have not been charged.","paypalLoad":"PayPal could not load. Try a card or reload the page."}}},"rankCopy":{"title":"Copy every username on this board","lockedTitle":"Bulk copy is an Agency feature","copied":"Copied: {count}","copiedAria":"Usernames copied to the clipboard: {count}","empty":"Nothing to copy","failed":"Copy failed","rateLimited":"Too many copies, try again in a minute"},"ttsLanding":{"seo":{"title":"TikTools - Alerts & TTS: hear your TikTok LIVE chat on iPhone","description":"The iPhone app that reads your TikTok LIVE chat aloud and plays alerts for gifts, follows, shares and subscribers, so you can stream without staring at the screen."},"og":{"title":"Hear your LIVE chat","subtitle":"TikTok LIVE chat read aloud on iPhone, with gift and follow alerts.","badge":"iPhone app"},"hero":{"eyebrow":"TikTools - Alerts & TTS for iPhone","title":"Hear your LIVE chat","lead":"TikTools reads your TikTok LIVE chat aloud on iPhone, so you can stream without staring at the screen. Keep your eyes on the camera and still catch every comment.","free":"Free reading every day: {welcomeHours} hours a day for your first {days} days, then {steadyMinutes} minutes a day."},"store":{"download":"Download on the App Store","soon":"Coming soon on the App Store"},"features":{"label":"What it does","title":"Everything your LIVE says, out loud","items":{"chat":{"title":"Chat read aloud","body":"Every new comment is spoken the moment it arrives, so you can answer viewers without looking down at your phone."},"alerts":{"title":"Gift, follow, share and subscribe alerts","body":"A sound and a banner for every gift, new follower, share and subscriber. Bigger gifts get a bigger moment."},"voices":{"title":"A voice for every language","body":"Each message is read in its own language with the voices on your iPhone. Use any iOS voice, and give each kind of event a voice of its own."},"filters":{"title":"Filters you set","body":"Block words, mute viewers, cap message length, limit comments per minute and skip anything that starts with your command prefix."},"golive":{"title":"Go-live alerts","body":"Get a notification when your LIVE starts, or when a creator you watch goes live. One tap and the chat starts talking."},"rankings":{"title":"Rankings","body":"See which creators are leading on TikTok LIVE right now, region by region, right inside the app."},"watchlist":{"title":"Watchlist of creators","body":"Keep the creators you care about in one list, see when they were last live and choose who notifies you."}}},"gallery":{"label":"Screenshots","title":"A closer look","alt":{"s01":"Reading screen of the app speaking a LIVE chat aloud","s02":"Start screen showing today's free reading time","s03":"Gift alert banner over the LIVE chat","s04":"Voice settings with a different voice for each language","s05":"Filter settings for words, viewers, links and commands","s06":"Go-live notification on the iPhone lock screen","s07":"Alert settings and the watchlist of creators"}},"pricing":{"label":"Pricing","title":"Free reading time, every day","free":"Every account gets {welcomeHours} hours of reading a day for the first {days} days, then {steadyMinutes} minutes a day. The allowance resets daily, and only time spent reading a LIVE counts.","packs":"Streaming longer? Optional reading time packs are available as in-app purchases."},"cta":{"title":"Your chat, in your ears","body":"Enter the LIVE username you stream from, tap start, and every comment is read aloud as it arrives."},"legal":{"linksLabel":"App help and legal","help":"Help","privacy":"Privacy Policy","terms":"Terms of Use","disclaimer":"TikTools is an independent app and is not affiliated with or endorsed by TikTok."},"schema":{"offer":"Free daily reading time. Optional reading time packs are sold as in-app purchases."}}},"fr":{"common":{"languageSwitcher":"Langue","languagePicker":{"open":"Changer de langue","close":"Fermer"},"heroSection":{"defaults":{"title":"TikTok Live","titleHighlight":"API","subtitle":"Crée tes propres overlays TikTok Live pour OBS et TikTok LIVE Studio : cadeaux, chat, battles. Tout ce qu'il te faut pour développer sur TikTok Live."},"install":{"copy":"Copier","copied":"Copié !"},"recruit":{"new":"NOUVEAU","label":"Recruter","sub":"Trouve de nouveaux créateurs"},"cta":{"dashboard":"Tableau de bord","getApiKey":"Obtenir une clé API","manageApi":"Gérer ton API","getKeySub":"Obtiens une clé API","docs":"Docs","forDevelopers":"pour les développeurs"},"mobileNav":{"tagsAria":"Langages pris en charge","guides":"Guides","leaderboards":"Classements","gamingRanks":"Classements gaming","gifterIntel":"Infos donateurs","agency":"Agence","pricing":"Tarifs","discordBot":"Bot Discord"},"stats":{"latency":"Latence","free":"Gratuit","sandboxTier":"Offre Sandbox"},"channels":{"aria":"Chaînes en live","openProfile":"Ouvrir le profil de {name}"}},"earningsHeatmap":{"days":{"mon":"Lun","tue":"Mar","wed":"Mer","thu":"Jeu","fri":"Ven","sat":"Sam","sun":"Dim"},"hourAm":"{h} AM","hourPm":"{h} PM","legendLow":"Calme plat","legendHigh":"Pic","peakValue":"{value} diamants sur le créneau le plus actif","cellEmpty":"{day} {hour} - aucune activité","cellValue":"{day} {hour} - {value} diamants ({pct} % du pic)"},"revealGate":{"label":"Connecte-toi pour voir les chiffres","sub":"Compte gratuit - débloque instantanément tous les chiffres de la page.","google":"Continuer avec Google","note":"5 secondes chrono. Sans carte bancaire."},"regionPicker":{"global":"Monde"},"rankBoardTabs":{"ariaLabel":"Tableaux de classement","daily":"Du jour","popular":"Populaires","gaming":"Gaming","teams":"Équipes","shopping":"Shopping"},"globalUpgradeNote":{"withFeature":"{feature} fait partie de {plan}. Ton offre {starterPlan} ne l'inclut pas.","generic":"Cette fonctionnalité fait partie de {plan}. Ton offre {starterPlan} ne l'inclut pas.","cta":"Passer à {plan}"},"massCopyButton":{"label":"Copier","lockedTitle":"Réservé à l'offre Agency - passe à la version supérieure pour copier tous les pseudos","title":"Jusqu'à {max} pseudos, un par ligne. À coller dans la vérification d'éligibilité de TikTok Backstage.","copied":"Copié !","agencyTag":"AGENCY"},"searchBar":{"placeholder":"Rechercher des créateurs et des donateurs...","clear":"Effacer la recherche","tagLive":"LIVE","tagCreator":"Créateur","tagGifter":"Donateur","noResults":"Aucun résultat pour \"{query}\"","addToWatchList":"Ajouter {handle} à ta liste de suivi","fetching":"Récupération du profil TikTok...","close":"Fermer","confirmPrompt":"C'est bien ce profil que tu veux ajouter à ta liste de suivi ?","no":"Non","adding":"Ajout...","yesAdd":"Oui, ajouter","errors":{"invalidHandle":"Pseudo TikTok invalide","notFound":"Impossible de trouver ce profil TikTok.","addFailed":"L'ajout a échoué. Réessaie."}},"giftGalleryApiCta":{"eyebrow":"API galerie de cadeaux","heading":"Intègre la galerie de cadeaux via l'API","headingGift":"Intègre {name} et toute la galerie de cadeaux via l'API","sub":"Une seule requête renvoie tout le catalogue des cadeaux TikTok LIVE - chaque nom, coût en diamants et URL d'icône. Branche-le directement dans ton app.","badgeTitle":"Le catalogue live complet nécessite l'offre Pro ou supérieure","badge":"PRO+","tabsLabel":"Exemples de code pour la galerie de cadeaux","copied":"Copié","copy":"Copier","copyCode":"Copier le code","docsCta":"Voir la doc de l'API","hint":"Le catalogue live complet nécessite Pro+ - {link}","hintLink":"voir les offres"},"eventExplorer":{"listLabel":"Types d'événements WebSocket","copyPayload":"Copier le payload","copy":"Copier","copied":"Copié"},"copyCodeButton":{"label":"Copier le code","htmlLabel":"HTML / Vanilla JS","llmLabel":"Prompt LLM","nodeSub":"Un seul fichier. Node 22+ uniquement.","pythonSub":"Stdlib + websockets.","htmlSub":"S'ouvre dans n'importe quel navigateur. Sans build.","llmSub":"À coller dans ChatGPT / Claude.","toastMain":"Code copié dans le presse-papiers","toastSub":"Colle et lance"}},"popularLive":{"seo":{"title":"LIVE populaires - tik.tools","description":"Le classement des LIVE populaires de TikTok par région, en temps réel - les créateurs mis en avant dans la recherche en ce moment. Données réservées à l'offre Agency."},"hero":{"title":"LIVE {accent}","titleAccent":"populaires","sub":"Les meilleurs créateurs TikTok par région, en temps réel - ceux qui sont mis en avant dans la recherche en ce moment. Actualisé en continu."},"loading":"Chargement des LIVE populaires...","empty":"Pas encore de classement des LIVE populaires pour cette région - en cours de création. Reviens dans une minute.","count":"{count} créateurs","copyAll":"Tout copier","liveBadge":"LIVE","diamonds":"diamants","upgrade":{"feature":"Le classement complet des LIVE populaires","badge":"EXCLUSIVITÉ OFFRE AGENCY","text":"Le classement complet des LIVE populaires - toutes les régions, créateurs en live compris - est réservé à l'offre Agency.","cta":"Débloquer"},"updated":"Mis à jour {when}.","relative":{"minutes":"il y a {n} min","hours":"il y a {n} h"}},"api":{"seo":{"title":"API TikTok LIVE - Guide du développeur","description":"Il n'existe pas d'API TikTok LIVE officielle. Connecte-toi à n'importe quel live via WebSocket avec TikTool - maintien de la connexion et authentification gérés pour toi. SDK Node.js et Python. Sandbox gratuite.","ogTitle":"API TikTok LIVE - Le guide complet du développeur","ogDescription":"Connecte-toi aux lives TikTok en 3 lignes de code. API managée, serveur de signature inclus. Chat, cadeaux et spectateurs en temps réel.","twitterTitle":"API TikTok LIVE - Le guide complet du développeur","twitterDescription":"Connecte-toi aux lives TikTok en 3 lignes de code. API managée, serveur de signature inclus.","keywords":"api tiktok live, api tiktok, données tiktok live, tiktok websocket, api chat tiktok live, api cadeaux tiktok, api stream tiktok, assistant tiktok live, alternative tiktok live connector, api tiktok live gratuite, api tiktok live nodejs, api tiktok live python, api overlay tiktok live, statistiques tiktok live, alternative eulerstream, alternative tikfinity, api tiktok live vs eulerstream, api battle tiktok, sdk tiktok live, api chat tiktok, données live tiktok"},"hero":{"badge":"Guide complet","title":"TikTok LIVE","titleHighlight":"API","subtitle":"Il n'existe pas d'API TikTok LIVE officielle. TikTool est une alternative managée - connecte-toi à n'importe quel live et reçois le chat, les cadeaux et les spectateurs en temps réel via WebSocket. Maintien de la connexion et authentification gérés pour toi. Pas besoin de rétro-ingénierie."},"toc":{"heading":"Sommaire","whatIs":"C'est quoi, l'API TikTok LIVE ?","howItWorks":"Comment fonctionne l'API TikTok LIVE ?","quickstartNode":"Démarrage rapide - Node.js","quickstartPython":"Démarrage rapide - Python","quickstartWs":"Démarrage rapide - WebSocket brut","events":"Quelles données peut-on récupérer des lives TikTok ?","useCases":"Que peut-on créer avec l'API TikTok LIVE ?","comparison":"TikTool face aux alternatives","pricing":"Combien coûte l'API TikTok LIVE ?","faq":"Questions fréquentes"},"whatIs":{"heading":"C'est quoi, l'API TikTok LIVE ?","p1":"TikTok ne propose pas d'API publique pour les données de live comme le chat, les cadeaux ou le nombre de spectateurs. L'API TikTok Business ne couvre que la pub et les statistiques de la boutique. Pour accéder aux données LIVE en temps réel, les développeurs passent par des API tierces.","p2":"Les bibliothèques open source {connector} (Node.js) et {tiktokLive} (Python) sont sous licence MIT et gratuites. Elles délèguent la signature TikTok à un backend ; l'une des options historiques par défaut est un service de signature payant créé par l'équipe qui maintient ces bibliothèques.","p3":"TikTool est une {independent} avec sa propre infrastructure de signature. C'est une API entièrement managée : le maintien de la connexion et l'authentification sont gérés de notre côté. Une seule connexion WebSocket fournit {count} types d'événements - chat, cadeaux, likes, follows, spectateurs, battles et plus encore. SDK officiels pour {node} et {python}. Offre Sandbox, sans carte bancaire.","independent":"alternative indépendante","ctaKey":"Clé API gratuite","ctaDocs":"Doc WebSocket"},"howItWorks":{"heading":"Comment fonctionne l'API TikTok LIVE ?","intro":"TikTool se place entre ton application et l'infrastructure de live de TikTok. Voici l'architecture :","step1":{"title":"Ton app se connecte","body":"Ton app ouvre un WebSocket vers {url} avec un pseudo TikTok et ta clé API."},"step2":{"title":"TikTool fait le lien","body":"TikTool trouve l'ID de la room, gère l'authentification, résout les vérifications et rejoint le live."},"step3":{"title":"Les événements arrivent","body":"Les événements en temps réel (chat, cadeaux, spectateurs, etc.) arrivent dans ton app en JSON propre - parsé, structuré et typé."},"outro":"Tu ne touches jamais directement au protocole de TikTok. Quand TikTok modifie ses systèmes internes (ce qui arrive souvent), TikTool s'adapte - ton code continue de fonctionner sans changement."},"quickNode":{"heading":"Démarrage rapide - Node.js / TypeScript","install":"Installe le SDK officiel depuis npm :","connect":"Connecte-toi à un live et reçois les événements :","typed":"Support TypeScript complet - chaque type d'événement, champ et paramètre est entièrement typé, avec l'autocomplétion dans ton IDE. {link}","guideLink":"Lire le guide Node.js complet"},"quickPython":{"heading":"Démarrage rapide - Python","install":"Installe depuis PyPI :","connect":"Connecte-toi avec le SDK et enregistre tes handlers avec des décorateurs :","asyncio":"Tu préfères asyncio ? {connect} fait tourner le même client dans ta propre boucle d'événements. La clé peut aussi venir de la variable d'environnement {envVar}.","guideLink":"Lire le guide Python complet"},"quickWs":{"heading":"Démarrage rapide - WebSocket brut (tous langages)","intro":"Tout langage qui gère WebSocket fonctionne - Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift. Il suffit de se connecter à :","format":"Chaque message est un objet JSON avec les champs {event} et {data}. Des données propres et structurées - aucun parsing binaire nécessaire. {link}","refLink":"Référence complète de l'API WebSocket"},"events":{"heading":"Tous les types d'événements","intro":"L'API TikTok LIVE diffuse 18+ événements en temps réel depuis n'importe quel live :","refLink":"Voir la référence complète des événements avec des exemples de payload","list":{"chat":"Message de chat d'un spectateur. Inclut les infos utilisateur, le texte du commentaire, les emotes et les badges.","gift":"Cadeau virtuel envoyé par un spectateur. Inclut le nom du cadeau, sa valeur en diamants, le nombre de répétitions et l'état du combo.","like":"Un spectateur a liké le live. Inclut le nombre par événement et le total de likes.","member":"Un spectateur a rejoint la room. Se déclenche quand quelqu'un entre dans le live.","follow":"Un spectateur a commencé à suivre le streamer pendant le live.","share":"Un spectateur a partagé le live avec ses amis.","subscribe":"Un spectateur s'est abonné au streamer.","roomUserSeq":"Mise à jour du nombre de spectateurs. Nombre actuel et liste des meilleurs spectateurs.","battle":"Événement battle/LinkMic. État du match, équipes, scores et participants.","battleArmies":"Mise à jour des armées de battle avec les scores des équipes et le classement des participants.","roomPin":"Un message du chat a été épinglé ou mis en avant par le streamer.","caption":"Sous-titres automatiques natifs de TikTok pour le live, une fenêtre de sous-titre par frame.","envelope":"Événement coffre au trésor ou enveloppe dans le live.","emote":"Emote personnalisée envoyée dans le chat par un spectateur.","liveIntro":"Mise à jour de l'intro du live - changements de titre et de description.","streamEnd":"Le live est terminé. Inclut le code de raison.","connected":"Connexion au live TikTok réussie.","error":"Une erreur de connexion s'est produite. Inclut les détails de l'erreur."}},"useCases":{"heading":"Que peux-tu créer ?","moreLink":"Voir plus de cas d'usage","chatAssistants":{"title":"Assistants de chat","desc":"Crée des assistants de chat automatiques qui répondent en temps réel aux messages, commandes et cadeaux des spectateurs."},"analytics":{"title":"Statistiques","desc":"Suis le nombre de spectateurs, le taux d'engagement, les revenus des cadeaux et l'activité du chat sur tous tes lives."},"games":{"title":"Jeux interactifs","desc":"Laisse les spectateurs contrôler le jeu avec des cadeaux, des commandes dans le chat et des likes."},"overlays":{"title":"Overlays de live","desc":"Crée des overlays OBS/Streamlabs qui affichent le chat, les alertes de cadeaux et les stats des spectateurs."},"scouting":{"title":"Repérage de créateurs","desc":"Suis les classements des créateurs, les top donateurs et les classements de ligue pour trouver et faire grandir des talents."},"mobile":{"title":"Apps mobiles","desc":"Crée des apps mobiles qui suivent les lives TikTok et interagissent avec eux."}},"compare":{"heading":"TikTool vs Euler Stream vs tiktok-live-connector","intro":"Les bibliothèques open source {connector} (Node.js) et {tiktokLive} (Python) sont maintenues par l'équipe qui gère Euler Stream. Ensemble, elles forment un écosystème bien suivi avec des clients sous licence MIT et un backend de signature managé. TikTool est une alternative managée indépendante, avec sa propre infrastructure de signature et d'autres priorités fonctionnelles.","feature":"Fonctionnalité","rows":{"managed":"Service managé","nodeSdk":"SDK Node.js","pythonSdk":"SDK Python","agencyIntel":"Données agences (classements, ligues)","gifterIntel":"Données donateurs (LTV, profils types)","liveLeaderboards":"Classements en direct","battleHistory":"Historique des battles + chronologie","leagueRankings":"Classements de ligue","alerts":"Alertes en temps réel","sniperGap":"Sniper Gap (suivi des battles en direct)","agencyCrm":"CRM agence + listes de suivi","profilePages":"Pages de profil publiques (créateur + donateur)","freeTier":"Offre gratuite","websocketApi":"API WebSocket","captcha":"Gestion des CAPTCHA"},"cells":{"selfHosted":"Client auto-hébergé","managed":"Managé","official":"Officiel","viaTikTokLive":"via TikTokLive","realTime":"Temps réel","perMatch":"Par match","indexed":"Indexé","reqPerDay":"{n} req/jour","mitLicensed":"Licence MIT","anyLanguage":"Tous langages","pythonOnly":"Python uniquement","nodeOnly":"Node.js uniquement","builtIn":"Intégré","viaSigning":"Via un backend de signature"}},"pricing":{"heading":"Tarifs et offre gratuite","intro":"Commence à développer avec l'API TikTok LIVE gratuitement. Sans carte bancaire.","tier":"Offre","price":"Prix","concurrent":"{n} simultanées","concurrentDaily":"{n} simultanées ({daily}/24 h)","plusFirehose":"{n} + Firehose","perDay":"{n}/jour","perWeek":"{price}/semaine","sandboxTier":"Offre Sandbox","viewPlans":"Voir les offres","startFree":"Commencer gratuitement"},"faq":{"heading":"Questions fréquentes","items":{"publicApi":{"q":"Existe-t-il une API publique pour les données de live ?","a":"Il n'existe pas d'API publique officielle dédiée aux événements de live. TikTool est un service d'API managé, indépendant et tiers, qui donne aux développeurs un accès en temps réel au chat, aux cadeaux, aux spectateurs, aux battles et plus encore. TikTool n'est affilié à aucune plateforme de streaming ni approuvé par l'une d'elles."},"free":{"q":"L'API TikTok LIVE est-elle gratuite ?","a":"Pour l'évaluation, oui. TikTool propose une évaluation Sandbox gratuite de 7 jours avec 3 connexions WebSocket simultanées et 5 000 requêtes API REST par jour. Sans carte bancaire. Les offres payantes démarrent à {price}/semaine (Basic) pour 10 000 requêtes/jour et 20 connexions simultanées."},"languages":{"q":"Quels langages de programmation l'API TikTok LIVE prend-elle en charge ?","a":"TikTool fonctionne avec tous les langages. Des SDK officiels existent pour Node.js (npm : {'@'}tiktool/live) et Python (pip : tiktok-live-api). L'API WebSocket brute sur wss://api.tik.tools fonctionne avec Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift et tout langage qui gère WebSocket."},"difference":{"q":"En quoi TikTool diffère-t-il des bibliothèques open source pour les lives ?","a":"Avec les bibliothèques open source, c'est à toi de maintenir l'infrastructure de connexion, et elles cassent à chaque mise à jour de la plateforme. TikTool est un service d'API managé - on gère toute la maintenance, la résolution des vérifications et l'authentification des rooms côté serveur. Ton intégration reste stable et prête pour la production."},"data":{"q":"Quelles données peut-on récupérer des lives TikTok ?","a":"Plus de 90 types d'événements : messages du chat, cadeaux virtuels (avec leur valeur en diamants), likes, follows, partages, nombre de spectateurs, scores des battles, messages épinglés, état du live et plus encore."},"latency":{"q":"Quelle est la latence ?","a":"Moins de 50 millisecondes. TikTool livre les événements moins de 50 ms après qu'ils se produisent sur TikTok. La connexion WebSocket managée est optimisée pour une livraison des données en temps réel à faible latence."},"chatAssistant":{"q":"Est-ce que je peux créer un assistant de chat TikTok LIVE ?","a":"Oui. Les événements de chat en temps réel de TikTool incluent toutes les infos utilisateur, le texte du message, les emotes et les badges. Beaucoup de développeurs créent avec TikTool des assistants de chat interactifs, des outils de modération, des systèmes de commandes et des réponses automatiques aux cadeaux."},"streams":{"q":"Combien de lives puis-je suivre en même temps ?","a":"Sandbox : 3 connexions. Pro ({proPrice}/sem.) : 50. Ultra ({ultraPrice}/sem.) : 250. Agency ({agencyPrice}/sem.) : 500 + Live Gifter Firehose WS. Des volumes plus importants sont disponibles sur demande."},"euler":{"q":"TikTool face à Euler Stream : quelles différences ?","a":"TikTool et Euler Stream sont des services TikTok LIVE managés et indépendants, avec des priorités fonctionnelles différentes. Euler Stream est le backend de signature utilisé par les bibliothèques open source tiktok-live-connector (Node.js) et TikTokLive (Python), maintenues par la même équipe. TikTool fait tourner sa propre infrastructure de signature indépendante et ajoute des fonctionnalités qu'Euler ne propose pas actuellement, comme une couche de données pour les agences. Les deux proposent des offres gratuites et payantes ; compare les tarifs et quotas actuels directement sur chaque site."},"tikfinity":{"q":"TikTool est-il meilleur que TikFinity pour les développeurs ?","a":"TikFinity est un outil de streaming pour les overlays et les alertes - idéal pour les créateurs TikTok non techniques. TikTool est une API pour développeurs, avec des endpoints WebSocket, des SDK et des API REST pour créer des applications sur mesure. Si tu dois créer un assistant de chat, un tableau de bord de statistiques ou une intégration de jeu sur mesure, TikTool est le bon choix. Si tu veux juste des overlays tout faits sans coder, TikFinity peut te convenir."},"analytics":{"q":"Peut-on utiliser l'API TikTok LIVE pour les statistiques de live ?","a":"Oui. TikTool fournit en temps réel le nombre de spectateurs, le taux d'engagement, le suivi des revenus des cadeaux, l'activité du chat et les scores des battles. Beaucoup de développeurs utilisent notre API pour créer des tableaux de bord sur mesure pour les streamers, les agences et les talent managers."},"obs":{"q":"L'API TikTok LIVE fonctionne-t-elle avec OBS et Streamlabs ?","a":"Oui. Tu peux utiliser l'API WebSocket de TikTool pour créer des overlays en source navigateur sur mesure pour OBS, Streamlabs et TikTok Live Studio. Affiche le chat, les alertes de cadeaux, le nombre de spectateurs et les scores des battles en temps réel directement sur ton live."}}},"next":{"getStarted":"Commencer","getStartedSub":"Clé API gratuite en 30 secondes","wsRef":"Référence WebSocket","wsRefSub":"Doc complète des événements"},"schema":{"article":{"headline":"API TikTok LIVE - Le guide complet du développeur (2026)","description":"Guide complet de l'API TikTok LIVE. Accès WebSocket en temps réel aux messages du chat, aux cadeaux, au nombre de spectateurs et aux battles. Node.js, Python et tous les langages. Offre gratuite disponible."},"app":{"name":"TikTok LIVE API","description":"API TikTok LIVE en temps réel pour les développeurs. Accès WebSocket au chat, aux cadeaux, aux spectateurs et aux battles. SDK Node.js et Python.","offer":"Offre Sandbox avec 3 connexions WebSocket simultanées et 5 000 requêtes REST par jour"},"faq":{"publicApi":{"a":"Il n'existe pas d'API publique officielle dédiée aux événements de live. TikTool est une API managée, indépendante et tierce, qui donne aux développeurs un accès en temps réel au chat, aux cadeaux, aux spectateurs et plus encore. TikTool n'est affilié à aucune plateforme de streaming ni approuvé par l'une d'elles."},"free":{"a":"Pour l'évaluation, oui. TikTool propose une évaluation Sandbox gratuite de 7 jours avec 3 connexions WebSocket simultanées et 5 000 requêtes API REST par jour. Sans carte bancaire. Les offres payantes démarrent à {price}/semaine (Basic) pour un usage en production, avec 10 000 requêtes par jour et 20 connexions simultanées."},"languages":{"a":"TikTool fournit des SDK officiels pour Node.js (npm : {'@'}tiktool/live) et Python (pip : tiktok-live-api). L'API WebSocket brute fonctionne avec tous les langages : Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift et plus encore."},"difference":{"q":"En quoi TikTool diffère-t-il des autres bibliothèques pour les lives ?","a":"Avec les bibliothèques open source, tu dois maintenir ta propre infrastructure de connexion, et elles cassent souvent à chaque mise à jour de la plateforme. TikTool est un service d'API managé - on gère le maintien de la connexion et l'authentification côté serveur. Ton code reste stable."},"data":{"a":"Messages du chat, cadeaux virtuels (avec leur valeur en diamants), likes, follows, partages, nombre de spectateurs, scores des battles, messages épinglés, état du live, soit plus de 90 types d'événements au total."},"latency":{"q":"Quelle est la latence de l'API TikTok LIVE ?","a":"TikTool livre les événements moins de 50 millisecondes après qu'ils se produisent sur TikTok. La connexion WebSocket managée est optimisée pour une livraison des données en temps réel à faible latence."},"chatAssistant":{"q":"Peut-on utiliser l'API TikTok LIVE pour un assistant de chat ?","a":"Oui. Les événements de chat en temps réel de TikTool incluent toutes les infos utilisateur, le texte du message, les emotes et les badges. Beaucoup de développeurs s'en servent pour créer des assistants de chat interactifs, des outils de modération et des réponses automatiques pour les lives TikTok."},"streams":{"a":"Sandbox (gratuit) : 3 connexions. Pro : 50. Ultra : 250. Agency : 500 + Live Gifter Firehose WS. Des volumes plus importants sont disponibles sur demande."},"euler":{"a":"TikTool et Euler Stream sont des services TikTok LIVE managés et indépendants, avec des priorités fonctionnelles différentes. Euler Stream est le backend de signature utilisé par les bibliothèques open source tiktok-live-connector et TikTokLive, maintenues par la même équipe. TikTool fait tourner sa propre infrastructure de signature indépendante et propose des fonctionnalités en plus, comme une couche de données pour les agences. Les deux proposent des offres gratuites et payantes - compare les tarifs et limites actuels directement sur le site de chaque fournisseur."},"tikfinity":{"a":"TikFinity est un outil de streaming pour les overlays et les alertes - idéal pour les streamers non techniques. TikTool est une API pour développeurs, avec des endpoints WebSocket, des SDK et des API REST pour créer des applications sur mesure. Si tu dois créer un assistant de chat, un tableau de bord de statistiques ou une intégration de jeu sur mesure, TikTool est le meilleur choix. Si tu veux juste des overlays tout faits, TikFinity peut te convenir."},"obs":{"a":"Oui. Tu peux utiliser l'API WebSocket de TikTool pour créer des overlays en source navigateur sur mesure pour OBS, Streamlabs et TikTok Live Studio. Affiche le chat, les alertes de cadeaux, le nombre de spectateurs et les scores des battles en temps réel. Consulte notre guide des overlays pour les détails de mise en place."}},"howTo":{"name":"Comment se connecter à l'API TikTok LIVE","description":"Connecte-toi à n'importe quel live TikTok et reçois des données en temps réel en moins de 30 secondes.","step1":{"name":"Obtiens une clé API gratuite","text":"Inscris-toi sur tik.tools et copie ta clé API. Sans carte bancaire."},"step2":{"name":"Installe le SDK","text":"Lance : {npm} (Node.js) ou {pip} (Python)"},"step3":{"name":"Connecte-toi et reçois les événements","text":"Crée un client avec le pseudo du streamer et ta clé API, ajoute des écouteurs d'événements et appelle connect()."}}}},"rankings":{"seo":{"title":"Classements TikTok LIVE par pays - Toutes les régions {'|'} TikTool","description":"Classements TikTok LIVE pour {boards} régions et pays : un lien vers chaque classement des meilleurs créateurs par diamants et statut live, le fonctionnement des réinitialisations et les {count} classes de ligue.","ogTitle":"Classements TikTok LIVE par pays"},"hero":{"badge":"Classements","title":"Classements TikTok LIVE","titleHighlight":"par pays","subtitle":"Les liens vers chaque classement TikTok LIVE régional et national, avec les meilleurs créateurs du jour par diamants et ceux qui sont en live, plus les classes de ligue qui vont avec.","updated":"Mis à jour {time}.","refresh":"Les classements s'actualisent en continu."},"stats":{"regional":"classements régionaux","country":"classements nationaux actifs","countries":"pays rattachés à un classement","leagueClasses":"classes de ligue"},"regions":{"title":"Classements régionaux","lead":"TikTok classe la plupart des marchés dans des groupes régionaux. Chaque groupe a un classement des créateurs qui y ont gagné le plus de diamants, réinitialisé chaque jour dans la plupart des régions."},"cardSub":"Classement TikTok LIVE","countryBoards":{"title":"Classements par pays","lead":"Les marchés que TikTok classe à part, hors de tout groupe. Un pays apparaît ici tant que son classement est actif."},"countries":{"title":"Trouve ton pays","lead":"Chaque pays renvoie au classement sur lequel ses créateurs sont classés. Les pays d'un même groupe partagent le classement de ce groupe."},"how":{"title":"Comment fonctionnent les classements","diamonds":{"title":"Classés par diamants gagnés aujourd'hui","body":"Chaque classement liste jusqu'aux 100 meilleurs créateurs selon les diamants rapportés par leurs Cadeaux LIVE depuis la dernière réinitialisation, avec ceux qui sont en live en ce moment."},"resets":{"title":"Réinitialisation quotidienne","body":"La plupart des classements se réinitialisent une fois par jour à l'heure propre à leur région, affichée en compte à rebours sur chaque classement. {hourly} ont plutôt des classements horaires."},"leagues":{"title":"Les ligues en plus","body":"En parallèle du classement du jour, les créateurs s'affrontent dans des ligues réparties en {count} classes, de A1 tout en haut jusqu'à D5."}},"leagues":{"title":"Classes de ligue TikTok LIVE","lead":"L'échelle complète, de la classe la plus haute à la plus basse. Le classement de chaque région renvoie à ses divisions de ligue.","group":"Groupe {group}"},"faq":{"title":"Questions fréquentes","what":{"q":"C'est quoi, les classements TikTok LIVE ?","a":"TikTok publie pour chaque région un classement LIVE quotidien ou horaire qui ordonne les créateurs selon les diamants rapportés par leurs cadeaux depuis la dernière réinitialisation. tik.tools suit jusqu'aux 100 premiers de chaque classement, les créateurs en live en ce moment et l'évolution de chaque classement ces derniers jours."},"coverage":{"q":"Quels pays et régions sont couverts ?","a":"{boards} classements en ce moment : {regions} groupes régionaux comme l'Amérique du Nord, l'Amérique latine ou les Balkans, plus {countries} pays que TikTok classe à part. Les pays d'un groupe partagent le classement de ce groupe."},"updates":{"q":"À quelle fréquence les classements sont-ils mis à jour ?","a":"Les classements s'actualisent en continu pendant que les créateurs sont en live. La plupart se réinitialisent une fois par jour à l'heure de leur région ; {hourly} ont des classements horaires, réinitialisés toutes les heures."},"leagues":{"q":"Comment fonctionnent les ligues TikTok LIVE ?","a":"Les ligues répartissent les créateurs en {count} classes : {ranges}, {top} étant la plus haute. Dans une classe, les créateurs sont regroupés en divisions et s'affrontent aux diamants sur la période de la ligue, hebdomadaire dans la plupart des régions et quotidienne pour {hourly}. Le résultat final d'un créateur décide s'il monte ou descend de classe."},"api":{"q":"Est-ce que je peux récupérer ces données via une API ?","a":"Oui. Les mêmes classements quotidiens, divisions de ligue et classements des donateurs sont disponibles via l'API de classements de tik.tools, avec des SDK pour Node et Python."}},"next":{"title":"Plus de classements","global":{"title":"Classement mondial","sub":"Les meilleurs créateurs de chaque région sur une seule page"},"gifters":{"title":"Top donateurs","sub":"Les soutiens derrière les classements"},"gaming":{"title":"Classements gaming","sub":"Les classements LIVE jeu par jeu"},"api":{"title":"API de classements","sub":"Les mêmes classements pour les développeurs"}},"jsonLd":{"breadcrumbHome":"Accueil","breadcrumbLeaderboards":"Classements","breadcrumbPage":"Classements par pays","name":"Classements TikTok LIVE par pays","itemName":"Classement TikTok LIVE {region}"},"classRange":"{from} à {to}","regionNames":{"MENA":"Moyen-Orient et Afrique"}},"bestTime":{"seo":{"title":"Meilleure heure pour faire un live TikTok - heatmap en temps réel (ton fuseau horaire) {'|'} Tik.Tools","description":"Heatmap en temps réel du volume de cadeaux TikTok LIVE. Fenêtre glissante de 28 jours, jour de la semaine x heure de la journée dans ton fuseau horaire, agrégée sur toutes les régions que nous suivons. Outil gratuit par Tik.Tools.","ogTitle":"Meilleure heure pour streamer sur TikTok LIVE - heatmap (ton fuseau horaire)","ogDescription":"Découvre quels jours et quelles heures concentrent le plus de cadeaux en diamants sur TikTok LIVE. En temps réel, sur 28 jours glissants, dans ton fuseau horaire."},"hero":{"eyebrow":"TEMPS RÉEL · MIS À JOUR CHAQUE HEURE · HEURE LOCALE DU LIVE","title":"Quelle est la meilleure heure pour passer {accent} ?","titleAccent":"en LIVE sur TikTok","sub":"Le volume de cadeaux en diamants agrégé sur tous les créateurs TikTok LIVE que nous suivons, réparti par jour de la semaine et par heure selon {localTime} (un cadeau à 9 h du soir au Japon et un cadeau à 9 h du soir aux États-Unis tombent tous les deux dans la colonne 9 h du soir). Plus la case est foncée, plus il y a eu de diamants offerts à cette heure locale dans le monde. Sers-t'en comme base pour choisir ton créneau de live.","subLocalTime":"l'heure locale de chaque événement"},"gate":{"label":"Connecte-toi pour voir les meilleures heures et les meilleurs jours","sub":"Compte gratuit - débloque l'heure de pointe, le meilleur jour et la heatmap complète."},"conclusions":{"hour":{"eyebrow":"Meilleure heure","meta":"{value} diamants sur 7 jours"},"day":{"eyebrow":"Meilleur jour de la semaine","meta":"{value} diamants sur 24 h"},"slot":{"eyebrow":"Créneau de pointe","meta":"{value} diamants sur cette seule heure"}},"days":{"mon":"Lundi","tue":"Mardi","wed":"Mercredi","thu":"Jeudi","fri":"Vendredi","sat":"Samedi","sun":"Dimanche"},"hourAm":"{h} AM","hourPm":"{h} PM","slotLabel":"{day} {hour}","loading":"Chargement des données sur 28 jours...","meta":{"window":"Période : {days} derniers jours","bucketed":"Réparti selon l'heure locale de chaque région","updated":"Mis à jour {when}","recently":"récemment"},"relative":{"justNow":"à l'instant","minutes":"il y a {n} min","hours":"il y a {n} h","days":"il y a {n} j"},"cta":{"title":"Développe avec les données TikTok LIVE","api":{"eyebrow":"API DÉVELOPPEUR","title":"Flux en temps réel des cadeaux + du chat","sub":"WebSocket + REST. Offre Sandbox. Offres payantes dès {price}/sem."},"leaderboards":{"eyebrow":"CLASSEMENTS","title":"{count} régions, classements en temps réel","sub":"Classements par pays + ligues. Sans masquage dès PRO+ / ULTRA+."},"agency":{"eyebrow":"AGENCY GLOBAL","title":"Repère des créateurs dans toutes les régions","sub":"CRM + liste de suivi + alertes Telegram. {price}/sem."}},"explainer":{"title":"Comment lire cette heatmap","p1":"Nous agrégeons chaque {gift} que notre infrastructure observe chez les créateurs TikTok LIVE dans {count} régions. Chaque événement indique le pays du donateur, ce qui nous permet de convertir son horodatage UTC vers {clock} avant de le classer. Ainsi, un cadeau à 9 h du soir au Japon et un cadeau à 9 h du soir aux États-Unis tombent tous les deux dans la colonne 9 h du soir, même s'ils ont eu lieu à environ 14 heures d'écart en UTC. La heatmap se lit directement en \"heure locale du live\" : si tu fais ton live à 8 h du soir là où tu es, c'est la colonne 8 h du soir qui t'intéresse.","p1Gift":"cadeau en diamants","p1Clock":"l'heure locale de cette région","p2":"C'est une vue {global} de l'économie LIVE - ta niche ou ta région peut être différente. Pour ton propre créneau régional, consulte la page {rankingLink} et filtre par pays, ou récupère heure par heure les données de ta région cible via l'{apiLink}.","p2Global":"mondiale","p2ApiLink":"API de données de classements"},"faq":{"title":"Questions fréquentes","bestTime":{"q":"Quelle est la meilleure heure pour faire un live sur TikTok ?","a":"Dans le monde, les heures où l'on offre le plus de diamants se concentrent entre 7 h du soir et minuit, heure locale, le vendredi et le samedi, avec un second pic vers 9 h du soir le dimanche. La heatmap ci-dessus montre tes 28 derniers jours, en temps réel."},"timezones":{"q":"La heatmap tient-elle compte des différents fuseaux horaires des streamers ?","a":"Oui. Chaque événement de cadeau indique le code pays du donateur. Nous convertissons l'horodatage UTC vers l'heure locale standard de ce pays avant le classement, donc un cadeau à 9 h du soir au Japon et un cadeau à 9 h du soir aux États-Unis tombent tous les deux dans la colonne 9 h du soir. La grille se lit en \"heure locale du live\" partout sur la planète, et non selon l'horloge d'un seul spectateur."},"fresh":{"q":"Les données sont-elles récentes ?","a":"Fenêtre glissante de 28 jours, actualisée régulièrement."},"niche":{"q":"La niche compte-t-elle ?","a":"Oui - ici, c'est l'économie MONDIALE. Les streamers gaming, ASMR, musique et danse ont tous des créneaux de pointe différents. Sers-t'en comme base ; pour les créneaux propres à ta niche, interroge l'API de données de classements filtrée sur ta région."},"official":{"q":"Ces données Tik.Tools sont-elles officielles ?","a":"Elles sont agrégées par notre propre infrastructure LIVE, qui observe les mêmes événements de cadeaux WebSocket publics que ceux affichés dans l'onglet backstage de n'importe quel créateur. Elles ne sont pas approuvées par ByteDance."}},"jsonLd":{"bestTimeA":"Dans le monde, les heures où l'on offre le plus de diamants se concentrent entre 7 h du soir et minuit, heure locale, le vendredi et le samedi, avec un second pic vers 9 h du soir le dimanche. La heatmap gratuite de Tik.Tools montre la fenêtre glissante de 28 jours en temps réel, dans ton fuseau horaire.","calculatedQ":"Comment la heatmap est-elle calculée ?","calculatedA":"Tik.Tools agrège chaque cadeau TikTok LIVE en diamants observé par notre infrastructure dans {count} régions sur les 28 derniers jours glissants, puis convertit chaque événement à l'heure locale du pays du donateur et le classe par jour de la semaine et par heure de la journée.","peakQ":"Faut-il faire son live aux heures de pointe ?","peakA":"Les heures de pointe sont celles où les spectateurs dépensent le plus, mais aussi celles où la concurrence est la plus forte. Pour les nouveaux créateurs, lancer le live 1-2 heures avant le pic permet de capter l'attention pendant que l'audience se forme ; pour les créateurs établis, viser directement le pic maximise les revenus des cadeaux."}},"agencies":{"seo":{"title":"Annuaire des agences TikTok LIVE - TikTool","description":"Parcours les agences TikTok LIVE vérifiées par région, vois qui est en live en ce moment, écris aux agences en privé ou revendique gratuitement la fiche de ta propre agence."},"hero":{"title":"Agences TikTok LIVE","new":"NOUVEAU","sub":"Trouve une agence TikTok LIVE pour grandir - ou référence la tienne gratuitement et revendique tes créateurs.","cta":"Référence ton agence - gratuit"},"regions":{"scrollLeft":"Faire défiler les régions vers la gauche","scrollRight":"Faire défiler les régions vers la droite","filter":"Filtrer par région","all":"Toutes","selected":"{count} sélectionnées","clear":"Effacer"},"updating":"mise à jour...","card":{"featured":"À LA UNE","viewAria":"Voir {name}","bannerAlt":"Bannière de {name}","logoAlt":"Logo de {name}","verified":"Agence vérifiée","creators":"{count} créateurs","liveNow":"{count} en live","viewProfile":"Voir le profil","message":"Message"},"placeholder":{"title":"Référence ton agence","copy":"Revendique tes créateurs, gagne en visibilité, fiche vérifiée gratuite.","foot":"Crée ta fiche"},"jsonLd":{"name":"Annuaire des agences TikTok LIVE","description":"Agences TikTok LIVE vérifiées, avec leurs créateurs, leur statut live et une messagerie privée."}},"agencyCatalog":{"index":{"searchPlaceholder":"Rechercher une agence par nom","searchLabel":"Rechercher des agences","verifiedTitle":"Agences vérifiées","loadMore":"Afficher plus ({count} restantes)","allTitle":"Toutes les agences","allSub":"Toutes les agences TikTok LIVE que nous suivons, avec leur région et un lien de candidature direct. Tu diriges l'une d'elles ? Revendique-la pour obtenir une fiche vérifiée.","hubsTitle":"Parcourir les agences par région"},"card":{"viewAria":"Ouvrir le profil de {name}","logoAlt":"Logo de {name}","verified":"Agence vérifiée","followers":"{count} abonnés","apply":"Postuler","viewProfile":"Voir le profil","claim":"Revendiquer l'agence","bannerSlot":"Votre bannière ici","bannerSlotCta":"C'est votre agence ? Revendiquez-la gratuitement"},"grid":{"empty":"Aucune agence ne correspond à ces filtres.","gateTitle":"{shown} agences affichées sur {total}","gateSub":"Agency Global débloque l'annuaire complet : toutes les agences, toutes les régions, avec une recherche sur l'ensemble.","gateCta":"Obtenir Agency Global","gateSignIn":"Déjà membre ? Connecte-toi","pagerLabel":"Pages des agences","prev":"Précédent","next":"Suivant","pageOf":"Page {page} sur {pages}","searchLocked":"La recherche par nom parmi toutes les agences fait partie d'Agency Global. Les premières agences sont affichées à la place."},"profile":{"breadcrumbLabel":"Fil d'Ariane","breadcrumbDirectory":"Annuaire des agences","onboarded":"Sur TikTok LIVE depuis le {date}","claimBanner":"C'est ton agence ? Revendique-la pour ajouter ton logo, ton site web et tes coordonnées, et obtenir un badge vérifié.","claimBannerCta":"Revendiquer cette agence","aboutTitle":"À propos","noIntro":"{name} n'a pas encore ajouté de description.","servicesTitle":"Services pour les créateurs","statsTitle":"En un coup d'œil","stats":{"creators":"Créateurs","agents":"Agents","diamonds":"Diamants mensuels","health":"Score de santé"},"source":"Les détails proviennent d'informations publiques sur les agences TikTok LIVE. tik.tools n'est affilié ni à TikTok ni à cette agence.","seoTitle":"{name} : profil d'agence TikTok LIVE","seoDescription":"{name} est une agence TikTok LIVE. Découvre ses services et postule pour la rejoindre.","seoDescriptionRegion":"{name} est une agence TikTok LIVE en {region}. Découvre ses services et postule pour la rejoindre.","message":{"button":"Écrire à cette agence","title":"Écrire à {name}","nameLabel":"Ton nom, tel que l'agence le verra","shareEmail":"Partager mon e-mail ({email}) pour que l'agence puisse me répondre directement","bodyLabel":"Ton message","placeholder":"Présente-toi : qui tu es, ton compte TikTok et ce que tu recherches.","count":"{count} / {max}","minHint":"Au moins {min} caractères","helper":"tik.tools transmet ton message à l'agence. Les liens ne sont pas autorisés. Si l'agence n'a pas encore de contact publié, nous le gardons pour elle jusqu'à ce qu'elle revendique cette fiche.","send":"Envoyer le message","sending":"Envoi...","cancel":"Annuler","close":"Fermer","success":"Message envoyé. Nous le transmettrons à {name}.","error":"Le message n'a pas pu être envoyé. Réessaie plus tard."}},"hub":{"title":"Agences TikTok LIVE en {region}","sub":"Agences TikTok LIVE vérifiées et référencées qui recrutent des créateurs en {region}, avec des liens de candidature directs.","empty":"Aucune agence n'est encore référencée pour {region}.","seoTitle":"Agences TikTok LIVE en {region}","seoDescription":"Trouve des agences TikTok LIVE en {region} : fiches vérifiées, services pour les créateurs et liens de candidature directs."},"services":{"1_on_1_support":"Accompagnement individuel","live_skills_training":"Formation aux techniques de LIVE","manager_live_review":"Bilans LIVE avec un manager","guaranteed_salary":"Salaire garanti","live_equipment":"Matériel LIVE"},"claim":{"title":"Revendiquer cette agence","sub":"Prouve que tu diriges cette agence pour gérer sa fiche. Une fois vérifié, tu pourras ajouter ton logo, ton site web et tes coordonnées.","inReview":"Une revendication pour cette agence est en cours d'examen par notre équipe.","signIn":"Connecte-toi pour revendiquer","success":"Vérifié. L'agence est maintenant liée à ton compte.","openListing":"Modifier ta fiche","busy":"Quelqu'un d'autre est en train de vérifier cette agence. Réessaie plus tard.","methodsLabel":"Méthode de vérification","methods":{"email":"Code par e-mail","domain":"Vérification du site web","evidence":"Examen d'une capture d'écran"},"domainLabel":"Site web de l'agence","domainPlaceholder":"youragency.com","working":"En cours...","checking":"Vérification...","verify":"Vérifier","copy":"Copier","copied":"Copié","email":{"help":"Nous envoyons un code à une adresse du domaine du site web de ton agence, par exemple hello{'@'}youragency.com. Les boîtes mail gratuites ne comptent pas.","label":"E-mail sur ce domaine","placeholder":"you{'@'}youragency.com","send":"Envoyer le code","sent":"Nous avons envoyé un code à {email}. Il expire dans 30 minutes.","codeLabel":"Code","change":"Utiliser une autre adresse"},"domain":{"help":"Publie un jeton sur le domaine de ton site web. L'une ou l'autre option fonctionne.","getToken":"Obtenir mon jeton","optionDns":"Option A : enregistrement DNS TXT","optionFile":"Option B : fichier sur ton site web","recordType":"Type","recordName":"Nom","recordValue":"Valeur","or":"ou","fileUrl":"URL","fileContent":"Contenu","check":"Vérifier maintenant","change":"Utiliser un autre domaine"},"evidence":{"help":"Envoie une capture d'écran de TikTok Backstage montrant le nom de l'agence. Notre équipe l'examine, généralement sous deux jours ouvrés.","continue":"Continuer avec une capture d'écran"},"errors":{"rateLimited":"Trop de tentatives. Réessaie plus tard.","taken":"Cette agence est déjà revendiquée ou en cours d'examen.","hasListing":"Ton compte a déjà une fiche publiée. Vérifie plutôt par e-mail ou via ton site web.","otherListing":"Ton compte gère déjà une autre agence de l'annuaire.","expired":"Cette revendication a expiré. Recommence.","badEmail":"Utilise une adresse e-mail du domaine du site web de ton agence.","badDomain":"Saisis le site web de ta propre agence, pas une boîte mail ni un réseau social.","wrongCode":"Ce code n'est pas correct.","notFound":"Nous n'avons pas encore trouvé le jeton. Les changements DNS peuvent prendre quelques minutes.","generic":"Une erreur s'est produite. Réessaie.","hasListingLive":"Ta fiche est déjà en ligne. Contacte le support pour la lier à cette agence."},"successReview":"Preuve reçue. Le domaine ne correspond pas au nom de l'agence, donc notre équipe examine le lien avant sa mise en ligne."},"dispute":{"open":"Signaler la propriété","title":"Signaler le propriétaire de {name}","sub":"Dis-nous pourquoi ce compte ne dirige pas l'agence. Le propriétaire dispose de 48 heures pour fournir des preuves, et notre équipe examine le résultat.","reportLabel":"Litige sur la propriété de la fiche"}},"gifterLevels":{"seo":{"title":"Niveaux de donateur TikTok - tableau complet (pièces, USD, avantages 2026) {'|'} Tik.Tools","description":"Tous les niveaux de donateur TikTok, du niveau 1 au niveau 50+ - pièces cumulées requises, coût en USD, diamants offerts et avantages des badges. Tableau de référence gratuit, à jour pour 2026.","ogTitle":"Niveaux de donateur TikTok - référence 2026","ogDescription":"Le tableau complet de progression des niveaux de donateur TikTok : pièces, USD, diamants, avantages."},"hero":{"eyebrow":"RANGS DE DONATEUR TIKTOK · 2026","title":"{accent} TikTok - tableau de progression complet","titleAccent":"Niveaux de donateur","sub":"Tous les niveaux de donateur TikTok, les pièces cumulées requises et le coût approximatif en USD. Les niveaux restent valables chez tous les créateurs - ils débloquent des badges (cadres + effets d'entrée lumineux) qui suivent le donateur dans chaque LIVE qu'il rejoint."},"lookup":{"label":"Vérifie le niveau d'un donateur","placeholder":"Tape un {'@'}pseudo TikTok","hint":"Niveau, région d'origine et total des cadeaux de n'importe quel compte TikTok.","apiKey":"Obtenir une clé API gratuite","leaderboards":"Classements des donateurs en direct"},"table":{"scrollHint":"Fais glisser le tableau sur le côté pour voir les USD dépensés et les avantages","ariaLabel":"Tableau des niveaux de donateur TikTok","level":"Niveau","name":"Nom","coins":"Pièces pour l'atteindre","usd":"USD dépensés","perks":"Avantages","levelPill":"N{level}","foot":"Les montants en USD sont les prix officiels de recharge TikTok sur tiktok.com/coin (relevé de sept. 2025). Les achats via l'App Store / le Play Store coûtent généralement 30 % plus cher à cause des frais de plateforme. Les pièces requises par niveau sont les seuils publiés par TikTok pour le programme de niveaux de donateur - atteindre le niveau N signifie que le donateur a dépensé le total cumulé de pièces indiqué sur l'ensemble des LIVE où il a déjà offert des cadeaux."},"levelNames":{"1":"Débutant I","2":"Débutant II","3":"Débutant III","4":"Débutant IV","5":"Bronze I","6":"Bronze II","7":"Bronze III","8":"Bronze IV","9":"Argent I","10":"Argent II","11":"Argent III","12":"Argent IV","13":"Or I","14":"Or II","15":"Or III","16":"Or IV","17":"Platine I","18":"Platine II","19":"Platine III","20":"Platine IV","21":"Diamant I","22":"Diamant II","23":"Diamant III","24":"Diamant IV","25":"Couronne I","26":"Couronne II","27":"Couronne III","28":"Couronne IV","29":"Couronne royale I","30":"Couronne royale II","31":"Couronne royale III","32":"Couronne royale IV","33":"Roi I","34":"Roi II","35":"Roi III","36":"Roi IV","37":"Empereur I","38":"Empereur II","39":"Empereur III","40":"Empereur IV","41":"Cosmos I","42":"Cosmos II","43":"Cosmos III","44":"Cosmos IV","45":"Univers I","46":"Univers II","47":"Univers III","48":"Univers IV","49":"Légende","50":"Mythique"},"levelPerks":{"1":"Badge par défaut","2":"Premier badge de niveau","3":"Couleur de commentaire débloquée","4":"Effet d'entrée palier bronze","5":"Badge bronze débloqué","6":"Cadre bronze","7":"Cadre bronze animé","8":"Cadre bronze élite","9":"Badge argent débloqué","10":"Cadre argent + commentaire lumineux","11":"Cadre argent animé","12":"Cadre argent élite","13":"Badge or débloqué","14":"Cadre or + entrée mise en avant","15":"Cadre or animé","16":"Cadre or élite","17":"Badge platine débloqué","18":"Cadre platine","19":"Cadre platine animé","20":"Cadre platine élite + effet d'entrée personnalisé","21":"Badge diamant débloqué","22":"Cadre diamant","23":"Cadre diamant animé","24":"Diamant élite + priorité dans la barre des top donateurs","25":"Badge couronne débloqué","26":"Cadre couronne","27":"Cadre couronne animé","28":"Couronne élite + effet d'entrée premium","29":"Badge couronne royale débloqué","30":"Cadre couronne royale","31":"Cadre couronne royale animé","32":"Cadre couronne royale élite","33":"Badge roi débloqué","34":"Cadre roi","35":"Animation d'entrée roi","36":"Cadre roi élite + aura cosmique","37":"Badge empereur débloqué","38":"Cadre empereur","39":"Cadre empereur animé","40":"Cadre empereur élite","41":"Badge cosmos débloqué","42":"Cadre cosmos","43":"Aura cosmos animée","44":"Aura cosmos élite","45":"Badge univers débloqué","46":"Cadre univers","47":"Aura univers animée","48":"Aura univers élite","49":"Palier Légende - top 0,001 % de tous les donateurs","50":"Palier Mythique - niveau de donateur public maximum"},"cta":{"heading":"Suis les donateurs chez tous les créateurs","rankings":{"eyebrow":"CLASSEMENTS DONATEURS","title":"Top gros donateurs en live","sub":"{count} régions, du jour / de la semaine / historiques. Sans masquage dès PRO+."},"firehose":{"eyebrow":"FIREHOSE WS","title":"Flux de cadeaux en temps réel","sub":"Chaque cadeau, chaque région. {price}/sem."},"api":{"eyebrow":"API DÉVELOPPEUR","title":"Crée un tableau de bord des donateurs","sub":"SDK prêt à l'emploi. WebSocket + REST. Dès {price}/sem."}},"explainer":{"heading":"Comment fonctionnent les niveaux de donateur TikTok","p1":"TikTok comptabilise les {coinsSpent} sur l'ensemble des LIVE où tu as déjà offert des cadeaux. Chaque seuil débloque un nouveau {gifterLevel} avec un badge unique, une couleur de chat lumineuse et un effet d'entrée qui se déclenche quand tu rejoins le live de n'importe quel créateur. Les niveaux sont globaux - ils ne se réinitialisent pas et s'affichent quel que soit le créateur que tu regardes.","p1CoinsSpent":"pièces dépensées en cumulé","p1GifterLevel":"niveau de donateur","p2":"Aux paliers supérieurs (niveau 25+), TikTok ajoute des {vip}, des cadres de commentaire personnalisés et une place prioritaire dans la barre des top donateurs de chaque LIVE où tu entres. Le niveau 36+ débloque la rare {cosmicAura} ; le niveau 45+ débloque le palier {universe} ; les niveaux 49-50 sont les paliers {legend} et {mythic}, le plafond public. Les créateurs voient ton niveau sur chaque cadeau que tu envoies.","p2Vip":"animations d'entrée VIP","p2CosmicAura":"aura cosmique","p2Universe":"Univers","p2Legend":"Légende","p2Mythic":"Mythique","faqHeading":"Questions fréquentes"},"faq":{"howWork":{"q":"Comment fonctionnent les niveaux de donateur TikTok ?","a":"TikTok comptabilise les pièces dépensées en cumulé sur l'ensemble des LIVE où tu as déjà offert des cadeaux. Chaque seuil débloque un niveau de donateur avec un badge, une couleur lumineuse et un effet d'entrée qui te suivent dans le live de n'importe quel créateur."},"worth":{"q":"Combien d'argent représente chaque niveau de donateur ?","a":"Prix réels de recharge TikTok : niveau 10 (Argent II) = 530 pièces ≈ 5,52 $. Niveau 20 (Platine IV) = 27 800 pièces ≈ 289 $. Niveau 30 (Couronne royale II) = 637 000 pièces ≈ 6 625 $. Niveau 40 (Empereur IV) = 8,78 M de pièces ≈ 91 k$. Niveau 50 (Mythique) = 97,5 M de pièces ≈ 1,01 M$."},"reset":{"q":"Les niveaux de donateur TikTok se réinitialisent-ils ou expirent-ils ?","a":"Non. Les niveaux de donateur sont globaux et permanents. Une fois le niveau 25 atteint, tu gardes ce badge pour toujours - y compris dans les lives de créateurs que tu n'as jamais regardés."},"highest":{"q":"Quel est le niveau de donateur TikTok le plus élevé ?","a":"TikTok affiche publiquement jusqu'au niveau 50 (Mythique). Pour l'atteindre, il faut environ 97,5 millions de pièces cumulées (environ 1,01 million de dollars aux prix de recharge officiels)."},"carry":{"q":"Les niveaux de donateur sont-ils conservés d'un créateur à l'autre ?","a":"Oui - les niveaux sont liés à ton compte TikTok, pas au créateur. Le même badge s'affiche, que tu rejoignes un petit streamer ou un match à 50K spectateurs."},"creatorSees":{"q":"Un créateur peut-il voir qui est le donateur de plus haut niveau dans son LIVE ?","a":"Oui. TikTok affiche la barre des top donateurs avec le niveau de chaque spectateur. Les tableaux de bord agence de Tik.Tools donnent plus de détails - diamants cumulés, historique récent des cadeaux, activité chez les autres créateurs."}},"jsonLd":{"level30":{"q":"Combien de pièces faut-il pour atteindre le niveau 30 ?","a":"Le niveau 30 (Couronne royale II) demande 637 000 pièces cumulées, soit 6 624,80 $ au tarif de recharge officiel de TikTok. Les achats sur iOS / Android coûtent environ 30 % plus cher à cause des frais de l'App Store / du Play Store."},"reset":{"q":"Les niveaux de donateur TikTok se réinitialisent-ils ?","a":"Non. Les niveaux sont globaux, restent valables chez tous les créateurs et ne se réinitialisent pas. Une fois un niveau atteint, tu le gardes."},"highestA":"TikTok affiche publiquement jusqu'au niveau 50+, avec des paliers élite (aura cosmique) à partir du niveau 36."}},"diamondsCalculator":{"seo":{"title":"Calculateur de diamants TikTok - convertir les diamants en USD (taux 2026) {'|'} Tik.Tools","description":"Calculateur de diamants TikTok gratuit. Convertis les diamants TikTok en USD et inversement, en temps réel. Inclut le taux pièces/diamants 2026, la rémunération des créateurs (1 diamant = 0,005 $) et le tableau complet du coût des cadeaux.","ogTitle":"Calculateur de diamants TikTok - convertisseur USD en temps réel","ogDescription":"Convertis les diamants TikTok en USD avec les taux 2026. Les frais TikTok, la rémunération des créateurs et le partage avec la plateforme expliqués."},"hero":{"eyebrow":"CALCULATEUR GRATUIT · TAUX 2026","title":"{accent} de diamants TikTok","titleAccent":"Calculateur","sub":"Convertis les diamants TikTok en USD en temps réel. Tape dans l'un des deux champs - l'autre se met à jour instantanément avec les taux publiés par TikTok (1 $ = 200 pièces, 1 diamant = 0,005 $ reversé au créateur)."},"converter":{"diamonds":"Diamants","usd":"USD (reversé au créateur)","split":"Payé par le spectateur {paid} · Gardé par TikTok {kept}"},"presets":{"universe":"Univers (44 999 ◇)","lion":"Lion (29 999 ◇)"},"lookup":{"label":"Vois les diamants de n'importe quel créateur","placeholder":"Tape le {'@'}pseudo d'un créateur","hint":"Diamants, donateurs et historique des lives de n'importe quel créateur TikTok.","apiKey":"Obtenir une clé API gratuite","leaderboards":"Classements des créateurs"},"cta":{"heading":"Approprie-toi les données TikTok LIVE","api":{"eyebrow":"API DÉVELOPPEUR","title":"Chat, cadeaux et battles en temps réel","sub":"REST + WebSocket. SDK prêt à l'emploi. En prod dès {price}/sem."},"leaderboards":{"eyebrow":"CLASSEMENTS","title":"{count} régions, tous les créateurs","sub":"Classements du jour / horaires / historiques. Sans masquage dès PRO+."},"agency":{"eyebrow":"AGENCY GLOBAL","title":"Live Gifter Firehose + Telegram","sub":"Repère des talents dans toutes les régions. {price}/sem."}},"explainer":{"heading":"Comment fonctionnent les diamants, les pièces et les frais des créateurs TikTok","p1":"Quand un spectateur achète des pièces, TikTok facture environ {rate} via le paiement sur le web (sur mobile, les prix varient selon les frais des stores - 1 $ donne souvent plutôt 70-100 pièces sur iOS/Android à cause des taxes de l'App Store). Chaque Cadeau LIVE coûte au spectateur un nombre fixe de pièces, et quand le cadeau arrive sur le live d'un créateur, il est converti en {diamonds} - la monnaie comptable interne de TikTok.","p1Rate":"1 $ les 200 pièces","p1Diamonds":"diamants","p2":"Les créateurs encaissent leurs diamants à {rate} (un demi-cent américain). TikTok garde donc environ {share} payé par le spectateur - l'autre moitié revient au créateur. Un cadeau de 1 000 diamants a coûté environ 10 $ au spectateur et rapporte 5 $ au créateur. Ce partage est stable depuis 2020.","p2Rate":"1 diamant = 0,005 $","p2Share":"50 % du montant brut","callout":"{important} la rémunération des créateurs s'entend {before} les déductions propres à la plateforme TikTok (partage du programme d'hôtes LIVE, multiplicateurs régionaux, commission de l'agence si le créateur est signé). Le montant final qui arrive sur le compte d'un créateur peut être 20-40 % inférieur à la valeur brute en diamants multipliée par 0,005 $, selon les termes du contrat d'agence.","calloutImportant":"Important :","calloutBefore":"avant"},"rates":{"heading":"Les taux courants en un coup d'œil","diamonds":"Diamants","viewerPaid":"Payé par le spectateur ≈","creatorPayout":"Reversé au créateur ≈","commonGifts":"Cadeaux courants","gifts":{"d5":"Rose · 1 pièce = 5 diamants à l'envoi","d99":"Parfum · TikTok","d100":"Cœur avec les mains · Lunettes de soleil","d1000":"Galaxie · Voiture de sport","d5000":"Hortensia · Voiture de sport premium","d10000":"Drama Queen · Yacht","d29999":"Lion","d44999":"Univers · TikTok Universe"}},"faqHeading":"Questions fréquentes","faq":{"oneDiamond":{"q":"Combien vaut 1 diamant TikTok en USD ?","a":"1 diamant = 0,005 $ (un demi-cent américain) reversé au créateur. Le spectateur a payé environ 0,01 $ pour produire ce diamant."},"hundredUsd":{"q":"Combien de diamants pour 100 $ ?","a":"100 $ reversés au créateur = 20 000 diamants. Le spectateur a dépensé environ 200 $ en pièces."},"fiftyPercent":{"q":"TikTok prend-il 50 % des diamants ?","a":"Oui - c'est un partage d'environ 50/50. Les spectateurs paient environ 0,01 $ par diamant, les créateurs reçoivent environ 0,005 $ par diamant."},"cheapest":{"q":"Quel est le cadeau TikTok le moins cher ?","a":"La Rose, à 1 pièce (environ 0,005 $ pour le spectateur / 0,0025 $ pour le créateur une fois convertie)."},"mostExpensive":{"q":"Quel est le cadeau TikTok le plus cher ?","a":"Univers / TikTok Universe, à 44 999 diamants (environ 450 $ pour le spectateur / 225 $ pour le créateur). Le Lion vaut 29 999 diamants."},"taxable":{"q":"Les diamants TikTok sont-ils des revenus imposables ?","a":"Oui - aux États-Unis, TikTok émet un formulaire 1099 dès que tu dépasses le seuil de déclaration de l'IRS. Les autres régions suivent les règles locales."},"payout":{"q":"Quand les diamants sont-ils versés ?","a":"TikTok effectue des versements mensuels avec un seuil minimum de paiement (50 $ aux États-Unis). Les fonds arrivent 30-60 jours après la clôture du cycle de facturation."}},"jsonLd":{"oneDiamondA":"1 diamant TikTok = 0,005 $ (un demi-cent américain) reversé au créateur. Le spectateur a payé environ 0,01 $ pour acheter les pièces qui ont produit ce diamant - TikTok garde l'autre moitié.","hundredUsd":{"q":"Combien de diamants pour 100 $ ?","a":"100 $ reversés au créateur correspondent à 20 000 diamants. Côté spectateur, environ 200 $ de pièces ont été dépensés pour les produire."},"fiftyPercentA":"Oui, TikTok prend environ 50 % du revenu brut des cadeaux. Les spectateurs paient environ 0,01 $ par diamant en pièces ; les créateurs reçoivent environ 0,005 $ par diamant.","taxable":{"q":"Les versements de diamants sont-ils imposables ?","a":"Oui, la rémunération des créateurs TikTok compte comme un revenu imposable dans la plupart des pays. Aux États-Unis, TikTok émet un formulaire 1099 dès que tu dépasses le seuil de l'IRS ; les autres régions suivent les règles locales."}}},"gifts":{"seo":{"title":"Cadeaux TikTok Live - catalogue complet + téléchargements gratuits","description":"Tous les cadeaux virtuels TikTok LIVE dans un seul catalogue consultable. Coût en diamants (0,01 $ l'unité), valeur en USD, PNG transparent à télécharger. Compilé à partir de vrais événements de cadeaux sur tik.tools, l'API de live streaming pour les développeurs et les agences.","socialDescription":"Tous les cadeaux virtuels TikTok LIVE au même endroit. Recherche, trie par valeur, télécharge le PNG transparent."},"hero":{"title":"{accent} TikTok Live","titleAccent":"Cadeaux","sub":"Tous les cadeaux virtuels TikTok LIVE au même endroit. Coût en diamants, valeur en dollars, téléchargement gratuit. Récupérés en direct depuis le même flux qui alimente le SDK tik.tools.","count":"{count} cadeaux"},"searchPlaceholder":"Rechercher un cadeau par nom...","sort":{"valueDesc":"Du plus cher au moins cher","valueAsc":"Du moins cher au plus cher","name":"Nom A-Z","recent":"Récents"},"captcha":{"title":"Petite vérification","sub":"Choisis la bonne vignette pour continuer. {question}","loadError":"Impossible de charger la vérification. Actualise la page.","wrongAnswer":"Mauvaise réponse. Réessaie."},"empty":"Aucun cadeau ne correspond à \"{search}\".","viewDownload":"Voir + Télécharger","pager":{"prev":"Préc.","next":"Suiv.","info":"Page {page} sur {total}"},"cta":{"title":"Tu veux chaque événement de cadeau en temps réel ?","body":"Le même catalogue alimente l'API tik.tools. Connecte ton app et reçois chaque cadeau, message, like et follow en moins de 50 ms.","primary":"Voir l'API","secondary":"Offre gratuite"}},"pricing":{"seo":{"title":"Tarifs de l'API TikTok LIVE","description":"Tarifs de l'API TikTok LIVE. Sandbox, Basic {symbol}{basic}/sem., Pro {symbol}{pro}/sem., Ultra {symbol}{ultra}/sem., Agency {symbol}{agency}/sem. Événements WS en temps réel (chat/cadeau/like/follow/arrivée/battle), REST signé, données de ligues + classements.","ogDescription":"Tarifs de l'API TikTok LIVE. Sandbox, Basic {symbol}{basic}/sem., Pro {symbol}{pro}/sem., Ultra {symbol}{ultra}/sem., Agency {symbol}{agency}/sem."},"hero":{"title":"Des tarifs pour chaque {accent}.","titleAccent":"équipe","subtitle":"TikTools démarre avec une clé Sandbox gratuite pour 7 jours d'évaluation ; ensuite, une offre payante est requise. Offres payantes dès {symbol}{price}/sem."},"keySelector":{"label":"Choisis la clé API à gérer","createNew":"Créer une nouvelle clé","newKeyPlaceholder":"Nomme ta nouvelle clé (ex. Production, Assistant 2...)","unnamed":"Sans nom","renews":"Renouvellement le {date}","choose":"Choisis une clé API..."},"leadHeading":"Teste gratuitement pendant 7 jours, puis choisis une offre","billing":{"ariaLabel":"Cycle de facturation","weekly":"Hebdo","monthly":"Mensuel","saveUpTo":"jusqu'à {percent} % d'économie"},"period":{"weekly":"sem.","monthly":"mois","weekFull":"semaine","monthFull":"mois"},"cycleName":{"weekly":"hebdomadaire","monthly":"mensuel"},"card":{"save":"-{percent} %","monthlyOnly":"mensuel uniquement","mostPopular":"La plus populaire","basic":{"desc":"Projets perso et petits bots - tout ce qu'il faut pour démarrer","foot":"Support communauté et docs · idéal pour les projets perso + petits bots"},"pro":{"desc":"Pour les développeurs qui créent des applications en production","foot":"API de classements complète sans masquage · Feed Discovery · chat prioritaire"},"ultra":{"desc":"Pour les équipes et les gros volumes en entreprise","foot":"Catalogue de cadeaux + classements de ligue sans masquage · événements webhook pic de spectateurs / cadeaux de grande valeur"},"starter":{"desc":"Pour les agences qui ont besoin du tableau de bord et d'une API niveau Pro","foot":"Tableau de bord agence : créateurs, pipeline, recrutement par région, digest créateurs, alertes, équipe · classements standard, ligues + gaming sans masquage · inclus, sans crédits"},"global":{"desc":"Pour les agences qui repèrent et gèrent des créateurs TikTok LIVE","foot":"Tout Ultra + Classements gaming (toutes régions) · Live Gifter Firehose WS · VIP Telegram + Web Vault · classement des donateurs sans masquage · CRM + liste de suivi · webhooks de paliers de followers · liste blanche d'IP"}},"stats":{"requestsPerDay":"requêtes / jour","wsConnections":"connexions WS","accountChecksPerDay":"vérifications de comptes / jour","webhook":"webhook · {perDay}/jour","webhooks":"webhooks · {perDay}/jour","seatsIncluded":"places incluses"},"chips":{"leaderboards":"Classements","leagues":"Ligues","gamingRanks":"Classements gaming","gifters":"Donateurs"},"cta":{"subscribeTo":"S'abonner à {plan}","subscribe":"S'abonner","startFree":"Commencer l'évaluation gratuite","currentPlan":"Offre actuelle","changing":"Changement...","switchToCycle":"Passer en {cycle}","switchTo":"Passer à {plan}","upgradeTo":"Passer à {plan}","downgradeTo":"Rétrograder vers {plan}","get":"Prendre {plan}"},"weekendPass":{"tag":"ACCÈS 3 JOURS","line":"3 jours de Pro pour {price} en paiement unique, puis Pro à la semaine. Annulable à tout moment.","starting":"Démarrage...","cta":"Prendre le Pass Pro 3 jours · {price}"},"enterprise":{"badge":"ENTREPRISE","heading":"Besoin de plus ? Parlons-en.","desc":"Limites sur mesure, infrastructure dédiée et tarifs dégressifs pour ton équipe. Contacte-nous via le chat en bas à droite - {strong}.","descStrong":"on répond généralement tout de suite","cta":"Discuter avec nous"},"comparison":{"heading":"Quelles fonctionnalités sont incluses dans chaque offre de l'API TikTok LIVE ?","glossary":{"maskedTerm":"Masqué / Sans masquage","maskedDef":"Masqué cache les vrais pseudos et avatars (affiche des substituts) ; sans masquage, on voit la vraie identité du créateur ou du donateur.","diamondsTerm":"Diamants","diamondsDef":"L'unité de valeur des cadeaux TikTok. Environ 0,005 $ l'unité - on l'utilise pour classer les dépenses dans les classements.","wsTerm":"Sessions / connexions WS","wsDef":"Connexions WebSocket en direct - une par room TikTok LIVE dont tu reçois les événements en temps réel."},"hint":"Fais glisser sur le côté pour comparer toutes les offres","tableAriaLabel":"Tableau comparatif des offres, défilement horizontal","featureHeader":"Fonctionnalité","badges":{"proOnly":"PRO+ UNIQUEMENT","ultraOnly":"ULTRA+ UNIQUEMENT","agencyOnly":"AGENCY","unmaskedProPlus":"SANS MASQUAGE DÈS PRO+","unmaskedUltraPlus":"SANS MASQUAGE DÈS ULTRA+","unmaskedAgency":"SANS MASQUAGE EN AGENCY"},"included":"inclus","notIncluded":"non inclus","rows":{"accessPeriod":{"feature":"Durée d'accès","tooltip":"Une clé Sandbox sert à évaluer l'API et fonctionne pendant 7 jours à partir de la création du compte. Ensuite, chaque requête renvoie \"Evaluation period ended\" jusqu'à ce que tu choisisses une offre payante. Les clés payantes fonctionnent tant que l'abonnement est actif."},"requestsPerDay":{"feature":"Requêtes/jour","tooltip":"Nombre maximum de requêtes API que ta clé peut faire par jour (réinitialisation UTC). La Sandbox se réinitialise chaque jour ; les offres payantes sont décomptées du quota de ton cycle de facturation."},"rateLimit":{"feature":"Limite de débit","tooltip":"Limitation par minute. Même Agency garde un plafond strict pour qu'un while(true) qui s'emballe dans le script d'un client ne puisse jamais saturer l'infrastructure partagée."},"wsSessionTokens":{"feature":"Jetons de session WS quotidiens","tooltip":"Assez pour créer et déboguer un petit bot ou un tableau de bord multi-lives. Un suivi simultané intensif épuisera les 50 sessions quotidiennes ; les applications en production doivent passer à une offre supérieure."},"wsMaxDuration":{"feature":"Durée max. WS","tooltip":"Les sessions Sandbox sont fermées de force au bout de 2 heures avec une frame \"Daily Demo Limit Reached\" et consomment l'une des 50 sessions quotidiennes. Basic 8 h, Pro 12 h, Ultra + Agency 24 h avec reconnexion automatique."},"datacenterProxies":{"feature":"Connexions managées","tooltip":"La Sandbox se connecte directement depuis ta propre IP. Les offres payantes se connectent via notre infrastructure managée."},"accountChecks":{"feature":"Vérifications de comptes (resolve_user_ids)","tooltip":"POST /webcast/resolve_user_ids - convertit des ID utilisateur TikTok numériques en pseudos via notre infra. Quotas dimensionnés pour que l'endpoint Bulk (50/req en Pro, 100/req en Ultra, 200/req en Agency) soit vraiment utilisable toute la journée."},"maxConcurrentStreams":{"feature":"Lives simultanés max.","tooltip":"Lives WebSocket simultanés par clé API à un instant donné. Community est limité à 3 lives simultanés (via ta propre IP) ; TikTok limite à environ 5 connexions par IP, donc aller au-delà nécessite une offre Basic+. Offres Entreprise sur mesure disponibles au-delà de 500."},"leaderboardApi":{"feature":"API de données de classements","tooltip":"POST /webcast/ranklist/regional - top 10 sans masquage sur TOUTES les offres payantes (sandbox de dev - livre ton client + ton UI). Diamants visibles sur chaque entrée. PRO+ démasque le classement complet sur les {regions} régions."},"giftCatalogApi":{"feature":"API catalogue de cadeaux","tooltip":"GET /webcast/gift_info + /webcast/gifts_by_country - catalogue des cadeaux TikTok (gift_id, nom, coût en diamants, URL de l'icône, indicateur combo/streakable, par pays). Free + Basic ont un échantillon en lecture seule de 50 cadeaux - assez pour créer des overlays OBS et mapper les cadeaux courants. Pro + Ultra + Agency ont le catalogue live COMPLET pour n'importe quelle région, avec resynchronisation continue (TikTok sort régulièrement de nouveaux cadeaux ; une récupération ponctuelle devient vite obsolète)."},"liveShopApi":{"feature":"API activité Live Shop","tooltip":"GET /webcast/live-shop?unique_id=X (ou ?region=US) - activité TikTok LIVE Shop en temps réel pour la room d'un vendeur : produits présentés (titre, prix, image, lien PDP), niveaux de stock en direct, ruptures de stock, vitesse de vente et état des enchères en live. Free + Basic ont un échantillon du schéma en lecture seule. Pro + Ultra + Agency ont les données live shop de n'importe quel vendeur en live aux États-Unis ou dans le monde. Les données de commande/acheteur/enchère gagnante ne sont pas incluses - elles ne font pas partie du live public, seule l'activité produits et stock en fait partie. 60 appels/heure."},"gifterLeaderboardApi":{"feature":"API classement des donateurs","tooltip":"GET /webcast/gifters/leaderboard (par région) et /webcast/agency/events?type=gifters (top donateurs d'un créateur, Agency uniquement) - données donateurs tous créateurs confondus. Sandbox + Basic verrouillés ; Pro / Ultra voient des identifiants masqués ; Agency démasque. La vue détaillée du profil donateur est réservée au tableau de bord."},"leagueRankingsApi":{"feature":"API classements de ligue","tooltip":"POST /webcast/ranklist/regional rank_type=16 - classements de la ligue Diamond Rush (divisions A1-D5). Les classements de ligue complets sans masquage sont une fonctionnalité ULTRA et Agency. Sandbox, Basic et Pro voient un aperçu d'une ligne par division pour confirmer que le classement existe ; passe à Ultra ou Agency pour débloquer chaque division en entier, sans masquage et en temps réel."},"gamingRanks":{"feature":"Classements gaming","tooltip":"GET /webcast/ranklist/gaming - le classement gaming TikTok LIVE (le classement gaming en direct de l'app) par région, enregistré en continu et servi entièrement sans masquage avec diamants + gains estimés. Aussi en ligne sur le site à /tiktok-live-gaming-ranks. Agency uniquement - tous les autres voient un aperçu masqué de 3 noms."},"popularLive":{"feature":"Classement des LIVE populaires","tooltip":"GET /webcast/ranklist/popular - le classement des LIVE populaires de TikTok par région en temps réel (les créateurs que TikTok met en avant dans la recherche en ce moment), actualisé en continu et servi entièrement sans masquage avec statut live + diamants. Aussi en ligne sur le site à /popular-live. Agency uniquement - tous les autres voient un aperçu masqué de 3 noms."},"teamsClubs":{"feature":"Classement équipes / clubs","tooltip":"Les clubs TikTok classés selon le total des diamants de leurs membres, par région. Nom du club, niveau, nombre de membres et l'hôte sous lequel chaque club diffuse. Exclusivité Agency."},"regionalLeaderboard":{"feature":"Accès aux classements régionaux","tooltip":"POST /webcast/ranklist/regional - renvoie une URL signée que le client récupère avec son propre cookie de session TikTok. Community + Basic verrouillés."},"feedDiscovery":{"feature":"Feed Discovery","tooltip":"GET /webcast/feed - découvre les lives en cours (Pour toi / Suggestions / Abonnements). Community + Basic verrouillés."},"bulkAccountChecks":{"feature":"Vérifications de comptes en masse","tooltip":"POST /webcast/resolve_user_ids - résout jusqu'à N ID utilisateur TikTok en une seule requête. Des plafonds par requête gardent les réponses rapides. Découpe ton tableau en lots dans ta boucle - les quotas quotidiens ci-dessus (Pro 2k, Ultra 20k, Agency 50k) couvrent n'importe quelle charge d'agence."},"bulkCopy":{"feature":"Copie en masse (créateurs, donateurs, liste de suivi)","tooltip":"Copie un classement entier - créateurs, donateurs, liste de suivi ou liste cochée - dans le presse-papiers en un clic, prêt à coller dans ton propre tableur ou CRM. Agency uniquement."},"gifterFirehose":{"feature":"Live Gifter Firehose WS","tooltip":"Flux d'événements de cadeaux en temps réel. Filtre par région, ligue ou monde + seuil minimum de diamants. Agency uniquement."},"vipTelegram":{"feature":"Alertes VIP Telegram","tooltip":"Alertes automatiques envoyées aux dirigeants et recruteurs d'agence via des canaux Telegram dédiés."},"vipWebVault":{"feature":"VIP Web Vault","tooltip":"Accès visuel complet à l'historique des donateurs et des créateurs, sans masquage. Agency uniquement."},"support":{"feature":"Support","tooltip":"Sandbox + Basic : support IA via le bot Discord + doc complète (en autonomie). Pro : chat dans l'app. Ultra + Agency : chat prioritaire avec réponse plus rapide. Passe à Pro pour un débogage direct par e-mail/chat."},"outgoingWebhooks":{"feature":"Webhooks sortants","tooltip":"Requêtes POST HTTPS signées HMAC vers ton endpoint quand les créateurs suivis passent en live / terminent. À configurer sur /webhooks."},"webhookDeliveries":{"feature":"Livraisons de webhooks / jour","tooltip":"Plafond de livraisons quotidien par utilisateur. Ne compte PAS dans ton quota de requêtes API."},"webhookLiveEvents":{"feature":"Événements webhook : live.start / live.end","tooltip":"Détecte quand les créateurs suivis passent en live et terminent leur live."},"webhookPeakGifts":{"feature":"Événements webhook : pic de spectateurs + cadeaux de grande valeur","tooltip":"live.peak_viewers (paliers de spectateurs simultanés de 100..1M) + live.gift.high_value (cadeaux ≥ 1000 diamants). Ultra et Agency uniquement."},"webhookFollowerMilestone":{"feature":"Événement webhook : palier de followers","tooltip":"creator.follower_milestone se déclenche quand un créateur suivi franchit 1K / 5K / 10K / 25K / 50K / 100K / 250K / 500K / 1M / 2M / 5M / 10M / 50M / 100M followers. Agency uniquement."},"hmacSigning":{"feature":"Signature HMAC + nouvelles tentatives + rejeu sur 30 jours","tooltip":"HMAC-SHA256 (X-Tiktool-Signature). Calendrier des nouvelles tentatives 0s / 30s / 2m / 10m / 1h / 6h (6 tentatives, ~7 h). Journal des livraisons sur 30 jours + rejeu manuel."}},"cells":{"perDay":"{n}/jour","perMin":"{n}/min","per24h":"{n} / 24 h","hours":"{n} heures","perReq":"{n}/req","target":"{n} cible","targets":"{n} cibles","sevenDayEvaluation":"Évaluation de 7 jours","whileSubscribed":"Pendant l'abonnement","max2hPerSession":"2 h max. par session","ownIpOnly":"Ta propre IP uniquement","top10Unmasked":"Top 10 sans masquage","full100Unmasked":"100 % sans masquage","sampleReadOnly":"Échantillon (lecture seule)","fullLiveSync":"Complet · synchro live","fullLive":"Complet · live","maskedNames":"Noms masqués","unmasked":"Sans masquage","previewOnly":"Aperçu uniquement","full100UnmaskedRealtime":"100 % SANS MASQUAGE · Temps réel","fullBoardOneRegion":"Classement complet · une région à la fois","fullBoardAllRegions":"Classement complet · toutes les régions","fullBoardAllRegionsRealtime":"Classement complet · toutes les régions · temps réel","agencyDashboard":"Tableau de bord agence","fullDashboardAccess":"Accès complet au tableau de bord","communityDocs":"Communauté et docs","chat":"Chat","priorityChat":"Chat prioritaire","unlimited":"Illimité"}},"included":{"heading":"Ce qui est inclus dans chaque offre payante","allInclusive":{"title":"Tarif tout compris","body":"Signatures, signature des requêtes, routage prioritaire et chemins de flux premium sont inclus dans chaque offre payante - pas d'options en plus, pas de frais surprise. Le prix affiché de chaque offre est le prix tout compris."},"beyondChat":{"title":"Bien plus que le chat et les cadeaux","body":"Les données pour agences (classements, ligues, repérage), le catalogue de cadeaux et l'activité live shop - des choses que tu devrais sinon assembler à partir de plusieurs fournisseurs."},"predictable":{"title":"Des tarifs prévisibles","body":"Des plafonds quotidiens stricts, donc pas de dépassement facturé, pas de facture surprise. Besoin de plus de marge ? Passe à l'offre supérieure en un clic - les changements prennent effet immédiatement. Annulable à tout moment ; tu gardes l'accès jusqu'à la fin de la période."}},"faq":{"heading":"Questions fréquentes","items":{"switchPlans":{"q":"Puis-je changer d'offre ?","a":"Oui - passe à une offre supérieure ou inférieure, ou change de cycle de facturation à tout moment depuis la page Tarifs. Les changements prennent effet immédiatement : le temps non utilisé sur ton offre actuelle est crédité, la différence éventuelle est facturée le jour même, et ton cycle de facturation repart du jour du changement."},"exceedLimit":{"q":"Que se passe-t-il si je dépasse ma limite quotidienne ?","a":"Les requêtes sont bloquées une fois ton plafond quotidien atteint. Pas de dépassement facturé, pas de facture surprise. Si tu as besoin de plus de marge, passe à l'offre supérieure depuis la page Tarifs - les changements prennent effet immédiatement."},"refunds":{"q":"Proposez-vous des remboursements ?","a":"Non - les offres payantes ne sont pas remboursables. L'évaluation Sandbox gratuite de 7 jours existe justement pour que tu puisses vérifier le produit avant de payer. Des remboursements partiels ne sont accordés que si un service est manifestement en panne de notre côté (panne prolongée, erreur de facturation), pour la période concernée. Nous ne remboursons pas sur la base de tests, de scraping ou d'un changement d'avis - les coûts de service sont engagés dès qu'une clé est active."},"apiKeys":{"q":"Comment fonctionnent les clés API ?","a":"Après ton abonnement, ta clé API est générée automatiquement et disponible dans ton tableau de bord. Il y a une clé par compte, et ton offre et tes limites d'utilisation y sont rattachées."},"cancel":{"q":"Puis-je annuler à tout moment ?","a":"Absolument. Annule depuis la page Facturation et ton abonnement continue jusqu'à la fin de la période en cours. Sans pénalité, sans frais."},"manage":{"q":"Comment gérer mon abonnement ?","a":"Tout se gère depuis ta page Facturation - consulte tes abonnements, mets à jour tes moyens de paiement, télécharge tes factures et annule tes offres. Pas besoin de portail externe."},"sandbox":{"q":"C'est quoi, l'offre Sandbox ?","a":"La Sandbox est l'évaluation gratuite de 7 jours, comptée à partir du jour de création de ton compte. Après 7 jours, chaque requête renvoie \"Evaluation period ended\" jusqu'à ce que tu choisisses une offre payante. Pendant l'évaluation, tu as 5 000 requêtes/jour, 20 requêtes/min, 50 sessions WS par 24 h, jusqu'à 3 lives simultanés, 2 heures max. par session, sans carte bancaire. Les connexions Sandbox passent par ta propre IP. Certains endpoints de données (resolve_user_ids, classement des donateurs niveau agence) sont réservés aux offres payantes. Community est l'ancien nom de cette même offre."}}},"checkout":{"discountNamed":"Remise ({name})","discount":"Remise","subtotal":"Sous-total","total":"Total","loadingKeys":"Chargement des clés...","upgradeKeyLabel":"Clé API à mettre à niveau","unnamedKey":"Clé sans nom","apiKeyLabel":"Clé API :","appliedToExisting":"Cette offre sera appliquée à ta clé API existante.","haveCoupon":"Tu as un code promo ?","couponPlaceholder":"Code promo","checking":"Vérification...","apply":"Appliquer","remove":"Retirer","couponApplied":"Code promo appliqué !","businessPurchase":"Achat professionnel","companyPlaceholder":"Nom de l'entreprise","payCardLabel":"S'abonner par carte","payOnceLabel":"Paiement unique · sans renouvellement automatique","payOnceTitle":"Paiement unique, sans renouvellement automatique","payOnceSub":"Alipay · WeChat · Crypto · Carte · iDEAL · Pix · OXXO","paypalLabel":"S'abonner avec PayPal","paypalSub":"Solde PayPal · carte liée · Venmo · s'ouvre dans une fenêtre","settingUp":"Préparation du paiement...","addCompany":"Ajouter un nom d'entreprise (facultatif)","paymentMethod":"Moyen de paiement","oneTimeTag":"Paiement unique · {period} d'accès","autoRenewTag":"Renouvellement automatique chaque {period}","oneTimeMethods":"Carte · UnionPay 银联 · Alipay · WeChat Pay · PayPal · iDEAL · Pix · OXXO · Crypto · Apple Pay · Google Pay","processing":"Traitement...","pay":"Payer {amount}","back":"Retour au récapitulatif","successTitle":"Abonnement activé !","successBody":"Ta clé API est passée à {plan}. Va sur ton tableau de bord pour commencer.","goDashboard":"Aller au tableau de bord","secured":"Sécurisé par Stripe. Nous ne stockons jamais les données de ta carte.","signedInAs":"Connecté en tant que {email}"},"planModal":{"keepCurrent":"Garder l'offre actuelle"},"agencyUpgrade":{"title":"Passer à Agency {cycle}","body":"Tu as actuellement {current} actif. Nous allons mettre à niveau ton abonnement existant directement - un seul abonnement, pas de double facturation. Stripe créditera le temps non utilisé sur ton offre actuelle et ne facturera que la différence aujourd'hui.","credit":"Crédit pour le temps non utilisé sur ton offre actuelle","lineItem":"Agency {cycle}","tax":"Taxes","chargedToday":"Débité sur ta carte aujourd'hui","chargedOnFile":"Débité sur la carte enregistrée. Annulable à tout moment.","confirm":"Confirmer la mise à niveau - {amount}","cancel":"Annuler","footer":"Stripe calcule le prorata. Pas de double facturation.","current":"{plan} {cycle}"},"weekendPassModal":{"title":"{pass} développeur","passName":"Pass week-end","lineItem":"Pro - Pass 3 jours","oneTime":"{price} en paiement unique","autoRenewNote":"Après 3 jours, renouvellement automatique en Pro à la semaine. Annulable à tout moment.","successTitle":"Pass week-end activé !","successBody":"3 jours d'accès Pro. Redirection..."},"planChange":{"creditLine":"Crédit pour le temps non utilisé sur ton offre actuelle : -{amount}","newPrice":"Nouvelle offre {plan} {cycle} : {amount}","firstCharged":", premier prélèvement le {date}","paypalNote":"PayPal s'ouvre pour approuver la nouvelle offre ; ton offre PayPal actuelle est annulée une fois l'approbation faite.","continuePaypal":"Continuer vers PayPal","taxLine":"Taxes : {amount}","chargedToday":"Débité sur ta carte aujourd'hui : {amount}","creditedNext":"Crédité sur ta prochaine facture : {amount}","nothingToday":"Rien à payer aujourd'hui.","inPlace":"Un seul abonnement, modifié directement. Pas de double facturation.","noPreview":"Tu vas passer à {plan}. Le temps non utilisé sur ton offre actuelle est crédité, et la différence éventuelle est réglée avec la carte enregistrée.","confirmCharge":"Confirmer - débiter {amount}"},"errors":{"noClientSecret":"Aucun clientSecret renvoyé","paymentFormFailed":"Le formulaire de paiement n'a pas pu se charger. Actualise la page et réessaie.","weekendPassStartFailed":"Impossible de lancer le paiement du Pass week-end","cardDeclined":"La carte a été refusée","commitFailed":"La validation a échoué","paymentFailed":"Le paiement a échoué","alreadyOnPlan":"Tu as déjà cette offre.","paymentReceivedPending":"Paiement reçu. Ton offre se met à jour dès qu'il est validé, inutile de payer à nouveau.","paymentConfirmedPlanUpdated":"Paiement confirmé. Offre mise à jour.","paypalNoApproval":"PayPal n'a pas renvoyé de lien d'approbation. Réessaie.","subscriptionCancelled":"Abonnement annulé","planUpdated":"Offre mise à jour","couldNotUpdatePlan":"Impossible de mettre à jour l'offre - réessaie ou contacte le support.","failedUpdatePlan":"La mise à jour de l'offre a échoué. Ton offre n'a pas changé.","upgradeNeedsConfirmation":"La mise à niveau nécessite une confirmation - réessaie.","agencyCheckoutFailed":"Impossible de lancer le paiement agence. Réessaie plus tard.","openCheckoutFailed":"Impossible d'ouvrir le paiement","loadKeysFailed":"Impossible de charger les clés API. Réessaie.","fixCoupon":"Corrige ou retire le code promo invalide avant de continuer.","paymentSystemNotLoaded":"Le système de paiement n'est pas chargé. Réessaie.","oneTimeFailed":"Le paiement unique a échoué","paymentInitFailed":"Le paiement n'a pas pu être initialisé. Réessaie.","createSubscriptionFailed":"Impossible de créer l'abonnement","invalidCoupon":"Code promo invalide","couponValidateFailed":"Impossible de valider le code promo","paypalFailed":"Le paiement PayPal a échoué - réessaie ou utilise une carte.","paymentSystemNotLoadedRefresh":"Le système de paiement n'est pas chargé. Actualise la page et réessaie.","paymentFormNotReady":"Le formulaire de paiement n'est pas prêt. Actualise la page et réessaie.","paymentFailedCheckCard":"Le paiement a échoué. Vérifie ta carte et réessaie.","renewKeyNotFound":"Impossible de trouver cette clé à renouveler - choisis-la ci-dessous.","paymentFailedNotCharged":"Le paiement a échoué. Tu n'as pas été débité - réessaie.","subscriptionActivated":"Abonnement activé ! Ta clé API est en cours de génération.","checkoutCanceled":"Paiement annulé. Tu peux réessayer à tout moment.","appOtherAccount":"Ce navigateur est connecté à un autre compte tik.tools. Déconnecte-toi, puis touche à nouveau Passer à la version supérieure dans l'app."},"appPlan":{"title":"Finalise ton offre {plan}","perWeek":"par semaine","perMonth":"par mois","account":"Connecté en tant que {email}","totalWithTax":"{total} aujourd'hui, taxes incluses","renewsWeekly":"Se renouvelle chaque semaine jusqu'à résiliation.","renewsMonthly":"Se renouvelle chaque mois jusqu'à résiliation.","otherWays":"Payer par carte ou PayPal","payCard":"Payer {amount}","preparing":"Préparation du paiement...","processing":"Confirmation du paiement...","successTitle":"C'est tout bon","successBody":"Ton offre {plan} est active. Retour à l'application.","pendingTitle":"Paiement reçu","pendingBody":"Ton paiement a bien été effectué. Ton offre sera activée d'ici quelques minutes.","backToApp":"Retour à l'application","failedTitle":"Le paiement n'a pas abouti","tryAgain":"Réessayer","applePayDescription":"Offre TikTools {plan}","applePayLabelWeekly":"Offre {plan}, hebdomadaire","applePayLabelMonthly":"Offre {plan}, mensuelle","agreementWeekly":"TikTools te facture {amount} chaque semaine jusqu'à résiliation. Les taxes peuvent varier selon ton pays. Résilie à tout moment sur tik.tools/billing.","agreementMonthly":"TikTools te facture {amount} chaque mois jusqu'à résiliation. Les taxes peuvent varier selon ton pays. Résilie à tout moment sur tik.tools/billing.","errors":{"generic":"Le paiement n'a pas abouti. Aucun montant n'a été débité.","startFailed":"Le paiement n'a pas pu démarrer. Aucun montant n'a été débité. Réessaie."}}},"home":{"seo":{"title":"API TikTok LIVE et classements {'|'} TikTools","description":"TikTools, aussi écrit Tik Tools, c'est l'API TikTok LIVE : chat, cadeaux, likes, spectateurs et battles en temps réel via WebSocket, SDK Node.js et Python avec une latence inférieure à 50 ms, plus les classements régionaux et de ligue sur {regions} régions.","ogDescription":"Tout ce qu'il te faut pour développer sur TikTok Live. Événements, cadeaux et battles en temps réel.","jsonLdDescription":"TikTools est une plateforme d'API développeur et de classements TikTok LIVE. Événements WebSocket en temps réel (chat, cadeaux, likes, spectateurs, battles) et classements de créateurs pour les développeurs qui créent des assistants de chat, des overlays OBS, des tableaux de bord de statistiques, des intégrations IA et des jeux."},"hero":{"quickLinksLabel":"Aller à un classement","quickLinks":{"gifters":"Donateurs","leaderboard":"Classement","popularLive":"Lives populaires","gaming":"Gaming","teams":"Équipes","shopping":"Shopping"},"liveNowLabel":"Créateurs en live en ce moment, toutes régions confondues","liveNow":"EN LIVE","openWord":"Ouvrir {word}","words":{"api":"API","websockets":"Websockets","webhooks":"Webhooks","liveEvents":"Événements live","ranksData":"Données de classement","giftsEvents":"Cadeaux et événements","earnings":"Gains","newCreators":"Nouveaux créateurs","creatorRanks":"Classement créateurs","gamingRanks":"Classement gaming","shopRanks":"Classement shopping","scoutingBoard":"Tableau de repérage","telegramBot":"Bot Telegram"},"subAgency":"Classements des créateurs en live, gains et repérage - dans toutes les régions.","subDev":"Chat, cadeaux et spectateurs en direct de n'importe quel live. Une seule API.","discoverTalents":"Découvrir des talents","manageTeam":"Gérer l'équipe","agencyPlans":"Offres agence","openDashboard":"Ouvrir le tableau de bord","getApiKey":"Clé API gratuite","apiDocs":"Doc de l'API","viewPricing":"Voir les tarifs","browseTalents":"Parcourir les talents","installLabel":"Commande d'installation","copyInstall":"Copier la commande d'installation","copiedInstall":"Commande d'installation copiée","copy":"Copier","copied":"Copié","pool":{"label":"créateurs suivis","exclusive":"Exclusivité Agency","cta":"Obtenir l'accès agence"},"digest":{"title":"Digest créateurs","badge":"Nouveau","pitch":"Les nouveaux créateurs repérés dans tes régions, envoyés par e-mail sous forme de pseudos à copier-coller plus un fichier CSV. Toutes les 6 heures ou chaque semaine.","price":"Agency dès {price}/mois","ctaSetup":"Configurer ton digest","ctaLearn":"Voir comment ça marche"},"mcp":{"label":"Configurer le MCP","kicker":"SERVEUR MCP","setup":"Configurer"}},"tutorials":{"kicker":"Tutoriels","watchOnYoutube":"Regarder sur YouTube : {title}","play":"Lire le tutoriel : {title}","choose":"Choisis un tutoriel","close":"Fermer la vidéo","iframeTitle":"Tutoriel TikTools"},"liveDemo":{"liveNow":"En live","waiting":"En attente d'une chaîne en live","watching":"{n} spectateurs","watchingInRegion":"{n} spectateurs ({region})","sent":"a envoyé {gift}","diamonds":"{n} diamants","liked":"a liké","joined":"a rejoint","viewers":"{n} spectateurs","empty":"Les événements s'affichent ici dès qu'ils se produisent sur TikTok.","count":"{count} événements depuis que tu as ouvert cette page","perMinute":"{n} / min","status":{"open":"connecté","retry":"reconnexion","paused":"en pause (onglet masqué)","connecting":"connexion"},"ago":{"now":"maintenant","seconds":"{n}s","minutes":"{n}min"}},"liveVideo":{"label":"Vidéo en direct de la chaîne de démo","live":"Live","tapToPlay":"Touche pour lire","offline":"La vidéo apparaît quand la chaîne de démo est en live","mute":"Couper le son","unmute":"Activer le son"},"events":{"eyebrow":"Explore chaque événement","title":"Vois le JSON exact que ton socket reçoit","sub":"30+ événements live. Choisis-en un, vois le payload exact.","fullReference":"Référence WebSocket complète"},"showcase":{"eyebrow":"Tout au même endroit","dev":{"title":"Tout ce dont un développeur a besoin","sub":"WebSocket, SDK typés, référence des événements, webhooks, bot Discord.","items":{"websocket":{"tag":"WebSocket","title":"API WebSocket","desc":"Chat, cadeaux, likes et spectateurs en moins de 50 ms sur une seule connexion persistante."},"guides":{"tag":"Guides","title":"Guides développeur","desc":"Des guides pas à pas pour créer des assistants de chat, des overlays et des intégrations."},"sdks":{"tag":"SDK","title":"SDK et REST","desc":"Des clients typés pour Node.js et Python, plus des endpoints REST signés dans six langages."},"events":{"tag":"Événements","title":"Référence des événements","desc":"30+ événements en temps réel - chat, cadeaux, battles, likes - avec la structure complète des payloads."},"webhooks":{"tag":"Webhooks","title":"Webhooks","desc":"Notifications de début et de fin de live envoyées à ton serveur sous forme de requêtes HTTPS signées."},"discord":{"tag":"Bot","title":"Bot Discord","desc":"Alertes live, listes de suivi et stats des créateurs envoyées directement dans ton serveur."}}},"agency":{"title":"Tout ce dont une agence a besoin","sub":"Classements, classements gaming, nouveaux créateurs, données donateurs, live shops.","items":{"ranks":{"tag":"Classements","title":"Classements","desc":"Classements régionaux et mondiaux des créateurs, mis à jour en direct sur tous les marchés."},"gaming":{"tag":"Gaming","title":"Classements gaming","desc":"Classements gaming en direct par jeu et par région - qui gagne en ce moment."},"creators":{"tag":"Créateurs","title":"Nouveaux créateurs","desc":"Les nouveaux créateurs qui montent dans les classements live par région, prêts à être vérifiés et recrutés."},"gifters":{"tag":"Donateurs","title":"Top donateurs","desc":"Dépendance aux gros donateurs, top donateurs et gains réels de n'importe quel créateur."},"agency":{"tag":"Agence","title":"Suite agence","desc":"Revendique des créateurs, gère tes régions et tes créateurs, sois visible dans l'annuaire."},"shops":{"tag":"Boutiques","title":"Boutiques live","desc":"Activité du live shopping, produits et enchères en temps réel, par région."}}}},"integration":{"liveBadge":"LIVE","dev":{"eyebrow":"Comment ça marche","title":"Tout le live, en une seule intégration","sub":"Connecter, suivre, lancer - trois étapes vers un produit live.","steps":{"connect":{"title":"Connecte le WebSocket","desc":"Ouvre une seule connexion persistante et reçois en temps réel le chat, les cadeaux, les likes, les follows et le nombre de spectateurs.","cta":"Se connecter"},"track":{"title":"Suis cadeaux, chat et classements","desc":"Parse les événements avec notre SDK : valeurs en diamants, combos, scores des battles et positions dans les classements en direct - typé de bout en bout.","cta":"Voir la doc"},"ship":{"title":"Lance ton app","desc":"Mets en ligne tes overlays, assistants, alertes ou tableaux de bord. Offre gratuite pour développer, offres payantes pour le trafic en production.","cta":"Commencer"}}},"agency":{"eyebrow":"Pour les agences","title":"Tout le live, dans un seul workflow d'agence","sub":"Découvrir, suivre, recruter - trois étapes vers une équipe de créateurs signés.","steps":{"discover":{"title":"Découvre de nouveaux créateurs","desc":"Fais ressortir les créateurs qui montent dans les classements live par région, filtrés sous le plafond du réseau et prêts pour ta vérification d'éligibilité.","cta":"Trouver des créateurs"},"track":{"title":"Suis diamants et donateurs","desc":"Vois les gains réels, les top donateurs et la dépendance aux gros donateurs de n'importe quel créateur - qui le finance, et combien.","cta":"Voir les donateurs"},"recruit":{"title":"Recrute et gère","desc":"Revendique des créateurs pour ton agence, gère tes régions et tes créateurs, et sois visible dans l'annuaire des agences.","cta":"Ouvrir la suite"}}}},"carousel":{"eyebrow":"Explorer","title":"Conçu pour tous les projets TikTok LIVE","controlsLabel":"Contrôles du carrousel","previous":"Précédent","next":"Suivant","learnMore":"En savoir plus","positionLabel":"Position dans le carrousel","goTo":"Aller à {title}","cards":{"websocket":{"tag":"WEBSOCKET","title":"Flux d'événements en temps réel","blurb":"Chat, cadeaux, likes, follows, nombre de spectateurs et battles sur un seul socket à moins de 50 ms. {count} types d'événements, dans tous les langages."},"rankings":{"tag":"CLASSEMENTS","title":"Classements régionaux","blurb":"Classements des créateurs en direct sur {regions} régions plus les tableaux de ligue, actualisés en continu à la source."},"gaming":{"tag":"GAMING","title":"Classements gaming","blurb":"Classements gaming en direct jeu par jeu, région par région, avec les progressions et les écarts pour le repérage."},"agency":{"tag":"AGENCE","title":"Repérage et données","blurb":"Données donateurs, vérificateur d'éligibilité et outils d'équipe pour les agences qui gèrent des créateurs."},"docs":{"tag":"DOCS","title":"SDK et docs","blurb":"SDK sous licence MIT, pensé TypeScript d'abord, pour Node et Python, avec des guides de démarrage rapide et une référence complète des événements."}}},"lockup":{"eyebrow":"La plateforme","title":"Une API. Tous les signaux TikTok LIVE.","sub":"Événements, classements, webhooks, données donateurs - un seul endpoint.","tiles":{"api":"API / WebSocket","leaderboards":"Classements","gaming":"Classements gaming","shopping":"Classements shopping","webhooks":"Webhooks","gifters":"Infos donateurs"}},"actions":{"eyebrow":"Explore la plateforme","title":"Tout au même endroit","sub":"Va directement aux classements, aux outils live et aux références les plus utilisés par les développeurs.","learnMore":"En savoir plus","items":{"guides":{"tag":"GUIDES","title":"Guides","desc":"Tutoriels de démarrage rapide pour Node, Python, les overlays et les bots."},"rankings":{"tag":"CLASSEMENTS","title":"Classements","desc":"Classements régionaux et de ligue des créateurs sur {regions} régions."},"gaming":{"tag":"GAMING","title":"Classements gaming","desc":"Classements gaming et shopping en direct, région par région."},"agency":{"tag":"AGENCE","title":"Agence","desc":"Repérage, données et outils d'équipe pour les agences de créateurs."},"pricing":{"tag":"TARIFS","title":"Tarifs","desc":"De la sandbox gratuite aux offres de production. Sans carte bancaire pour commencer."},"gifters":{"tag":"DONATEURS","title":"Infos donateurs","desc":"Top donateurs, gros cadeaux et les créateurs qu'ils soutiennent."},"discord":{"tag":"DISCORD","title":"Bot Discord","desc":"Alertes de passage en live et commandes de classement dans ton serveur."},"scoutingBoard":{"title":"Tableau de repérage","desc":"Repère des créateurs et reçois des alertes de passage en live dans ton serveur."},"websocket":{"tag":"WEBSOCKET","title":"API WebSocket","desc":"Les 18+ types d'événements live sur un seul socket à moins de 50 ms."}}},"examples":{"badge":"Exemples à copier-coller","title":"Trois fichiers prêts à l'emploi. Choisis un langage. Lance-le.","desc":"Clé de démo intégrée - copie, lance, c'est fait. Limites plus élevées : {link}.","descLink":"clé gratuite","titles":{"liveEvents":"Moniteur d'événements live","liveVideo":"Lecteur vidéo live","topChannels":"Top chaînes en live (public, sans auth)"},"summaries":{"liveEvents":"Reçois en temps réel le chat, les cadeaux, les likes, les follows et le nombre de spectateurs de n'importe quel créateur TikTok LIVE via WebSocket.","liveVideo":"Lis n'importe quel live TikTok dans une balise {tag} standard. Les URL des flux sont déjà incluses dans le ticker public - aucun appel d'authentification en plus.","topChannels":"Liste 10 créateurs TikTok en live en ce moment dans le monde. Gratuit, limité à 1 appel toutes les 5 min par IP."},"copyLabels":{"liveEvents":"Copier le code du moniteur d'événements live","liveVideo":"Copier le code du lecteur vidéo live","topChannels":"Copier le code des top chaînes en live (public, sans auth)"},"languagesLabel":"Langages disponibles","langLlm":"Prompt LLM","noSignup":"Fonctionne sans inscription","footnote":"{tag} 1 WebSocket / sessions de 10 min / 6 connexions par heure et par IP. Besoin de plus ? {link}.","footnoteTag":"Limites de la démo","footnoteLink":"Obtenir une clé API gratuite"},"agencyDir":{"title":"RÉFÉRENCE TON AGENCE","sub":"Fiche gratuite. Revendique tes créateurs, gagne en visibilité.","cta":"Référence ton agence - gratuit","browse":"Parcourir les agences"},"faq":{"badge":"FAQ","title":"Questions fréquentes sur l'{accent}","titleAccent":"API TikTok LIVE","desc":"Protocole, signature, tarifs, langages pris en charge - réponses rapides.","items":{"official":{"q":"Existe-t-il une API TikTok LIVE officielle ?","a":"Non. TikTok ne propose pas d'API publique pour les données de live comme le chat, les cadeaux ou le nombre de spectateurs. L'API TikTok Business ne couvre que la pub et les statistiques de la boutique. Pour accéder aux données LIVE en temps réel, les développeurs passent par des API tierces comme Tik.Tools, qui gèrent la connexion et l'authentification côté serveur."},"libraries":{"q":"Les bibliothèques TikTok LIVE comme tiktok-live-connector sont-elles gratuites ?","a":"Oui - les clients open source tiktok-live-connector (Node.js) et TikTokLive (Python) sont sous licence MIT et gratuits à installer. TikTok exige des paramètres signés (msToken, X-Bogus) qui doivent être générés côté serveur, donc ces bibliothèques délèguent la signature à un backend ; par défaut, c'est Euler Stream, qui a sa propre offre gratuite et des offres payantes pour les gros volumes. Tik.Tools est une alternative managée indépendante, avec sa propre infrastructure de signature incluse."},"eulerStream":{"q":"Quelle est la différence entre Tik.Tools et Euler Stream ?","a":"Euler Stream est un backend de signature payant utilisé par les bibliothèques open source tiktok-live-connector (Node) et TikTokLive (Python), toutes créées par la même équipe. C'est un écosystème mature et bien suivi, avec des types TypeScript, des packages npm officiels et une offre gratuite. Tik.Tools est une alternative indépendante avec sa propre infrastructure de signature, qui propose des extras que l'écosystème Euler n'offre pas actuellement, comme une couche optionnelle de données pour les agences (repérage, classements, classements de ligue). Les deux livrent les événements TikTok LIVE de façon fiable ; choisis celui dont les fonctionnalités et l'écosystème correspondent à ton projet."},"connect":{"q":"Comment se connecter à un live TikTok ?","a":"Avec Tik.Tools : installe le SDK (npm i tiktok-live-api), crée un client avec ta clé API et le pseudo du streamer, puis appelle connect(). Trois lignes de code. Tu reçois via WebSocket les événements en temps réel du chat, des cadeaux, des likes, des follows, du nombre de spectateurs, des battles et plus encore. Une clé Sandbox gratuite est disponible pour une évaluation de 7 jours, sans carte bancaire ; ensuite, une offre payante est nécessaire."},"data":{"q":"Quelles données peut-on récupérer des lives TikTok ?","a":"Un accès en temps réel à 90+ types d'événements : messages du chat, cadeaux virtuels (avec leur valeur en diamants), likes, follows, arrivées/départs des spectateurs, nombre de spectateurs, infos de la room, partages, battles/LinkMic et abonnements."},"languages":{"q":"Quels langages de programmation fonctionnent avec l'API TikTok LIVE ?","a":"Tik.Tools fonctionne avec tout langage qui gère WebSocket. SDK officiel pour Node.js/TypeScript. Python, Go, Rust, Java, C#, C++, PHP et tous les autres langages peuvent se connecter via WebSocket brut (wss://api.tik.tools), y compris les moteurs de jeu pour les jeux interactifs."}}},"guides":{"badge":"Guides","title":"API TikTok LIVE : {accent}","titleAccent":"guides et ressources pour développeurs","desc":"Démarrages rapides, bots, overlays, événements - tout pour te lancer.","items":{"gettingStarted":{"tag":"DÉMARRAGE RAPIDE","title":"Guide de démarrage","desc":"Connecte-toi à TikTok LIVE en moins de 30 secondes avec le SDK gratuit."},"chatBot":{"tag":"BOTS DE CHAT","title":"Crée un assistant de chat TikTok","desc":"Réagis aux commandes, suis le chat et lance des jeux interactifs dans le chat."},"overlay":{"tag":"OVERLAYS","title":"Guide des overlays de live","desc":"Chat, alertes de cadeaux et nombre de spectateurs en temps réel pour OBS."},"python":{"tag":"PYTHON","title":"API TikTok LIVE en Python","desc":"Connecte-toi aux lives TikTok avec Python. Support async inclus."},"websocket":{"tag":"WEBSOCKET","title":"Référence des événements WebSocket","desc":"Les {count} types d'événements : chat, cadeaux, likes, follows, battles et plus encore."},"leaderboard":{"tag":"CLASSEMENTS","title":"API classements et ligues","desc":"Classements régionaux des créateurs et tableaux de ligue dans toutes les régions actives."}},"ctas":{"startBuilding":"Commencer à développer","readGuide":"Lire le guide","viewEvents":"Voir les événements"},"allGuides":"Tous les guides","about":"À propos de Tik.Tools","websocketApi":"API WebSocket","apiDocs":"Doc de l'API"},"cta":{"dev":{"title":"Comment commencer à {accent} avec l'API TikTok LIVE ?","titleAccent":"développer","desc":"Clé gratuite pour une évaluation de 7 jours, sans carte - 5 000 requêtes/jour. Pro ({price}/semaine) pour 75 000/jour et la production.","primary":"Accéder à l'API","secondary":"Guide de démarrage rapide"},"agency":{"title":"Trouve ton prochain {accent} sur TikTok LIVE","titleAccent":"créateur","desc":"Classements en direct, données sans masquage. Agency Global dès {price}/semaine.","primary":"Découvrir des talents","secondary":"Voir les offres agence"}}},"event":{"bar":{"label":"Promo à durée limitée","endsIn":"Se termine dans","cta":"Profiter de l'offre"},"countdown":{"endsIn":"La promo se termine dans","days":"Jours","hours":"Heures","minutes":"Min","seconds":"Sec","compact":"{d}j {h}h {m}min {s}s","remaining":"La promo se termine dans {d} jours, {h} heures et {m} minutes","ends":"Se termine le {ends} à {time} UTC","perMonth":"/mois, facturé à l'année"},"annual":{"switchAria":"Période de facturation","monthly":"Mensuel","yearly":"Annuel","badge":"ANNUEL","perMonth":"/mois","billedYearlyShort":"facturé à l'année","manage":"Tu as {plan} en annuel - Gérer l'offre","fine":"Renouvellement annuel.","modalBadgeStarter":"AGENCY STARTER ANNUEL","modalBadgeGlobal":"AGENCY GLOBAL ANNUEL","orderLabel":"{plan} annuel","yearlyShort":"Annuel : {monthly}/mois","emptyHeading":"Ou paie à l'année","eyebrow":"{plan} - ANNUEL","switchButton":"{plan} annuel - {monthly}/mois, facturé à l'année","switchTitle":"Passer à {plan} annuel","aYear":"par an","pricingCtaFirstYear":"Passer à l'annuel - {total} la première année","ctaFirstYear":"Prendre {plan} annuel - {total} la première année","ctaUpgradeFirstYear":"Passer à {plan} annuel - {total} la première année","ctaSwitchFirstYear":"Passer à l'annuel - {total} la première année"},"offer":{"ended":"Cette promo est terminée. Rien n'a été débité.","used":"Cette offre a déjà été utilisée sur ton compte. Rien n'a été débité.","subline":"{total} facturé aujourd'hui, renouvelé à {renews}/an. Limitée à une par client.","monthlyStrike":"{price}/mois en mensuel","monthlyPlanSr":"Prix de l'offre mensuelle {price}/mois","perMonthYearly":"{monthly}/mois, facturé à l'année","save":"Économise {percent} %","continueMonthly":"Continuer avec la facturation mensuelle"},"checkout":{"samePlan":"Tu as déjà cette offre annuelle. Gère-la depuis Facturation Agency.","refreshing":"Actualisation des prix...","initFailed":"Impossible de charger le formulaire de carte sécurisé. Réessaie.","failed":"Le paiement a échoué. Ton offre n'a pas changé.","saleDiscount":"Remise promo","previewFailed":"Impossible de calculer le prix de ce changement. Ton offre n'a pas changé."},"halloween":{"bar":"Promo Halloween : Agency Global à {monthly}/mois, facturé à l'année. Paie 8 mois, profite de 12. Fin le {ends}.","badge":"Une affaire à faire peur","terms":"Le prix promo s'applique à la première année. La promo se termine le {ends} à 23:59 UTC."}},"rankingExperiment":{"live":"Live","unlock":"Débloquer","unlockAria":"En live maintenant. Débloque pour voir qui diffuse."},"chrome":{"skipLink":"Aller au contenu principal","og":{"subtitle":"Chat, cadeaux, likes et données spectateurs en temps réel depuis n'importe quel LIVE TikTok"},"logo":{"badgeDocs":"DOCS","badgeLive":"LIVE"},"audience":{"switchAria":"Basculer entre le mode Développeur et le mode Agence","developer":"Développeur","agency":"Agence"},"footer":{"homeAria":"Accueil {brand}","tagline":"Toute l'actu de l'API TikTok LIVE - SDK, classements et nouveautés vraiment utiles.","navAria":"Pied de page","columns":{"product":"Produit","resources":"Ressources","company":"Entreprise","support":"Support"},"links":{"sdks":"SDK","pricing":"Tarifs","webhooks":"Webhooks","mcp":"MCP + outils IA","gifterIntel":"Infos donateurs","docs":"Docs","guides":"Guides","agencyGuides":"Guides agences","leaderboards":"Classements","gamingRanks":"Classements gaming","methodology":"Méthodologie des données","compare":"Comparer","updates":"Nouveautés","agencies":"Agences","about":"À propos","useCases":"Cas d'usage","help":"Aide"},"terms":"Conditions générales","privacy":"Politique de confidentialité","status":"Statut","disclaimer":"{brand} est une plateforme tierce indépendante, qui n'est ni affiliée à TikTok ou ByteDance, ni approuvée ou sponsorisée par eux."},"mobileTabs":{"navAria":"Navigation mobile principale","goBackAria":"Retour","openMenuAria":"Ouvrir le menu","back":"Retour","menu":"Menu","ranks":"Classements","talents":"Talents","gifters":"Donateurs","board":"Tableau","docs":"Docs","guides":"Guides","pricing":"Tarifs"},"staleSession":{"title":"Session expirée","message":"Reconnecte-toi pour voir toutes tes données.","signIn":"Se connecter","dismissAria":"Fermer"},"banners":{"trialEndsIn":"FIN DE L'ACCÈS DANS","timeRemainingAria":"Temps restant","upgradeNow":"Mettre à niveau","dismissAria":"Fermer"},"header":{"nav":{"aria":"Navigation principale","guides":"Guides","features":"Fonctionnalités","ranks":"Classements","gifters":"Donateurs","agency":"Agence","docs":"Docs","pricing":"Tarifs"},"guides":{"groupHead":"Guides & docs","viewAll":"Voir tous les guides","items":{"gettingStarted":{"title":"Bien démarrer","desc":"Inscription, création d'une clé, première requête"},"websocket":{"title":"API WebSocket","desc":"Le contrat du flux d'événements en temps réel"},"chatBot":{"title":"Bot assistant de chat","desc":"Commandes et réactions de chat pour les créateurs"},"overlays":{"title":"Overlays de live","desc":"Overlays cadeaux + chat pour OBS / navigateur"},"python":{"title":"Guide Python","desc":"SDK Python async + gestionnaires d'événements"},"events":{"title":"Référence des événements","desc":"Chaque type d'événement + schéma de payload"},"leaderboardApi":{"title":"API classements & ligues","desc":"Toutes les régions actives, fenêtres de classement glissantes"},"tts":{"title":"Synthèse vocale","desc":"Lecture vocale du chat + annonces de cadeaux"},"migrateConnector":{"title":"Migrer depuis Connector","desc":"Remplacement direct de TikTok-Live-Connector"},"migrateTikapi":{"title":"Migrer depuis TikAPI","desc":"Mêmes endpoints, change juste l'URL de base"},"migrateEuler":{"title":"Migrer depuis Euler Stream","desc":"Mêmes SDK, change juste l'hôte de signature"}}},"features":{"groups":{"rank":"Classements","agency":"Agence & recrutement","live":"Outils live","reference":"Références & outils"},"items":{"ranks":{"title":"Classements","desc":"Tous les classements en un coup d'œil"},"creators":{"title":"Classement des créateurs","desc":"Top créateurs par diamants, dans chaque région"},"gifters":{"title":"Classement des donateurs","desc":"Les plus gros donateurs, classés par diamants envoyés"},"gamingRanks":{"title":"Classements gaming","desc":"Classement gaming en direct + hebdo par jeu"},"newCreators":{"title":"Nouveaux créateurs","desc":"Flux de recrutement pour agences, 30 noms à la fois"},"pulseBot":{"title":"Bot Telegram Pulse","desc":"Alertes de repérage agence dans tes messages privés"},"creatorDigest":{"title":"Digest créateurs","desc":"Nouveaux créateurs à recruter, envoyés par e-mail en pseudos + CSV"},"rising":{"title":"Rising Intel","desc":"Flux de donateurs + créateurs selon leur dynamique"},"popularLive":{"title":"LIVE populaires","desc":"Top créateurs par région en temps réel"},"team":{"title":"Gestion d'équipe","desc":"Invite tes coéquipiers + gère tes places"},"agencySuite":{"title":"Suite agence","desc":"Offres, outils + tout pour les agences"},"scoutingBoard":{"title":"Tableau de repérage","desc":"Repère des créateurs depuis ton serveur"},"bestTime":{"title":"Meilleur moment pour streamer","desc":"Heatmap mondiale des cadeaux en temps réel"},"giftCatalog":{"title":"Catalogue de cadeaux","desc":"Tous les cadeaux TikTok LIVE + téléchargement PNG"},"diamondsCalculator":{"title":"Calculateur de diamants","desc":"Diamants {arrow} USD en temps réel"},"gifterLevels":{"title":"Niveaux de donateur","desc":"Tableau L1 → L50+ en pièces + USD"},"wsDecoder":{"title":"Décodeur WebSocket","desc":"Colle une trame base64, inspecte le protobuf"},"webhooks":{"title":"Webhooks","desc":"Envoie les événements live vers ton endpoint"},"mcp":{"title":"MCP + outils IA","desc":"À utiliser dans Claude, Cursor, VSCode + GPT"},"updates":{"title":"Nouveautés de la plateforme","desc":"Changelog en direct + feuille de route"}},"promo":{"title":"Commence à suivre TikTok LIVE","desc":"Une seule clé, tous les classements et outils live.","cta":"Commencer"}},"cta":{"ranks":"Classements","loginRegister":"Connexion / Inscription","login":"Connexion","boards":"Classements","dashboard":"Tableau de bord"},"menuAria":"Menu","profile":{"openAria":"Ouvrir le menu du profil","picAlt":"Profil","userFallback":"Utilisateur","account":"Compte","apiDashboard":"Tableau de bord API","dashboard":"Tableau de bord","billing":"Facturation","signOut":"Se déconnecter"},"drawer":{"aria":"Menu du site","liveChat":"Chat en direct avec l'équipe","agencyDashboard":"Tableau de bord agence","apiDashboard":"Tableau de bord API","account":"Compte","billing":"Facturation","signOut":"Se déconnecter","getStarted":"Commencer","registerLogin":"Inscription / Connexion","getApiKey":"Obtenir une clé API","groups":{"leaderboards":"Classements","agencyRecruiting":"Agence & recrutement","liveToolsReference":"Outils live & références","learn":"Apprendre","build":"Développer","data":"Données","plans":"Offres"},"items":{"platformUpdates":"Nouveautés de la plateforme","pricing":"Tarifs","allLeaderboards":"Tous les classements","creatorsLeaderboard":"Classement des créateurs","giftersLeaderboard":"Classement des donateurs","gamingLeaderboard":"Classement gaming","newCreators":"Nouveaux créateurs","risingIntel":"Rising Intel","popularLive":"LIVE populaires","pulseBot":"Bot Telegram Pulse","creatorDigest":"Digest créateurs","teamManagement":"Gestion d'équipe","agencySuite":"Suite agence","scoutingBoard":"Tableau de repérage","bestTime":"Meilleur moment pour streamer","giftCatalog":"Catalogue de cadeaux","diamondsCalculator":"Calculateur de diamants","gifterLevels":"Niveaux de donateur","agencyGuides":"Guides agences","docs":"Docs","guides":"Guides","webhooks":"Webhooks","mcp":"MCP + outils IA","wsDecoder":"Décodeur WebSocket","migrateConnector":"Migrer depuis Connector","apiStatus":"Statut de l'API"}}},"errorPage":{"status":"Erreur {status}","notFoundTitle":"Page introuvable","notFoundBody":"Cette page n'existe pas ou a été déplacée. Recherche un créateur ou un donateur ci-dessous, ou reviens à l'accueil.","errorTitle":"Une erreur est survenue","errorBody":"Impossible de charger cette page. Réessaie dans un instant.","searchLabel":"Rechercher des créateurs et des donateurs","home":"Retour à l'accueil","rankings":"Classements LIVE"}},"overlays":{"upgradeModal":{"signIn":{"title":"Connecte-toi pour t'abonner","sub":"Crée un compte gratuit ou connecte-toi pour débloquer l'accès complet aux classements, à l'historique des créateurs et aux données des lives.","cta":"Se connecter / Créer un compte →","free":"Inscription gratuite. Sans carte bancaire."},"compareAll":"Comparer toutes les fonctionnalités →","success":{"title":"Abonnement activé !","body":"Ton compte est passé à {tier}. Rechargement..."},"step1":{"title":"Débloque l'accès complet","sub":"Classements en temps réel, historique des créateurs et données des lives"},"cycles":{"weekly":"Hebdo","monthly":"Mensuel"},"period":{"wk":"sem.","mo":"mois"},"features":{"reqPerDay":"{count} req/jour","ws":"{count} WS","unmaskedBoards":"Classements sans masquage","leagueRanks":"Classements de ligue","proLevelApi":"API niveau Pro","leagueGamingRanks":"Classements ligue + gaming","agencyDashboard":"Tableau de bord agence"},"select":"Choisir","selected":"Choisi","discount":"Réduction ({name})","subtotal":"Sous-total","taxNote":"Taxes calculées à l'étape suivante","coupon":{"toggle":"Tu as un code promo ?","placeholder":"Code promo","apply":"Appliquer","remove":"Retirer"},"subscribe":"S'abonner","payOnce":{"title":"Paiement unique pour cette période uniquement - sans renouvellement automatique","label":"Payer une fois · Alipay / WeChat / PayPal / Crypto / Carte","hint":"Sans renouvellement auto · choix à l'étape suivante"},"step2":{"paymentMethod":"Moyen de paiement","oneTimeTag":"Paiement unique · accès {period}","autoRenewsTag":"Renouvellement auto chaque {period}","acceptedOneTime":"Carte · UnionPay 银联 · Alipay · WeChat Pay · PayPal · Crypto · Apple Pay · Google Pay","total":"Total","processing":"Traitement...","pay":"Payer {amount}","back":"Retour"},"secure":"Sécurisé par Stripe. Nous ne stockons jamais les données de ta carte.","errors":{"invalidCoupon":"Code promo invalide","couponCheckFailed":"Impossible de vérifier le code promo","stripeLoad":"Le système de paiement n'a pas pu se charger.","initFailed":"Le paiement n'a pas pu être initialisé.","setupFailed":"Impossible de préparer le paiement","paymentFailed":"Échec du paiement"},"reasons":{"bulkCopy":"Copier tous les noms d'utilisateur d'un classement en un clic est une fonctionnalité Agency."}},"paypalButton":{"loading":"Chargement de PayPal...","loadError":"PayPal n'a pas pu se charger. {retry} ou paie par carte.","retry":"Réessaie","errors":{"noSubscriptionId":"PayPal n'a pas renvoyé d'identifiant d'abonnement","checkoutFailed":"Échec du paiement PayPal - réessaie ou paie par carte.","sdkLoad":"Le SDK PayPal n'a pas pu se charger"}},"keyWelcome":{"dismiss":"Fermer","choose":{"eyebrow":"BIENVENUE SUR TIK.TOOLS","title":"Qu'est-ce qui t'amène ?","sub":"Choisis une option et on t'emmène au bon endroit.","developer":{"title":"Je suis développeur","desc":"Récupérer ma clé API et développer avec les données"},"agency":{"title":"Je suis une agence","desc":"Suivre et gérer mes créateurs"}},"agency":{"eyebrow":"LISTES DE CRÉATEURS POUR AGENCES","title":"Reçois les listes de créateurs de toutes les régions avec leurs donateurs, par e-mail, Telegram et Discord. Invite tes managers. C'est tout.","shotAlt":"Listes de créateurs par région avec leurs top donateurs","cta":"OUVRIR LES LISTES"},"key":{"eyebrow":"TA CLÉ API","sub":"Ta clé Sandbox est prête. Elle authentifie chaque requête - garde-la secrète.","copied":"COPIÉE","copy":"COPIER LA CLÉ","dashboard":"ALLER AU TABLEAU DE BORD API","docs":"Lire la doc d'abord"}},"multiAccount":{"title":"Alerte comptes multiples","body":"Nous avons détecté plusieurs comptes créés depuis cet appareil ou ce réseau. Créer des comptes en double pour contourner les limites d'utilisation enfreint nos {terms} et peut entraîner la {suspension}.","terms":"Conditions d'utilisation","suspension":"suspension de tous les comptes associés","info":"Si tu as besoin de plusieurs clés pour un projet légitime, jette un œil à nos {plans}, qui proposent des emplacements de clés API supplémentaires.","paidPlans":"offres payantes","dismiss":"J'ai compris"},"slowDown":{"close":"Fermer","title":"DOUCEMENT","sub":"Tu es sur le Day Pass gratuit - juste pour tester. Tu veux le classement complet sans limites ? Passe à l'offre supérieure maintenant et garde {offer}.","offer":"{pct} % de réduction à vie","badge":"{pct} % DE RÉDUCTION À VIE","weekly":"HEBDO","monthly":"MENSUEL","perWeek":"sem.","perMonth":"mois","opening":"Ouverture...","startWeekly":"Démarrer en hebdo →","startMonthly":"Démarrer en mensuel →","keepTesting":"Continuer à tester pour l'instant"},"supportChat":{"launcher":{"unread":"{count} messages non lus","open":"Ouvrir le chat d'assistance","welcomeBlurb":"Chat en direct avec les développeurs","dismiss":"Fermer"},"header":{"title":"Chat en direct avec un dev humain. Pas une IA.","online":"En ligne - réponse en général en quelques minutes","offline":"Laisse un message - on te répond vite","close":"Fermer le chat"},"auth":{"title":"Connecte-toi pour discuter","google":"Continuer avec Google","or":"ou","email":"Adresse e-mail","password":"Mot de passe","submit":"Se connecter","errors":{"required":"E-mail et mot de passe requis","failed":"Échec de la connexion. Réessaie."}},"welcome":{"title":"Salut","desc":"Choisis une question rapide ci-dessous ou écris la tienne.","quick":{"technical":"J'ai un problème technique","agent":"Je veux parler à quelqu'un de l'équipe","other":"J'ai une autre question"}},"pass":{"twoHour":"Pass Agency 2 heures","dayPass":"Agency Day Pass","body":"L'accès complet Agency Global est maintenant actif sur ton compte.","cta":"Ouvrir le tableau de bord Agency","expired":"Il a expiré","activeDays":"Actif encore environ {count} jour(s)","activeHours":"Actif encore environ {count} heure(s)"},"messages":{"imageAlt":"Image","notSent":"non envoyé","typing":"TikTools est en train d'écrire"},"input":{"sendPhoto":"Envoyer une photo","emoji":"Emoji","placeholder":"Écris un message...","aria":"Écris un message","send":"Envoyer le message"},"blurb":{"passSent":"Tu as reçu un pass Agency","newMessage":"Nouveau message du support"},"script":{"transferred":"J'ai transmis ta demande à quelqu'un de l'équipe, merci de patienter.","agencyQuestion":"Salut - quel est le nom de ton agence, ta région et ton cas d'usage ?"}},"intelCard":{"aria":{"gifterIntel":"Infos donateur","creatorIntel":"Infos créateur","close":"Fermer","prev":"Précédent dans ce classement","next":"Suivant dans ce classement"},"hero":{"active":"ACTIF","live":"LIVE","offline":"HORS LIGNE","level":"Niv. {level}"},"unmask":{"eyebrow":"GLOBAL AGENCY","text":"Débloque les {usernames}, les pseudos des donateurs et toutes les infos.","usernames":"vrais pseudos","cta":"Voir les tarifs"},"tabs":{"overview":"Aperçu","topCreators":"Top créateurs","behavior":"Comportement","ranks":"Classements","topGifters":"Top donateurs"},"creator":{"liveScore":"Score live","boardScore":"Score au classement","peakRank":"Meilleur rang","allTime":"Depuis toujours","peakEarnings":"Gains record","noOverview":"Pas encore de données de performance.","history":{"date":"Date","rank":"Rang","diamonds":"Diamants","loading":"Chargement de l'historique des rangs...","empty":"Aucun historique de rang disponible."},"gifters":{"privateGifter":"Donateur privé","private":"Privé","loading":"Chargement des top donateurs...","empty":"Pas encore de données donateurs."}},"copyHandle":"Copier {handle}","gifter":{"totalDiamonds":"Diamants au total","estSpent":"Dépense estim.","creators":"Créateurs","totalGifts":"Cadeaux au total","noOverview":"Aucun cadeau suivi pour l'instant.","noCreators":"Aucun créateur soutenu suivi pour l'instant.","behavior":{"sessions":"Sessions","avgPerSession":"Moy. / session","rhythm":"Rythme","topShare":"Part principale","empty":"Pas encore de profil de comportement."}},"fullProfile":"Voir le profil complet","teaser":{"hiddenCreator":"Créateur masqué","ranked":"CLASSÉ","loading":"Chargement de toutes les infos...","anonNote":"Les chiffres sont réels. Suis-les avec une clé gratuite.","maskedNote":"L'identité est masquée sur l'offre gratuite. Les chiffres sont réels.","getFreeKey":"Obtenir une clé gratuite","unlock":"Débloquer toutes les infos","load":"Charger toutes les infos"},"error":{"warming":"Les infos sont en préparation.","retry":"Réessayer"},"seed":{"rank":"Rang","diamonds":"Diamants","estValue":"Valeur estim.","region":"Région"},"someone":"Quelqu'un"},"gifterArchetype":{"whale":{"label":"BALEINE","tooltip":"Surtout de gros cadeaux - la plus grosse menace financière"},"lateSniper":{"label":"SNIPER TARDIF","tooltip":"Envoie > 50 % de ses cadeaux en fin de live - spécialiste du coup de grâce"},"earlyFlexer":{"label":"FRIMEUR PRÉCOCE","tooltip":"Envoie > 50 % de ses cadeaux en début de live - frime tôt pour donner le ton"},"spammer":{"label":"SPAMMEUR","tooltip":"> 80 % de petits cadeaux - haute fréquence, faible valeur par envoi"},"loyalFan":{"label":"FAN FIDÈLE","tooltip":"> 70 % de ses dépenses vont à un seul créateur - fidèle et prévisible"},"wanderer":{"label":"NOMADE","tooltip":"Dépense chez 5+ créateurs sans vrai favori - attention facilement dispersée"},"rhythmGifter":{"label":"RÉGULIER","tooltip":"Cadence prévisible - offre des cadeaux à intervalles réguliers"}},"more":{"payment":{"confirming":"Confirmation du paiement...","processing":"Paiement en cours de traitement, ton offre sera mise à jour dès sa validation.","notCompleted":"Le paiement n'a pas été finalisé. Ton offre n'a pas changé.","failed":"Le paiement a échoué. Ton offre n'a pas changé.","notLoaded":"Le système de paiement n'est pas chargé. Réessaie."}},"chat":{"more":{"agencyAccessRequest":"Demande d'accès Agency de 2 heures","agencyHelp":"Besoin d'aide sur les offres Agency","agencyListing":"Question sur l'examen de la fiche de mon agence"}}},"rankingBoard":{"notFound":{"title":"Introuvable","body":"Aucune donnée de classement disponible.","back":"Retour à toutes les régions","error":"Classement introuvable"},"nav":{"creators":"Créateurs","gifters":"Donateurs","gaming":"Gaming"},"breadcrumb":{"rankings":"Classements"},"dropdown":{"searchRegion":"Rechercher une région...","searchRegionAria":"Rechercher une région","searchCountry":"Rechercher un pays...","searchCountryAria":"Rechercher un pays","noResults":"Aucun résultat"},"poolBadge":"RÉGION {code}","stats":{"estEarnings":"GAINS ESTIM.","liveInRegion":"EN LIVE DANS LA RÉGION","liveNow":"EN LIVE","dayEnds":"FIN DE JOURNÉE","leagueReset":"RÉINIT. DE LIGUE","weeklyReset":"RÉINIT. HEBDO","hourlyReset":"RÉINIT. HORAIRE","dailyReset":"RÉINIT. QUOTIDIENNE","rollingWindow":"FENÊTRE GLISSANTE","last7Days":"7 DERNIERS JOURS"},"updated":"Mis à jour {time}","anonBanner":{"text":"Les scores sont approximatifs - {strong}","strong":"connecte-toi pour voir les diamants exacts et les classements complets"},"regionIncludes":"La région {region} comprend :","poolLink":{"partOf":"Fait partie de :","pool":"Groupe de classement ({code})"},"cadence":{"daily":"Du jour","hourly":"Horaire"},"tabs":{"estimatedDaily":"Estimation du jour","estimatedWeekly":"Estimation hebdo","new":"NOUVEAU","popular":"Populaires","gaming":"Gaming","shopping":"Shopping","loadingLeagues":"Chargement des ligues..."},"alt":{"loading":{"estimateDaily":"Chargement du classement estimé du jour...","estimateWeekly":"Chargement du classement estimé de la semaine...","shopping":"Chargement des classements shopping...","gaming":"Chargement des classements gaming...","league":"Chargement des classements de ligue..."},"liveCount":"{count} en live","badgeEstimate":"ESTIMATION","heading":{"estimateDaily":"Estimation du jour (tous les créateurs vus aujourd'hui)","estimateWeekly":"Estimation hebdo (tous les créateurs vus cette semaine)","shopping":"Classement Live Shopping","gamingNamed":"Classement {game}","gaming":"Classement gaming","league":"Classements de ligue"},"score":{"estimate":"Diamants estim.","shopping":"Score de ventes","diamonds":"Diamants"},"hidden":{"ofListed":"{hidden} noms masqués sur {listed}","all":"{hidden} noms masqués"},"shareTitle":{"estimateDaily":"Classement estimé du jour - {region}","estimateWeekly":"Classement estimé de la semaine - {region}","shopping":"Live Shopping - {region}","game":"{game} - {region}","league":"Ligue {division} - {region}"}},"counts":{"creators":"{count} créateurs","sellers":"{count} vendeurs","movers":"{count} sortis"},"actions":{"copyAll":"Tout copier","share":"Partager","liveToggle":"Live","unlock":"Débloquer","freeKey":"clé gratuite","unlockUltra":"Débloquer avec Ultra","unlockAgency":"Débloquer avec Agency"},"diaFilter":{"title":"Filtrer par diamants mensuels","from":"De","to":"À","fromAria":"Diamants à partir de","toAria":"Diamants jusqu'à","bandTitle":"Diamants mensuels (tranche approximative)"},"estimateNote":{"dailyStrong":"Estimation, pas un classement quotidien TikTok.","dailyBody":"{region} se réinitialise toutes les heures et TikTok ne publie aucun total quotidien pour cette région : cette vue additionne donc le pic de chaque créateur sur chaque classement horaire où il est apparu depuis 00:00 UTC. Elle montre tous ceux qui ont gagné des diamants aujourd'hui, pas seulement les ~{size} visibles dans l'heure en cours.","weeklyStrong":"Estimation, pas un classement hebdo TikTok.","weeklyBody":"TikTok ne publie aucun total hebdomadaire. Cette vue est agrégée à partir de nos propres relevés de {region} sur les 7 derniers jours, en additionnant le pic de chaque créateur sur chaque période de classement où il est apparu.","hoursTitle":"Heures classées aujourd'hui et meilleur rang atteint","hoursRanked":"classé {hours} h","bestRank":"meilleur rang #{rank}","weekTitle":"Jours classés cette semaine, périodes de classement et meilleur rang atteint","daysRanked":"classé {days} j","periods":"{count} périodes"},"table":{"streamer":"Streamer","status":"Statut","revenue":"Revenus","earnings":"Gains","verified":"Créateur vérifié","passPrivate":"PASS PRIVÉ"},"status":{"live":"LIVE","offline":"HORS LIGNE"},"anon":{"revealRow":"{count} classés aujourd'hui - une clé gratuite pour creuser","moreText":"plus : classement complet, live, via l'API"},"empty":{"noneLive":"Aucun créateur n'est en live pour le moment.","noData":"Pas encore de données disponibles."},"footer":{"lastUpdated":"Dernière mise à jour {ago} · Actualisation auto toutes les 60 s","recently":"récemment","secondsAgo":"il y a {n} s","minutesAgo":"il y a {n} min"},"movers":{"title":"Entrés aujourd'hui","tag":"sous le seuil actuellement","note":"Les créateurs qui ont occupé une place dans le classement de cette région à un moment de la journée, mais qui sont actuellement sous le seuil ({cutoff}). Les mouvements autour de la réinitialisation, que TikTok ne montre jamais.","cols":{"peakRank":"Meilleur #","creator":"Créateur","peakScore":"Meilleur score","toReenter":"Pour revenir"},"locked":"verrouillé","ctaStrong":"{count} créateurs sont entrés aujourd'hui puis sont sortis - recrute-les maintenant.","ctaBody":"Les scores et les rangs sont réels, les noms sont masqués. Débloque tous les noms dans toutes les régions.","upsellTitle":"Vois tous ceux qui sont entrés puis sortis aujourd'hui","upsellBody":"Les scores et les rangs sont réels, les noms sont masqués. {strong} pour démasquer tous les créateurs entrés puis sortis, dans toutes les régions.","upsellStrong":"Débloque avec Agency sur tik.tools"},"numbers":{"heading":"{region} : le classement {board} en chiffres","liveInRegion":"En live dans la région","liveNow":"En live","liveInDivision":"En live dans cette division","liveOnBoard":"En live dans ce classement","sellersRanked":"Vendeurs classés","creatorsRanked":"Créateurs classés","leaderShopping":"Score de ventes du #1","leaderDiamonds":"Diamants du #1","topShareShopping":"Part du top {size} dans le score de ventes","topShareDiamonds":"Part du top {size} dans les diamants","otherBoards":"Autres classements {region}","leagueDivisions":"Divisions de ligue","moreFor":"Plus pour {region}"},"links":{"dailyRanking":"Classement du jour","hourlyRanking":"Classement horaire","estimatedDaily":"Classement estimé du jour","estimatedWeekly":"Classement estimé de la semaine","gaming":"Classement gaming","liveShopping":"Classement Live Shopping","popularLive":"LIVE populaires en ce moment","league":"Ligue {division}","topGifters":"Top donateurs","allRegions":"Toutes les régions","topGiftersIn":"Top donateurs - {region}","teamsIn":"Équipes - {region}"},"browse":{"eyebrow":"GROUPE RÉGIONAL","title":"Pays de cette région"},"titleRow":{"leaderboard":"Classement TikTok LIVE","estimateDaily":"Classement estimé du jour TikTok LIVE","estimateWeekly":"Classement estimé de la semaine TikTok LIVE","league":"Classement de la ligue {division} TikTok LIVE","daily":"Classement du jour TikTok LIVE","hourly":"Classement horaire TikTok LIVE"},"seo":{"titleBase":"Classement TikTok LIVE {board} - {region}","titleWithDay":"{title}, {day}","cadenceLower":{"daily":"du jour","hourly":"horaire"},"lead":"Classement TikTok LIVE {board} - {region}.","leadWithDay":"Classement TikTok LIVE {board} - {region}, {day}.","leaderShoppingNamed":"{'@'}{handle} est en tête avec un score de ventes de {score}.","leaderShopping":"Le vendeur n°1 a un score de ventes de {score}.","leaderNamed":"{'@'}{handle} est en tête avec {score} diamants.","leader":"Le créateur n°1 a {score} diamants.","tailShoppingLong":"Top {count} des vendeurs par volume de ventes, avec statut live.","tailShoppingShort":"Statut live de chaque vendeur.","tailLong":"Top {count} des créateurs avec statut live et gains estimés.","tailMedium":"Top {count} des créateurs, statut live, gains.","tailShort":"Statut live et gains.","emptyShopping":"Vendeurs classés par volume de ventes, avec statut live.","empty":"Créateurs classés par diamants, avec statut live et gains estimés.","crumbHome":"Accueil","crumbRankings":"Classements TikTok LIVE","measuredShopping":"Score de ventes","measuredDiamonds":"Diamants reçus","ogTitle":"Classement TikTok LIVE {region}","ogSubtitle":"Top créateurs par diamants, actualisé en direct","ogBadge":"CLASSEMENTS"},"agencyCta":{"title":"Débloque toutes les infos du classement.","body":"Liste de suivi, ligues en profondeur, détail des top donateurs, copie en masse, alertes Telegram.","cta":"Obtenir l'accès Agency","dismiss":"Fermer"},"share":{"title":"Partager","defaultTitle":"Tik.Tools - Classement TikTok LIVE","copy":"Copier","copied":"Copié !","nativeShare":"Partager via...","email":"E-mail"},"copyUsername":{"copied":"Copié !","title":"Copier {'@'}{name}","aria":"Copier le pseudo {'@'}{name}"},"tierBadge":{"pro":"Classements sans masquage - PRO+ dès {price}/sem.","ultra":"Ligues sans masquage - ULTRA+ dès {price}/sem.","agencyStarter":"Inclus avec {plan}","agency":"Se débloque avec Agency","global":"Flux Live Gifts - GLOBAL {price}/sem."},"watch":{"addedTitle":"{'@'}{username} ajouté à la liste de suivi","addTitle":"Ajouter {'@'}{username} à la liste de suivi de ton agence","added":"Ajouté","add":"Ajouter","failed":"Échec"},"requestAccess":{"aria":"Demander l'accès à la région","title":"Demande l'accès au propriétaire de ton agence","sub":"Ton accès d'équipe n'inclut pas {region}. Demande au propriétaire de ton agence de te l'ouvrir pour voir toutes les données ici.","thisRegion":"cette région","button":"Demander l'accès"}},"profile":{"creator":{"maskedName":"Quelqu'un","hidden":"Masqué","copiedToast":"{handle} copié dans le presse-papiers","notFound":{"degradedTitle":"Ce profil met plus de temps que d'habitude à charger","degradedBody":"Impossible de charger {handle} pour le moment. Actualise la page pour réessayer.","title":"Créateur introuvable","body":"{handle} n'est encore apparu dans aucun classement TikTok LIVE. Reviens après la prochaine mise à jour.","viewUsLeaderboard":"Voir le classement US"},"breadcrumb":{"rankings":"Classements","creator":"Créateur"},"hero":{"passPrivate":"PASS PRIVÉ","passCreator":"PASS Créateur","verifiedCreator":"Créateur vérifié","copyHandle":"Copier {handle}","liveNow":"EN LIVE","offline":"HORS LIGNE","lastSeen":"Vu pour la dernière fois {when}","peak":"Meilleur rang #{rank}","shareTitle":"Stats TikTok LIVE de {name}","website":"Site web","alsoGifter":"Aussi donateur","revenueHidden":"Revenus masqués"},"daysAgo":{"today":"aujourd'hui","one":"il y a 1 jour","many":"il y a {count} jours"},"earnHero":{"label":"Gains de {month}","hiddenByCreator":"Masqué par le créateur","unavailable":"Gains indisponibles pour le moment","none":"Pas encore de gains au classement ce mois-ci"},"authCta":{"line":"Suis {handle} gratuitement : surveille son classement et reçois des alertes live.","google":"Continuer avec Google"},"upgradeCta":{"line":"Vois tous les donateurs, l'historique complet des rangs et les vrais noms pour {handle} avec Agency.","button":"Voir les offres Agency"},"codeCta":{"title":"Récupère les événements live de {handle} en 3 lignes de code","sub":"Chat, cadeaux, likes + nombre de spectateurs en temps réel via WebSocket. Pas d'inscription - la clé de démo est déjà intégrée.","copy":"Copier le code","exampleTitle":"Événements de {handle} en direct"},"liveBar":{"liveNow":"En live","watching":"{count} spectateurs","note":"Les gains apparaissent dès qu'il entre au classement"},"topGifters":{"title":"{name} · Top donateurs","globalRank":"#{rank} mondial","private":"Privé","pctToday":"aujourd'hui","pctWeek":"sem.","pctMonth":"mois","pctLifetime":"depuis toujours","seeAll":"VOIR TOUS LES DONATEURS DE {name}"},"gifterAnalytics":{"title":"Analyse des donateurs","periods":{"today":"Aujourd'hui","week":"7 jours","month":"30 jours","lifetime":"Depuis toujours"},"colGifter":"Donateur","colEarnings":"Gains","colShare":"Part","privateGifter":"Donateur privé","empty":"Aucun donateur sur cette période.","showTop":"Afficher le top {count}","seeAll":"Voir les {count}"},"stats":{"liveScore":"Score live","todaysEarnings":"Gains du jour","peakRank":"Meilleur rang","peakDiamonds":"Record de diamants","peakEarnings":"Gains record estim.","totalEarnings":"Gains totaux estim.","daysInLeaderboard":"Jours au classement"},"performance":{"title":"Historique des performances","hiddenBadge":"Masqué par le créateur","hiddenMsg":"Ce créateur a masqué son historique de performances.","lockedMsg":"L'historique des performances est une fonctionnalité Agency. Les données du jour sont affichées ci-dessous.","unlock":"Débloquer avec Agency","diamondsChartTitle":"Diamants gagnés par jour","diamondsChartSub":"cumul par journée de classement","noHistory":"Aucune donnée d'historique","rankChartTitle":"Historique des rangs","rankChartSub":"plus bas = meilleur","noRank":"Aucune donnée de rang","tooltipDiamonds":"{value} diamants","tooltipRank":"Rang #{rank}"},"insights":{"avgRank":"Rang moyen (jours actifs)","bestDay":"Meilleure journée en diamants","streakDays":"{days} j","activeStreak":"Série active","rankTrend":"Tendance du rang","trend":{"improving":"En hausse","declining":"En baisse","stable":"Stable"}},"daily":{"title":"Détail par jour","colDate":"Date","colRank":"Rang","colDiamonds":"Diamants","colEarnings":"Gains estim.","empty":"Pas encore de données de classement disponibles."},"region":{"title":"Groupe de classement {region}","desc":"{name} est en compétition sur le marché {region} de TikTok, qui regroupe les classements de {countries}.","andMore":"{list} et {count} autres","seeFull":"Voir le classement complet {region}"},"liveNearby":{"title":"En live en ce moment - {region}","thisRegion":"Cette région"},"about":{"title":"Les performances TikTok LIVE de {handle}","introRanked":"{name} est un streamer TikTok LIVE classé #{rank} sur le marché {region} le {date}.","introPeak":"{name} est un streamer TikTok LIVE qui a atteint un meilleur rang de #{rank}.","introPlain":"{name} est un streamer TikTok LIVE.","peakScore":"Son score record est de {diamonds} diamants, soit environ {earnings} de gains estimés pour le créateur.","marketWithPool":"{name} streame sur le marché {country}, qui fait partie du groupe {region} de TikTok, avec {countries}.","market":"{name} streame sur le marché {country}.","track":"Suis son classement en temps réel, ses gains estimés et l'historique de ses performances sur TikTool."},"faq":{"notRecorded":"pas encore enregistré","earn":{"q":"Combien gagne {handle} sur TikTok LIVE ?","a":"Les diamants TikTok LIVE sont estimés à 0,005 $ par diamant pour les gains du créateur. Le score record enregistré de {name} est de {diamonds} diamants, soit environ {earnings} $. Les paiements réels dépendent des taux de conversion de TikTok et de la région du créateur. Suis les estimations quotidiennes avec TikTool Pro."},"rank":{"q":"Quel est le classement de {handle} sur TikTok LIVE ?","aRanked":"{name} est classé #{rank} dans le classement {region} le {date}. Son meilleur rang de tous les temps est {peak}.","aUnranked":"{name} n'est pas actif dans le classement en ce moment. Son meilleur rang de tous les temps est {peak}. Reviens après la prochaine mise à jour du classement."},"lastLive":{"q":"Quand {handle} a-t-il fait son dernier live sur TikTok ?","aSeen":"{name} a été vu en live pour la dernière fois le {date}. TikTool suit l'activité des classements en temps réel - abonne-toi à Pro ou Ultra pour recevoir des alertes de statut live.","aUnknown":"Nous n'avons pas encore de date confirmée du dernier live de {name}. TikTool suit les apparitions dans les classements : {name} apparaîtra ici dès qu'il sera classé lors d'un prochain live."}},"footerCta":{"title":"Suis les classements TikTok LIVE en temps réel","body":"TikTool donne aux agences et aux marques un accès instantané aux données TikTok LIVE - classements, suivi des cadeaux, analyse des gains et événements WebSocket.","leaderboard":"Classement {region}"},"sidebar":{"title":"Classement","global":"Monde","updating":"Mise à jour du classement live {region}...","empty":"Pas encore de classement live pour cette région."},"seo":{"title":"{who} : gains et stats TikTok LIVE {'|'} TikTools","descRankedIn":"{who} est classé #{rank} en {country} sur TikTok LIVE aujourd'hui avec {diamonds} diamants gagnés (≈{earnings}). Suis son statut live et ses gains sur TikTool.","descRanked":"{who} est classé #{rank} sur TikTok LIVE aujourd'hui avec {diamonds} diamants gagnés (≈{earnings}). Suis son statut live et ses gains sur TikTool.","descTrackedPeak":"{who} est un créateur TikTok LIVE suivi sur TikTool. Meilleur rang : #{rank}. Historique de classement, gains en diamants et statut live.","descTracked":"{who} est un créateur TikTok LIVE suivi sur TikTool. Historique de classement, gains en diamants et statut live.","profilePageName":"Profil TikTok LIVE de {name}","crumbHome":"Accueil","crumbRankings":"Classements TikTok LIVE","crumbCountry":"Classement {country}","ogSubtitle":"Stats de créateur TikTok LIVE","ogBadgeCreator":"CRÉATEUR"}},"gifter":{"notFound":{"title":"Donateur introuvable","body":"{'@'}{handle} n'apparaît pas encore dans notre suivi des cadeaux.","back":"Classement des donateurs"},"breadcrumb":"Classement des donateurs TikTok","passPrivate":"PASS PRIVÉ","badge":{"pass":"PASS Donateur","verified":"Donateur vérifié"},"shareTitle":"Profil de donateur TikTok de {name}","activeNow":"Actif en ce moment","watching":"regarde {handle}","alsoCreator":"Aussi créateur","chatParticipant":"Participant au chat","status":{"gifting":"OFFRE DES CADEAUX","offline":"HORS LIGNE"},"stats":{"level":"Niveau de donateur","levelValue":"Niv. {level}","levelSpend":"a dépensé {amount} sur TikTok","region":"Région","totalDiamonds":"Diamants au total","estSpent":"Dépense estim.","creatorsSupported":"Créateurs soutenus","totalGifts":"Cadeaux au total"},"privateNotice":"Ce donateur a rendu ses données de cadeaux privées.","coverage":{"trackedSince":"Suivi depuis le {date}. On ne capte que les cadeaux envoyés aux créateurs de notre liste de suivi (top classements, ligues, ajouts via /watch).","noGifts":"Aucun cadeau suivi pour l'instant - ce donateur n'a pas encore été vu en train d'offrir à un créateur suivi. Ajoute son créateur préféré via notre {link} pour lancer la capture."},"unmask":{"text":"Vois les {usernames}, les vrais pseudos, le vrai CRM et les infos VIP. L'abonnement mensuel débloque tout.","realUsernames":"vrais pseudos","cta":"Voir les tarifs"},"behavior":{"title":"Profil du donateur","giftSize":"Taille des cadeaux","dropTiming":"Moment des envois dans le live","early":"Début","mid":"Milieu","late":"Fin","sessions":"Sessions","avgGifts":"Cadeaux moy./session","rhythm":"Score de régularité","topShare":"Part du créateur favori","basedOn":"Basé sur les {count} derniers cadeaux suivis"},"sizes":{"tiny":"Mini (<500◇)","small":"Petit (500-5K◇)","medium":"Moyen (5K-30K◇)","big":"Gros (30K+◇)"},"regional":{"title":"Classement régional","copyAll":"Tout copier","seeAll":"Tout voir"},"creators":{"title":"Les créateurs qu'il soutient","shareOfSpend":"{pct} % des dépenses"},"seeAllCreators":"VOIR TOUS LES CRÉATEURS QUE {name} SOUTIENT","someone":"Quelqu'un","scope":{"totalSince":"Total depuis le début de notre suivi (vu pour la première fois le {date}). Seuls les cadeaux aux créateurs que nous suivons sont comptés.","total":"Total depuis le début de notre suivi. Seuls les cadeaux aux créateurs que nous suivons sont comptés.","dropsSince":"Cadeaux depuis le début de notre suivi (vu pour la première fois le {date}). Seuls les cadeaux aux créateurs que nous suivons sont listés.","drops":"Cadeaux depuis le début de notre suivi. Seuls les cadeaux aux créateurs que nous suivons sont listés."},"seo":{"title":"{name} - Profil de donateur {'|'} TikTool","ogSubtitle":"Profil de donateur TikTok LIVE","ogBadge":"DONATEUR"}},"intelModal":{"close":"Fermer","eyebrow":"DONNÉES AGENCES","title":"Débloque toutes les infos créateurs & donateurs","sub":"Une seule offre. Choisis la durée qu'il te faut.","sandbox":{"label":"Offre Sandbox :","note":"parcours tout avec des pseudos masqués - sans carte bancaire.","signUp":"Inscription gratuite"},"freePlan":{"note":"Tu es sur l'{plan} en ce moment - les pseudos sont masqués. Démasque-les avec l'offre Hebdo ou Mensuelle.","plan":"offre gratuite"},"weekly":{"name":"Global Hebdo","desc":"Toutes les infos. Engagement plus léger.","cta":"Démarrer en hebdo - {price} $"},"monthly":{"name":"Global Mensuel","desc":"Les mêmes infos. Le meilleur prix pour les agences.","cta":"Démarrer en mensuel - {price} $"},"perWeek":"/sem.","perMonth":"/mois","bestPrice":"MEILLEUR PRIX","perks":{"leagueAccess":"Accès complet aux ligues, toutes les régions actives","topGifterIntel":"Infos top donateurs · vrais noms","rankHistory":"Graphiques d'historique des rangs sur 90 jours","creatorFinder":"Détecteur de nouveaux créateurs","radarBot":"Bot radar Telegram","dmAlerts":"Alertes en message privé","ultraApi":"API Ultra","wsAccess":"Accès WebSocket","bulkCopy":"Copie en masse","wholeBoard":"tout le classement en un clic","everythingWeekly":"Tout ce qu'inclut l'Hebdo, plus :","regionalChannels":"canaux régionaux + alertes en MP","wsIncluded":"Accès WebSocket inclus","massCopy":"copie des pseudos en masse","gifterGraph":"Graphe des donateurs entre créateurs","prioritySupport":"Support prioritaire · tableau de bord agence","bestPriceRosters":"Le meilleur prix pour un suivi continu · résiliable à tout moment"},"footnote":"Prix en USD · Sécurisé par Stripe · Résiliable à tout moment","back":"Retour","badgeWeekly":"HEBDO","badgeMonthly":"MENSUEL","preparing":"Préparation du paiement sécurisé...","processing":"Traitement...","pay":"Payer {amount} $","payFootnote":"Sécurisé par Stripe · Résiliable à tout moment dans /agency/billing","confirming":"Confirmation du paiement...","success":{"title":"Accès débloqué","weekly":"Global Hebdo activé.","monthly":"Global Mensuel activé.","cta":"Voir tes analyses"},"errors":{"init":"Impossible d'initialiser le paiement. Réessaie.","startFailed":"Impossible de lancer le paiement","payFailed":"Échec du paiement."}},"agencyNotes":{"title":"Notes du manager","clickToAdd":"clique pour ajouter une note","status":{"saving":"Enregistrement...","saved":"Enregistré","unsaved":"Non enregistré","synced":"Synchronisé"},"loading":"Chargement...","crmStatus":"Statut CRM","crm":{"newTarget":"Nouvelle cible","outreachSent":"Contact envoyé","inTalks":"En discussion","signed":"Signé","cold":"Froid"},"eligibilityVerified":"Éligibilité vérifiée","verified":"Vérifié","unverified":"Non vérifié","score":"score {score}","actions":{"adding":"Ajout...","watching":"Suivi","addToWatchlist":"Ajouter à la liste de suivi","onRoster":"Dans mon agence","addToRoster":"Ajouter à l'agence"},"placeholder":"Notes visibles uniquement par ton équipe. Tentatives de contact, infos sur le propriétaire, conditions de paiement, habitudes de réponse...","dashboard":"Tableau de bord","saveNow":"Enregistrer","errors":{"watchlist":"Échec de l'ajout à la liste de suivi","roster":"Échec de l'ajout à l'agence","save":"Échec de l'enregistrement"}},"widgets":{"diamondHistory":{"title":"Historique des diamants","subtitle":"Diamants gagnés par mois - données agences","loading":"Chargement de l'historique...","lockedAgency":{"title":"L'historique des diamants est une fonctionnalité Agency","body":"Vois la tendance mensuelle des gains d'un créateur avant de lui consacrer une place de recrutement.","cta":"Débloquer avec Agency"},"lockedDailyCap":{"title":"Limite quotidienne d'historiques atteinte","body":"Tu as consulté le nombre maximal d'historiques de créateurs pour aujourd'hui. Réinitialisation dans 24 heures."},"avgPerMonth":"Moy. / mois","monthsTracked":"{count} mois suivis","liveDays":"{days} j","footnote":"Les chiffres sont des fourchettes, pas des totaux exacts."},"wdrGauge":{"title":"Dépendance aux gros donateurs","subtitle":"Top 3 donateurs · part des diamants depuis toujours","tips":{"captive":"Le top 3 des donateurs fait l'essentiel des revenus - s'ils partent, le créateur s'effondre.","dependent":"Très concentré - une poignée de gros donateurs fait fortement varier les revenus.","diversified":"Réparti sur de nombreux soutiens - perdre un gros donateur ne fera pas très mal.","independent":"Large soutien de la communauté - dépendance minimale envers un seul donateur."},"verdicts":{"CAPTIVE":"CAPTIF","DEPENDENT":"DÉPENDANT","DIVERSIFIED":"DIVERSIFIÉ","INDEPENDENT":"INDÉPENDANT"}},"churnGraph":{"title":"Fidélité des gros donateurs · 90 j","subtitle":"{pct} % en moy. · {verdict}","tip":"Part des 20 plus gros donateurs de chaque semaine encore actifs la semaine la plus récente. Élevé = communauté fidèle.","verdicts":{"LOYAL_COMMUNITY":"COMMUNAUTÉ FIDÈLE","STEADY":"STABLE","BLEEDING":"EN ÉROSION","CHURNING":"EN FUITE","UNKNOWN":"INCONNU"},"tooltip":{"week":"Semaine du {week}","retained":"{pct} % fidélisés","stillActive":"{retained} sur {total} encore actifs"}},"sniperGap":{"target":"CIBLE · {region} · Rang #{rank}","overtake":"pour doubler depuis le #{rank}"},"recentDrops":{"title":"Derniers cadeaux","subtitle":"Antisèche - ce qu'il a dépensé et pour qui","today":"AUJOURD'HUI","loading":"Chargement...","empty":"Aucun cadeau suivi pour l'instant.","sends":"{count} envois","scrollMore":"Fais défiler pour voir plus","ago":{"seconds":"{n} s","minutes":"{n} min","hours":"{n} h","days":"{n} j"}},"walletFatigue":{"title":"Fatigue du portefeuille","subtitleMasked":"Rythme de dépense sur 30 jours · passe à Agency pour voir les chiffres","subtitleUsd":"Dépense sur 30 jours · {usd} $/jour en moy. · pic ◇{peak}","subtitleDiamonds":"Dépense sur 30 jours · ◇{avg}/jour en moy. · pic ◇{peak}","movingAvgLabel":"MOY. 7 JOURS"},"loyaltyDonut":{"title":"Diversification","subtitleOne":"{count} créateur soutenu · {verdict}","subtitleMany":"{count} créateurs soutenus · {verdict}","others":"Autres","verdicts":{"loyal":"FIDÈLE","focused":"CIBLÉ","split":"PARTAGÉ","scattered":"DISPERSÉ"},"tooltipShare":"{pct} % des dépenses"},"lockedValue":{"title":"Fonctionnalité Agency","ariaLabel":"Verrouillé, fonctionnalité Agency","label":"Verrouillé"}},"fin":{"eyebrow":"Finances","title":"Analyse financière","subtitleCreator":"Revenus estimés de {handle}","subtitleGifter":"Dépenses estimées de {handle}","estimated":"Estimation","basisCreator":"Paiement estimé du créateur à {rate} par diamant. Les paiements réels varient selon la région, la part de l'agence et les frais de retrait.","basisGifter":"Dépenses estimées à {rate} par pièce, le prix standard le plus bas. Les packs de pièces achetés sur les stores d'applications coûtent plus cher.","periodLabel":"Période","range":{"today":"Aujourd'hui","yesterday":"Hier","7d":"7 jours","30d":"30 jours","mtd":"Ce mois-ci","lm":"Mois dernier","90d":"90 jours","12m":"12 mois","custom":"Personnalisé"},"granLabel":"Regrouper par","gran":{"day":"Jour","week":"Semaine","month":"Mois"},"from":"Du","to":"Au","apply":"Appliquer","vsPrevRange":"par rapport au {from} - {to}","noCompare":"Aucune comparaison disponible pour cette période","noCompareShort":"Aucune comparaison","partial":"L'historique des cadeaux est conservé 90 jours, les chiffres commencent donc le {date}.","kpiLabel":"Chiffres clés","kpi":{"usdCreator":"Revenus","usdGifter":"Dépenses","diamonds":"Diamants","gifts":"Cadeaux","counterpartsCreator":"Donateurs uniques","counterpartsGifter":"Créateurs soutenus","streamsCreator":"Lives","streamsGifter":"Lives rejoints","liveHoursCreator":"Heures en live","liveHoursGifter":"Heures d'activité","usdPerStream":"Par live","usdPerHour":"Par heure de live"},"up":"Hausse","down":"Baisse","liveHoursNote":"Les heures sont mesurées du premier au dernier cadeau de chaque live.","liveHoursNoteSessions":"Les heures de live proviennent des durées de session que nous enregistrons pour chaque live.","liveHoursNoteMixed":"Les heures de live proviennent des durées de session que nous enregistrons ; les lives sans session enregistrée sont comptés du premier au dernier cadeau.","chartTitleCreator":"Évolution des revenus","chartTitleGifter":"Évolution des dépenses","chartCurrent":"Cette période","chartPrevious":"Période précédente","chartOther":"Autres cadeaux","chartAria":"Graphique de {total} sur {n} périodes, réparti par cadeau, avec la période précédente en pointillés.","heatmapTitle":"Quand l'argent arrive","heatmapSub":"Par jour de la semaine et par heure, UTC","topGifters":"Meilleurs donateurs","topCreators":"Créateurs les plus soutenus","topGifts":"Cadeaux principaux","recentStreams":"Lives récents","colName":"Nom","colUsd":"USD","colShare":"Part","colChange":"Évolution","colGift":"Cadeau","colQty":"Quantité","colStarted":"Début","colCreator":"Créateur","colDuration":"Durée","colGifts":"Cadeaux","colGifters":"Donateurs","colGiftersIn":"Donateurs du live","colPeak":"Minute de pointe","anonymous":"Donateur anonyme","hiddenName":"Privé","new":"Nouveau","showAll":"Afficher les {n}","empty":"Aucun cadeau sur cette période","export":"Exporter en CSV","loading":"Mise à jour","error":"Les analyses sont indisponibles pour le moment. Réessaie dans un instant.","retry":"Réessayer","private":"Ce donateur garde ses analyses privées.","minutes":"{n} min","hoursMinutes":"{h} h {m} min","lockTitle":"Débloquer l'analyse financière","lockBodyCreator":"Consulte les revenus estimés en dollars, les meilleurs donateurs, la répartition des cadeaux et les revenus live par live de n'importe quel créateur, par jour, semaine ou mois.","lockBodyGifter":"Consulte les dépenses estimées en dollars, les créateurs soutenus, la répartition des cadeaux et l'activité live par live de n'importe quel donateur, par jour, semaine ou mois.","priceFrom":"Offres Agency à partir de {price} par mois","lockCta":"Voir les offres Agency","sampleNote":"Aperçu avec des courbes d'exemple, pas de vrais chiffres.","sourceBoard":"Les gains de cette période proviennent du score du classement quotidien. Les cadeaux n'ont pas été enregistrés un par un : le nombre de cadeaux, les donateurs et la vue horaire ne sont pas disponibles.","sourceMixed":"Les gains combinent les cadeaux enregistrés et le score du classement quotidien. Les cadeaux enregistrés couvrent {pct} du total ; les tableaux des donateurs et des cadeaux ne montrent que les cadeaux enregistrés.","notCaptured":"Non enregistré","emptyNoGifts":"Aucun cadeau enregistré individuellement sur cette période","untimed":"Les lives sans durée enregistrée ne sont pas comptés dans les heures en direct : {n}.","boardStream":"Cadeaux non enregistrés","giftsOnly":"(cadeaux enregistrés uniquement)"}},"shared":{"polygonalSignTotem":{"carouselAria":"Carrousel de démo TikTok Live","previousSlide":"Diapo précédente","nextSlide":"Diapo suivante","loading":"Chargement du carrousel de démo 3D...","eligible":{"title":"Trouve de nouveaux créateurs {region}","badge":"NOUVELLE FONCTION AGENCE","cta":"Copier 30 pseudos"},"gifters":{"title":"Infos donateurs","badge":"LIVE","topToday":"Top donateurs du jour - {region}","line":"Les top donateurs, les gros cadeaux et les créateurs qu'ils soutiennent.","sub":"Par région, mis à jour en continu.","cta":"Explorer les donateurs"},"leagues":{"title":"Classements : ligues + gaming","creatorLeagueRanks":"Classements créateurs & ligues","regions":"régions","brackets":"tranches","liveNow":"en live","regionLive":"{n} en live","openCreator":"Ouvrir le créateur {'@'}{handle}","gamingRanks":"Classements gaming","new":"NOUVEAU","gamingCopy":"Le classement gaming de l'appli en direct, toutes régions. Exclusivité agences.","open":"Ouvrir","cta":"Ouvrir /ranking"},"regionNames":{"balkans":"Balkans","japan":"Japon","unitedStates":"États-Unis","dach":"Allemagne & DACH","brazil":"Brésil"},"player":{"title":"Lecteur live","finding":"Recherche d'une chaîne en live...","meta":"Lecture FLV + reprise auto + démarrage en 5 s","cta":"Ouvrir la démo de visionnage"},"events":{"title":"Événements live","connecting":"Connexion au flux live...","cta":"Référence WebSocket"}},"liveVideoPlayer":{"live":"LIVE","connectingTo":"Connexion au live de {user}","offline":"Live hors ligne","offlineSub":"Saisis ci-dessus le pseudo TikTok d'un compte en live","liveDemo":"DÉMO LIVE","demoEnded":"DÉMO TERMINÉE","tryItNow":"Essaie maintenant →","mute":"Couper le son","unmute":"Activer le son","switchToLandscape":"Passer en 16:9","switchToPortrait":"Passer en 9:16","fullscreen":"Plein écran","streamQuality":"Qualité du live","closeEsc":"Fermer (Échap)","closeFullscreen":"Fermer le plein écran","exitFullscreen":"Quitter le plein écran","qualityAuto":"Auto"},"liveDemo":{"monitorLabel":"Moniteur de live","usernamePlaceholder":"Pseudo TikTok...","usernameLabel":"Pseudo TikTok","connecting":"Connexion","stop":"Arrêter","connect":"Connecter","eventsLog":"Événements du live","eventsCount":"{n} événements","viewersCount":"{n} spectateurs","dismissError":"Fermer l'erreur","connectionFailed":"Échec de la connexion - changement de chaîne","status":{"connecting":"Connexion...","live":"En live","offline":"Hors ligne"},"feed":{"userFallback":"utilisateur","giftFallback":"cadeau","sent":"a envoyé {gift} x{count}","followed":"a commencé à suivre","joined":"a rejoint","likedBurst":"a liké +{n} (rafale groupée)","liked":"a liké +{n}","viewersUser":"spectateurs","viewersNow":"actuellement {n}","battleUser":"battle","battleStarted":"Début de battle / co-host","battleEnded":"Battle terminée","subscribed":"s'est abonné ({months} mois)","envelope":"enveloppe rouge ({n} diamants)","systemUser":"système","pinned":"Message épinglé"}},"homeGamingRanksBar":{"title":"Classements gaming","tag":"NOUVEAU · EXCLUSIVITÉ AGENCES","regionGaming":"Gaming {region}","defaultRegion":"États-Unis","regionAria":"Région des classements gaming","allRegions":"Toutes les régions","top5Now":"Top 5 actuel","fullBoard":"Classement complet","live":"LIVE","empty":"Aucun classement gaming n'est actif dans cette région pour le moment.","lockNote":"Les noms verrouillés se débloquent avec n'importe quelle offre agence.","seePlans":"Voir les offres"},"homeHeroTabs":{"tablistAria":"Espaces produit","tabs":{"intel":"Données agences","api":"API live"},"intelEyebrow":"Données en direct","intelSubs":{"creators":"Créateurs","gifters":"Donateurs","rankings":"Classements","gaming":"Gaming","shop":"Boutique"},"liveCount":"{n} en live","liveNow":"En live","warmingUp":"Préparation du classement live...","apiEyebrow":"Développe sur le live","apiSubs":{"gifts":"Cadeaux","events":"Événements","websocket":"WebSocket","webhooks":"Webhooks"},"yourApp":"Ton appli","openDocs":"Ouvrir la doc"},"bookLiveDemo":{"brand":"Réserver une démo live","closeAria":"Fermer la demande de démo","stepOf":"Étape {step} sur {total}","back":"Retour","persona":{"title":"Je suis...","developer":{"label":"Développeur","sub":"Je développe sur l'API"},"liveAgency":{"label":"Agence LIVE","sub":"Je gère des créateurs LIVE"},"shopAgency":{"label":"Agence Shop","sub":"Je booste le Shop & les ventes"}},"interest":{"title":"Ce qui m'intéresse","enterprise":"Entreprise","customRequest":"Demande sur mesure"},"trial":{"tag":"Accès de 3 jours","title":"Pas besoin d'appel - essaie Pro","lede":"On fait des démos live pour Ultra et au-delà, mais pas besoin d'un appel pour voir {plan} en action. Prends le Pro Pass de 3 jours et explore tout toi-même. Résiliable à tout moment.","cta":"Activer l'accès Pro de 3 jours"},"details":{"title":"Quelques infos","firstName":"Prénom","agencyName":"Nom de l'agence","email":"E-mail","region":"Région","optional":"facultatif","regionPlaceholder":"US, UE, Asie du Sud-Est...","callDetails":"Quelques infos sur l'appel","callDetailsPlaceholder":"De quoi aimerais-tu parler ?","bestTime":"Meilleur créneau","bestTimePlaceholder":"En semaine le matin, en fin d'après-midi...","timezone":"Fuseau horaire","usingAccountEmail":"On utilise l'e-mail de ton compte","invalidEmail":"Saisis un e-mail valide."},"done":{"title":"Demande reçue","lede":"On a bien reçu ta demande - quelqu'un de l'équipe te recontacte dès que possible. Merci.","close":"Fermer"},"sending":"Envoi...","submit":"Envoyer la demande","submitError":"Un problème est survenu lors de l'envoi de ta demande. Réessaie."}},"tools":{"giftDetail":{"notFound":"Cadeau introuvable.","backToCatalog":"Retour au catalogue","allGifts":"← Tous les cadeaux","fallbackName":"Cadeau TikTok LIVE","hero":{"titleSub":"Cadeau TikTok LIVE","titleSubPriced":"Cadeau TikTok LIVE, {coins}","subPriced":"Envoyer un {gift} coûte {coins}, soit environ {buyerUsd} au taux de référence de {rate} pièces pour 1 $. Le créateur reçoit {diamonds}, soit environ {creatorUsd} de gains.","subUnpriced":"Un cadeau virtuel envoyé sur TikTok LIVE. Nous n'avons pas encore de prix confirmé en pièces pour ce cadeau."},"stats":{"coin":"Pièce","coins":"Pièces"},"buyerCost":"Coût pour l'acheteur (env.)","creatorPayout":"Gains du créateur (env.)","cta":{"download":"Télécharger le PNG","overlays":"Créer des overlays TikTok LIVE"},"breakdown":{"title":"Ce que {costs} {gift} et ce que touche le créateur","titleAccent":"coûte","giftsSent":"Cadeaux envoyés","diamondsToCreator":"Diamants pour le créateur","qtyRow":"{qty} x {gift}","note":"Le coût pour l'acheteur utilise un taux de référence de {rate} pièces pour 1 $. TikTok vend les pièces par packs, et le prix par pièce dépend de la taille du pack, de la boutique et de ta région ; le paiement sur le web et les achats intégrés (qui incluent les frais de l'app store) coûtent généralement plus cher que ce taux. Les gains du créateur sont calculés à {payout} $ par diamant, avant toute part d'agence. {link}.","calculatorLink":"Convertis n'importe quel montant avec le calculateur de diamants"},"pitch":{"api":{"title":"API TikTok LIVE gratuite","body":"Connecte-toi à n'importe quel LIVE TikTok via WebSocket. Reçois chaque événement cadeau - y compris {gift} - en moins de 50 ms. Offre Sandbox gratuite, sans carte bancaire.","link":"Lire la doc →"},"gifters":{"title":"Voir les top donateurs","body":"Parcours le classement mondial des donateurs - de vrais utilisateurs qui envoient {gift} et tous les autres cadeaux dans {count} régions, mis à jour en continu.","link":"Classement des donateurs →"},"sdk":{"title":"SDK prêt pour la prod","body":"Un seul npm install -> les événements live dans ton terminal. Node.js + Python pris en charge officiellement. Utilisé par plus de 1000 développeurs.","link":"Démarrage rapide →"}},"related":{"title":"Cadeaux à un {price} similaire","titleAccent":"prix"},"units":{"coin":"{count} pièce","coins":"{count} pièces","diamond":"{count} diamant","diamonds":"{count} diamants"},"faq":{"title":"{faq} sur le cadeau {gift}","titleAccent":"FAQ","price":{"q":"Combien coûte le cadeau {gift} sur TikTok ?","a":"{gift} coûte {coins}. Au taux de référence de {rate} pièces pour 1 $, cela fait environ {usd}. Le prix réel au paiement dépend du pack de pièces, de la boutique et de la région, et les achats intégrés coûtent généralement plus cher à cause des frais de l'app store."},"earn":{"q":"Combien un créateur gagne-t-il avec un {gift} ?","a":"Le créateur reçoit {diamonds}. Au taux de {payout} $ par diamant, cela fait environ {usd}, avant toute part d'agence."},"ten":{"q":"Combien de pièces coûtent 10 cadeaux {gift} ?","a":"10 cadeaux {gift} coûtent {coins} (environ {buyerUsd}) et rapportent {diamonds} au créateur (environ {creatorUsd})."},"similar":{"q":"Quels cadeaux TikTok coûtent à peu près autant que {gift} ?","a":"Parmi les cadeaux à un prix similaire : {list}."},"listAnd":"{items} et {last}"},"final":{"title":"Tu veux chaque événement cadeau en {realTime} ?","titleAccent":"temps réel","body":"Intègre le SDK gratuit dans ton appli et reçois les événements cadeau, chat, like, follow et battle de n'importe quel LIVE TikTok.","getKey":"Obtenir une clé API (gratuite)","gifters":"Voir le classement des donateurs"},"seo":{"titleMissing":"Cadeau TikTok LIVE","titleUnpriced":"Cadeau {gift} TikTok","titlePricedOne":"Cadeau {gift} TikTok : {count} pièce (environ {usd})","titlePricedMany":"Cadeau {gift} TikTok : {count} pièces (environ {usd})","descriptionMissing":"Détails des cadeaux TikTok LIVE : prix en pièces, gains du créateur en diamants et cadeaux similaires.","descriptionUnpriced":"{gift} est un cadeau virtuel TikTok LIVE. Téléchargement PNG transparent gratuit et événements cadeaux en direct via l'API tik.tools.","descriptionLong":"Le cadeau TikTok {gift} coûte {coins} (environ {buyerUsd}). Le créateur reçoit {diamonds}, soit environ {creatorUsd}. Tableau des prix et cadeaux similaires.","descriptionMedium":"Le cadeau TikTok {gift} coûte {coins} (environ {buyerUsd}). Le créateur reçoit {diamonds}, soit environ {creatorUsd}.","descriptionShort":"{gift} : {coins} (environ {buyerUsd}) ; le créateur reçoit {diamonds} (environ {creatorUsd})."},"jsonLd":{"breadcrumbHome":"Accueil","breadcrumbGifts":"Cadeaux TikTok"},"og":{"subtitle":"{coins} / environ {usd}","badge":"CADEAU"}},"guidesHub":{"hero":{"badge":"Guides développeurs","title":"API TikTok LIVE","titleHighlight":"Guides développeurs","subtitle":"Des tutoriels pas à pas pour développer avec les données TikTok LIVE. De ta première connexion jusqu'aux applis prêtes pour la prod."},"more":{"title":"Plus de ressources","docs":{"title":"Documentation de l'API","desc":"Référence complète du SDK, événements WebSocket, endpoints REST et exemples de code."},"useCases":{"title":"Cas d'usage","desc":"Découvre ce que créent les développeurs - assistants, overlays, analytics, intégrations IA, et plus encore."}},"seo":{"title":"Guides développeurs API TikTok LIVE - Tutoriels & démarrage rapide","description":"Tutoriels pas à pas pour l'API TikTok LIVE : guide de démarrage, créer un assistant de chat, créer des overlays de live pour OBS, se connecter depuis Python, référence de l'API WebSocket. Offre gratuite disponible.","ogTitle":"Guides développeurs API TikTok LIVE - Tutoriels & démarrage rapide","ogDescription":"Guide de démarrage rapide, tutoriel d'assistant de chat, tutoriel d'overlay de live, référence des événements - apprends à développer avec les données TikTok LIVE pas à pas."},"og":{"title":"Guides API TikTok LIVE","subtitle":"Tutoriels et démarrages rapides pour développer sur TikTok LIVE.","badge":"GUIDE"},"minRead":"{count} min de lecture","levels":{"beginner":"Débutant","intermediate":"Intermédiaire","allLevels":"Tous niveaux"},"badges":{"quickStart":"Démarrage rapide","guide":"Guide","tutorial":"Tutoriel","reference":"Référence","migration":"Migration"},"guides":{"gettingStarted":{"title":"Bien démarrer avec l'API TikTok LIVE","desc":"Installe le SDK, obtiens une clé API gratuite, connecte-toi à n'importe quel live et reçois des événements en temps réel en moins de 30 secondes."},"websocket":{"title":"API WebSocket TikTok LIVE","desc":"Connecte-toi à n'importe quel LIVE TikTok via WebSocket. Reçois le chat, les cadeaux, le nombre de spectateurs et les battles en temps réel avec une latence inférieure à 50 ms."},"webhooks":{"title":"Webhooks TikTok LIVE","desc":"Reçois un POST HTTPS signé quand un créateur passe en LIVE ou termine son live. live.start et live.end avec nouvelles tentatives, rejeu et vérification de signature."},"chatAssistant":{"title":"Crée un assistant de chat TikTok Live en 5 minutes","desc":"Crée un assistant de chat complet qui répond aux commandes, suit les cadeaux, tient un classement et accueille les spectateurs."},"overlay":{"title":"Crée un overlay pour TikTok LIVE","desc":"Crée un overlay en source navigateur compatible OBS avec le fil du chat en temps réel, des alertes de cadeaux animées et l'affichage du nombre de spectateurs."},"python":{"title":"Guide Python de l'API TikTok LIVE","desc":"Connecte-toi à n'importe quel LIVE TikTok depuis Python via WebSocket. Chat, cadeaux, nombre de spectateurs en temps réel - une alternative prête pour la prod à la bibliothèque TikTokLive."},"events":{"title":"Référence des événements de l'API TikTok LIVE","desc":"Référence complète de tous les événements WebSocket en temps réel : chat, cadeau, like, follow, nombre de spectateurs, battles, abonnements, et plus encore."},"tts":{"title":"Synthèse vocale (TTS) sur TikTok Live","desc":"Apprends à utiliser la synthèse vocale sur tes lives TikTok. Crée des assistants TTS, fais lire le chat à voix haute et crée des expériences vocales interactives."},"migrate":{"title":"Migrer depuis TikTok-Live-Connector","desc":"Passe de tiktok-live-connector à tiktok-live-api en une ligne. Mêmes noms d'événements, même constructeur - change juste l'import."}}},"agencyGuidesHub":{"hero":{"badge":"Pour les agences","title":"Guides","titleHighlight":"agences TikTok","subtitle":"Des méthodes concrètes pour trouver, qualifier et signer des créateurs TikTok LIVE - basées sur les gains, la région et la croissance en direct."},"guides":{"findCreators":{"title":"Comment trouver des créateurs pour ton agence TikTok","desc":"La méthode complète : classements, en live, créateurs en hausse, éligibilité et vérification."},"byCountry":{"title":"Trouver des créateurs TikTok par pays","desc":"La prospection région par région avec les classements de plus de 28 pays."},"eligibility":{"title":"Vérifier l'éligibilité des créateurs TikTok","desc":"Réduis ta liste aux créateurs qui peuvent vraiment rejoindre une agence."}},"cta":{"title":"Tu recrutes dans plusieurs régions ?","body":"Le PASS Agency débloque les classements complets, les paliers de ligue et l'historique.","button":"Voir le PASS Agency"},"seo":{"title":"Guides agences TikTok - Trouver et signer des créateurs {'|'} TikTool","description":"Guides pour les agences TikTok LIVE : trouver des créateurs par pays et par niche, vérifier leur éligibilité et contrôler leurs gains avant de signer. Basés sur les données en direct de tik.tools.","ogTitle":"Guides agences TikTok","ogDescription":"Méthodes pour trouver, qualifier et signer des créateurs TikTok LIVE à partir de données en direct."},"jsonLd":{"breadcrumbHome":"Accueil","breadcrumbPage":"Guides agences"},"og":{"title":"Guides agences TikTok","subtitle":"Trouve, qualifie et signe des créateurs.","badge":"POUR LES AGENCES"}},"wsDecoder":{"hero":{"eyebrow":"Outil développeur","title":"{accent} TikTok LIVE","titleAccent":"Décodeur WebSocket","subtitle":"Colle une trame base64 ou hex capturée depuis le WebSocket WebCast de TikTok. On décode le format protobuf, on décompresse automatiquement le payload interne (gunzip) et on affiche l'arbre des champs. Tourne sur l'infra de signature de TikTool - aucun schéma à importer."},"input":{"label":"Entrée","placeholder":"Colle ici une trame WebCast encodée en base64...","decode":"Décoder","decoding":"Décodage...","loadSample":"Charger une trame d'exemple","clear":"Effacer"},"output":{"label":"Décodé","bytes":"{count} octets","gzipped":"payload compressé gzip","copyJson":"Copier le JSON","empty":"L'arbre des champs protobuf décodé s'affiche ici.","outerFrame":"Trame externe","innerPayload":"Payload interne (décompressé auto)"},"howto":{"title":"Comment capturer une trame WebCast","steps":{"open":"Ouvre un LIVE TikTok dans Chrome.","devtools":"DevTools > Réseau > WS. Clique sur le WebSocket {code}.","pick":"Choisis n'importe quelle trame de message. Clic droit > \"Copier le message\".","paste":"Colle-la ici. On accepte les représentations base64 et hex."},"tail":"Tu captures depuis tes propres clients ? Les SDK officiels Node.js + Python exposent chaque trame brute via l'événement {code} - logge-la une fois, puis colle-la ici pour l'inspecter. {link}","docsLink":"Doc WebSocket complète"},"errors":{"decodeFailed":"Échec du décodage"},"seo":{"title":"Décodeur WebSocket TikTok LIVE","description":"Décode les trames WebSocket base64 de l'API push WebCast de TikTok. Colle un message capturé, décompresse le payload automatiquement et inspecte l'arbre des champs protobuf.","ogTitle":"Décodeur WebSocket TikTok LIVE","ogDescription":"Décode les trames WebSocket base64 de l'API push WebCast de TikTok. Colle, décompresse, inspecte l'arbre des champs protobuf."},"protoTree":{"fieldOne":"{count} champ","fieldMany":"{count} champs"}},"agencyNames":{"seo":{"title":"Noms d'agences TikTok Live","description":"Nouveaux créateurs, nouveaux donateurs, classements, ligues, classements gaming, live shopping.","ogTitle":"Noms d'agences TikTok Live"},"jsonLd":{"name":"Noms d'agences TikTok Live","about":"Agences TikTok LIVE"},"og":{"title":"Noms d'agences TikTok Live"},"hero":{"eyebrow":"TikTok LIVE · Agences","title":"Données TikTok Live {accent}","titleAccent":"pour agences"},"pillarsTitle":"Tout ce qu'une agence suit, au même endroit","pillars":{"newCreators":{"title":"Nouveaux créateurs","copy":"Les nouveaux créateurs qui apparaissent dans les classements LIVE, prêts à être vérifiés et recrutés."},"newGifters":{"title":"Nouveaux donateurs","copy":"Les gros donateurs en hausse et les top donateurs de toutes les régions."},"leaderboards":{"title":"Classements","copy":"Classements régionaux et mondiaux des créateurs TikTok LIVE, mis à jour en direct."},"leagues":{"title":"Ligues","copy":"Les échelles de ligue Diamond Rush de A1 à D5, par région."},"gamingRanks":{"title":"Classements gaming","copy":"Classements gaming en direct par jeu et par région."},"liveShops":{"title":"Live shopping","copy":"L'activité live shopping, les produits et les enchères en temps réel."}},"links":{"title":"Explorer la plateforme","agencyDirectory":"Annuaire des agences","agencyDashboard":"Tableau de bord agence","agencyPulse":"Agency Pulse","newCreators":"Nouveaux créateurs","risingCreators":"Créateurs en hausse","regionalLeaderboards":"Classements régionaux","leagues":"Ligues","topGifters":"Top donateurs","gamingRanks":"Classements gaming","giftCatalog":"Catalogue de cadeaux","bestTime":"Meilleur moment pour streamer","diamondsCalculator":"Calculateur de diamants","gifterLevels":"Niveaux de donateur","api":"API TikTok LIVE","docs":"Docs développeurs","pricing":"Tarifs"},"cta":{"title":"Référence ton agence TikTok LIVE gratuitement","body":"Revendique le nom de ton agence, mets en avant tes meilleurs créateurs et sois trouvé en premier.","button":"Référencer ton agence →"}},"gamingRanks":{"nav":{"creators":"Créateurs","gifters":"Donateurs","gaming":"Gaming"},"hero":{"badge":"Fonction agence","badgeIncluded":"Inclus dans {plan}","badgeGlobal":"Fonction Agency Global","badgeNew":"NOUVEAU","title":"{accent} TikTok LIVE","titleAccent":"Classements gaming","subtitle":"Le classement gaming en direct que TikTok affiche dans l'appli - toutes les régions, actualisé en continu. Vois quels créateurs dominent le classement Gaming en ce moment, classés par diamants, avec leurs gains estimés. Exclusivité agences.","login":"Se connecter","unlock":"Débloquer avec Agency"},"regionGlobal":"Monde","tabs":{"overall":"Gaming {region}","shopping":"Shopping"},"titles":{"shopping":"Classement Shopping","gaming":"Classement Gaming","gameWeekly":"{game} · Hebdo","gameFallback":"Jeu"},"meta":{"ranked":"classés","updated":"mis à jour {time}","justNow":"à l'instant","minutesAgo":"il y a {n} min","hoursAgo":"il y a {n} h"},"reset":{"nextUpdate":"Prochaine mise à jour","resetsIn":"Réinitialisation dans","dailyResetIn":"Réinitialisation quotidienne dans","weeklyResetIn":"Réinitialisation hebdo dans"},"resetTitle":{"weekly":"{region} : réinitialisation chaque semaine","hourly":"{region} : réinitialisation chaque heure","daily":"{region} : réinitialisation chaque jour"},"countdown":{"now":"maintenant","daysHours":"{d} j {h} h","hoursMinutes":"{h} h {m} min"},"copyUsernames":"Copier les pseudos","shareTitle":"Classements gaming TikTok LIVE {region}","share":"Partager","loading":{"shopping":"Chargement des classements shopping...","gaming":"Chargement des classements gaming..."},"table":{"creator":"Créateur","gmv":"GMV","diamonds":"Diamants","estEarnings":"Gains estim.","peakRank":"Meilleur #","peakDiamonds":"Record de diamants","toReenter":"Pour revenir","then":"Avant","now":"Maintenant","bestRank":"Meilleur #","diamondsGained":"Diamants gagnés"},"empty":{"shopping":"Pas encore de classement shopping pour cette région.","gaming":"Pas encore de classement gaming pour cette région.","sub":"Les classements se remplissent automatiquement quand les créateurs passent en LIVE - regarde une autre région ou reviens dans un moment."},"upsell":{"board":{"titleShopping":"Débloque le classement shopping complet, toutes régions","titleGaming":"Débloque tous les classements gaming, toutes régions","bodyShopping":"Tu vois un aperçu de 3 noms - les scores GMV sont réels, les noms sont masqués. {plan} débloque le classement shopping complet sans masquage dans toutes les régions, plus le flux de recrutement, les infos donateurs et le bot Telegram privé.","bodyGaming":"Tu vois un aperçu de 3 noms - les scores sont réels, les noms sont masqués. {starterPlan} et {plan} débloquent tous les deux le classement complet sans masquage, plus le flux de recrutement et le bot Telegram privé."},"movers":{"titleShopping":"Débloque tous les vendeurs sortis du classement shopping","titleGaming":"Débloque tous les créateurs sortis du classement","bodyShopping":"Les noms sont masqués - les meilleurs rangs et les scores GMV sont réels. {plan} démasque chaque vendeur passé par le classement shopping cette semaine, dans toutes les régions, pour recruter en direct.","bodyGaming":"Les noms sont masqués - les meilleurs rangs et les scores sont réels. N'importe quelle offre agence démasque chaque créateur passé par le classement aujourd'hui, plus les diamants nécessaires pour y revenir, pour recruter en direct."},"rewind":{"title":"Débloque le rewind complet","body":"Les noms sont masqués - les rangs, les pics et les diamants gagnés sont réels. N'importe quelle offre agence démasque chaque créateur entré, sorti ou monté, sur chaque fenêtre jusqu'à 3 jours en arrière."},"shoppingFeature":"Le classement shopping","upgradeTo":"Passer à {plan}","seePlans":"Voir les offres Agency"},"movers":{"titleShopping":"Vus cette semaine","tagShopping":"hors du top 99 actuellement","titleGaming":"Entrés dans le top 99 aujourd'hui","tagGaming":"sous le seuil actuellement","count":"{count} sortis","noteShopping":"Vus dans le classement Shopping {region} cette semaine, mais hors du top 99 actuel. Les mouvements entre deux réinitialisations, que TikTok ne montre jamais.","noteGaming":"Les créateurs qui ont occupé une place dans le top 99 à un moment du cycle du jour, mais qui sont actuellement sous le seuil du #99 ({cutoff} diamants). Les mouvements autour de la réinitialisation, que TikTok ne montre jamais."},"rewind":{"title":"Rewind","note":"Le classement tel qu'il a bougé sur la dernière période, pas seulement tel qu'il est maintenant. {best} est le rang le plus haut qu'un créateur a réellement atteint à un moment de cette période : un pic qui est monté puis retombé avant que tu regardes apparaît quand même.","replaying":"Relecture du classement...","noHistory":"Pas encore d'historique exploitable pour ce classement sur cette période.","nobody":"Personne dans cette liste sur la dernière période ({window}).","since":"depuis {time}","windows":{"h2":"2 heures","h6":"6 heures","h12":"12 heures","h24":"24 heures","d3":"3 jours"},"views":{"movers":"En hausse","entered":"Entrés","left":"Sortis"}},"links":{"creators":"Classement des créateurs","gifters":"Classement des donateurs","newCreators":"Nouveaux créateurs","pulseBot":"Bot Telegram Pulse"},"seo":{"title":"Classements gaming TikTok LIVE · {region}","description":"Classements gaming TikTok LIVE pour {region} - le classement gaming en direct de l'appli, {count} créateurs classés par diamants avec leurs gains estimés. Exclusivité agences, actualisé en continu dans toutes les régions.","ogTitle":"Classements gaming TikTok LIVE"},"og":{"title":"Classements gaming TikTok LIVE","subtitle":"Les meilleurs créateurs gaming de toutes les régions, actualisés en direct.","badge":"GAMING"}}},"agencyGuides":{"common":{"badge":"Guide agence","ogBadge":"GUIDE AGENCE","faqHeading":"Questions fréquentes","relatedHeading":"Autres guides pour agences","onThisPage":"Sur cette page","sidebarDemo":"Démo du classement en direct","sidebarFaq":"FAQ","loadingLeaderboard":"Chargement du classement en direct...","agencyPass":"Agency PASS","breadcrumbHome":"Accueil","breadcrumbGuides":"Guides pour agences"},"regions":{"unitedStates":"États-Unis","uk":"Royaume-Uni","brazil":"Brésil","balkans":"Balkans","indonesia":"Indonésie","latam":"LATAM"},"leaderboardDemo":{"regionLabel":"Région","liveNow":"{count} en live","loading":"Chargement du classement...","liveBadge":"LIVE","diamondsToday":"diamants aujourd'hui","empty":"Pas de données pour ce classement pour l'instant. Essaie une autre région.","upsell":"Au-delà des deux premiers, les noms sont masqués dans la version gratuite. Les {link} démasquent le top 100 complet, dans chaque région, en temps réel.","upsellLink":"offres Agency","openBoard":"Ouvrir le classement {region} en direct"},"findCreators":{"hero":{"title":"Comment trouver des créateurs pour","titleHighlight":"ton agence TikTok","subtitle":"La méthode concrète des agences pour repérer, qualifier et signer des créateurs TikTok LIVE - par pays, par niche, par croissance et par revenus réels. Chaque méthode ci-dessous s'appuie sur les données live de tik.tools."},"lead":"Quand tu gères une agence TikTok LIVE, le plus dur n'est pas de gérer les créateurs - c'est de {strong}. Le meilleur indicateur d'un créateur à signer est public et mesurable : qui gagne vraiment des diamants, dans quel pays, à quelle vitesse il progresse et s'il est en live maintenant. tik.tools transforme ce signal en listes classées et filtrables, exploitables au quotidien. Voici exactement comment t'en servir.","leadStrong":"trouver les bons avant un concurrent","tldr":{"text":"{label} Pars du {ranking} de ton pays cible, filtre sur les {live}, surveille les {rising} pour repérer la croissance tôt, vérifie toi-même l'{eligibility}, puis examine l'historique de revenus sur le profil de chaque créateur avant de le contacter. Les agences passent à l'échelle avec {pass}.","label":"En bref :","ranking":"classement régional","live":"créateurs en live en ce moment","rising":"créateurs en progression","eligibility":"éligibilité agence"},"demo":{"heading":"Essaie : les créateurs en live qui gagnent en ce moment","body":"C'est un vrai classement, mis à jour en direct. Choisis une région : voici les créateurs TikTok LIVE qui gagnent le plus aujourd'hui. La version gratuite affiche les deux premiers ; une offre agence démasque le top 100 complet dans toutes les régions."},"methodsHeading":"Six façons de trouver des créateurs sur tik.tools","methods":{"regional":{"title":"Classements régionaux - qui gagne le plus dans ton pays","body":"Les {link} classent le top 100 des créateurs TikTok LIVE par diamants gagnés aujourd'hui, sur {count} régions. C'est le meilleur point de départ : ceux qui gagnent gros ont prouvé qu'ils savent transformer les cadeaux en revenus. Ouvre ton pays cible, trie par jour ou depuis toujours, et présélectionne les créateurs qui restent régulièrement en haut.","link":"classements par pays","tip":"Idéal pour : les créateurs qui gagnent déjà, les profils établis, la cartographie d'un marché par pays."},"liveNow":{"title":"En live maintenant - contacte les créateurs pendant leur stream","body":"{link} affiche tous les créateurs qui diffusent en ce moment, classés selon l'activité actuelle de leur live. Contacter un créateur le jour où il est en live - quand il voit ses propres chiffres - marche bien mieux qu'un message à froid une semaine plus tard. Filtre sur ta région et ta catégorie, et travaille la liste en temps réel.","link":"LIVE populaires","tip":"Idéal pour : une prise de contact au bon moment, capter les créateurs en pleine dynamique."},"rising":{"title":"Créateurs en progression - signe-les avant qu'ils explosent","body":"Le {link} fait remonter les créateurs dont les revenus accélèrent le plus vite, pas seulement ceux qui sont déjà gros. C'est là que les agences gagnent : un créateur qui grimpe vite coûte moins cher à signer et est plus réceptif qu'un nom établi. Consulte-le chaque jour et fonce sur ceux qui grimpent fort.","link":"classement Rising","tip":"Idéal pour : signer tôt, réduire le coût d'acquisition, miser sur le long terme."},"category":{"title":"Classements par catégorie et gaming - trouve des créateurs dans ta niche","body":"Si ton agence est spécialisée, utilise les classements par catégorie. Les {link} classent les créateurs gaming en live par région et par jeu, mis à jour quasiment en temps réel. Une recherche ciblée sur une niche bat un top 100 généraliste quand il te faut des créateurs adaptés à un secteur précis.","link":"classements gaming","tip":"Idéal pour : les agences spécialisées, les équipes de niche, l'adéquation à une catégorie."},"eligibility":{"title":"Vérification d'éligibilité - assure-toi qu'ils peuvent rejoindre une agence","body":"Avant de passer du temps à prospecter, vérifie qu'un créateur est éligible à un partenariat avec une agence. Copie les pseudos du classement {link} et vérifie-les toi-même avec le vérificateur d'éligibilité Chrome ou en les collant en masse dans ton backstage, pour ne pas courir après des créateurs qui ne peuvent pas signer. Rien que ça t'épargne des heures de conversations sans issue.","link":"nouveaux créateurs","tip":"Idéal pour : qualifier une présélection, éviter les prises de contact inutiles."},"vet":{"title":"Examine l'historique de revenus avant de contacter","body":"Chaque créateur a une page de profil avec son historique de diamants, sa région, son rythme de lives et ses positions récentes au classement. Un créateur qui a fait un pic une fois, ce n'est pas la même chose qu'un créateur qui gagne régulièrement chaque semaine. Lis l'historique, vérifie que la tendance est réelle, et seulement ensuite envoie une offre sur mesure. Utilise la vue {link} pour suivre toute une présélection dans le temps.","link":"Agency Pulse","tip":"Idéal pour : la vérification préalable, une approche personnalisée, éviter les feux de paille."}},"scale":{"heading":"Passer à l'échelle","body":"Travailler quelques pays à la main, c'est très bien pour commencer. Dès que tu recrutes dans de nombreuses régions ou que tu veux les classements complets sans masquage, les données de ligue (classe) et l'historique, les agences passent à {pass} - il débloque le top 100 complet de chaque région, les paliers de ligue, l'historique de croissance et le suivi multi-régions au même endroit. Les équipes qui recrutent de façon automatisée récupèrent les mêmes données via l'{api}.","apiLink":"API de classements"},"cta":{"title":"Prêt à monter ta présélection ?","text":"Ouvre les classements en direct et commence par ton pays cible.","button":"Ouvrir les classements en direct"},"faq":{"best":{"q":"Quelle est la meilleure façon de trouver des créateurs TikTok pour une agence ?","a":"Pars des classements régionaux de ton pays cible : ils classent le top 100 des créateurs TikTok LIVE par diamants gagnés, donc tu regardes des créateurs qui monétisent déjà. Croise avec le classement Rising pour repérer tôt ceux qui grimpent vite, filtre sur ceux qui sont en live maintenant pour les contacter au bon moment, vérifie l'éligibilité agence et examine l'historique de revenus de chaque créateur avant de le contacter."},"country":{"q":"Comment trouver des créateurs TikTok dans un pays précis ?","a":"Ouvre les {link} et choisis ta région : tik.tools couvre {count} régions, dont les États-Unis, le Royaume-Uni, les Balkans, l'Asie du Sud-Est, l'Amérique latine et le Brésil. Chaque région a son propre top 100 indépendant des créateurs qui y gagnent le plus aujourd'hui.","link":"classements par pays"},"early":{"q":"Comment trouver des créateurs TikTok avant qu'ils percent ?","a":"Utilise le {link}. Au lieu de classer par revenus totaux, il fait remonter les créateurs dont les revenus accélèrent le plus vite. Signer tôt un créateur qui grimpe vite coûte moins cher et rapporte plus que de courir après un nom déjà établi.","link":"classement des créateurs en progression"},"eligible":{"q":"Comment savoir si un créateur TikTok peut rejoindre une agence ?","a":"Copie les pseudos du classement {link} et vérifie-les toi-même avec le vérificateur d'éligibilité Chrome ou en les collant en masse dans ton backstage TikTok. Qualifier d'abord ta présélection, c'est ne consacrer ton temps de prospection qu'aux créateurs qui peuvent vraiment signer.","link":"nouveaux créateurs"},"vet":{"q":"Comment vérifier un créateur TikTok avant de le signer ?","a":"Regarde sur son profil l'historique de diamants, la région, le rythme de lives et les positions récentes au classement. Un créateur qui gagne régulièrement chaque semaine est une signature plus sûre qu'un créateur qui a fait un seul pic. Des revenus constants et répétables, c'est le signal à chercher."},"paid":{"q":"Faut-il une offre payante pour trouver des créateurs ?","a":"Non : les classements, le classement Rising et les vues en live sont consultables librement, avec les premières places visibles gratuitement. {link} débloque le top 100 complet sans masquage pour chaque région, les paliers de ligue, l'historique de croissance et le suivi multi-régions pour les agences qui recrutent à grande échelle."},"fresh":{"q":"Les données des créateurs sont-elles à jour ?","a":"Les classements régionaux et live se mettent à jour en continu toute la journée, et les classements par catégorie comme le gaming s'actualisent quasiment en temps réel : les créateurs que tu vois sont ceux qui gagnent et streament en ce moment, pas un instantané hebdo périmé."}},"next":{"byCountry":{"title":"Trouver des créateurs par pays","text":"La méthode de recherche région par région"},"eligibility":{"title":"Vérifier l'éligibilité des créateurs","text":"Qualifie ta présélection avant de prospecter"},"leaderboards":{"title":"Classements en direct","text":"Top 100 des créateurs dans {count} régions"},"pass":{"text":"Classements complets, ligues, historique, à grande échelle"}},"sidebar":{"regional":"1. Classements régionaux","liveNow":"2. En live maintenant","rising":"3. Créateurs en progression","category":"4. Classements par catégorie","eligibility":"5. Vérification d'éligibilité","vet":"6. Historique de revenus"},"seo":{"title":"Comment trouver des créateurs pour ton agence TikTok (guide 2026) {'|'} TikTool","description":"La méthode concrète des agences TikTok pour trouver des créateurs : classements régionaux, créateurs en live, créateurs en progression, classements par catégorie, vérification d'éligibilité et analyse des revenus - le tout sur les données live de tik.tools.","ogTitle":"Comment trouver des créateurs pour ton agence TikTok","ogDescription":"Repère, qualifie et signe des créateurs TikTok LIVE par pays, niche, croissance et revenus réels. Six méthodes sur des données live."},"og":{"title":"Trouve des créateurs pour ton agence TikTok","subtitle":"Repère, qualifie et signe sur des données live."},"jsonLd":{"name":"Comment trouver des créateurs pour ton agence TikTok","description":"La méthode pas à pas des agences pour repérer, qualifier et signer des créateurs TikTok LIVE à partir des revenus live, de la région et des données de croissance.","steps":{"regional":{"name":"Partir des classements régionaux","text":"Ouvre le classement de ta région cible et présélectionne les meilleurs créateurs TikTok LIVE par diamants gagnés aujourd'hui."},"liveNow":{"name":"Filtrer sur les créateurs en live","text":"Utilise la vue des lives en cours pour contacter les créateurs pendant qu'ils streament : tu obtiens bien plus de réponses."},"rising":{"name":"Surveiller le classement Rising","text":"Consulte chaque jour le classement des créateurs en progression pour signer tôt ceux qui grimpent vite, avant les concurrents."},"category":{"name":"Utiliser les classements par catégorie pour ta niche","text":"Utilise les classements gaming et par catégorie pour trouver des créateurs dans ton secteur."},"eligibility":{"name":"Vérifier l'éligibilité agence","text":"Vérifie l'éligibilité agence de ta présélection dans ton backstage avant de passer du temps à prospecter."},"vet":{"name":"Examiner l'historique de revenus","text":"Passe en revue l'historique de diamants et le rythme de lives de chaque créateur pour confirmer des revenus réguliers et répétables avant de le contacter."}}}},"byCountry":{"hero":{"title":"Trouver des créateurs TikTok","titleHighlight":"par pays","subtitle":"Les revenus TikTok LIVE sont classés par région. Voici comment les agences utilisent les 28+ classements par pays pour cartographier un marché et constituer une équipe locale."},"lead":"Les cadeaux TikTok LIVE sont très régionaux : les créateurs qui gagnent le plus au Brésil, dans les Balkans et en Asie du Sud-Est sont des listes totalement différentes. Si ton agence opère sur des marchés précis, le moyen le plus rapide de trouver des créateurs est d'ouvrir le classement de ce marché et de le parcourir de haut en bas. Chaque classement ci-dessous est en direct.","demo":{"heading":"Choisis ton marché et présélectionne ceux qui gagnent le plus","body":"Chaque région a son propre top 100 indépendant, classé par diamants gagnés aujourd'hui. Change de région ici, puis ouvre le classement complet de celle où tu recrutes."},"methodsHeading":"Comment exploiter un classement par pays","methods":{"region":{"title":"Ouvre ta région","body":"Va sur {link} et choisis ton pays ou ta région. Le classement affiche le top 100 des créateurs par diamants du jour, avec leur statut live et leur live en cours.","link":"les classements"},"steady":{"title":"Distingue les revenus réguliers des pics ponctuels","body":"Ouvre le profil d'un créateur pour voir son historique de revenus. Ceux qui gagnent régulièrement chaque semaine sont l'équipe que tu veux ; un pic isolé est un signal plus faible. Recrute les créateurs qui reviennent."},"live":{"title":"Contacte-les pendant leur live","body":"Filtre sur les {link} dans ta région et prends contact un jour où ils streament : le taux de réponse est bien meilleur qu'avec un message à froid.","link":"créateurs en live en ce moment"},"eligibility":{"title":"Vérifie l'éligibilité avant d'investir du temps","body":"Copie ta présélection depuis le classement {link} et vérifie-la toi-même avec le vérificateur d'éligibilité Chrome ou en la collant en masse dans ton backstage, pour ne cibler que des créateurs qui peuvent vraiment rejoindre une agence.","link":"nouveaux créateurs"}},"cta":{"title":"Tu recrutes dans plusieurs régions ?","text":"Agency PASS débloque le top 100 complet de chaque pays.","button":"Voir Agency PASS"},"faq":{"regions":{"q":"Quels pays ont des classements de créateurs TikTok ?","a":"tik.tools couvre {count} régions, dont les États-Unis, le Royaume-Uni, le Brésil, les Balkans, l'Asie du Sud-Est, l'Amérique latine et d'autres. Chacune a son propre top 100 indépendant des créateurs qui y gagnent le plus aujourd'hui."},"topInCountry":{"q":"Comment trouver les meilleurs créateurs TikTok d'un pays ?","a":"Ouvre les {link}, choisis le pays et lis le top 100 classé par diamants gagnés aujourd'hui. C'est ta présélection de départ : des créateurs qui gagnent déjà sur ce marché.","link":"classements"},"realCountry":{"q":"Les créateurs sont-ils regroupés selon leur vrai pays ?","a":"Oui. Les classements sont construits à partir de l'endroit où un créateur gagne réellement, donc un classement par pays reflète les vrais créateurs de ce marché plutôt qu'un mélange mondial."}},"next":{"playbook":{"title":"Trouver des créateurs : la méthode complète","text":"Les six méthodes de recherche"},"eligibility":{"title":"Vérifier l'éligibilité","text":"Qualifie avant de prospecter"}},"sidebar":{"region":"1. Ouvre ta région","steady":"2. Régularité vs pics","live":"3. Contacte-les en live","eligibility":"4. Vérifie l'éligibilité"},"seo":{"title":"Trouver des créateurs TikTok par pays - Guide agence {'|'} TikTool","description":"Comment les agences TikTok trouvent des créateurs dans un pays précis grâce aux {count} classements régionaux. Présélectionne ceux qui gagnent le plus, contacte-les en live et vérifie leur éligibilité - sur des données live.","ogTitle":"Trouver des créateurs TikTok par pays","ogDescription":"Cartographie n'importe quel marché avec les classements TikTok LIVE par pays. {count} régions, revenus en direct."},"og":{"title":"Trouver des créateurs TikTok par pays","subtitle":"{count} classements régionaux, en direct."},"jsonLd":{"breadcrumbPage":"Trouver des créateurs par pays"}},"eligibility":{"hero":{"title":"Vérifier l'éligibilité","titleHighlight":"des créateurs TikTok","subtitle":"Avant de passer du temps à prospecter, vérifie qu'un créateur peut vraiment rejoindre une agence. Voici comment les agences qualifient d'abord leur présélection."},"lead":"La façon la plus courante de perdre du temps en recrutement, c'est de courir après des créateurs qui ne peuvent pas signer. Qualifier ta présélection en amont - avant d'envoyer le moindre message - garantit que chaque conversation peut vraiment aboutir à un partenariat. tik.tools te donne les nouveaux créateurs à vérifier, le vérificateur d'éligibilité Chrome et une copie en masse pour ton backstage, pour travailler à partir d'une liste propre que tu as vérifiée toi-même.","cta":{"title":"Ouvre le classement des nouveaux créateurs","text":"Copie les pseudos, puis vérifie-les dans ton backstage.","button":"Nouveaux créateurs"},"methodsHeading":"Comment qualifier un créateur avant de le contacter","methods":{"shortlist":{"title":"Monte une présélection depuis les classements","body":"Pars des {ranking} ou des {rising} et rassemble les créateurs que tu voudrais signer sur ton marché.","rankingLink":"classements régionaux","risingLink":"créateurs en progression"},"check":{"title":"Vérifie l'éligibilité toi-même","body":"Copie la présélection depuis le classement {link} et passe-la dans le vérificateur d'éligibilité Chrome ou colle-la en masse dans ton backstage. Ça écarte les comptes qui ne remplissent pas les conditions des agences TikTok LIVE, pour ne pas courir après des impasses.","link":"nouveaux créateurs"},"earnings":{"title":"Vérifie que les revenus sont réels et répétables","body":"Ouvre le profil de chaque créateur et lis l'historique de diamants. Éligibilité plus tendance de revenus hebdo régulière : c'est la combinaison qui vaut le coup - un créateur éligible qui n'a fait qu'un seul pic est un pari plus risqué."},"live":{"title":"Contacte-les pendant leur live","body":"Écris aux créateurs qualifiés un jour où ils sont {link}. Caler ta prise de contact sur une session active donne systématiquement de meilleures réponses.","link":"en live"}},"faq":{"canJoin":{"q":"Comment savoir si un créateur TikTok peut rejoindre une agence ?","a":"Copie les pseudos du classement {link} et vérifie-les avec le vérificateur d'éligibilité Chrome ou en les collant en masse dans ton backstage TikTok. Un créateur qui passe ta vérification est en mesure de signer avec une agence.","link":"nouveaux créateurs"},"why":{"q":"Pourquoi qualifier les créateurs avant de les contacter ?","a":"La prospection prend du temps. Qualifier d'abord ta présélection garantit que chaque conversation peut vraiment aboutir à un partenariat, au lieu de découvrir en pleine discussion qu'un créateur ne peut pas te rejoindre."},"enough":{"q":"L'éligibilité suffit-elle à elle seule ?","a":"Non : associe-la à l'historique de revenus. Un créateur éligible qui gagne régulièrement chaque semaine est la meilleure signature. Éligibilité plus pic ponctuel, c'est un signal plus faible."}},"next":{"playbook":{"title":"Trouver des créateurs : la méthode complète","text":"Les six méthodes de recherche"},"byCountry":{"title":"Trouver des créateurs par pays","text":"Recherche région par région"}},"sidebar":{"shortlist":"1. Monte une présélection","check":"2. Vérifie l'éligibilité","earnings":"3. Vérifie les revenus","live":"4. Contacte-les en live"},"seo":{"title":"Vérifier l'éligibilité des créateurs TikTok - Guide agence {'|'} TikTool","description":"Comment les agences TikTok qualifient les créateurs avant de les contacter : vérifie l'éligibilité agence d'une présélection dans ton backstage, puis assure-toi que les revenus sont réguliers. Sur des données live.","ogTitle":"Vérifier l'éligibilité des créateurs TikTok","ogDescription":"Réduis ta présélection aux créateurs qui peuvent vraiment rejoindre une agence avant de passer du temps à prospecter."},"og":{"title":"Vérifier l'éligibilité des créateurs TikTok","subtitle":"Qualifie avant de contacter."},"jsonLd":{"breadcrumbPage":"Vérifier l'éligibilité des créateurs"}}},"agencyProfile":{"page":{"seo":{"title":"{name} - Agence TikTok LIVE {'|'} TikTool","fallbackTitle":"Agence - TikTool","fallbackDescription":"Profil d'agence TikTok LIVE sur TikTool."},"missing":{"title":"Agence introuvable","body":"Cette fiche n'existe pas ou n'est pas encore publique.","back":"Retour à l'annuaire"},"uploading":"Envoi...","submitting":"Envoi...","sending":"Envoi...","close":"Fermer","cancel":"Annuler","messageAgency":"Écrire à l'agence","reportFakeData":"Signaler de fausses données","status":{"draft":{"tag":"BROUILLON","title":"Termine ta fiche : envoie une preuve backstage + soumets-la pour validation.","sub":"Envoie une capture d'écran du backstage de ton agence (tableau de bord agence LIVE) pour qu'on puisse vérifier que tu en es bien le propriétaire.","proofUploaded":"Preuve envoyée - remplacer","uploadProof":"Envoyer la preuve backstage","submit":"Soumettre pour validation"},"pending":{"tag":"EN COURS DE VALIDATION","title":"On vérifie chaque fiche à la main. Délai moyen : quelques heures.","chat":"DISCUTER AVEC NOUS"},"needsInfo":{"tag":"INFOS À COMPLÉTER","title":"Notre équipe de validation a laissé une note.","proofUploaded":"Nouvelle preuve envoyée - remplacer","uploadProof":"Envoyer une nouvelle preuve","resubmitting":"Nouvel envoi...","resubmit":"Soumettre à nouveau"},"rejected":{"tag":"REFUSÉE","title":"Cette fiche n'a pas été approuvée.","chat":"Discuter avec nous"}},"analytics":{"title":"Statistiques de la page","onlyYou":"Visible par toi seul","pageViews":"Vues de la page","last7":"7 derniers jours","last30":"30 derniers jours","sparkLabel":"Vues quotidiennes de la page, {count} derniers jours","barTitle":"{date} : {views} vues","loading":"Chargement des statistiques...","unavailable":"Statistiques indisponibles pour le moment."},"featured":{"active":"AGENCE À LA UNE - active","upsellTitle":"Apparaître comme agence à la une","upsellSub":"Les agences à la une apparaissent en haut de l'annuaire. Inclus avec toute offre Agency active (hebdo ou mensuelle).","cta":"Passer à la une"},"roster":{"featuredTitle":"À la une","featuredHint":"Ajoute une étoile à 3 créateurs maximum pour les mettre en avant ici","live":"LIVE","unfeature":"Retirer de la une","unfeatureCreator":"Retirer le créateur de la une","feature":"Mettre à la une","confirmRemove":"Confirmer le retrait","removeFromRoster":"Retirer de l'équipe","removeAsk":"Retirer ?","noFeatured":"Aucun créateur à la une pour l'instant.","liveNow":"En live","watch":"Regarder","title":"Équipe","allFeaturedOrLive":"Tout le monde est à la une ou en live en ce moment.","noCreators":"Aucun créateur revendiqué pour l'instant."},"add":{"title":"Ajouter des créateurs","placeholder":"Rechercher des créateurs par {'@'}pseudo ou nom affiché","ariaLabel":"Rechercher des créateurs","claimed":"Revendiqué","claim":"Revendiquer","noResults":"Aucun créateur trouvé."},"edit":{"title":"Modifier les infos","languages":"Langues","languagesPlaceholder":"Ajoute une langue, appuie sur Entrée","tags":"Tags","tagsPlaceholder":"Ajoute un tag, appuie sur Entrée","contactEmail":"E-mail de contact","contactPhone":"Téléphone de contact","private":"Privé - jamais affiché publiquement"},"reports":{"title":"Signalements","none":"Aucun signalement ouvert contre cette équipe.","responsePlaceholder":"Réponse facultative au modérateur","evidenceSent":"Preuve envoyée - remplacer","uploadEvidence":"Envoyer une preuve","deadlinePassed":"délai dépassé","timeLeft":"encore {hours} h {minutes} min"},"inbox":{"title":"Messagerie","empty":"Aucun message pour l'instant. Les visiteurs peuvent t'écrire depuis cette page ; les réponses partent par e-mail via TikTool.","replyPlaceholder":"Répondre...","reply":"Répondre"},"messageModal":{"title":"Écrire à {name}","sub":"Ton message est transmis en privé. L'agence répond par e-mail via TikTool - les coordonnées ne sont jamais affichées.","placeholder":"Présente-toi et dis ce que tu recherches...","send":"Envoyer le message"},"reportModal":{"title":"Signaler de fausses données pour {'@'}{username}","sub":"Si ce créateur n'appartient pas vraiment à cette agence, explique-nous pourquoi. Les deux parties sont prévenues et l'agence a 48 heures pour fournir des preuves avant le retrait de la revendication.","placeholder":"Qu'est-ce qui ne va pas avec cette revendication ? (10 caractères min.)","submit":"Envoyer le signalement","doneTitle":"Signalement envoyé","doneSub":"Les deux parties ont été prévenues. L'agence a 48 heures pour fournir des preuves."},"creatorMenu":{"aria":"Actions sur le créateur"},"time":{"justNow":"à l'instant","minutesAgo":"il y a {n} min","hoursAgo":"il y a {n} h","daysAgo":"il y a {n} j"},"toast":{"sent":"Envoyé - l'agence te répondra par e-mail via TikTool"},"errors":{"uploadFailed":"Échec de l'envoi - essaie une image plus légère","evidenceFailed":"Échec de l'envoi de la preuve - réessaie.","submitFailed":"Échec de l'envoi - réessaie.","featureLimit":"3 créateurs à la une maximum - retire d'abord une étoile.","featureFailed":"Impossible de mettre à jour les créateurs à la une.","claimFailed":"Échec de la revendication - réessaie.","removeFailed":"Échec du retrait - réessaie","reportEvidenceFailed":"Échec de l'envoi de la preuve.","replyFailed":"Échec de la réponse.","messageFailed":"Échec de l'envoi du message - réessaie.","reportFailed":"Échec du signalement - réessaie."}},"view":{"bannerAlt":"Bannière de {name}","logoAlt":"Logo de {name}","bannerCta":"Clique pour envoyer ta bannière","uploading":"Envoi...","changeBanner":"Changer la bannière","uploadBanner":"Envoyer une bannière","addLogo":"Ajouter un logo","change":"Changer","regionsAria":"Régions","done":"Terminé","editRegions":"Modifier les régions","addRegions":"Ajouter des régions","nameAria":"Nom de l'agence","verified":"Agence vérifiée","featuredTitle":"Agence à la une","featuredBadge":"AGENCE À LA UNE","newPill":"NOUVEAU","taglineAria":"Slogan","website":"Site web","about":"À propos","tooLong":"- trop long, retire {count} caractères","saving":"Enregistrement...","saved":"Enregistré","saveFailed":"Échec de l'enregistrement"},"chipInput":{"placeholder":"Ajoute, appuie sur Entrée","remove":"Retirer {item}"},"sdk":{"seo":{"title":"SDK agence TikTok LIVE pour JavaScript et Python","description":"SDK agence TikTok LIVE non officiel de tik.tools pour npm et PyPI : trouve des créateurs à recruter, suis le statut live et les diamants de ton équipe, reçois des webhooks de passage en LIVE et crée des tableaux de bord agence sur mesure."},"jsonLd":{"breadcrumbHome":"Accueil"},"ogImage":{"subtitle":"Recrutement, statut live de l'équipe, diamants et webhooks."},"hero":{"subtitle":"Trouve des créateurs à recruter, vois qui est en live dans ton équipe, suis les diamants, reçois des webhooks de passage en LIVE et crée ton propre tableau de bord agence. Une seule clé API, pour JavaScript, TypeScript et Python.","npm":"Package npm","pypi":"Package PyPI"},"what":{"title":"Ce qu'il apporte aux agences","intro":"{pkg} encapsule l'API tik.tools dans un client typé conçu pour les agences TikTok LIVE (Creator Networks, TCN, MCN). Le même nom de package existe sur npm et PyPI, et les deux clients partagent la même liste de méthodes.","facts":{"recruit":{"title":"Trouve des créateurs à recruter.","body":"Les créateurs classés par région susceptibles de rejoindre une agence, les nouveaux arrivants dans le vivier de recrutement et les créateurs qui sortent des ligues."},"roster":{"title":"Statut live et diamants de l'équipe.","body":"Vois lesquels de tes créateurs sont en live en ce moment, et consulte les diamants par créateur et par équipe, calculés à partir des cadeaux captés pendant leurs streams."},"webhooks":{"title":"Webhooks.","body":"Des alertes signées de passage en LIVE et de fin de stream envoyées à ton serveur, avec un vérificateur pour Node, Edge, Workers et Python."},"dashboards":{"title":"Tableaux de bord sur mesure.","body":"Du JSON brut avec les noms de champs de l'API, pour que les données s'intègrent directement dans une page Next.js, un notebook ou un export tableur."}}},"install":{"title":"Installation","js":"JavaScript et TypeScript","key":"Définis ta clé dans la variable d'environnement {envVar} côté serveur. Ne l'envoie jamais dans un navigateur : le client TypeScript refuse de démarrer dans une page web. Les clés sont sur la {link}.","pricingLink":"page des tarifs"},"examples":{"title":"Exemples","live":"Lesquels de mes créateurs sont en live (TypeScript)","webhook":"Vérifier un webhook de passage en LIVE dans un Route Handler Next.js (TypeScript)","python":"Créateurs à recruter et diamants de l'équipe (Python)","planError":"Un appel que ton offre n'inclut pas lève {error} avec l'offre requise et un lien de mise à niveau, pour qu'un tableau de bord affiche une carte d'upgrade au lieu de planter. Les payloads et signatures des webhooks sont documentés dans la {link}.","apiReferenceLink":"référence de l'API"},"methods":{"title":"Groupes de méthodes","group":"Groupe","methods":"Méthodes","python":"Python utilise les mêmes noms en snake_case, par exemple {first} et {second}. Chaque méthode et l'offre requise sont listées dans le README de chaque package."},"groups":{"recruit":"Trouver des créateurs à recruter","rankings":"Classements et marché","vet":"Évaluer un créateur","stats":"Stats des créateurs","rosters":"Équipes","live":"Statut live","bigGifts":"Flux des gros cadeaux","eligibility":"Verdicts d'éligibilité","webhooks":"Webhooks","account":"Compte"},"ai":{"title":"Pour les assistants IA","body":"Un résumé lisible par machine de chaque méthode se trouve sur {link}. Indique-le à Cursor, Claude, ChatGPT ou n'importe quel outil de génération IA, et précise le package {pkg}, pour que le code généré utilise les vraies données de l'API."},"source":{"title":"Code source et packages","line":"{label} {repo} et {registry}","license":"Licence :"},"disclaimer":"Non officiel, sans lien avec TikTok ou ByteDance. tiktok-live-agency est un SDK indépendant pour l'API tik.tools. TikTok est une marque de son propriétaire respectif, citée ici uniquement pour décrire la compatibilité.","next":{"docsTitle":"Référence de l'API","docsBody":"Tous les endpoints derrière le SDK","plansTitle":"Offres","plansBody":"Obtenir une clé API"}},"live":{"seo":{"titleLive":"LIVE - {'@'}{username} est en live - tik.tools","titleOffline":"{'@'}{username} - tik.tools Live","descriptionLive":"Regarde {'@'}{username} en live sur TikTok - {title} - {viewers} spectateurs","defaultStreamTitle":"Live","descriptionOffline":"{'@'}{username} est actuellement hors ligne sur TikTok."},"watching":"{count} spectateurs","watchOnTikTok":"Regarder sur TikTok","offline":{"title":"{'@'}{username} est hors ligne","body":"Ce streamer n'est pas en live sur TikTok en ce moment.","visitProfile":"Voir le profil TikTok"}},"obsOverlay":{"seo":{"title":"Cadeaux TikTok LIVE pour OBS - tik.tools","description":"Colle une URL dans OBS et obtiens des animations 3D cinématiques pour chaque cadeau TikTok LIVE. En temps réel, fond transparent, 9:16. Gratuit avec filigrane, sans filigrane avec Agency.","ogTitle":"Cadeaux TikTok LIVE pour OBS","ogDescription":"Colle une URL dans OBS et obtiens des animations 3D cinématiques pour chaque cadeau TikTok LIVE. En temps réel, fond transparent, 9:16."},"hero":{"badge":"Gratuit pour tous les créateurs. Rien à installer. Pas de clé API.","title":"Cadeaux TikTok LIVE pour OBS"},"search":{"placeholder":"Saisis ton pseudo TikTok","clear":"Effacer"},"status":{"generating":"Génération du lien de l'overlay..."},"link":{"label":"URL de ton overlay","copied":"Copié","copy":"Copier","watermarkFree":"{plan} - sans filigrane","watermarkVisible":"Filigrane tik.tools visible (version gratuite)","open":"Ouvrir l'overlay dans un nouvel onglet"},"setup":{"label":"Configuration","title":"Ajoute-le à OBS en moins d'une minute"},"steps":{"one":{"title":"Ouvre le panneau Sources","body":"Clique sur le bouton {plus} sous la liste Sources et choisis {browser}."},"two":{"title":"Nomme la source","body":"Choisis {createNew}, tape un nom comme {name}, laisse {visible} coché, puis clique sur {ok}."},"three":{"title":"Colle l'URL, règle les dimensions","body":"Colle l'URL de l'overlay dans {url}. Règle {width} sur {widthValue} et {height} sur {heightValue} (format TikTok LIVE). Clique sur {ok}."},"four":{"title":"Place la source tout en haut","body":"Dans ta liste Sources, fais glisser la source {name} au-dessus de ta capture vidéo pour que les cadeaux s'affichent par-dessus tout le reste. C'est tout - lance ton stream."}},"mock":{"appAudio":"Capture audio d'application (BÊTA)","audioInput":"Capture d'entrée audio","audioOutput":"Capture de sortie audio","browser":"Navigateur","colorSource":"Source de couleur","displayCapture":"Capture d'écran","gameCapture":"Capture de jeu","createSelect":"Créer / Sélectionner une source","createNew":"Créer une nouvelle","addExisting":"Ajouter une existante","makeVisible":"Rendre la source visible","ok":"OK","properties":"Propriétés de 'TikTools'","urlPlaceholder":"colle l'URL de ton overlay","width":"Largeur","height":"Hauteur","confirm":"Confirmer"},"preview":{"label":"Aperçu en direct - exactement ce que voit ton public","foot":"9:16 - 1080 x 1920 - fond transparent"},"features":{"detection":{"title":"Détection des cadeaux sans configuration","body":"Le serveur suit déjà le flux de cadeaux de chaque créateur TikTok LIVE. Dès que tu passes en LIVE, l'overlay se déclenche - pas de clé API, pas de réglage par stream, rien à installer sur ta machine."},"gpu":{"title":"Three.js, accéléré par GPU","body":"Canvas WebGL 9:16 transparent, explosions de particules sur le compositeur, cache des sprites, matériaux instanciés. Léger pour le CPU et s'intègre proprement à vMix, Streamlabs, OBS Studio."},"watermark":{"title":"Filigrane retiré avec Agency","body":"L'overlay gratuit affiche un discret logo {wordmark} à 30 % du bas. {link} pour diffuser des overlays impeccables, sans aucune marque.","link":"Passe à n'importe quelle offre Agency"},"impact":{"title":"Conçu pour l'impact","body":"L'overlay se déclenche sur les cadeaux de 1 000 diamants et plus. Les petites roses de remerciement ne le déclenchent pas : ta scène reste propre et garde les projecteurs pour les moments qui méritent d'être célébrés."}},"errors":{"invalidChars":"2-40 caractères : lettres, chiffres, points, underscores","warmingUp":"Le service démarre - nouvel essai ({attempt}/{max})...","invalidUsername":"Ce pseudo n'est pas valide","unavailable":"Le service est momentanément indisponible - réessaie dans un instant."}},"giftsCanvas":{"livePreview":"Aperçu en direct","anonymous":"Anonyme"}},"company":{"about":{"hero":{"badge":"À propos","title":"L'API de données TikTok LIVE{br}pour les {accent}","titleAccent":"développeurs","desc":"TikTools a été créé par des développeurs, pour des développeurs. Pour nous, les données de stream en temps réel doivent être accessibles, abordables et simples à utiliser."},"mission":{"title":"Notre mission","p1":"TikTok est la plateforme de live streaming qui grandit le plus vite au monde, mais les développeurs n'ont aucune API officielle pour accéder aux données des lives. TikTools comble ce manque avec une API de niveau production qui fournit le chat, les cadeaux, le nombre de spectateurs, les battles et les données d'engagement en temps réel via une seule connexion WebSocket.","p2":"On gère toute la complexité de la connexion aux lives, de la gestion des connexions et de la normalisation des données - pour que tu puisses te concentrer sur la création d'applications géniales."},"provide":{"title":"Ce qu'on propose","websocket":{"title":"API WebSocket en temps réel","text":"{title} - Livraison des événements en moins de 50 ms pour le chat, les cadeaux, les likes, les follows, les partages, les battles et le nombre de spectateurs"},"rest":{"title":"Endpoints API REST","text":"{title} - Infos sur les lives, profils utilisateurs, flux de lives, classements de cadeaux"},"sdk":{"title":"SDK Node.js open source","text":"{title} - Sous licence MIT, pensé TypeScript, disponible sur npm sous le nom {package}"},"gameEngine":{"title":"Prêt pour les moteurs de jeu","text":"{title} - La livraison WebSocket fonctionne avec n'importe quel moteur (C++, C#, Godot, web) pour des expériences de jeu interactives"},"sandbox":{"title":"Offre Sandbox","text":"{title} - {requests} requêtes/jour, {sessions} sessions WebSocket par 24 h et jusqu'à {streams} streams simultanés, sans carte bancaire. Passe à une offre payante (dès {price}/semaine) pour {paidRequests} requêtes/jour et un accès production."}},"users":{"title":"Qui utilise TikTools ?","intro":"Des centaines de développeurs et d'entreprises utilisent TikTools pour faire tourner :","items":{"chatAssistants":"Des assistants de chat et des bots de commandes pour les lives","overlays":"Des overlays OBS et des alertes de dons","analytics":"Des tableaux de bord d'analyse et le suivi de l'engagement","moderation":"De la modération de contenu et de l'analyse de sentiment par IA","games":"Des intégrations de jeux interactifs (n'importe quel moteur WebSocket)","multiStream":"Des plateformes de suivi multi-streams"}},"compare":{"title":"Pourquoi pas EchoTik ou d'autres outils ?","p1":"TikTools se concentre exclusivement sur les {focus} pour les développeurs. Contrairement aux outils d'analyse e-commerce comme EchoTik (centré sur les données TikTok Shop - classements de produits, tendances de GMV, analyse des vendeurs), TikTools est conçu pour les applications de live streaming.","p1Focus":"données de LIVE en temps réel","p2":"On propose ce qu'aucune alternative n'offre dans un seul package : streaming WebSocket en temps réel, SDK open source, données agences et offre gratuite. Si tu crées quoi que ce soit qui interagit avec des lives TikTok LIVE, TikTools est fait pour ton cas d'usage."},"commitment":{"title":"Nos engagements","reliability":{"title":"Fiabilité","text":"{title} - basculement automatique et surveillance continue de l'état des services"},"transparency":{"title":"Transparence","text":"{title} - Des tarifs clairs, pas de frais cachés, pas de mauvaises surprises"},"devExperience":{"title":"Expérience développeur","text":"{title} - De {command} aux données live en moins de 30 secondes"},"openSource":{"title":"Open source","text":"{title} - Notre SDK est sous licence MIT. Aucune dépendance à un fournisseur, jamais"},"support":{"title":"Support réactif","text":"{title} - Support par chat en temps réel avec de vrais ingénieurs, pas des assistants automatiques"}},"sidebar":{"quickLinks":"Liens rapides","docs":"Documentation de l'API","pricing":"Tarifs et offres","useCases":"Cas d'usage","npmPackage":"Package npm","getStarted":"Commencer","freeTier":"Offre gratuite disponible - sans carte bancaire.","getApiKey":"Obtenir une clé API"},"seo":{"title":"À propos de TikTool - API TikTok LIVE pour les développeurs","description":"TikTools est l'API TikTok LIVE pensée pour les développeurs. Streaming WebSocket en temps réel, SDK Node.js et Python open source, classements de créateurs. Offre gratuite - sans carte bancaire. Créé par des développeurs, pour des développeurs.","ogDescription":"L'API de données TikTok LIVE pensée pour les développeurs. WebSocket en temps réel, SDK open source, classements de créateurs. Offre gratuite disponible.","ogImageTitle":"À propos de TikTool","ogImageSubtitle":"La plateforme de données TikTok LIVE gérée, conçue pour les développeurs.","ogImageBadge":"À PROPOS"}},"methodology":{"hero":{"badge":"Méthodologie","title":"Comment tik.tools collecte{br}les {accent} TikTok LIVE","titleAccent":"données","desc":"Ce qu'est chaque classement, à quelle fréquence il s'actualise, comment les régions correspondent aux pays, ce qui est masqué selon l'offre et pourquoi, combien d'historique on conserve, et où notre couverture a des trous."},"sources":{"title":"D'où viennent les données","p1":"tik.tools lit les classements TikTok LIVE et les lives que TikTok affiche dans son app : les classements du jour, de ligue, gaming, shopping, Popular LIVE et d'équipes, ainsi que les lives publics des créateurs qui y figurent. Chaque chiffre d'un classement est la valeur affichée par TikTok au moment de la capture ; tik.tools n'ajuste, ne lisse et ne projette pas ces chiffres, sauf quand une valeur est indiquée comme estimation.","p2":"tik.tools est indépendant et n'est pas affilié à TikTok ni à ByteDance."},"boards":{"title":"Classements et fréquence d'actualisation","intro":"Chaque classement est actualisé selon son propre rythme. Chaque page de classement affiche l'heure de capture de ses données : cite cette heure avec le chiffre.","colBoard":"Classement","colWhat":"Ce qu'il classe","colRefreshed":"Actualisation","rows":{"daily":{"name":"Classement du jour des créateurs","what":"Créateurs par diamants reçus aujourd'hui, par région","cadence":"En continu"},"countryBoards":{"name":"Classements nationaux autonomes","what":"Classements du jour d'un seul pays que TikTok publie au sein d'un groupe","cadence":"Fréquemment"},"league":{"name":"Divisions de ligue","what":"Créateurs de chaque division de ligue hebdomadaire (A1 à D5), par région","cadence":"Fréquemment"},"gaming":{"name":"Classements gaming","what":"Créateurs gaming au global et par jeu suivi, par région","cadence":"Fréquemment, statut live mis à jour en continu"},"shopping":{"name":"Classements live shopping","what":"Créateurs live shopping, par région, sur une période hebdomadaire","cadence":"Fréquemment, et juste après la réinitialisation hebdomadaire"},"popular":{"name":"LIVE populaires","what":"Les lives que TikTok met en avant dans Popular LIVE en ce moment","cadence":"En continu"},"teams":{"name":"Équipes","what":"Classements des équipes, par région","cadence":"Fréquemment"},"rising":{"name":"Créateurs en progression","what":"Les créateurs qui grimpent le plus vite","cadence":"Régulièrement tout au long de la journée"},"gifters":{"name":"Classements des donateurs","what":"Top donateurs par diamants envoyés, au jour, à la semaine et au mois","cadence":"Jour : fréquemment ; semaine et mois : régulièrement"},"liveCounts":{"name":"Compteurs de lives","what":"Combien de créateurs classés sont en live dans une région","cadence":"En continu"}},"resets":"Les classements du jour se réinitialisent une fois par jour à l'heure de réinitialisation propre à chaque région (indiquée par région ci-dessous) : un score du jour est donc un total cumulé pour la journée de classement en cours. Les divisions de ligue se réinitialisent chaque semaine le lundi à l'heure de réinitialisation de la région. {regions} n'ont pas de classement du jour sur TikTok ; pour ces régions, on affiche le classement horaire, et leurs divisions de ligue se réinitialisent chaque jour."},"joinAnd":"{first} et {last}","regions":{"title":"Régions et pays","p1":"tik.tools classe {count} régions TikTok LIVE. Une région correspond à un groupe de classement TikTok : un seul classement du jour que TikTok publie pour un pays ou pour un groupe de pays. La région d'un créateur est le groupe dans lequel il est classé, pas sa nationalité. TikTok ne publie pas de pays pour chaque créateur, donc tik.tools n'en attribue pas.","p2":"En plus de ces régions, TikTok publie des classements autonomes pour certains pays au sein d'un groupe. Ces classements apparaissent sur la {link} tant que TikTok les publie et disparaissent quand il arrête.","p2Link":"page des classements","colRegion":"Région","colCountries":"Pays du classement","colReset":"Réinitialisation quotidienne","hourly":"Horaire","resetAt":"{time} UTC","note":"L'heure de réinitialisation est l'heure à laquelle le classement TikTok bascule le plus souvent dans cette région, mesurée à partir de notre propre historique de captures. Les pages des régions affichent le compte à rebours en direct publié par TikTok quand on l'a."},"masking":{"title":"Ce qui est masqué selon l'offre, et pourquoi","intro":"Les scores, les rangs et les compteurs ne sont jamais masqués : chaque ligne garde son vrai rang et ses diamants, donc les totaux et les positions sont justes quelle que soit l'offre. Ce qui change selon l'offre, c'est si une ligne affiche le nom du créateur ou du donateur. Un nom masqué apparaît sous forme de points suivis de ses derniers caractères.","colSurface":"Rubrique","colPreview":"Sans l'offre qui débloque","colFull":"Noms complets à partir de","rows":{"daily":{"surface":"Classements régionaux du jour","preview":"Top 10 des créateurs hors ligne nommés ; les créateurs en live en ce moment ne sont jamais nommés"},"global":{"surface":"Vue d'ensemble mondiale","preview":"Noms masqués"},"league":{"surface":"Divisions de ligue","preview":"1 créateur nommé par division"},"gaming":{"surface":"Classements gaming","preview":"1 créateur nommé par classement"},"shopping":{"surface":"Classements live shopping","preview":"1 créateur nommé"},"popular":{"surface":"LIVE populaires","preview":"Top 10 des créateurs hors ligne nommés"},"movers":{"surface":"Plus fortes progressions","preview":"3 créateurs nommés"},"gifterBoards":{"surface":"Classements des donateurs","preview":"Diamants et compteurs affichés ; en dessous d'Agency, le top 3 des donateurs est nommé, et Agency Starter nomme tous les donateurs du classement de sa région"},"creatorPages":{"surface":"Pages créateurs","preview":"Chiffres affichés, identifiants masqués"},"gifterPages":{"surface":"Pages donateurs","preview":"Chiffres affichés, identifiants masqués"}},"why":"Pourquoi on masque : les chiffres sont publics et le restent, mais une liste complète de noms, et surtout la liste de qui est en live en ce moment, c'est exactement ce que quelqu'un extrairait en masse des vues gratuites pour débaucher des créateurs ou revendre les données. Le masquage garde les classements utiles à consulter tout en réservant les données d'identité en masse à une offre payante et responsable. Offres et prix : {link}.","whyLink":"tarifs"},"history":{"title":"Combien d'historique on conserve","rows":{"creatorPages":{"product":"Pages créateurs","depth":"historique de classement des 90 derniers jours."},"creatorDiamonds":{"product":"Historique des diamants des créateurs (Agency)","depth":"les 12 derniers mois."},"gifterPages":{"product":"Pages donateurs","depth":"une fenêtre glissante de 90 jours ; les événements de cadeaux individuels sont conservés environ 3 mois."},"gifterBoards":{"product":"Classements des donateurs","depth":"périodes au jour, à la semaine et au mois."},"gamingMovers":{"product":"Progressions gaming","depth":"des périodes allant des 2 dernières heures aux 3 derniers jours."},"dailyBoards":{"product":"Classements du jour","depth":"la journée de classement en cours en direct, plus les gagnants récents du jour sur chaque page de région."},"league":{"product":"Divisions de ligue","depth":"la période hebdomadaire en cours."}}},"gaps":{"title":"Lacunes connues","unavailable":{"title":"Classements indiqués comme indisponibles.","text":"{title} Quand l'API renvoie {code} pour un classement, on n'a aucune capture exploitable pour cette région et cette période. C'est un trou de couverture, pas une affirmation que la région n'a aucun créateur classé. Les classements gaming, par exemple, ne sont pas disponibles dans toutes les régions."},"hourlyOnly":{"title":"Régions uniquement horaires.","text":"{title} {regions} n'ont pas de classement du jour sur TikTok, donc leur vue \"du jour\" est le classement horaire en cours."},"archived":{"title":"Pages d'archives quotidiennes.","text":"{title} Les pages d'archives par date des anciens classements du jour ne sont pas publiées pour toutes les régions et toutes les dates. Une date passée sans aucune ligne signifie qu'on n'a pas d'instantané publié pour elle, pas que personne n'était classé."},"emptyDivisions":{"title":"Divisions vides.","text":"{title} Les divisions de ligue sans créateur classé ne sont pas listées, et une division que TikTok redistribue peut changer d'une capture à l'autre."},"outages":{"title":"Courtes interruptions.","text":"{title} Si TikTok cesse de répondre un moment, un classement garde sa dernière capture valide et son heure de capture se fige. Vérifie l'heure de capture avant de te fier à un chiffre."}},"quoting":{"title":"Avant de citer nos chiffres","diamonds":{"title":"Les diamants","text":"{title} d'un classement sont le score affiché par TikTok à l'heure de capture, pour la journée de classement en cours (classements du jour), la semaine de classement (divisions de ligue) ou l'heure de classement (classements horaires)."},"earnings":{"title":"Gains et revenus","text":"{title} : ces chiffres sont des estimations calculées à partir des diamants. Ce ne sont pas des versements ; ce que touche un créateur dépend des conditions de TikTok et de l'agence."},"masked":{"title":"Les lignes masquées","text":"{title} sont de vraies lignes dont le nom est caché. Compte-les dans les totaux et les rangs ; ne les traite pas comme manquantes."},"regions":{"title":"Les régions","text":"{title} sont des groupes de classement TikTok, pas des pays de résidence. Dis \"classé dans la région {region}\", pas \"originaire\" d'un pays."},"captureTime":{"title":"Heure de capture","text":"{title} : cite l'heure affichée sur la page ou dans la réponse de l'API, en UTC si possible."},"eventTypes":"L'API WebSocket documente {count} types d'événements LIVE ; consulte la {link}.","eventTypesLink":"documentation de l'API"},"report":{"title":"Signaler un problème de données","text":"Si un chiffre te semble faux, écris à {email} avec l'URL de la page ou la requête API, la région, l'heure à laquelle tu l'as vu (avec le fuseau horaire) et ce que tu t'attendais à voir. Une capture d'écran du même classement dans l'app TikTok au même moment est le moyen le plus rapide pour qu'on confirme et corrige. Pour les demandes liées à la vie privée, consulte la {privacyLink}.","privacyLink":"politique de confidentialité"},"sidebar":{"onThisPage":"Sur cette page","related":"Voir aussi","rankings":"Classements TikTok LIVE","rankingsOverview":"Vue d'ensemble des classements","docs":"Documentation de l'API","pricing":"Offres et tarifs"},"toc":{"sources":"D'où viennent les données","boards":"Classements et fréquence d'actualisation","regions":"Régions et pays","masking":"Masquage selon l'offre","history":"Profondeur de l'historique","gaps":"Lacunes connues","quoting":"Avant de citer nos chiffres","report":"Signaler un problème de données"},"seo":{"title":"Méthodologie des données - comment tik.tools collecte les données TikTok LIVE","description":"Comment tik.tools capture et actualise les classements TikTok LIVE sur {count} régions : fréquence d'actualisation, correspondance régions et pays, masquage selon l'offre, profondeur de l'historique et lacunes connues.","ogImageTitle":"Méthodologie des données","ogImageSubtitle":"Comment les classements TikTok LIVE sont capturés sur {count} régions.","ogImageBadge":"MÉTHODOLOGIE"},"jsonLd":{"measurementTechnique":"Capture périodique des classements publics TikTok LIVE","variables":{"rank":"Rang","diamonds":"Diamants","liveStatus":"Statut live"},"datasets":{"dailyRankings":{"name":"Classements du jour des créateurs TikTok LIVE par région","description":"Classements du jour des créateurs TikTok LIVE par diamants pour {count} régions, actualisés en continu et réinitialisés à l'heure de réinitialisation quotidienne de chaque région."},"leagueDivisions":{"name":"Divisions de ligue TikTok LIVE par région","description":"Composition et scores hebdomadaires des divisions de ligue TikTok LIVE par région, actualisés fréquemment."},"gamingBoards":{"name":"Classements des créateurs gaming TikTok LIVE par région","description":"Classements des créateurs gaming TikTok LIVE au global et par jeu suivi, par région, actualisés fréquemment."},"gifterBoards":{"name":"Classements des top donateurs TikTok LIVE","description":"Les meilleurs donateurs TikTok LIVE par diamants envoyés, sur des périodes au jour, à la semaine et au mois."}}}},"status":{"hero":{"titleHighlight":"Statut","subtitle":"État en direct des services utilisés par nos clients. Mis à jour toutes les 5 secondes."},"activeIncidents":"Incidents en cours","started":"Début {time}","recently":"récemment","components":"Composants","errorRateWindow":"{pct} % d'erreurs sur les {minutes} dernières min","upstream":"Dépendances en amont","percent":"{value} %","me":{"title":"Ton compte","loading":"Chargement de ton activité...","requests24h":"Requêtes (24 h)","successRate":"Taux de réussite","serverErrors":"Erreurs serveur","clientErrors":"Erreurs client","perEndpoint":"Par endpoint","colEndpoint":"Endpoint","colRequests":"Requêtes","colErrorRate":"Taux d'erreur","recentFailures":"Échecs récents","hint":"La plupart de tes erreurs sont des 4xx. Elles signifient en général que le format de la requête doit être ajusté - regarde le champ message de la réponse pour la raison précise. {link}.","hintLink":"Docs"},"signInCta":"{link} pour voir ton historique de requêtes personnalisé et l'état de chaque endpoint.","signIn":"Connecte-toi","history":"Historique","uptime90d":"Disponibilité sur 90 jours : {value}","noIncidents":"Aucun incident ces 30 derniers jours.","overall":{"operational":"Tous les systèmes sont opérationnels","minor":"Problèmes mineurs","degraded":"Performances dégradées","outage":"Panne en cours","unknown":"Statut inconnu"},"component":{"operational":"Opérationnel","minor":"Problèmes mineurs","degraded":"Dégradé","outage":"Panne","unknown":"Inconnu"},"rel":{"justNow":"à l'instant","minutes":"il y a {n} min","hours":"il y a {n} h","days":"il y a {n} j"},"sparkline":{"aria":"Historique du statut sur {hours} heures","noData":"aucune donnée","errors":"{pct} % d'erreurs","requests":"{count} req.","hours":"{count} h","now":"maintenant","titleNoData":"{time} - aucune donnée","title":"{time} - {pct} % d'erreurs ({count} req.)"},"seo":{"title":"Statut TikTool","description":"État en direct de l'API TikTool, des événements en temps réel, de la signature et du tableau de bord. Mis à jour toutes les 5 secondes.","ogDescription":"Statut opérationnel en direct de l'API TikTool + des événements en temps réel."}},"help":{"hero":{"badge":"Support","title":"Comment pouvons-nous {accent} ?","titleAccent":"t'aider","desc":"Discute avec notre équipe en temps réel. On répond généralement en quelques minutes."},"resources":{"title":"Ressources","docs":{"label":"Documentation de l'API","desc":"Référence du SDK, endpoints et exemples"},"pricing":{"label":"Tarifs et offres","desc":"Compare les offres et passe à la version supérieure"}},"faq":{"title":"Questions fréquentes","items":{"apiKey":{"q":"Comment obtenir une clé API ?","a":"Inscris-toi sur tik.tools/pricing. L'offre Sandbox inclut {requests} requêtes/jour et {connections} connexions WebSocket simultanées - sans carte bancaire. Passe à une offre payante (dès {price}/semaine) pour {paidRequests} requêtes/jour et un accès production."},"connect":{"q":"Pourquoi je n'arrive pas à me connecter à un stream ?","a":"Vérifie que le streamer est bien en LIVE et que le pseudo est correct (sans {'@'}). Vérifie aussi que ta clé API est valide et n'a pas dépassé son quota."},"languages":{"q":"Quels langages de programmation et moteurs prenez-vous en charge ?","a":"Tout langage ou moteur qui prend en charge les connexions WebSocket. SDK officiels pour Node.js/TypeScript et Python, plus un accès WebSocket brut ({url}) pour Go, Rust, Java, C#, C++ et n'importe quel moteur de jeu."},"upgrade":{"q":"Comment changer d'offre ?","a":"Va sur tik.tools/pricing, choisis une offre et suis le paiement. Les mises à niveau sont instantanées et calculées au prorata."}}},"seo":{"title":"Aide et support - TikTool","description":"Obtiens une aide immédiate pour TikTool. Discute avec notre équipe, parcours la documentation et trouve les réponses aux questions fréquentes.","ogTitle":"TikTool - Aide et support","ogDescription":"Discute avec notre équipe support en temps réel. Parcours la doc, résous tes problèmes et obtiens des réponses à tes questions."}},"supportChat":{"header":{"title":"Chat en direct avec des devs humains. Pas une IA.","online":"En ligne","offline":"Laisse un message - on te répond vite"},"auth":{"title":"Connecte-toi pour discuter avec nous","desc":"On répond généralement en quelques minutes pendant les heures ouvrées.","google":"Continuer avec Google","or":"ou","emailPlaceholder":"Adresse e-mail","passwordPlaceholder":"Mot de passe","signIn":"Se connecter"},"welcome":{"title":"Salut","desc":"Envoie-nous un message et on te répond dès que possible."},"pass":{"body":"{title} L'accès complet Agency Global est actif sur ton compte. {link}","activated2h":"Agency Pass 2 heures activé.","activatedDay":"Agency Day Pass activé.","dashboardLink":"Ouvrir le tableau de bord Agency"},"notSent":"non envoyé","typing":"TikTools écrit","input":{"placeholder":"Écris un message...","send":"Envoyer le message"},"errors":{"required":"E-mail et mot de passe requis","loginFailed":"Échec de la connexion. Réessaie."}},"login":{"eyebrow":"Accès sécurisé","title":"Content de te revoir","sub":"Connecte-toi ou crée ton compte en un instant.","google":"Continuer avec Google","divider":"ou continuer avec l'e-mail","emailLabel":"Adresse e-mail","googleNotice":"Cet e-mail utilise la connexion Google. Utilise le bouton ci-dessus.","passwordLabel":"Mot de passe","passwordPlaceholder":"Saisis ton mot de passe","passwordHint":"Nouveau compte ? 8 caractères min., 1 majuscule, 1 chiffre.","forgot":"Mot de passe oublié ?","codeLabel":"Code de vérification","codePlaceholder":"Code à 6 chiffres","codeSent":"On a envoyé un code à 6 chiffres à {email}. {resend}","sending":"Envoi...","resend":"Renvoyer","verifyAndCreate":"Vérifier et créer le compte","continue":"Continuer","emailMeCode":"Recevoir un code par e-mail","usePassword":"Utiliser plutôt un mot de passe","signInWithCode":"Se connecter","errors":{"createFailed":"La création du compte a échoué. Réessaie ou utilise la connexion Google.","invalidToken":"La session d'authentification a expiré. Réessaie.","authFailed":"L'authentification a échoué. Réessaie.","blockedDomain":"Ce domaine e-mail n'est pas autorisé. Utilise un e-mail professionnel ou Gmail.","passwordAccount":"Un compte avec cet e-mail se connecte avec un mot de passe. Connecte-toi avec ton mot de passe ou réinitialise-le via 'Mot de passe oublié ?'.","codeSendFailed":"Impossible d'envoyer le code. Réessaie.","codeFormat":"Saisis le code à 6 chiffres reçu par e-mail.","codeInvalid":"Ce code est incorrect ou a expiré. Demandes-en un nouveau.","invalidEmail":"E-mail invalide","passwordRequired":"Le mot de passe est requis","generic":"Une erreur est survenue. Réessaie.","captcha":"La vérification a échoué. Termine le contrôle et réessaie.","contactSupport":"Si tu penses que c'est une erreur, contacte {email}","linkExpired":"Ce lien de connexion a expiré ou a déjà été utilisé. Demande un nouveau code ci-dessous."},"seo":{"title":"Connexion - TikTool","description":"Connecte-toi à TikTool pour accéder au classement TikTok LIVE, aux profils des créateurs et au tableau de bord de l'API."}}},"devLanding":{"websocket":{"seo":{"title":"API WebSocket TikTok LIVE - chat et cadeaux en temps réel en 3 lignes de code","description":"Reçois le chat, les cadeaux, les likes, les follows, les battles PK, les sous-titres natifs, les sondages, le karaoké, le pictionary, le live shopping et plus de 90 types d'événements TikTok LIVE via un seul WebSocket. Latence sous les 50 ms. Mode anonyme - aucune clé requise pour commencer. Fonctionne avec Node.js, Python, Go, Rust, Java, C#.","ogTitle":"API WebSocket TikTok LIVE - chat et cadeaux en temps réel en 3 lignes","ogDescription":"Plus de 90 types d'événements en temps réel. Latence sous les 50 ms. Offre Sandbox. Fonctionne avec tous les langages - Node.js, Python, Go, Rust, Java, C#.","twitterTitle":"API WebSocket TikTok LIVE - chat et cadeaux en 3 lignes de code","twitterDescription":"Une seule URL WebSocket pour tous les événements TikTok LIVE. Chat, cadeaux, spectateurs, battles. Moins de 50 ms. Offre Sandbox - commence à développer maintenant."},"og":{"title":"API WebSocket TikTok LIVE","subtitle":"Chat et cadeaux en temps réel en trois lignes de code. Signature gérée incluse.","badge":"WEBSOCKET"},"hero":{"badge":"API WebSocket","titleLead":"TikTok LIVE","titleAccent":"API WebSocket","sub":"Reçois les événements TikTok LIVE en temps réel - chat, cadeaux, likes, follows, nombre de spectateurs, battles - via une seule connexion WebSocket gérée. Latence sous les 50 ms.","ctaKey":"Clé API gratuite","ctaDocs":"Voir la documentation"},"stats":{"latency":"Latence","eventTypes":"Types d'événements","anyValue":"Tous","language":"Langages"},"how":{"title":"Connecte-toi en 3 lignes de code","sub":"Pas de parsing binaire, pas d'infrastructure à gérer. Juste une URL WebSocket qui envoie du JSON propre.","copy":"Copier","copied":"Copié","copyCode":"Copier le code"},"events":{"title":"Explore chaque événement","sub":"Choisis un événement pour voir le JSON exact envoyé par ton WebSocket, avec chaque champ expliqué."},"compare":{"title":"TikTools face aux autres","sub":"Des comparatifs côte à côte avec d'autres fournisseurs de données TikTok LIVE, chacun daté et vérifié par rapport à leurs pages publiques.","cta":"Voir les comparatifs"},"pricing":{"title":"Des tarifs transparents","sub":"Teste gratuitement pendant 7 jours, puis choisis l'offre qu'il te faut.","testKey":"Clé de test","fromWeekly":"Dès {price}/sem.","ctaTestKey":"Obtenir une clé de test","ctaPlans":"Voir les offres","sandbox":{"evaluation":"Évaluation de 7 jours","everyEvent":"Tous les types d'événements","noCard":"Sans carte bancaire"},"pro":{"limits":"Limites de requêtes et WebSocket pour la production","webhooks":"Webhooks signés","sdks":"SDK Node.js et Python"},"ultra":{"limits":"Les limites les plus hautes après Agency","leagues":"Classements de ligue sans masquage","everyEvent":"Tous les types d'événements"}},"sdks":{"title":"Compatible avec tous les langages","sub":"SDK officiels pour Node.js et Python. Le WebSocket fonctionne avec tout le reste."},"cta":{"title":"Commence à recevoir les données TikTok LIVE dès aujourd'hui","sub":"Offre Sandbox - 5 000 requêtes/jour, 3 connexions WebSocket simultanées. Sans carte bancaire.","github":"Une étoile sur GitHub"}},"mcp":{"seo":{"title":"MCP TikTok LIVE + intégrations API - tik.tools","description":"Ajoute les données TikTok LIVE en direct à Claude, Cursor, VSCode et n'importe quel client MCP. Plus RapidAPI, Apify, Custom GPT, des SDK et un WebSocket en temps réel. Offre gratuite.","ogTitle":"TikTok LIVE, branché sur ton IA","ogDescription":"Un seul serveur MCP envoie les données TikTok en direct dans Claude, Cursor et VSCode. Offre gratuite."},"hero":{"eyebrow":"Pour les agents IA et les développeurs","title":"TikTok LIVE, branché sur ton IA","lead":"Un seul serveur MCP envoie les données TikTok en direct dans Claude, Cursor, VSCode et n'importe quel client MCP. Détecte qui est en live, récupère les données des créateurs et des lives, les cadeaux et les classements - directement depuis un prompt. Offre gratuite, sans carte bancaire.","ctaKey":"Clé gratuite","ctaIntegrations":"Toutes les intégrations"},"install":{"title":"Ajoute le serveur MCP","sub":"Un clic suffit pour le brancher sur ton client. Remplace {code} par ta clé gratuite une fois ajouté.","hideConfig":"Masquer la config","showConfig":"Tu préfères la coller toi-même ?","toolsNote":"11 outils. La liste complète, avec l'offre requise pour chacun, est ci-dessous."},"oneClick":{"cursor":{"add":"Ajouter à Cursor","done":"Ouverture de Cursor"},"vscode":{"add":"Ajouter à VS Code","done":"Ouverture de VS Code"},"claude":{"add":"Copier la config, ouvrir Claude","done":"Copié - ouverture de Claude"}},"copy":"Copier","copied":"Copié","key":{"title":"Configure ta clé API","sub":"Chaque appel d'outil est authentifié. Sans clé configurée, chaque appel renvoie {error} : fais-le donc avant le premier prompt.","step1":"Obtiens une clé gratuite sur {link}. Sans carte bancaire.","step2":"Mets-la dans le bloc {env} du serveur sous le nom {name}.","step3":"Redémarre ton client pour qu'il recharge le serveur.","vscodeNote":"VS Code utilise {servers} au lieu de {mcpServers} - voir les onglets de config ci-dessus. {altKey1} et {altKey2} fonctionnent aussi si ta config utilise déjà l'un de ces noms."},"tools":{"title":"Les 11 outils","sub":"Demande en langage courant et le client choisit l'outil. La colonne offre indique la clé la plus basse qui renvoie des données pour cet outil.","colTool":"Outil","colTier":"Offre minimum","anyKey":"N'importe quelle clé","notes":{"giftCatalog":"Aucun argument requis. username, search et limit facultatifs.","leaderboard":"Classement du jour. type=league nécessite Ultra ; type=weekly, gaming et shopping nécessitent Agency.","popularLive":"Masqué en dessous d'Agency."}},"connect":{"title":"Toutes les façons de se connecter","sub":"Les mêmes données, quelle que soit la plateforme de ta stack.","items":{"mcp":{"tag":"Agents IA","title":"Serveur MCP","desc":"npx tiktok-live-mcp dans Claude, Cursor, VSCode et Windsurf.","cta":"Voir sur npm"},"gpt":{"tag":"Custom GPT","desc":"Branche un Custom GPT sur la spec OpenAPI et interroge les données live dans le chat.","cta":"Obtenir le schéma"},"rapidapi":{"tag":"Marketplace","desc":"L'API REST complète sur la marketplace RapidAPI, offre gratuite incluse.","cta":"Voir la fiche"},"apify":{"tag":"Automatisation","desc":"Lance la détection des lives et les classements en tant qu'Actor Apify.","cta":"Ouvrir l'Actor"},"sdks":{"tag":"SDK","title":"Node et Python","desc":"{'@'}tiktool/live et tiktok-live-api - reçois le chat et les cadeaux en 20 lignes.","cta":"Voir la doc"},"websocket":{"tag":"Temps réel","desc":"wss://api.tik.tools - chat, cadeaux, likes et battles en direct.","cta":"Lire la doc"}}},"foot":{"title":"Données premium, en direct","sub":"L'offre gratuite couvre la détection des lives, les données des lives, les cadeaux et les classements. Les classements complets sans masquage, les classements de ligue et gaming, les revenus des créateurs et des donateurs, le flux de recrutement des nouveaux créateurs et le WebSocket d'événements en temps réel se débloquent sur tik.tools.","cta":"Voir les tarifs"}},"useCases":{"seo":{"title":"Cas d'usage de l'API TikTok LIVE - assistants de chat, overlays et IA","description":"Crée des assistants de chat, des overlays de stream, des classements de cadeaux, des tableaux de bord d'analyse, des intégrations IA et des jeux interactifs avec l'API TikTok LIVE. Exemples de code inclus. Offre gratuite - sans carte bancaire.","ogTitle":"Cas d'usage de l'API TikTok LIVE - que peux-tu créer ?","ogDescription":"Assistants de chat, overlays de stream, suivi des cadeaux, analyses, intégrations IA, intégrations de jeux - des cas d'usage concrets de l'API TikTok LIVE avec du code."},"og":{"title":"Ce que tu peux créer","subtitle":"Assistants de chat, overlays de stream, alertes de cadeaux, analyses et intégrations IA.","badge":"CAS D'USAGE"},"hero":{"badge":"Cas d'usage","titleLead":"Que peux-tu créer avec","titleAccent":"l'API TikTok LIVE ?","desc":"Des assistants de chat aux tableaux de bord d'analyse - TikTools fait tourner des milliers d'applications TikTok en temps réel. Voici ce que les développeurs créent avec notre API."},"items":{"chatAssistants":{"title":"Assistants de chat TikTok Live","desc":"Crée des assistants de chat automatiques qui répondent aux messages, lancent des jeux interactifs, accueillent les nouveaux spectateurs et modèrent le chat en temps réel. Réagis instantanément à des mots-clés, des commandes ou des actions précises."},"overlays":{"title":"Overlays de stream en temps réel","desc":"Crée des overlays en source navigateur compatibles OBS qui affichent le chat en direct, les alertes de cadeaux, le nombre de spectateurs et les stats d'engagement directement sur ton stream. Entièrement personnalisables en HTML/CSS."},"giftTracking":{"title":"Suivi des cadeaux et alertes de dons","desc":"Suis les cadeaux virtuels en temps réel avec leur valeur en diamants, les combos et le nombre de répétitions. Crée des classements de dons, des objectifs à atteindre et des alertes de cadeaux animées pour ton stream."},"analytics":{"title":"Tableaux de bord d'analyse","desc":"Crée des tableaux de bord d'analyse en temps réel et historiques pour suivre le taux d'engagement, le rythme du chat, les revenus des cadeaux, la rétention des spectateurs, le pic de spectateurs simultanés et les tendances de croissance."},"ai":{"title":"Intégrations IA","desc":"Envoie les données des lives à des modèles d'IA pour l'analyse de sentiment, la modération de contenu en temps réel, la détection automatique des meilleurs moments, le suivi de l'humeur du public et des réponses intelligentes dans le chat avec GPT, Claude ou des modèles personnalisés."},"moderation":{"title":"Outils de modération du chat","desc":"Une modération automatique qui filtre le spam, bloque les messages toxiques, limite les récidivistes et fournit des tableaux de bord de modération en temps réel. Protège ta communauté avec des règles personnalisées et des filtres IA."},"multiStream":{"title":"Suivi multi-streams","desc":"Surveille plusieurs lives TikTok LIVE en même temps. Suis les streams de la concurrence, gère les talents de ton agence ou crée des flux de découverte. L'offre Pro prend en charge 50 connexions simultanées, Ultra 250 et Agency 500."},"games":{"title":"Intégrations de jeux","desc":"Laisse les spectateurs TikTok interagir avec ton jeu en temps réel. Ils peuvent déclencher des événements via des commandes dans le chat, les cadeaux font apparaître des objets et les battles contrôlent les mécaniques de jeu. Fonctionne avec n'importe quel moteur compatible WebSocket (C++, C#, Godot, web)."},"scouting":{"title":"Repérage de créateurs","desc":"Repère les créateurs en progression et leurs meilleurs donateurs grâce aux classements régionaux, aux classements de ligue et aux événements de cadeaux en direct. Conçu pour les agences qui gèrent des équipes de créateurs."}},"cta":{"title":"Prêt à créer ?","desc":"Obtiens ta clé API gratuite et commence à recevoir les données TikTok LIVE en moins de 30 secondes.","key":"Clé API gratuite","docs":"Lire la doc"}},"discord":{"seo":{"title":"Assistant Discord TikTok LIVE gratuit - alertes live, battles, classements, support IA","description":"L'assistant Discord gratuit pour les créateurs et agences TikTok LIVE. Alertes live en temps réel, matchmaking de battles entre serveurs, réseau follow-for-follow, support API par IA, consultation des classements en direct. Sans limites, sans inscription.","ogTitle":"Assistant Discord TikTok LIVE gratuit - alertes, battles, classements","ogDescription":"Suis des créateurs, planifie des battles, crée un réseau de follow et consulte les classements en direct - le tout depuis Discord. 100 % gratuit, sans compte.","keywords":"assistant TikTok LIVE, assistant Discord, notifications live TikTok, bot battle TikTok, follow for follow, F4F, API TikTok, bot discord gratuit, alertes stream TikTok, bot agence TikTok"},"og":{"title":"Assistant Discord TikTok LIVE gratuit","subtitle":"Alertes live, battles, classements et support IA pour ton serveur.","badge":"DISCORD"},"hero":{"badge":"Gratuit pour tous les serveurs. Pas de clé API. Sans limites.","titleLead":"Le bot Discord pour les","titleAccent":"créateurs et agences TikTok LIVE","subtitle":"Alertes de live, matchmaking de battles entre serveurs, classements des donateurs, support IA et outils de gestion d'équipe pour agences - tout dans un seul assistant, entièrement gratuit.","stats":{"servers":"Serveurs Discord","members":"Membres touchés","free":"Gratuit, toujours","detectionValue":"Permanente","detection":"Détection des lives"}},"install":"Ajouter à Discord - c'est gratuit","watch":{"label":"Commande la plus utilisée","desc":"Tape-la dans n'importe quel salon pour suivre un créateur. L'assistant notifie le salon à la seconde où il passe en LIVE, à chaque fois.","cta":"Voir toutes les commandes"},"webdash":{"label":"Gère ton bot depuis le web :","text":"{label} lance {command} sur ton serveur pour changer les salons d'alerte, ton message de LIVE et les créateurs suivis depuis une seule page."},"setup":{"label":"Installation","title":"Opérationnel en moins d'une minute","step1":{"title":"Clique sur \"Ajouter à Discord\"","body":"Utilise le bouton ci-dessus ou n'importe quel bouton d'installation de cette page. Tu arriveras sur la page d'autorisation standard de Discord."},"step2":{"title":"Choisis ton serveur","body":"Choisis le serveur auquel ajouter l'assistant. Tu dois être admin (ou propriétaire du serveur) pour l'autoriser."},"step3":{"title":"C'est fait - l'assistant se configure tout seul","body":"L'assistant crée un salon privé {channel}, y publie les instructions de configuration et crée tous les salons nécessaires. Aucune commande requise."}},"features":{"label":"Fonctionnalités","title":"Tout ce dont ton serveur a besoin","items":{"alerts":{"title":"Alertes de live","desc":"Suis n'importe quel compte TikTok. Dès qu'il passe en LIVE, l'assistant publie une notification complète dans le salon de ton choix - photo de profil, titre du live, nombre de spectateurs et rang s'il figure au classement.","tag":"Détecte aussi la fin du live. Les messages se mettent à jour quand le stream se termine."},"battles":{"title":"Réseau de battles entre serveurs","desc":"Planifie des battles TikTok LIVE contre un adversaire précis ou lance un défi ouvert à tous les serveurs du réseau. L'assistant te trouve un adversaire, envoie les rappels en MP et suit les résultats.","tag":"Rappels en MP 24 h, 30 min et 10 min avant la battle"},"f4f":{"title":"Réseau follow-for-follow","desc":"Tape \"follow me {'@'}username\" ou \"f4f\" dans n'importe quel salon surveillé. L'assistant publie ton profil dans le salon F4F de ton serveur et le diffuse en même temps sur tous les serveurs connectés du réseau.","tag":"Aucune commande requise - le langage naturel suffit"},"ai":{"title":"Questions-réponses par IA","desc":"Pose n'importe quelle question sur TikTok LIVE en langage courant. L'assistant tourne sur GPT-4o et connaît toute la doc de l'API TikTool, la référence des événements, les SDK, les tarifs et les problèmes courants.","tag":"{command} Comment recevoir les événements de cadeaux en Python ?"},"rankings":{"title":"Consultation des classements en direct","desc":"Vérifie la position actuelle de n'importe quel créateur sur le classement en direct de tik.tools - région, classe, score en diamants - directement depuis Discord. Mis à jour en continu à partir des vraies données de live.","tag":"{command} - position au classement instantanée"},"roster":{"title":"Gestion de l'équipe de l'agence","desc":"Gère toute ton équipe de créateurs dans Discord. Ajoute des créateurs, suis leurs battles, planifie des lives pour eux et reçois des alertes de live pour chaque créateur que tu représentes.","tag":"{add} · {list} · {upgrade} pour les données agence"},"naturalLanguage":{"title":"Langage naturel intelligent","desc":"L'assistant comprend la conversation normale - pas besoin de commandes slash. Dis \"J'ai besoin d'une battle ce soir à 9 h\" et il crée la demande. Dis \"follow me\" et le post F4F part.","tag":"Fonctionne dans n'importe quel salon surveillé, quelle que soit la formulation"},"liveNow":{"title":"Qui est en live en ce moment","desc":"Lance {command} à tout moment pour voir lesquels de tes créateurs suivis sont en train de streamer, avec des liens directs pour les regarder sur tik.tools ou TikTok.","tag":"{command} - aperçu instantané de tous les créateurs suivis"}}},"audience":{"label":"Pour qui","title":"Un bot, trois types de créateurs","items":{"streamers":{"title":"Streamers","desc":"Suis tes créateurs préférés. Sois prévenu à la seconde où ils passent en LIVE. Planifie des battles, trouve des adversaires sur d'autres serveurs et crée un réseau de follow qui couvre toute la plateforme.","bullets":{"liveAlerts":"Alertes de live pour un nombre illimité de comptes","battleScheduling":"Planification de battles avec rappels automatiques","followNetwork":"Follow-for-follow entre serveurs","rankDisplay":"Rang en direct affiché dans les notifications"}},"agencies":{"title":"Agences","desc":"Gère ton équipe de créateurs depuis un seul serveur Discord. Reçois des alertes de live pour chaque créateur que tu représentes, planifie des battles pour eux et suis toute l'activité au même endroit.","bullets":{"roster":"Gestion complète de l'équipe (/roster)","liveAlerts":"Alertes de live pour tous les créateurs","battleCoordination":"Coordination des battles de l'équipe","strikes":"Suivi des avertissements et sanctions en cas d'absence","upgrade":"Passage à Agency pour les données de ligue (/upgrade)"}},"developers":{"title":"Développeurs","desc":"Obtiens des réponses instantanées sur l'API LIVE de TikTool, les SDK, les événements, l'authentification et les erreurs courantes - sans quitter Discord. Associe ta clé API et vérifie ta consommation depuis n'importe quel serveur où tu es.","bullets":{"aiSupport":"Support IA qui connaît toute la doc de l'API","quickLinks":"Liens rapides vers la doc, les événements, les SDK","apiKey":"Association de la clé API et suivi de la consommation","eventsReference":"Référence des événements de live (/docs)"}}}},"commandsRef":{"label":"Commandes","title":"Référence complète des commandes","sub":"Toutes les commandes slash disponibles dans l'assistant. La plupart des fonctionnalités marchent aussi en langage naturel - pas besoin de slash."},"commandGroups":{"notifications":"Notifications de live","battles":"Matchmaking de battles","rankings":"Classements et données","roster":"Équipe de l'agence","ai":"IA et docs","setup":"Configuration du serveur (admin uniquement)"},"commands":{"watchAdd":"Commencer à suivre un compte TikTok pour recevoir les alertes de live","watchAddChannel":"Suivre un compte et publier les alertes dans un salon précis","watchRemove":"Arrêter de suivre un compte","watchList":"Voir tous les comptes suivis par ton serveur","livenow":"Voir lesquels de tes créateurs suivis sont en live en ce moment","battleSchedule":"Planifier une battle à une date et une heure précises","battleRequest":"Lancer un défi ouvert à tous les serveurs du réseau","battleList":"Voir toutes les battles à venir","rank":"Consulter la position actuelle d'un créateur sur le classement en direct","usage":"Vérifier la consommation de ta clé API tik.tools et les limites de ton offre","upgrade":"Voir les offres Agency PASS - débloque les classements de ligue et les données donateurs (admin uniquement)","rosterAdd":"Ajouter un créateur à l'équipe de ton agence","rosterRemove":"Retirer un créateur de ton équipe","rosterList":"Voir toute l'équipe de ton agence","ask":"Poser une question sur l'API TikTok LIVE, les SDK, les événements ou les tarifs","docs":"Obtenir un lien direct vers la doc, les guides SDK, les classements, les agences, les offres PASS et plus","dashboard":"Ouvrir le tableau de bord web pour gérer le bot sur ce serveur","setupApiKey":"Associer ta clé API tik.tools à ce serveur","setupTiktok":"Associer un pseudo TikTok à ce serveur","setupEventsChannel":"Choisir où publier les notifications de live","setupBattleChannel":"Choisir où publier les demandes de battle","setupF4fChannel":"Choisir le salon follow-for-follow","setupBattleNetwork":"Rejoindre ou quitter le réseau de battles entre serveurs","setupBattleWizard":"Activer ou désactiver l'assistant de battle dans le chat sur ce serveur"},"responds":{"label":"Bon à savoir","title":"Où le bot répond","ai":{"title":"Réponses IA","body":"Le bot répond de lui-même aux questions dans les salons d'aide du serveur officiel TikTool. Sur ton propre serveur, {'@'}mentionne-le et il répond partout."},"wizard":{"title":"Assistant de battle","body":"Les demandes de battle tapées (\"J'ai besoin d'une battle ce soir à 9 h\") ne déclenchent l'assistant que dans les salons dont le nom contient \"battle\", comme {channel1} ou {channel2}."},"toggle":{"title":"Interrupteur admin","body":"Les admins du serveur peuvent désactiver (ou réactiver) l'assistant de battle à tout moment avec {command}. Les commandes slash continuent de fonctionner dans tous les cas."}},"agency":{"kicker":"Exclusivité Agency - fonction phare","title":"Publie les classements TikTok en direct directement dans Discord","sub":"Classements des créateurs, classements gaming et mouvements 99+ dans les {count} régions - récupérés à la demande dans un salon privé, via des boutons.","requirement":"Nécessite un abonnement Agency Global actif","step1":{"title":"Ajoute le bot et configure-le","body":"Invite le bot sur ton serveur, puis lance {command} (admin uniquement) pour commencer."},"step2":{"title":"Connecte ta clé API","body":"Le bot t'envoie une demande privée en MP - colle-y la clé API de ton agence. Elle n'est jamais affichée dans le salon."},"step3":{"title":"Choisis ce que tu veux suivre","body":"Sélectionne les régions et les classements : classements des créateurs, classements gaming et mouvements 99+ (entrés aujourd'hui / sous le seuil)."},"step4":{"title":"Choisis le salon et le rôle","body":"Définis le salon où publier et le rôle Manager autorisé à récupérer les classements."},"step5":{"title":"Récupère à la demande","body":"Utilise les boutons :"}},"cta":{"badge":"Installation gratuite. Sans carte bancaire. Sans compte.","title":"Ajoute-le à ton serveur maintenant","sub":"Clique ci-dessous, choisis ton serveur et l'assistant configure tout automatiquement. Ça prend moins d'une minute.","pricing":"Tarifs de l'API"}}},"guidesApi":{"gettingStarted":{"seo":{"title":"Bien démarrer avec l'API TikTok LIVE - guide de démarrage rapide pour développeurs","description":"Guide pas à pas pour démarrer avec l'API TikTok LIVE. Installe le SDK, obtiens une clé API gratuite, connecte-toi à n'importe quel stream TikTok LIVE et reçois le chat, les cadeaux et les spectateurs en temps réel en moins de 30 secondes.","ogTitle":"Bien démarrer avec l'API TikTok LIVE - guide de démarrage rapide","ogDescription":"Connecte-toi à n'importe quel stream TikTok LIVE en moins de 30 secondes. SDK gratuit, clé API gratuite, données en temps réel. Guide pas à pas pour développeurs."},"og":{"title":"Bien démarrer avec TikTok LIVE","subtitle":"Ta première connexion en quelques minutes.","badge":"GUIDE"},"jsonLd":{"name":"Comment se connecter à l'API de stream TikTok Live","description":"Guide pas à pas pour se connecter à n'importe quel stream TikTok LIVE et recevoir le chat, les cadeaux et les spectateurs en temps réel avec l'API TikTools.","toolNode":"Node.js (version 18 ou plus récente)","steps":{"apiKey":{"name":"Obtenir une clé API gratuite","text":"Inscris-toi sur tik.tools/login pour obtenir ta clé API gratuite. Sans carte bancaire."},"install":{"name":"Installer le SDK","text":"Lance npm install {'@'}tiktool/live pour installer le SDK TikTools."},"connect":{"name":"Se connecter à un live","text":"Crée un client TikTokLive avec le pseudo du streamer et ta clé API, puis appelle client.connect()."},"receive":{"name":"Recevoir les événements en temps réel","text":"Écoute des événements comme chat, gift, like, follow et viewer_count. Tous les événements arrivent sous forme d'objets JSON structurés."}}},"hero":{"badge":"Guide de démarrage rapide","title":"Bien démarrer avec","titleHighlight":"l'API TikTok LIVE","subtitle":"Connecte-toi à n'importe quel stream TikTok LIVE et reçois les données en temps réel en moins de 30 secondes. Offre Sandbox - sans carte bancaire."},"step1":{"title":"Obtiens ta clé API gratuite","signUp":"Inscris-toi sur {link} avec ton compte Google. Ta clé API gratuite est générée instantanément - sans carte bancaire, sans validation.","limits":"L'offre Sandbox inclut {sandboxRequests} et {sandboxConnections} (50 sessions par jour, 2h par connexion). Passe à une offre payante (dès {price}/semaine) pour {paidRequests} et {paidConnections} en production.","sandboxRequests":"5 000 requêtes/jour","sandboxConnections":"3 connexions WebSocket simultanées","paidRequests":"10 000 requêtes/jour","paidConnections":"20 connexions WebSocket simultanées"},"step2":{"title":"Installe le SDK","body":"Installe le SDK TikTools depuis npm. Compatible avec Node.js, Bun et Deno."},"step3":{"title":"Connecte-toi à un live","body":"Utilise le SDK pour te connecter à n'importe quel utilisateur TikTok actuellement en live :"},"step4":{"title":"Lance-le","saveAs":"Enregistre-le sous {file} et lance :","output":"Tu verras les événements du live défiler dans ton terminal en quelques secondes :"},"step5":{"title":"Alternative : WebSocket brut","body":"Pas envie d'utiliser le SDK ? Connecte-toi directement en WebSocket depuis n'importe quel langage :","languages":"Fonctionne avec Python, Go, Rust, Java, C#, Ruby - tout langage qui gère le WebSocket."},"next":{"title":"Et ensuite ?","useCases":{"title":"Cas d'usage","sub":"Découvre ce que les développeurs créent avec l'API"},"reference":{"title":"Référence complète de l'API","sub":"Tous les événements, endpoints et méthodes du SDK"},"bot":{"title":"Créer un assistant de chat","sub":"Tutoriel pas à pas"},"overlay":{"title":"Créer un overlay de stream","sub":"Tutoriel source navigateur OBS"}},"sidebar":{"title":"Sur cette page","apiKey":"1. Obtiens ta clé API gratuite","install":"2. Installe le SDK","connect":"3. Connecte-toi à un stream","run":"4. Lance-le","raw":"5. WebSocket brut"}},"websocket":{"seo":{"title":"API WebSocket TikTok LIVE - données de stream en temps réel","description":"Connecte-toi aux streams TikTok Live via l'API WebSocket. Messages du chat, cadeaux, nombre de spectateurs, battles en temps réel - fonctionne avec JavaScript, Python, Go, Rust et tous les langages. Offre Sandbox disponible.","ogTitle":"API WebSocket TikTok LIVE - données de stream en temps réel","ogDescription":"Connecte-toi à n'importe quel stream TikTok Live en WebSocket. Événements en temps réel pour le chat, les cadeaux, les spectateurs, les battles. Compatible avec tous les langages de programmation. Offre gratuite disponible."},"og":{"title":"Guide WebSocket TikTok LIVE","subtitle":"Connecte-toi et gère les événements du stream en temps réel.","badge":"GUIDE"},"jsonLd":{"headline":"API WebSocket TikTok LIVE - se connecter à n'importe quel live","description":"Guide complet pour se connecter aux streams TikTok LIVE en WebSocket. Chat, cadeaux, spectateurs, battles en temps réel. Fonctionne avec JavaScript, Python, Go, Rust et tous les langages.","faq":{"connect":"Connecte-toi à {url} avec n'importe quelle bibliothèque WebSocket. Tu recevras des événements JSON en temps réel pour le chat, les cadeaux, les spectateurs et plus encore.","languages":"Tout langage qui gère le WebSocket : JavaScript/Node.js, Python, Go, Rust, Java, C#, Ruby, PHP et d'autres. TikTool propose aussi un SDK Node.js officiel ({'@'}tiktool/live).","free":"Oui, l'offre Sandbox est gratuite avec 3 connexions WebSocket simultanées et 5 000 requêtes REST/jour. Les offres payantes démarrent à {price}/semaine (Basic) pour 20 connexions simultanées et 10 000 requêtes/jour."}},"hero":{"badge":"Guide","title":"TikTok LIVE","titleHighlight":"API WebSocket","subtitle":"Connecte-toi à n'importe quel stream TikTok LIVE en WebSocket. Reçois les messages du chat, les cadeaux, le nombre de spectateurs, les battles et les données d'engagement en temps réel avec une latence sous les 50ms. Compatible avec tous les langages de programmation."},"how":{"title":"Comment fonctionne le WebSocket TikTok LIVE","endpoint":"TikTool fournit un endpoint WebSocket géré sur {endpoint} qui diffuse en temps réel les événements de n'importe quel stream TikTok LIVE. Tu te connectes avec ta clé API et un pseudo TikTok - le serveur gère toute la négociation du protocole, l'authentification et la reconnexion.","relay":"Contrairement aux connexions directes au protocole de diffusion de TikTok (qui cassent souvent), l'API WebSocket de TikTool est un {relay}.","relayStrong":"relais stable, prêt pour la production"},"quickStart":{"title":"Démarrage rapide - connecte-toi en 3 lignes","native":"Ou connecte-toi directement en WebSocket natif (sans SDK) :","anyLanguage":"Tous les langages","anyLanguageBody":"Tout langage qui gère le WebSocket fonctionne - Go, Rust, Java, C#, Ruby, PHP. Connecte-toi simplement à :"},"params":{"title":"Paramètres de connexion WebSocket","parameter":"Paramètre","required":"Requis","description":"Description","uniqueId":"Pseudo TikTok (sans {'@'}) du streamer","apiKey":"Ta clé API TikTool","jwtKey":"Authentification par JWT (alternative à apiKey pour les clients navigateur avec jeton)"},"eventTypes":{"title":"Types d'événements","intro":"Chaque message WebSocket est un objet JSON avec les champs {event} et {data}. Voici les événements que tu recevras :"},"events":{"chat":"Nouveau message d'un spectateur dans le chat. Inclut les infos de l'utilisateur, le texte et les badges.","gift":"Cadeau virtuel envoyé par un spectateur. Inclut le nom du cadeau, sa valeur en diamants et le nombre de répétitions.","like":"Un spectateur a liké le stream. Inclut le nombre total de likes.","member":"Un spectateur a rejoint le stream. Se déclenche quand un utilisateur entre dans la salle du live.","social":"Follow / partage / favori. Le champ data.action indique lequel (follow, share, favourite).","roomUserSeq":"Mise à jour du nombre de spectateurs. Inclut le viewerCount actuel et les topViewers.","subscribe":"Un spectateur s'est abonné au streamer.","battle":"Événement de battle LinkMic. Inclut le statut de la battle, les scores, la durée et les participants.","battleArmies":"Mise à jour des équipes de la battle. Scores des équipes et classement des participants.","linkMic":"Mise à jour de la disposition des invités LinkMic. Inclut les IDs des emplacements et des invités pour les streams à plusieurs hôtes.","roomPin":"Le streamer a épinglé un message du chat.","liveIntro":"Mise à jour de la présentation du stream. Inclut le titre et la description.","emoteChat":"Emote personnalisée envoyée dans le chat. Inclut l'ID de l'emote et l'URL de l'image.","envelope":"Événement coffre au trésor / enveloppe rouge dans le stream.","question":"Question Q&R envoyée par un spectateur.","rankUpdate":"Actualisation du classement du streamer par région.","barrage":"Message d'annonce / barrage en haut de l'écran.","superFan":"Un spectateur est devenu Super Fan ou a gagné un niveau. Inclut le nouveau niveau.","superFanJoin":"Un Super Fan a rejoint la salle.","superFanBox":"Événement coffre / récompense Super Fan.","control":"Contrôle du cycle de vie du stream (pause, fin, etc.)."},"limits":{"title":"Limites de connexion par offre","tier":"Offre","connections":"Connexions","price":"Prix","sandboxFree":"Sandbox (gratuit)","sandboxTier":"Offre Sandbox","proPrice":"dès {price}/semaine","ultraPrice":"dès {price}/semaine","agencyConnections":"500 + Firehose","agencyPrice":"dès {price}/semaine"},"errors":{"title":"Gestion des erreurs et reconnexion","body":"Le WebSocket se ferme avec des codes de fermeture standard. Ton client doit gérer la reconnexion :"},"faq":{"title":"Questions fréquentes","connect":{"q":"Comment se connecter à un live TikTok en WebSocket ?","a":"Connecte-toi à {url} avec n'importe quelle bibliothèque WebSocket. Tu recevras des événements JSON en temps réel pour le chat, les cadeaux, les spectateurs et plus encore. Le SDK ({'@'}tiktool/live) s'en occupe automatiquement."},"languages":{"q":"Quels langages de programmation fonctionnent avec le WebSocket TikTok LIVE ?","a":"Tout langage qui gère le WebSocket : JavaScript/Node.js, Python, Go, Rust, Java, C#, Ruby, PHP et d'autres. TikTool propose aussi un SDK Node.js officiel ({'@'}tiktool/live sur npm) et un paquet Python (tiktok-live-api sur PyPI)."},"free":{"q":"L'API WebSocket TikTok LIVE est-elle gratuite ?","a":"Oui, l'offre Sandbox est gratuite avec 3 connexions WebSocket simultanées et 5 000 requêtes REST/jour. Sans carte bancaire. Les offres payantes dès {price}/semaine (Basic) proposent 20 connexions simultanées et 10 000 requêtes/jour pour la production."},"openSource":{"q":"Quelle différence avec les bibliothèques open source pour les lives ?","a":"Avec les bibliothèques open source, tu dois maintenir ta propre infrastructure de connexion, et elles cassent souvent quand la plateforme évolue. TikTool est un service API géré qui s'occupe de toute la maintenance à ta place."},"latency":{"q":"Quelle est la latence de la connexion WebSocket ?","a":"TikTool livre les événements moins de 50ms après qu'ils se produisent sur TikTok. La connexion WebSocket est optimisée pour livrer des données en temps réel avec une faible latence."}},"next":{"python":{"title":"Guide Python","sub":"Se connecter avec Python"},"events":{"title":"Référence des événements","sub":"Tous les types d'événements et leurs données"}}},"webhooks":{"seo":{"title":"Webhooks TikTok LIVE - alertes de début et de fin de live","description":"Reçois un POST HTTPS signé quand un créateur TikTok passe en LIVE ou termine son stream. Webhooks live.start et live.end avec relances, rejeu et signatures HMAC, inclus dans toutes les offres payantes."},"og":{"title":"Webhooks TikTok LIVE","subtitle":"Alertes de début et de fin de live sur ton endpoint.","badge":"GUIDE"},"jsonLd":{"breadcrumbHome":"Accueil","breadcrumbGuides":"Guides","breadcrumbPage":"Webhooks TikTok LIVE"},"hero":{"badge":"Guide","title":"TikTok LIVE","titleHighlight":"Webhooks","subtitle":"Reçois un POST HTTPS signé dès qu'un créateur TikTok passe en LIVE ou termine son stream. Aucun socket à garder ouvert, rien à interroger en boucle : choisis les créateurs, donne-nous une URL, et live.start et live.end arrivent sur ton endpoint.","seePlans":"Voir les offres","apiReference":"Référence de l'API"},"what":{"title":"À quoi sert un webhook TikTok LIVE","body":"Un webhook, c'est une alerte de passage en live livrée à ton serveur. On surveille les créateurs que tu listes et on envoie un POST HTTPS à ton URL quand l'un d'eux lance un LIVE ({start}), puis à nouveau quand le stream se termine ({end}). Ton service n'a pas besoin de garder une connexion ouverte ni de faire tourner un planificateur - il doit juste répondre à un POST.","uses":"Usages typiques : poster sur Discord ou Slack quand un créateur passe en live, lancer un enregistrement ou des analytics dès le début d'un stream, ouvrir une {link} pour le chat et les cadeaux uniquement pendant que le créateur est vraiment en live, ou garder à jour le statut live du roster d'une agence.","usesLink":"connexion WebSocket"},"how":{"title":"Comment ça marche","register":"{strong} avec l'URL de ton endpoint, les événements voulus et les pseudos TikTok à surveiller.","registerStrong":"Enregistre un webhook","secret":"{strong}, renvoyé une seule fois à la création. Chaque livraison est signée avec.","secretStrong":"Conserve le secret de signature","receive":"{strong} sous forme de POST JSON. Vérifie la signature, réponds 200, puis fais ton traitement.","receiveStrong":"Reçois live.start et live.end"},"events":{"title":"Événements","ariaLabel":"Événements webhook","event":"Événement","plans":"Offres","when":"Quand il se déclenche","plansAllPaid":"Toutes les offres payantes","plansUltraGlobal":"Ultra et Agency Global","plansGlobal":"Agency Global","liveStart":"Un créateur surveillé a lancé un LIVE. Inclut l'id de la salle, l'heure de début et l'URL du live.","liveEnd":"Un créateur surveillé a terminé son stream. Même enveloppe, avec l'heure de fin.","peakViewers":"Un stream a atteint un nouveau pic de spectateurs.","highValueGift":"Un cadeau de grande valeur a été envoyé pendant un stream surveillé.","followerMilestone":"Un créateur surveillé a franchi un palier de followers."},"register":{"title":"Enregistrer un webhook","body":"Crée tes webhooks depuis le tableau de bord, ou de serveur à serveur avec ta clé API. La réponse contient le secret de signature, affiché une seule fois.","creators":"Limite {creators} aux comptes qui t'intéressent (jusqu'à 1 000 par webhook). Pour modifier la liste plus tard, fais un {patch} du webhook avec le nouveau tableau complet - il remplace la liste précédente. Tous les paramètres sont dans la {link}.","creatorsLink":"référence de l'API"},"payloads":{"title":"Payloads","headers":"Chaque livraison porte aussi les en-têtes {timestamp}, {event}, {eventId}, {deliveryId}, {attempt} et {webhookId}."},"verify":{"title":"Vérifier la signature","body":"Chaque POST inclut {header}, où {v1} est le HMAC-SHA256 de {signed} avec le secret de ton webhook comme clé. Calcule-le sur le corps brut avant de parser le JSON, compare en temps constant et rejette les timestamps de plus de cinq minutes."},"delivery":{"title":"Livraison et relances","atLeastOnce":"{strong} Le même événement peut arriver plusieurs fois, donc dédoublonne sur {eventId}.","atLeastOnceStrong":"Au moins une fois.","retries":"{strong} Une livraison échouée est relancée selon le calendrier 0s, 30s, 2m, 10m, 1h et 6h. Après la dernière tentative, elle est conservée en dead letter que tu peux rejouer depuis le tableau de bord ou l'API une fois ton endpoint rétabli.","retriesStrong":"Relances.","fast":"{strong} Renvoie un 2xx dès l'arrivée du POST et traite ensuite. Le délai de connexion est de 10 secondes et le délai de lecture de 15 secondes ; une connexion refusée ou un délai dépassé compte comme une tentative échouée.","fastStrong":"Réponds vite.","test":"{strong} Envoie une livraison de test signée à ton endpoint depuis le tableau de bord ou l'endpoint de test pour vérifier le parsing et la gestion de la signature avant qu'un créateur passe en live.","testStrong":"Teste quand tu veux."},"plans":{"title":"Offres","body":"Les webhooks avec {start} et {end} sont inclus dans toutes les offres payantes, avec plus d'endpoints et un quota de livraisons quotidien plus élevé sur les offres supérieures. Un compte Sandbox peut configurer un webhook de test depuis le tableau de bord et lui envoyer des livraisons de test signées, pour construire l'intégration avant de t'abonner. Les livraisons réelles et l'enregistrement de webhooks avec une clé API nécessitent une offre payante. Consulte les {link} pour le détail des offres.","pricingLink":"tarifs"},"faq":{"title":"Questions fréquentes","offer":{"q":"TikTok propose-t-il des webhooks pour les LIVE ?","a":"TikTok ne fournit pas de webhooks publics pour signaler qu'un créateur passe en live. Tik Tools surveille les créateurs que tu choisis et envoie des webhooks live.start et live.end à ton endpoint HTTPS."},"speed":{"q":"En combien de temps arrive live.start ?","a":"En général quelques secondes après le passage en live du créateur. La détection est continue mais pas instantanée : un stream qui commence et se termine en quelques secondes peut passer inaperçu. Les streams de durée normale sont détectés de façon fiable."},"twice":{"q":"Le même événement peut-il être livré deux fois ?","a":"Oui. La livraison est au moins une fois, donc une relance peut répéter un événement que ton serveur a déjà traité. Chaque payload porte un event_id stable - stocke-le et ignore tout id déjà vu."},"down":{"q":"Que se passe-t-il si mon serveur est hors ligne ?","a":"Les livraisons échouées sont relancées à 0s, 30s, 2m, 10m, 1h et 6h. Après la dernière tentative, l'événement est conservé en dead letter que tu peux rejouer une fois ton endpoint de retour."},"websocket":{"q":"Ai-je aussi besoin d'une connexion WebSocket ?","a":"Pas pour les alertes de passage en live. Les webhooks couvrent live.start et live.end à eux seuls. Utilise l'API WebSocket quand tu as aussi besoin des événements de chat, de cadeaux et de spectateurs à l'intérieur du stream."},"plans":{"q":"Quelles offres incluent les webhooks ?","a":"Les webhooks live.start et live.end sont inclus dans toutes les offres payantes. Les offres supérieures ajoutent plus d'endpoints, un quota de livraisons quotidien plus élevé et des événements supplémentaires. Un compte Sandbox peut configurer un webhook de test depuis le tableau de bord et envoyer des livraisons de test signées ; les livraisons réelles et l'enregistrement de webhooks avec une clé API nécessitent une offre payante."}},"next":{"websocket":{"title":"Guide WebSocket","sub":"Reçois le chat et les cadeaux dès qu'un créateur est en live"},"bot":{"title":"Créer un bot live","sub":"Automatisation Discord et chat"}}},"events":{"seo":{"title":"Référence des événements TikTok LIVE - tik.tools","description":"Chaque événement WebSocket TikTok LIVE documenté avec des données live du firehose : chat, cadeau, like, follow, arrivée, battle, abonnement. Code prêt à l'emploi en Node, Python, curl, Go.","ogTitle":"Référence des événements de l'API TikTok LIVE","ogDescription":"Tous les événements WebSocket TikTok LIVE documentés avec des exemples live du firehose. Code prêt à l'emploi en Node, Python, curl, Go."},"og":{"title":"Référence des événements TikTok LIVE","subtitle":"Chaque événement auquel tu peux t'abonner.","badge":"GUIDE"},"hero":{"eyebrow":"RÉFÉRENCE DES ÉVÉNEMENTS · FIREHOSE LIVE · EN DIRECT","title":"Tout le vocabulaire d'événements de {brand}","sub":"Chat. Cadeaux. Likes. Arrivées. Follows. Battles. Abonnements. Chaque événement des streams TikTok LIVE passe par un seul WebSocket avec des métadonnées riches. Le flux ci-dessous est le vrai firehose public en ce moment - pas une maquette.","ctaKey":"Obtenir une clé sandbox gratuite","ctaDocs":"Lire la doc"},"feed":{"title":"Flux d'événements en direct","flag":"{count} événements en mémoire · vrai stream public","giftAlt":"cadeau","someone":"quelqu'un","giftFallback":"Cadeau","actions":{"sent":"a envoyé"},"secondsAgo":"il y a {n} s","minutesAgo":"il y a {n} min","empty":"En attente du prochain événement live...","caption":"Le firehose public est masqué, mais chaque événement est un vrai push venant d'une vraie salle TikTok LIVE. Connecte-toi avec ta propre clé pour recevoir le payload complet sans masquage (vrais pseudos, vrais avatars, vrais nombres de diamants) - la seule chose qui change d'une offre à l'autre, c'est la limite de connexions simultanées."},"code":{"title":"Abonne-toi au firehose dans ta stack","lead":"Choisis ton langage. Copie. Lance. Clé sandbox sur {link}.","tabsLabel":"Langage du code"},"docs":{"title":"Chaque événement, ce qui le déclenche, ce que contient le payload","intro":"Tous les événements partagent l'enveloppe {envelope}. Ci-dessous : chaque type d'événement et les données qu'il transporte.","items":{"chat":{"description":"Déclenché quand un spectateur envoie un message dans le chat. L'événement le plus courant.","frequency":"Très fréquent","fields":{"comment":"Le texte du message","userId":"ID numérique de l'utilisateur TikTok"}},"gift":{"description":"Déclenché quand un spectateur envoie un cadeau virtuel. Inclut le nom du cadeau, sa valeur en diamants et les données de série.","frequency":"Modéré","fields":{"user":"Expéditeur","giftName":"ex. \"Rose\", \"Galaxy\"","giftId":"ID numérique du cadeau","diamondCount":"Valeur en diamants","repeatCount":"Nombre dans la série","repeatEnd":"True à la fin de la série"}},"like":{"description":"Déclenché quand un spectateur appuie sur le bouton like. Inclut le total de likes cumulés.","frequency":"Très fréquent","fields":{"user":"Auteur du like","likeCount":"Nombre pour cet événement","totalLikeCount":"Total du stream"}},"member":{"description":"Déclenché quand un spectateur rejoint la salle du live.","frequency":"Modéré","fields":{"user":"Utilisateur qui arrive"}},"follow":{"description":"Déclenché quand un spectateur suit le streamer pendant le live.","frequency":"Faible","fields":{"user":"Utilisateur qui suit"}},"share":{"description":"Déclenché quand un spectateur partage le live.","frequency":"Faible","fields":{"user":"Utilisateur qui partage"}},"roomUserSeq":{"description":"Mise à jour périodique du nombre de spectateurs. Le moyen principal de suivre l'audience en temps réel. Le SDK l'émet aussi sous le nom viewer_count (alias, même payload).","frequency":"Périodique","fields":{"viewerCount":"Spectateurs en ce moment","topViewers":"Classés par engagement"}},"subscribe":{"description":"Déclenché quand un spectateur s'abonne au streamer.","frequency":"Rare","fields":{"user":"Abonné"}},"linkMicBattle":{"description":"Déclenché quand une battle TikTok LIVE commence, évolue ou se termine. Inclut les scores et les participants.","frequency":"Pendant les battles","fields":{"battleUsers":"Participants avec leurs scores","type":"1=début, 2=mise à jour, 3=fin"}},"roomPin":{"description":"Déclenché quand le streamer épingle un message du chat.","frequency":"Rare","fields":{"pinnedMessage":"Contenu du message + expéditeur"}}}},"faq":{"title":"Questions fréquentes","paid":{"q":"Faut-il une offre payante pour recevoir les événements ?","a":"Non. L'offre Sandbox est gratuite et fournit le vrai payload complet (vrais pseudos, vrais diamants, etc.) - ton client signe le WebSocket amont avec son propre cookie TikTok. Les seules limites strictes sont 3 connexions WebSocket simultanées et 5 000 requêtes REST/jour. Basic à {price}/sem. relève la limite à 20 WS simultanés + 10 000 req/jour."},"frequent":{"q":"Quel événement se déclenche le plus souvent sur un stream chargé ?","a":"`like` et `chat` dominent en fréquence. `gift` est le signal le plus précieux par événement."},"multiple":{"q":"Puis-je m'abonner à plusieurs créateurs TikTok en même temps ?","a":"Oui. Ouvre un WebSocket par uniqueId. L'offre Pro permet 50 WS simultanés, Ultra 250."},"streak":{"q":"Comment détecter la fin d'une série de cadeaux ?","a":"Seuls les cadeaux à série (`giftType` 1) font une série : surveille `repeatEnd === true`, ou clôture-la toi-même quand aucune nouvelle trame n'arrive pendant quelques secondes, et garde le `repeatCount` le plus élevé. Les autres cadeaux n'envoient jamais de trame de fin : un envoi en quantité comme 8x est une seule trame avec `repeatCount` 8, donc compte-le dès son arrivée. Dans les deux cas, le total de diamants = `diamondCount * repeatCount`."},"latency":{"q":"Quelle est la latence par rapport au stream réel ?","a":"Les événements arrivent environ 150-400ms après leur déclenchement sur TikTok. Plus vite que le flux vidéo lui-même sur la plupart des CDN."},"battles":{"q":"Les battles se déclenchent-elles pour les deux créateurs ?","a":"Oui. Connecte-toi à l'un ou l'autre créateur de la battle - les deux reçoivent le même événement `linkMicBattle` avec les deux `battleUsers` renseignés."}}}},"guidesBuild":{"shared":{"ogBadge":"GUIDE"},"bot":{"seo":{"title":"Comment créer un bot de chat TikTok Live (Node.js + Python) - tik.tools","description":"Crée un bot de chat TikTok LIVE en Node.js ou Python qui lit le chat, les cadeaux et les arrivées, et réagit aux commandes. Code fonctionnel, exemples testés, infos sur les limites de débit. Clé API gratuite.","ogTitle":"Comment créer un bot de chat TikTok Live en 5 minutes","ogDescription":"Exemples fonctionnels de bot de chat TikTok LIVE en Node.js et Python. Lis les événements, réagis aux commandes, tourne 24/7. Offre gratuite."},"og":{"title":"Créer un bot de chat TikTok Live","subtitle":"Tutoriel Node.js et Python."},"jsonLd":{"name":"Créer un bot de chat TikTok LIVE","description":"Tutoriel pas à pas en Node.js et Python pour un bot de chat TikTok LIVE qui lit les événements chat/cadeaux et réagit aux commandes des spectateurs dans ta propre app.","steps":{"install":{"name":"Installer le SDK","text":"Installe le SDK TikTool via npm ou pip."},"credentials":{"name":"Configurer les identifiants","text":"Exporte ta clé API TikTool."},"write":{"name":"Écrire le bot","text":"Écoute les événements chat/cadeaux et réagis aux commandes dans ton propre code."},"run":{"name":"Le lancer","text":"Lance-le avec node ou python ; le bot se reconnecte automatiquement."}}},"hero":{"badge":"Tutoriel · Gratuit · 5 minutes","title":"Crée un bot de chat TikTok LIVE","sub":"Lis chaque événement de chat, de cadeau et d'arrivée de n'importe quel stream TikTok LIVE et réagis aux commandes dans ta propre app. En Node.js ou Python, avec moins de 60 lignes de code.","ctaKey":"Obtenir une clé API gratuite","ctaGithub":"Voir sur GitHub"},"mock":{"terminal":"terminal","liveOutput":"sortie live du bot","productionKey":"Clé de production","active":"actif","limit":"Limite","limitValue":"10 000 événements/min"},"step1":{"title":"Installe le SDK","body":"Un seul paquet. Pas d'étape de build. Fonctionne dans tout environnement Node 18+ ou Python 3.9+."},"step2":{"title":"Configure tes identifiants","intro":"Il te faut une seule chose :","apiKeyItem":"{label} - depuis {link}. L'offre gratuite suffit pour un stream.","apiKeyLabel":"Clé API","dashboardLink":"ton tableau de bord"},"step3":{"title":"Écris le bot","body":"Écoute le chat, les cadeaux, les arrivées, les likes. Réagit aux commandes {hello} et {ping} avec ta propre action : un overlay, un son, un webhook."},"step4":{"title":"Lance-le","body":"Le bot reste connecté jusqu'à ce que tu l'arrêtes. La logique de reconnexion est intégrée au SDK.","tryIt":"Tape {hello} ou {ping} depuis n'importe quel compte TikTok dans le chat du streamer et regarde ton bot réagir."},"limits":{"label":"Important","title":"Les limites à prévoir","sub":"Tout ce qui suit est imposé par TikTok sur ton compte/IP - tik.tools ne peut pas le lever. Conçois la logique de ton bot en conséquence.","volume":{"title":"événements par stream et par minute","body":"Les gros créateurs (1M+ spectateurs) génèrent des dizaines de milliers d'événements par minute. Ton bot doit les traiter sans se bloquer - ne bloque pas la boucle d'événements à chaque message. Abandonne ou mets en file les traitements lourds."},"streamEnd":{"chip":"fin du stream","title":"la session se termine avec le LIVE","body":"Quand le streamer termine son LIVE, le WebSocket se ferme. Le SDK déclenche {event}. Reconnecte-toi quand le streamer repasse en live - interroge {endpoint} ou utilise les webhooks."},"unofficial":{"chip":"non affilié","title":"non approuvé par TikTok","body":"C'est une intégration {unofficial}. Ne te fais pas passer pour des créateurs, et veille à ce que tout ce que ton bot déclenche respecte les règles communautaires de TikTok.","strong":"non officielle"}},"next":{"title":"Et ensuite","overlay":{"title":"Overlay OBS","desc":"Affiche des animations de cadeaux par-dessus ta vidéo"},"game":{"title":"Créer un jeu de chat","desc":"Les spectateurs votent en commentaire, les cadeaux déclenchent des actions"},"tts":{"title":"Synthèse vocale","desc":"Fais lire les messages du chat à voix haute par le bot"}}},"overlay":{"seo":{"title":"Créer un overlay de stream TikTok LIVE - tutoriel source navigateur OBS","description":"Crée un overlay de stream TikTok LIVE pour OBS avec le chat en temps réel, des alertes de cadeaux et le nombre de spectateurs. Tutoriel complet avec code HTML, CSS et Node.js. Utilise l'API TikTok LIVE - offre gratuite disponible.","ogTitle":"Créer un overlay de stream TikTok LIVE pour OBS","ogDescription":"Crée un overlay TikTok LIVE en temps réel avec flux de chat, alertes de cadeaux et nombre de spectateurs. Tutoriel de code complet pour les sources navigateur OBS."},"og":{"title":"Créer un overlay de stream TikTok LIVE","subtitle":"Chat, cadeaux et alertes pour OBS."},"jsonLd":{"howTo":{"name":"Comment créer un overlay de stream TikTok LIVE pour OBS","description":"Crée un overlay OBS en temps réel qui affiche le chat TikTok LIVE, les alertes de cadeaux et le nombre de spectateurs avec l'API TikTools.","steps":{"setup":{"name":"Configurer le projet","text":"Crée un projet Node.js avec {pkg} et express."},"server":{"name":"Créer le serveur","text":"Construis un serveur Express qui se connecte à TikTok et diffuse les événements via SSE."},"html":{"name":"Créer le HTML de l'overlay","text":"Conçois l'overlay dans le navigateur avec flux de chat, alertes de cadeaux et nombre de spectateurs."},"obs":{"name":"Ajouter à OBS","text":"Ajoute l'URL de l'overlay comme Source navigateur dans OBS en 1920x1080."}}},"article":{"headline":"Créer un overlay de stream TikTok LIVE avec des données en temps réel","description":"Tutoriel complet : crée un overlay compatible OBS pour les streams TikTok LIVE avec le chat en temps réel, des alertes de cadeaux et le nombre de spectateurs."}},"hero":{"badge":"Tutoriel","title":"Crée un","highlight":"overlay de stream TikTok LIVE","subtitle":"Crée un overlay en source navigateur, compatible OBS, qui affiche en temps réel le chat, les alertes de cadeaux et le nombre de spectateurs de n'importe quel stream TikTok LIVE."},"build":{"title":"Ce que tu vas créer","intro":"Un overlay de stream dans le navigateur qui fonctionne avec OBS, Streamlabs ou tout logiciel qui gère les sources navigateur. Il affiche :","items":{"chat":"Les messages du chat en temps réel","gifts":"Des alertes de cadeaux animées avec leur valeur en diamants","viewers":"Le nombre de spectateurs actuel","feed":"Un flux de chat défilant avec les avatars des utilisateurs"}},"prereq":{"title":"Prérequis","node":"Node.js 18+ installé","apiKey":"Une clé API TikTools gratuite - {link}","apiKeyLink":"obtiens-la ici","obs":"OBS Studio (ou tout logiciel de streaming avec Source navigateur)"},"step1":{"title":"Étape 1 : configurer le projet"},"step2":{"title":"Étape 2 : créer le serveur","body":"Crée {file} - il se connecte à TikTok et diffuse les événements vers l'overlay du navigateur via Server-Sent Events (SSE) :"},"step3":{"title":"Étape 3 : créer le HTML de l'overlay","body":"Crée {file} - c'est ce qu'OBS affichera comme source navigateur :"},"step4":{"title":"Étape 4 : lancer et ajouter à OBS","thenObs":"Puis dans OBS :","addSource":"Ajoute une nouvelle {source}","sourceLabel":"Source navigateur","setUrl":"Définis l'URL sur {url}","setSize":"Définis la largeur sur {width} et la hauteur sur {height}","shutdown":"Coche \"Désactiver la source lorsqu'elle n'est pas visible\""},"custom":{"title":"Idées de personnalisation","themes":{"label":"Thèmes personnalisés","text":"{label} - change les couleurs, les polices et la mise en page pour coller à l'identité de ton stream"},"sounds":{"label":"Effets sonores","text":"{label} - joue des sons à l'arrivée des cadeaux avec la Web Audio API"},"gifs":{"label":"Animations GIF","text":"{label} - affiche des GIF animés pour certains cadeaux"},"goals":{"label":"Barres d'objectif","text":"{label} - ajoute des barres de progression d'objectif de dons/cadeaux"},"podium":{"label":"Podium des top donateurs","text":"{label} - affiche les 3 meilleurs donateurs en temps réel"}},"next":{"bot":{"title":"Créer un assistant de chat","desc":"Tutoriel d'assistant de chat automatisé"},"useCases":{"title":"Plus de cas d'usage","desc":"Voir toutes les applications de l'API"}}},"game":{"seo":{"title":"Comment créer un jeu interactif TikTok LIVE - Unity, C++ et Web","description":"Guide pas à pas pour créer des jeux interactifs contrôlés par les spectateurs sur TikTok LIVE. Les spectateurs envoient des cadeaux et des commandes dans le chat pour contrôler ton jeu. Fonctionne avec Unity, C++ et le web. SDK gratuit.","ogTitle":"Créer un jeu interactif TikTok LIVE - Unity, C++ et Web","ogDescription":"Laisse les spectateurs contrôler ton jeu avec les événements TikTok LIVE. Effets déclenchés par les cadeaux, commandes de chat, avalanches de likes. Code complet pour UE5, Unity et JavaScript."},"og":{"title":"Créer un jeu TikTok LIVE","subtitle":"Laisse les spectateurs contrôler ton jeu avec les cadeaux et le chat."},"jsonLd":{"howTo":{"name":"Créer un jeu interactif TikTok LIVE","description":"Crée des jeux contrôlés par les spectateurs pour les streams TikTok LIVE. Les spectateurs envoient des cadeaux, des commandes de chat et des likes pour contrôler la partie. Fonctionne avec Unity, C++ et le web.","steps":{"engine":{"name":"Choisir ton moteur","text":"Choisis ton moteur de jeu : Unity (WebSocket C#), C++ ou web (SDK JavaScript)."},"connect":{"name":"Se connecter à l'API TikTool","text":"Installe le SDK ou connecte-toi en WebSocket brut pour recevoir les événements des streams TikTok LIVE en temps réel."},"map":{"name":"Associer les événements aux actions du jeu","text":"Lie les événements gift, chat, like et follow à des effets en jeu : faire apparaître des objets, contrôler des personnages ou changer la difficulté."},"stream":{"name":"Streamer sur TikTok","text":"Utilise TikTok Live Studio ou OBS pour streamer ton jeu pendant que le public interagit en temps réel."}}},"faq":{"official":{"q":"Ai-je besoin de l'API officielle de TikTok pour créer un jeu LIVE ?","a":"Non. TikTok ne propose pas d'API publique pour les événements des LIVE. TikTool fournit une API gérée avec livraison en WebSocket qui fonctionne avec tous les moteurs de jeu, dont Unity, Godot, C++ et les navigateurs web."},"engines":{"q":"Quels moteurs de jeu fonctionnent avec les jeux interactifs TikTok LIVE ?","a":"Tout moteur qui gère les connexions WebSocket : Unity (WebSocket C#), C++, Godot, GameMaker, navigateurs web et moteurs maison."}}},"hero":{"badge":"Guide de dev de jeux","title":"Crée un","highlight":"jeu interactif TikTok LIVE","subtitle":"Laisse les spectateurs contrôler ton jeu avec des commandes de chat, des cadeaux et des likes. Fonctionne avec Unity, C++, les navigateurs web et tout moteur compatible WebSocket."},"what":{"title":"C'est quoi, les jeux TikTok LIVE ?","body":"Les jeux interactifs TikTok LIVE sont des expériences contrôlées par les spectateurs, où les actions du public influencent directement la partie. Quand les spectateurs envoient des messages, des cadeaux, des likes ou suivent le streamer, ces événements déclenchent des réactions dans le jeu - apparition d'ennemis, changement de décor ou contrôle de personnages.","examplesIntro":"Exemples populaires :","battles":{"label":"Combats pilotés par le chat","text":"{label} - les spectateurs tapent des commandes pour rejoindre une équipe et se battre"},"gifts":{"label":"Effets déclenchés par les cadeaux","text":"{label} - envoyer une Rose fait apparaître un objet, un Univers déclenche un combat de boss"},"likes":{"label":"Avalanches de likes","text":"{label} - les likes influent sur la gravité, la vitesse ou la difficulté"},"follows":{"label":"Alertes de follow","text":"{label} - les nouveaux followers font apparaître des PNJ alliés"}},"how":{"title":"Comment ça marche","body":"Ton jeu se connecte à l'API TikTools en WebSocket et reçoit les événements du stream TikTok LIVE en temps réel. Chaque événement inclut le pseudo du spectateur, l'action effectuée et les données associées (valeur du cadeau, message du chat, etc.)."},"option1":{"title":"Option 1 : jeu web (JavaScript)","body":"L'approche la plus simple - connecte-toi directement depuis un navigateur ou un backend Node.js :"},"option2":{"title":"Option 2 : Unity (C#)","body":"Utilise la connexion WebSocket brute depuis Unity - aucun plugin supplémentaire requis :"},"tips":{"title":"Conseils de game design","names":{"label":"Affiche les pseudos","text":"{label} - affiche le pseudo du donateur ou de l'auteur du message dans le jeu pour que les spectateurs se sentent reconnus"},"scale":{"label":"Adapte-toi à l'audience","text":"{label} - utilise les événements {event} pour ajuster la difficulté dynamiquement"},"tiers":{"label":"Paliers de cadeaux","text":"{label} - associe la valeur des cadeaux TikTok (1{diamond} = petit, 10{diamond} = moyen, 100{diamond}+ = épique) à des effets en jeu"},"cooldowns":{"label":"Temps de recharge","text":"{label} - évite le spam avec un temps de recharge par utilisateur sur les commandes de chat"},"feedback":{"label":"Retour visuel","text":"{label} - montre toujours ce qui s'est passé quand un spectateur interagit pour garder le public impliqué"}},"faq":{"title":"FAQ","official":{"q":"Ai-je besoin de l'API officielle de TikTok pour créer un jeu LIVE ?","a":"Non. TikTok ne propose pas d'API publique pour les événements des LIVE. TikTool fournit une API tierce gérée avec livraison en WebSocket qui fonctionne avec tous les moteurs de jeu. Une évaluation Sandbox gratuite de 7 jours suffit pour prototyper ton jeu."},"events":{"q":"Quels événements puis-je utiliser dans mon jeu ?","a":"Tous les événements : {chat}, {gift}, {like}, {follow}, {share}, {member} (arrivée), {viewerCount}. Consulte la {link} pour la documentation complète.","link":"référence des événements"},"engines":{"q":"Puis-je l'utiliser avec Godot, GameMaker ou d'autres moteurs ?","a":"Oui. Tout moteur qui gère les connexions WebSocket peut utiliser l'API TikTool. Connecte-toi à {url} et parse les messages JSON. Aucun SDK requis."}},"next":{"overlay":{"title":"Créer un overlay","desc":"Tutoriel d'overlay de stream OBS"},"events":{"title":"Référence des événements","desc":"Tous les types d'événements documentés"}}},"tts":{"seo":{"title":"Comment ajouter la synthèse vocale (TTS) sur TikTok LIVE - guide d'assistant TTS gratuit","description":"Comment ajouter la synthèse vocale sur TikTok LIVE. Crée un assistant TTS gratuit qui lit les messages du chat à voix haute avec des voix IA - ElevenLabs, OpenAI ou la TTS gratuite du navigateur. Guide pas à pas pour Node.js et Python.","ogTitle":"Comment utiliser la synthèse vocale sur TikTok Live - guide d'assistant TTS","ogDescription":"Crée un assistant TTS pour TikTok LIVE. Lis les messages du chat à voix haute avec des voix IA. Fonctionne avec tous les moteurs TTS. API gratuite pour les développeurs."},"og":{"title":"Synthèse vocale TikTok LIVE","subtitle":"Transforme le chat et les cadeaux en audio en direct."},"jsonLd":{"name":"Comment utiliser la synthèse vocale sur TikTok Live","description":"Crée un assistant TTS qui lit à voix haute les messages du chat TikTok Live avec l'API TikTool et n'importe quel moteur TTS.","steps":{"connect":{"name":"Se connecter au live","text":"Installe le SDK TikTool et connecte-toi à un stream TikTok LIVE avec ta clé API."},"listen":{"name":"Écouter les messages du chat","text":"Utilise {code} pour recevoir chaque message du chat en temps réel."},"send":{"name":"Envoyer au moteur TTS","text":"Transmets le texte du message à ton moteur TTS préféré (Web Speech API, ElevenLabs, Google TTS)."}},"toolEngine":"N'importe quel moteur TTS (Web Speech API, ElevenLabs, Google Cloud TTS)"},"hero":{"badge":"Guide d'assistant TTS","title":"Synthèse vocale","highlight":"TTS","line2":"sur TikTok LIVE","subtitle":"Crée un assistant TTS qui lit à voix haute les messages du chat TikTok Live avec des voix IA. Fonctionne avec tous les moteurs TTS - ElevenLabs, Google Cloud, OpenAI ou la Web Speech API gratuite du navigateur."},"intro":{"heading":"Comment utiliser{accent} sur TikTok Live","headingAccent":"la synthèse vocale","sub":"La TTS (synthèse vocale) sur TikTok Live lit les messages du chat à voix haute avec des voix IA. Découvre comment fonctionne la TTS, comment l'activer et comment créer des assistants TTS avec l'API TikTool."},"what":{"title":"C'est quoi, la TTS sur TikTok LIVE ?","body":"La synthèse vocale (TTS) sur TikTok Live convertit les {strong} pendant un live. Quand les spectateurs envoient des messages, la TTS les lit à voix haute pour que le streamer et le public les entendent. C'est particulièrement utile pour :","strong":"messages du chat en audio parlé","items":{"streamers":"Les streamers qui ne peuvent pas lire le chat en permanence","accessibility":"L'accessibilité pour les personnes malvoyantes","entertainment":"Les expériences de divertissement interactives","assistants":"Les assistants vocaux IA en stream"}},"howGet":{"title":"Comment avoir la synthèse vocale sur TikTok Live","body":"La TTS intégrée de TikTok est limitée - elle ne fonctionne que pour certains messages de dons/cadeaux. Pour une {strong}, les développeurs utilisent l'API de TikTool pour capter le chat en temps réel et l'envoyer à un moteur TTS :","strong":"TTS complète sur tous les messages du chat"},"step1":{"title":"Étape 1 : se connecter au live"},"step2":{"title":"Étape 2 : écouter les messages du chat"},"step3":{"title":"Étape 3 : ajouter un moteur TTS","body":"Choisis n'importe quel moteur TTS - Web Speech API du navigateur, Google Cloud TTS, Amazon Polly, ElevenLabs ou OpenAI TTS :"},"useCasesTitle":"Cas d'usage de la TTS sur TikTok Live","useCases":{"chat":{"title":"Assistant TTS pour le chat","desc":"Lit chaque message du chat à voix haute. Les spectateurs entendent leurs messages prononcés par une IA - ça booste l'engagement et les dons."},"gifts":{"title":"Assistant de remerciement des cadeaux","desc":"Remercie automatiquement les spectateurs qui envoient des cadeaux. Messages vocaux personnalisés pour les roses, les lions et les univers."},"games":{"title":"Commandes de jeu","desc":"Jeux interactifs pilotés à la voix. Les messages du chat deviennent des commandes vocales qui contrôlent la partie en stream."},"multiLang":{"title":"TTS multilingue","desc":"Détecte la langue du message et utilise la voix adaptée. Streame pour un public international avec une TTS traduite automatiquement."}},"compare":{"title":"TTS TikTok LIVE vs TTS intégrée","feature":"Fonctionnalité","ours":"TikTool + TTS personnalisée","builtIn":"TTS intégrée de TikTok","yes":"Oui","no":"Non","allChat":"Tous les messages du chat","giftsOnly":"Cadeaux uniquement","customVoices":"Voix personnalisées","anyEngine":"Tous les moteurs","fixedVoices":"Voix fixes","aiVoices":"Voix IA (ElevenLabs, OpenAI)","multiLang":"Multilingue","languages":"50+ langues","limited":"Limité","filtering":"Filtrage/modération","customRules":"Règles personnalisées","overlay":"Overlay de stream","obs":"Compatible OBS"},"python":{"title":"Assistant TTS en Python pour TikTok Live","body":"Crée un assistant TTS en Python avec {pkg} et {engine} :"},"faq":{"title":"Questions fréquentes","howTo":{"q":"Comment faire de la synthèse vocale sur un live TikTok ?","a":"Utilise l'API WebSocket de TikTool pour capter les messages du chat en temps réel, puis envoie-les à n'importe quel moteur TTS (Web Speech API, Google Cloud TTS, ElevenLabs, OpenAI TTS). L'API fournit chaque message du chat en JSON - il te suffit d'envoyer le texte à la TTS de ton choix."},"howGet":{"q":"Comment avoir la synthèse vocale sur un live TikTok ?","a":"Installe le SDK TikTool avec {command}, connecte-toi à un live avec ta clé API et écoute les événements de chat. Chaque événement de chat inclut le texte du message et les infos de l'utilisateur. Envoie le texte à n'importe quel moteur TTS pour l'entendre à voix haute."},"builtIn":{"q":"TikTok a-t-il une TTS intégrée pour les lives ?","a":"TikTok a une TTS intégrée limitée qui ne lit que certains messages de cadeaux/dons. Pour une TTS complète sur tous les messages du chat, il te faut une solution externe comme l'API de TikTool connectée à un moteur TTS."},"python":{"q":"Puis-je créer un assistant TTS pour TikTok Live en Python ?","a":"Oui. Utilise le paquet Python tiktok-live-api ou connecte-toi directement à wss://api.tik.tools via websockets. Combine-le avec pyttsx3 (hors ligne) ou gTTS (Google) pour la sortie vocale. Vois l'exemple Python ci-dessus."},"bestEngine":{"q":"Quel est le meilleur moteur TTS pour TikTok Live ?","a":"Pour un usage gratuit/basique : la Web Speech API du navigateur ou pyttsx3 (Python). Pour des voix IA de haute qualité : ElevenLabs, OpenAI TTS ou Google Cloud TTS. Chacun a ses compromis en prix, qualité de voix et latence."},"free":{"q":"Comment utiliser la TTS sur un live TikTok gratuitement ?","a":"TikTool propose une évaluation Sandbox gratuite de 7 jours (5 000 requêtes/jour, 3 connexions WebSocket simultanées). Avec la Web Speech API gratuite du navigateur ou pyttsx3 en Python, tu peux créer et évaluer un assistant TTS pour TikTok Live sans frais, puis continuer avec une offre payante."}},"cta":{"title":"Crée ton assistant TTS pour TikTok LIVE","desc":"Offre Sandbox - 5 000 requêtes/jour, 3 connexions WebSocket simultanées. Commence à développer en quelques minutes.","primary":"Clé API gratuite","secondary":"Guide de démarrage rapide"}}},"guidesData":{"common":{"badge":"Guide développeur","ogBadge":"GUIDE","breadcrumbHome":"Accueil","breadcrumbGuides":"Guides"},"leaderboardApi":{"seo":{"title":"Guide de l'API de classements TikTok LIVE {'|'} TikTools","description":"Guide développeur complet de l'API de classements et de ligues TikTools. Récupère les classements quotidiens par région, interroge les {count} divisions de ligue ({range}) et suis les créateurs en live dans {regions} régions. Exemples de code en Node.js, Python, Go, PHP et cURL.","ogTitle":"Guide de l'API de classements et de ligues TikTok LIVE {'|'} TikTools","ogDescription":"Données de classement TikTok LIVE en temps réel pour {regions} régions. Interroge les classements de ligue dans les {count} divisions ({range}), détecte les créateurs en live et crée des outils de suivi de créateurs. Toutes les offres payantes. Exemples de code complets.","ogImageTitle":"API de classements TikTok LIVE","ogImageSubtitle":"Top créateurs et donateurs en données live.","breadcrumbName":"API de classements et de ligues"},"hero":{"title":"API de classements","titleHighlight":"et de ligues","subtitle":"Données de classement TikTok LIVE en temps réel. Récupère les classements quotidiens de {count} régions, interroge les classes de ligue en direct et suis les performances des créateurs."},"badges":{"allPaidPlansCaps":"TOUTES OFFRES PAYANTES","ultraOnlyLeaguesCaps":"ULTRA UNIQUEMENT - Ligues","allPaidPlans":"Toutes offres payantes","ultraOnly":"Ultra uniquement","ultraDeveloperOnly":"Offre développeur Ultra uniquement"},"headings":{"pathParameters":"Paramètres de chemin","responseSchema":"Schéma de réponse","exampleResponse":"Exemple de réponse","codeExamples":"Exemples de code"},"table":{"parameter":"Paramètre","type":"Type","description":"Description","field":"Champ","slug":"Slug","regionCode":"Code région","class":"Classe"},"overview":{"heading":"Vue d'ensemble","intro":"TikTool expose deux catégories de données de classement via l'API de son site sur {host}. Les deux endpoints renvoient en temps réel des classements compétitifs de créateurs TikTok LIVE triés par diamants gagnés.","regional":{"title":"Classements régionaux","body":"Classements quotidiens des 100 meilleurs créateurs par total de diamants gagnés, par région géographique. Mis à jour en continu tout au long de la journée. Disponible pour les abonnés Basic, Pro et Ultra.","items":{"top100":"Top 100 des créateurs par région","fields":"Rang, score (diamants), statut live, ID de la salle","regions":"{count} régions dans le monde","refresh":"Données actualisées en continu"}},"league":{"title":"Classements de ligue","body":"Classements compétitifs par classe ({range}) des créateurs qui participent aux ligues TikTok LIVE. Montre qui se trouve dans chaque palier, dans n'importe quelle région. Nécessite l'{plan}. L'Agency PASS ({vipPath}) est un abonnement au site - il donne accès aux données de ligue sur le site, pas un accès programmatique via l'API.","plan":"offre développeur Ultra","items":{"divisions":"{count} divisions de ligue : {list}","entries":"Entrées classées par classe avec statut live","teaser":"Aperçu derrière une vitre pour les offres inférieures (5 entrées)","refresh":"Données actualisées fréquemment"}}},"auth":{"label":"Authentification :","body":"{label} Ces endpoints sont sur {host} (pas {apiHost}) et utilisent une authentification par session. Appelle-les depuis ton serveur avec un cookie de session valide, obtenu en te connectant à tik.tools avec un compte développeur payant. Toutes les offres développeur payantes (Basic, Pro, Ultra) ont accès aux endpoints de classements régionaux. {leagueRule} L'abonnement Agency PASS (sur {vipPath}) est un produit distinct, réservé au site - il donne accès aux données de ligue via l'interface du site tik.tools, pas via cette API développeur.","leagueRule":"Les endpoints de ligue nécessitent l'offre développeur Ultra."},"regions":{"heading":"Référence des régions","intro":"{count} classements régionaux sont disponibles. Utilise le {slug} dans l'URL de l'endpoint de classement par pays, et le {code} dans les endpoints de ligue."},"country":{"heading":"Endpoint : classement régional","intro":"Renvoie le top 100 du jour pour une région. Les entrées sont triées par {field} (total des diamants gagnés aujourd'hui) par ordre décroissant.","params":{"slug":"Slug de région issu du tableau Référence des régions ci-dessus (ex. {first}, {second})"},"fields":{"rank":"Position dans le classement (1 = celui qui gagne le plus)","uniqueId":"Pseudo TikTok (sans {'@'})","nickname":"Nom affiché sur TikTok","score":"Total des diamants gagnés aujourd'hui dans cette région","isLive":"Indique si le créateur est actuellement en live","roomId":"ID de la salle live si le créateur est en live, sinon null"}},"leagues":{"heading":"Endpoints de ligue","warning":{"label":"Ultra requis.","plan":"offre développeur Ultra","body":"{label} Les endpoints de ligue nécessitent une {plan}. Les requêtes des offres Basic et Pro reçoivent un aperçu de 5 entrées - le champ {fullAccessField} de la réponse vaudra {falseValue} et {maskedField} indiquera combien d'entrées sont masquées. Remarque : l'abonnement Agency PASS ({vipPath}) donne accès aux données de ligue sur le site, mais ce n'est pas un abonnement à l'API développeur."},"list":{"heading":"4a. Lister les ligues d'une région","intro":"Liste les classes de ligue disponibles pour une région, avec le nombre de créateurs dans chaque classe et la date de la dernière mise à jour des données.","params":{"region":"Code région (ex. {first}, {second}, {third}) issu du tableau Référence des régions"},"fields":{"classType":"Identifiant numérique de la classe (voir la référence {field} ci-dessous)","classLabel":"Nom lisible de la classe (ex. \"A1\", \"B5\")","count":"Nombre de créateurs actuellement dans cette classe","updatedAt":"Timestamp ISO 8601 de la dernière actualisation des données"}},"entries":{"heading":"4b. Récupérer les entrées d'une ligue","intro":"Renvoie la liste classée des créateurs d'une classe de ligue donnée pour une région. C'est l'endpoint principal pour créer des outils qui tiennent compte des ligues et des tableaux de bord de suivi de créateurs.","params":{"region":"Code région (ex. {first}, {second})","classType":"Identifiant numérique de la classe (2000=A1, 1900=A2, 1100=B5, etc.)"},"fields":{"hasFullAccess":"True si ton offre a l'accès complet ; false = mode aperçu (5 entrées)","maskedCount":"Nombre d'entrées masquées à cause des restrictions de l'offre (0 si {field})","totalCount":"Nombre total de créateurs dans cette classe","rank":"Position dans cette classe","userId":"ID utilisateur numérique TikTok (ID backend stable, ne change jamais)","uniqueId":"Pseudo TikTok sans {'@'} (modifiable par l'utilisateur)","nickname":"Nom affiché (modifiable par l'utilisateur)","score":"Diamants gagnés sur la période de ligue en cours"}}},"classRef":{"heading":"Référence {field}","intro":"Les classes de ligue associent des valeurs numériques {field} à des paliers compétitifs. A1 est le palier le plus haut - l'élite des créateurs qui gagnent le plus de diamants. {bottom} est le point d'entrée dans la compétition de ligue.","note":"Les {count} divisions ne sont pas forcément toutes présentes dans chaque région. Appelle d'abord l'endpoint {endpoint} pour découvrir quelles classes existent dans ta région cible, puis récupère la classe dont tu as besoin.","noteEndpoint":"Lister les ligues","classes":{"A1":"Palier élite. Ceux qui gagnent le plus dans la région. Concurrence maximale, exigences en diamants les plus élevées pour se classer.","A2":"Palier senior. Créateurs confirmés à gros revenus qui visent la promotion en A1.","A3":"Classe A confirmée. Gros gagnants réguliers qui tiennent leur place dans l'élite.","B1":"Haut de la plage B. Créateurs à une promotion des divisions A.","B2":"Classe B supérieure. Bons gagnants en lutte pour la B1.","B3":"Classe B intermédiaire. Gagnants réguliers au milieu de la plage B.","B4":"Classe B inférieure. Créateurs qui progressent vers les divisions B supérieures.","B5":"Entrée en classe B. Créateurs aux gains solides et réguliers sur toute la période de ligue.","C1":"Haut de la plage C. Gagnants actifs qui progressent vers la classe B.","C2":"Classe C supérieure. Gagnants modérés en lutte pour la promotion en C1.","C3":"Classe C intermédiaire. Gagnants réguliers au milieu de la plage C.","C4":"Classe C inférieure. Créateurs qui grimpent vers les divisions C supérieures.","C5":"Entrée en classe C. Récemment promus depuis la plage D.","D1":"Haut de la plage D. Créateurs qui commencent à gagner significativement dans la région.","D2":"Classe D supérieure. Gagnants plus récents ou à plus faible volume.","D3":"Classe D intermédiaire. Créateurs qui s'installent dans la compétition de ligue.","D4":"Classe D inférieure. Premiers gains en ligue.","D5":"Ligue d'entrée. Le point de départ des créateurs éligibles aux ligues."}},"example":{"heading":"Exemple concret : trouver tous les créateurs A1 en live en ce moment dans les Balkans","intro":"Cet exemple complet en plusieurs étapes montre le schéma recommandé : découvrir les classes disponibles, trouver celle qu'il te faut, récupérer ses entrées, puis filtrer les créateurs en live. Ça marche pour n'importe quelle combinaison de région et de classe.","steps":{"fetchLeagues":"Récupérer les ligues disponibles pour la région BK (Balkans)","findClass":"Trouver l'entrée A1 et vérifier qu'elle existe","fetchEntries":"Récupérer les entrées de la ligue A1","filterLive":"Filtrer les créateurs {condition}"}},"tips":{"heading":"Limites de débit et bonnes pratiques","cache":{"title":"Mets les réponses en cache côté client","body":"Les positions du classement évoluent progressivement. Garde en cache 10-30 secondes avant de recharger pour ne pas surcharger l'API inutilement."},"leagueRefresh":{"title":"Les données de ligue s'actualisent selon un rythme fixe","body":"Les classements de ligue évoluent lentement : interroger les endpoints de ligue plus souvent que toutes les quelques minutes ne sert à rien."},"parallel":{"title":"Interroge les régions indépendamment","body":"Les {count} régions peuvent être interrogées en parallèle. Si tu as besoin de données multi-régions, lance les requêtes simultanément plutôt que l'une après l'autre."},"connect":{"title":"Utilise {live} + {room} pour te connecter","body":"Quand {live} vaut true sur une entrée du classement, tu peux ouvrir immédiatement un WebSocket vers ce créateur avec son {uniqueId} et ta clé API."},"cookies":{"title":"Stocke les cookies de session en sécurité","body":"Les cookies de session donnent accès à ton compte. Stocke-les dans des variables d'environnement, jamais dans le code source ni dans des dépôts publics."},"listFirst":{"title":"Liste les ligues avant de récupérer les entrées","body":"Toutes les classes n'existent pas dans toutes les régions. Appelle toujours l'endpoint de liste d'abord pour confirmer quelles valeurs {field} sont disponibles dans ta région cible."}},"faq":{"heading":"Questions fréquentes","plans":{"q":"Quelles offres incluent l'accès à l'API de classements ?","a":"Toutes les offres payantes (Basic, Pro et Ultra) donnent accès à l'endpoint de classement régional. La clé Sandbox gratuite (une évaluation de 7 jours) n'inclut pas l'accès aux classements."},"league":{"q":"Que faut-il pour accéder aux classements de ligue ?","a":"Les endpoints de ligue nécessitent l'offre développeur Ultra. L'abonnement Agency PASS ({vipPath}) est un produit du site - il donne accès aux données de ligue via l'interface tik.tools, pas via cette API développeur. Les abonnés développeur Basic et Pro reçoivent un aperçu de 5 entrées par classe de ligue mais ne voient pas la liste complète."},"refresh":{"q":"À quelle fréquence les données de classement sont-elles mises à jour ?","a":"Les classements régionaux s'actualisent en continu tout au long de la journée, à mesure que les créateurs gagnent des diamants. Les données des classes de ligue sont mises à jour fréquemment. Garde tes réponses en cache au moins 10 secondes pour éviter les requêtes redondantes."},"regions":{"q":"Combien de régions sont disponibles ?","a":"TikTool fournit des données de classement pour {count} régions dans le monde, dont l'Amérique du Nord, le Royaume-Uni, les Balkans, l'Asie du Sud-Est, l'Amérique latine et d'autres. Chaque région a son propre classement et sa propre compétition de ligue, indépendants."},"live":{"q":"Puis-je savoir depuis le classement si un créateur est en live ?","a":"Oui. Chaque entrée de classement et de ligue inclut un champ booléen {field}. Quand il vaut true, le créateur est en train de streamer. Tu peux te connecter immédiatement à son stream avec son {uniqueId} via l'API WebSocket TikTool sur {wsUrl}."},"missingClasses":{"q":"Toutes les valeurs {field} n'apparaissent pas pour ma région. Pourquoi ?","a":"Toutes les classes de ligue n'existent pas dans toutes les régions - ça dépend du nombre de créateurs en compétition. Appelle d'abord l'endpoint de liste des ligues pour voir quelles valeurs {field} sont actives dans ta région cible avant de récupérer les entrées."},"pollAll":{"q":"Puis-je interroger les {count} régions en même temps ?","a":"Oui. Les régions sont totalement indépendantes et peuvent être interrogées en parallèle. Si tu as besoin d'un instantané multi-régions, lance les {count} requêtes simultanément et agrège les résultats. Garde un œil sur les limites de débit de ton offre."}},"jsonLd":{"refreshA":"Les classements régionaux s'actualisent en continu tout au long de la journée. Les données des classes de ligue sont mises à jour fréquemment. Les créateurs apparaissent dans le classement dès qu'ils commencent à gagner des diamants dans une région.","regionsA":"TikTool fournit des données de classement pour {count} régions dans le monde, dont l'Amérique du Nord, le Royaume-Uni, les Balkans, l'Asie du Sud-Est, l'Amérique latine et d'autres. Chaque région a son propre classement indépendant.","liveQ":"Puis-je savoir via l'API de classements si un créateur est en live ?","liveA":"Oui. Chaque entrée de classement et de ligue inclut un champ booléen {field}. Quand il vaut true, tu peux te connecter immédiatement au stream de ce créateur avec son {uniqueId} via l'API WebSocket TikTool.","classTypeQ":"Comment fonctionne la numérotation {field} ?","classTypeA":"{field} est un identifiant numérique pour chacune des {count} divisions de ligue : {list}. Plus le nombre est élevé, plus la classe est haute et compétitive."},"next":{"prevTitle":"API WebSocket","prevDesc":"Connecte-toi aux lives en temps réel","nextTitle":"Référence des événements","nextDesc":"Tous les types d'événements et champs de données"}},"analytics":{"seo":{"title":"API d'analytics TikTok LIVE - suis les spectateurs, cadeaux et l'engagement en temps réel","description":"Suis en temps réel le nombre de spectateurs, les revenus des cadeaux, le volume du chat et l'engagement de n'importe quel stream TikTok LIVE. Crée des tableaux de bord d'analytics avec une API gratuite. Node.js, Python et tous les langages.","ogTitle":"API d'analytics TikTok LIVE - spectateurs, cadeaux et engagement","ogDescription":"Analytics TikTok LIVE en temps réel : nombre de spectateurs, revenus des cadeaux, volume du chat, taux d'engagement. Crée des tableaux de bord avec une API gratuite.","ogImageTitle":"API d'analytics TikTok LIVE","ogImageSubtitle":"Suis les spectateurs, les cadeaux et l'engagement en temps réel."},"hero":{"title":"TikTok LIVE","titleHighlight":"API d'analytics","subtitle":"Suis en temps réel le nombre de spectateurs, les revenus des cadeaux, le volume du chat et les indicateurs d'engagement de n'importe quel stream TikTok LIVE. Crée des tableaux de bord, des systèmes d'alerte et des outils d'analytics."},"available":{"heading":"Quelles données d'analytics sont disponibles ?","intro":"TikTok ne fournit pas d'API d'analytics publique pour les LIVE. L'API TikTools comble ce manque en livrant chaque événement du stream en temps réel via WebSocket. Tu peux calculer n'importe quel indicateur à partir de ces événements bruts :","items":{"viewers":{"label":"Nb de spectateurs","desc":"mise à jour du nombre de spectateurs en temps réel toutes les quelques secondes"},"revenue":{"label":"Revenus des cadeaux","desc":"chaque événement de cadeau inclut sa valeur en diamants (1 diamant ≈ 0,005 $)"},"chat":{"label":"Volume du chat","desc":"messages par minute, participants uniques, fréquence des mots-clés"},"engagement":{"label":"Taux d'engagement","desc":"likes, partages, follows par période"},"peak":{"label":"Pic d'audience","desc":"suis les records sur toute la session"},"leaderboard":{"label":"Classement des cadeaux","desc":"meilleurs soutiens classés par total de diamants dépensés"}}},"quickStart":{"heading":"Démarrage rapide : données de tableau de bord en temps réel","intro":"Cet exemple collecte toutes les données d'analytics en temps réel. Branche-le sur n'importe quel framework frontend ou enregistre-les dans une base de données :"},"output":{"heading":"Sortie attendue"},"database":{"heading":"Enregistrer en base de données","intro":"Stocke les événements dans PostgreSQL, MongoDB ou n'importe quelle base de données pour une analyse historique :"},"raw":{"heading":"WebSocket brut (tous les langages)","intro":"Crée tes analytics en Python, Go, Rust ou tout langage qui gère le WebSocket :"},"faq":{"heading":"FAQ","official":{"q":"TikTok a-t-il une API d'analytics officielle pour les LIVE ?","a":"Non. TikTok fournit des analytics dans l'app via le LIVE Center pour les créateurs, mais il n'existe pas d'API publique pour accéder à ces données par programmation. L'API TikTools livre des événements bruts en temps réel que tu peux utiliser pour créer tes propres analytics."},"multiple":{"q":"Puis-je suivre plusieurs streams en même temps ?","a":"Oui. Crée plusieurs clients {client} - un par stream. L'offre Pro permet jusqu'à 50 connexions WebSocket simultanées."},"accuracy":{"q":"Le nombre de spectateurs est-il précis ?","a":"Le nombre de spectateurs vient directement des données internes de TikTok et se met à jour toutes les quelques secondes. Il correspond au chiffre affiché dans l'app TikTok."}},"jsonLd":{"howToName":"Comment créer des analytics TikTok LIVE","howToDescription":"Suis en temps réel le nombre de spectateurs, les revenus des cadeaux, le volume du chat et l'engagement de n'importe quel stream TikTok LIVE avec l'API TikTools.","steps":{"install":{"name":"Installer le SDK","text":"Lance {command} pour installer le SDK TikTools."},"listen":{"name":"Configurer les écouteurs d'événements","text":"Écoute les événements viewer_count, chat, gift, like, follow et share pour collecter les données d'analytics."},"compute":{"name":"Calculer les indicateurs","text":"Suis le pic de spectateurs, les messages par minute, les revenus des cadeaux en diamants, les participants uniques au chat et les taux d'engagement."},"store":{"name":"Stocker et afficher","text":"Enregistre les événements dans une base de données ou affiche-les dans un tableau de bord en temps réel."}},"officialA":"Non. TikTok fournit des analytics dans l'app via le LIVE Center pour les créateurs, mais il n'existe pas d'API publique pour accéder à ces données par programmation. L'API TikTools livre des événements bruts en temps réel pour créer des analytics sur mesure.","multipleQ":"Puis-je suivre plusieurs streams TikTok LIVE en même temps ?"},"next":{"prevTitle":"Référence des événements","prevDesc":"Tous les types d'événements documentés","nextTitle":"Guide Node.js","nextDesc":"Guide complet JavaScript/TypeScript"}}},"guidesSdk":{"livePreview":{"defaultTitle":"Aperçu en direct","running":"EN COURS","iframeTitle":"Aperçu du code en direct","placeholder":"L'aperçu se charge dès qu'il est visible."},"migrateShared":{"getFreeKey":"Obtenir une clé API gratuite","livePreviewBadge":"Aperçu en direct","copyThisCode":"Copier ce code","colTier":"Offre","responseShapeBadge":"Format de réponse","responseShapeTitle":"JSON identique, plus une indication de migration"},"migrateEuler":{"seo":{"title":"Migrer d'Euler Stream vers Tik.Tools - une seule ligne de config","description":"Migration directe d'Euler Stream vers Tik.Tools. Mêmes SDK (TikTokLive, tiktok-live-connector), mêmes endpoints, même format de réponse. Change l'hôte du fournisseur de signature - c'est tout.","ogTitle":"Migrer d'Euler Stream vers Tik.Tools","ogDescription":"Change l'hôte du fournisseur de signature. Garde TikTokLive / tiktok-live-connector. L'offre gratuite couvre la migration.","ogImageTitle":"Migrer depuis Euler Stream","ogImageSubtitle":"Change en une ligne de config.","ogImageBadge":"MIGRATION"},"hero":{"badge":"Migration en une ligne de config","title":"Passe de {legacy} à {brand} en une ligne de config","sub":"Garde TikTokLive (Python) ou tiktok-live-connector (Node). Change l'hôte du fournisseur de signature. Mêmes noms d'événements, mêmes SDK, même code.","copyCta":"Copier le code de migration"},"live":{"title":"Vois le remplacement fonctionner ici même","desc":"Même handshake que celui exposé par Euler : génération du jeton signé -> WebSocket. L'iframe ci-dessous exécute la version HTML exacte du snippet contre api.tik.tools - copie-colle-la, tu obtiens la même sortie.","note":"Choisis n'importe quel langage (Node / Python / HTML / prompt LLM)"},"steps":{"badge":"Pas à pas","title":"Deux étapes. Zéro refactorisation.","one":{"title":"Change l'hôte du fournisseur de signature","body":"Deux lignes de config dans l'init de ton SDK - fais pointer le backend de signature vers {newHost} au lieu de {oldHost}. Les gestionnaires d'événements, les IDs de salle et le code SDK existants restent inchangés. Toutes les {tiersLink} fonctionnent en remplacement direct ; la clé de démo {demoKey} fonctionne sans inscription avec des limites réduites.","tiersLink":"offres API tik.tools","copyCta":"Copier le code complet Node + Python"},"two":{"title":"Prends une vraie clé API (quand tu es prêt)","body":"La clé de démo {demoKey} fonctionne sans inscription mais est limitée à 1 WebSocket / sessions de 10 minutes / 6 connexions par heure et par IP. {link} pour des limites plus hautes + la parité complète avec les endpoints Euler.","link":"Obtiens une clé Tik.Tools gratuite"}},"endpoints":{"badge":"Parité des endpoints","title":"Chaque endpoint Euler a son équivalent 1:1","desc":"Tik.Tools reproduit les endpoints d'Euler pour que les SDK qui parlent déjà Euler continuent de fonctionner sans aucun patch.","colTikTools":"Tik.Tools (même chemin)","tierDemo":"Démo","bonusRow":"{label} ticker public, classements","bonusLabel":"Bonus (absent d'Euler) :","note":"{lead} sign_url renvoie {shape}. Ton parser existant continue de fonctionner.","noteLead":"Même format de réponse."},"pricing":{"title":"L'offre gratuite couvre la migration + ton premier déploiement en production","body":"Offres Sandbox + Basic gratuites. Sans carte bancaire. Des limites de débit plus hautes quand tu passes en production.","seePricing":"Voir les tarifs"}},"migrateTikapi":{"seo":{"title":"Migrer de TikAPI vers Tik.Tools - remplacement direct en 30 secondes","description":"Migration directe de TikAPI vers Tik.Tools. Mêmes endpoints, même format de réponse, plus des événements WebSocket en temps réel pour TikTok Live.","ogTitle":"Migrer de TikAPI vers Tik.Tools","ogDescription":"Change l'URL de base, garde ton code. L'offre gratuite couvre la migration + les tests.","ogImageTitle":"Migrer depuis TikAPI","ogImageSubtitle":"Un remplacement direct en 30 secondes.","ogImageBadge":"MIGRATION"},"hero":{"badge":"Migration en une ligne","title":"Passe de {legacy} à {brand} en 30 secondes","sub":"Mêmes endpoints. Même format de réponse. Des événements WebSocket en temps réel en plus. Change l'URL de base, garde ton code.","copyCta":"Copier le code des événements live"},"live":{"title":"Le même format que TikAPI, servi depuis api.tik.tools","desc":"L'iframe ci-dessous est littéralement le fichier d'exemple HTML - il récupère les chaînes en live depuis {endpoint} et diffuse les événements en WebSocket. Copie-le, enregistre-le en {ext}, double-clique. Sortie identique.","note":"Node / Python / HTML / prompt LLM"},"steps":{"one":{"title":"Change une ligne","body":"Fais pointer ton URL de base TikAPI existante vers {host}. Le chemin reste le même."},"two":{"title":"Utilise ta clé API Tik.Tools","body":"Obtiens-en une gratuitement sur {link}. Passe-la en paramètre {query} ou en en-tête {header} - les deux fonctionnent."},"three":{"title":"C'est tout","body":"Tes gestionnaires existants continuent de fonctionner. Chaque réponse de migration contient une indication {hint} qui pointe vers l'endpoint natif - bascule quand tu es prêt pour des données plus rapides et plus riches."}},"endpoints":{"badge":"Carte des endpoints","title":"Chaque appel de données live TikAPI fonctionne avec Tik.Tools","desc":"La VOD, les métadonnées de profil et la recherche restent propres à TikAPI - nous sommes spécialisés TikTok LIVE. Tout ce qui suit est un remplacement direct.","colTikapi":"Endpoint TikAPI","colCompat":"Tik.Tools (compat)","colNative":"Équivalent natif","tierFree":"Gratuit","tierFreeConn":"Gratuit (15 conn.)","returnsEmptyLiveStatus":"renvoie vide + statut live","returnsUserLiveStatus":"renvoie l'utilisateur + statut live","returnsEmptyNote":"renvoie vide + note","bonusWs":"{label} événements WS en temps réel pour chat / cadeaux / likes / arrivées / battles","bonusWsLabel":"Bonus (absent de TikAPI) :","bonusBoards":"{label} classements des créateurs + donateurs ({count} régions)","bonusBoardsLabel":"Bonus :","note":"{lead} {endpoints} renvoient tous un HTTP 200 avec des tableaux vides + une note {hint}. Les endpoints au format utilisateur incluent aussi {liveStatus} pour que ton script de migration continue de tourner. Garde TikAPI pour les vraies données VOD ; on couvre tout ce qui est LIVE.","noteLead":"Les endpoints VOD ne font pas planter ton code :"},"response":{"desc":"Chaque réponse compat contient une enveloppe {hint} pour que tu saches exactement quel endpoint natif appeler quand tu seras prêt à basculer."},"pricing":{"title":"L'offre gratuite suffit pour migrer + tester","body":"5 000 requêtes REST/jour. 3 connexions WebSocket simultanées, 50 sessions par jour. Sans carte bancaire. Passe à une offre supérieure seulement quand tu mets en production.","readDocs":"Lire toute la doc"}},"python":{"seo":{"title":"Guide Python de l'API TikTok LIVE - se connecter à n'importe quel live","description":"Connecte-toi aux streams TikTok LIVE depuis Python avec l'API TikTools. Chat, cadeaux, nombre de spectateurs en temps réel via WebSocket. Alternative prête pour la production à la bibliothèque TikTokLive. Offre gratuite, service entièrement géré.","ogTitle":"Guide Python de l'API TikTok LIVE - se connecter à n'importe quel live","ogDescription":"Guide Python complet pour les données TikTok LIVE. Exemples WebSocket + REST, prêts pour la production. Clé API gratuite - service entièrement géré.","ogImageTitle":"API TikTok LIVE pour Python","ogImageSubtitle":"Connecte-toi à n'importe quel live en Python.","ogImageBadge":"GUIDE"},"jsonLd":{"howTo":{"name":"Comment se connecter à TikTok Live avec Python","description":"Connecte-toi à n'importe quel stream TikTok LIVE depuis Python avec l'API WebSocket TikTools. Reçois le chat, les cadeaux et le nombre de spectateurs en temps réel.","step1":{"name":"Installer websockets","text":"Installe la bibliothèque Python websockets avec pip install websockets."},"step2":{"name":"Se connecter au WebSocket","text":"Connecte-toi à wss://api.tik.tools avec tes paramètres uniqueId et apiKey."},"step3":{"name":"Gérer les événements","text":"Parse les événements JSON des types chat, gift, member et roomUserSeq."}},"article":{"description":"Guide Python complet pour se connecter aux streams TikTok LIVE. Exemples d'API WebSocket et REST. Alternative prête pour la production à la bibliothèque TikTokLive."}},"hero":{"badge":"Tutoriel","titleHighlight":"Guide Python","subtitle":"Connecte-toi à n'importe quel stream TikTok LIVE depuis Python avec l'API WebSocket TikTools. Reçois en temps réel les messages du chat, les cadeaux, le nombre de spectateurs et plus encore - prêt pour la production, entièrement géré."},"why":{"title":"Pourquoi utiliser TikTools en Python ?","p1":"Le client Python {lib}, sous licence MIT, se connecte directement au protocole de diffusion de TikTok et délègue la signature à un backend géré (par défaut Euler Stream, qui a sa propre offre gratuite et ses offres payantes). C'est un modèle client auto-hébergé + signature gérée, maintenu par l'équipe Euler Stream.","p2":"TikTools est un {service} indépendant. Il gère les changements de protocole côté serveur et fonctionne avec n'importe quel langage via un WebSocket standard. Aucune gestion de protocole requise - connecte-toi et reçois les événements. Choisis le modèle qui convient à ton équipe.","p2Service":"service API géré"},"comparison":{"hosting":{"label":"Modèle d'hébergement","tiktools":"Entièrement géré","other":"Client auto-hébergé + signature gérée"},"setupLabel":"Installation","maintenance":{"label":"Maintenance","tiktools":"Aucune - gérée côté serveur","other":"Mises à jour du client + du backend de signature"}},"prereq":{"title":"Prérequis","python":"Python 3.8+ installé","key":"Une clé API TikTools gratuite - {link}","keyLink":"obtiens-la ici"},"option1":{"title":"Option 1 : asyncio + websockets","intro":"L'approche la plus simple - utilise la bibliothèque standard {lib} pour te connecter à l'API WebSocket TikTools :"},"option2":{"title":"Option 2 : API REST avec requests","intro":"Pour récupérer des données ponctuellement (infos de salle, profils utilisateurs), utilise l'API REST :"},"running":{"title":"Lancer les scripts"},"output":{"title":"Sortie attendue"},"nextSteps":{"title":"Étapes suivantes","database":{"title":"Stocke les événements dans une base de données","text":"{title} - envoie les événements vers PostgreSQL, MongoDB ou SQLite"},"dashboard":{"title":"Crée un tableau de bord","text":"{title} - utilise Flask ou FastAPI pour créer un tableau de bord web en temps réel"},"ai":{"title":"Analyse par IA","text":"{title} - envoie les messages du chat à GPT/Claude pour une analyse de sentiment"},"multiStream":{"title":"Multi-lives","text":"{title} - suis plusieurs streams simultanément (offre Pro : 50 connexions)"}},"nextLinks":{"bot":{"title":"Assistant de chat Node.js","sub":"Crée un assistant de chat avec le SDK"},"docs":{"title":"Doc complète de l'API","sub":"Référence complète de l'API"}}},"node":{"seo":{"title":"API TikTok LIVE pour Node.js - crée des assistants et des apps en JavaScript","description":"Crée des assistants et des apps TikTok LIVE en JavaScript/TypeScript. npm install {pkg}, connexion en 3 lignes, chat, cadeaux et spectateurs en temps réel. SDK gratuit, open source, licence MIT.","ogTitle":"API TikTok LIVE pour Node.js - crée des assistants et des apps en JavaScript","ogDescription":"Le guide Node.js complet de l'API TikTok LIVE. Installation depuis npm, prise en charge complète de TypeScript, tous les événements documentés. Offre gratuite disponible.","ogImageTitle":"API TikTok LIVE pour Node.js","ogImageSubtitle":"Crée des assistants et des apps en JavaScript.","ogImageBadge":"GUIDE"},"jsonLd":{"howTo":{"name":"Comment utiliser l'API TikTok LIVE avec Node.js","description":"Installe le paquet npm {pkg} et connecte-toi à n'importe quel stream TikTok LIVE pour recevoir le chat, les cadeaux et les spectateurs en temps réel en JavaScript.","toolNode":"Node.js (version 18 ou plus récente)","step1":{"name":"Installer le SDK","text":"Lance npm install {pkg} pour installer le SDK TikTools depuis npm."},"step2":{"name":"Créer un client","text":"Importe TikTokLive et crée un client avec le pseudo du streamer et ta clé API."},"step3":{"name":"Écouter les événements","text":"Utilise client.on() pour écouter les événements chat, gift, follow, like et viewer_count."},"step4":{"name":"Se connecter","text":"Appelle await client.connect() pour commencer à recevoir les événements en temps réel."}},"faq":{"official":{"q":"TikTok a-t-il une API Node.js officielle pour les lives ?","a":"Non. TikTok ne propose pas d'API publique pour les données des LIVE. TikTools est une API tierce gérée avec un SDK npm gratuit ({pkg}) pour le chat, les cadeaux, les spectateurs et les autres événements LIVE en temps réel."},"free":{"q":"Le SDK Node.js TikTok LIVE est-il gratuit ?","a":"Oui. L'offre Sandbox te donne gratuitement 5 000 requêtes/jour et 3 connexions WebSocket simultanées. Sans carte bancaire. Les offres payantes démarrent à {price}/semaine (Basic) pour 10 000 requêtes/jour, 20 connexions simultanées et un accès production."},"runtimes":{"q":"Le SDK fonctionne-t-il avec Bun et Deno ?","a":"Oui. Le SDK {pkg} est compatible avec Node.js 18+, Bun et Deno."}}},"hero":{"badge":"Guide développeur","titleHighlight":"pour Node.js","subtitle":"Crée des assistants, des overlays et des tableaux de bord TikTok LIVE en JavaScript. npm install, connexion en 3 lignes, événements en temps réel. SDK gratuit, open source, licence MIT."},"why":{"title":"Pourquoi Node.js ?","intro":"Node.js est le runtime le plus utilisé pour les intégrations TikTok LIVE. Le SDK officiel {pkg} est écrit en TypeScript, publié sur npm et inclut les définitions de types complètes dès l'installation. Tu as :","typeSafety":{"title":"Typage sûr","text":"{title} - définitions TypeScript complètes pour chaque événement et chaque méthode"},"autoReconnect":{"title":"Reconnexion automatique","text":"{title} - le SDK gère automatiquement les connexions perdues"},"eventDriven":{"title":"Orienté événements","text":"{title} - le pattern {code} que tu connais"},"everywhere":{"title":"Fonctionne partout","text":"{title} - Node.js 18+, Bun, Deno"}},"install":{"title":"Installe le SDK","other":"Ou avec d'autres gestionnaires de paquets :"},"quickStart":{"title":"Démarrage rapide : 3 lignes pour des données live","create":"Crée {file} et colle :","run":"Lance-le :","result":"Tu verras les messages du chat défiler dans ton terminal en quelques secondes."},"events":{"title":"Tous les événements disponibles","intro":"Le SDK émet des événements structurés pour chaque interaction sur le stream :"},"output":{"title":"Sortie attendue"},"typescript":{"title":"Prise en charge de TypeScript","intro":"Le SDK est écrit en TypeScript. Les types sont inclus automatiquement - pas besoin de paquet {types} :"},"raw":{"title":"WebSocket brut (sans SDK)","intro":"Tu préfères utiliser directement le WebSocket brut ? Il fonctionne avec n'importe quel langage ou framework :"},"faq":{"title":"FAQ","official":{"q":"TikTok a-t-il une API Node.js officielle ?","a":"Non. TikTok ne propose pas d'API publique pour les données des LIVE. L'API TikTools est un service tiers géré qui donne un accès fiable et en temps réel au chat, aux cadeaux, aux spectateurs et aux autres événements LIVE. Le paquet npm {pkg} est le SDK officiel de cette API."},"free":{"q":"C'est gratuit ?","a":"Oui. L'offre Sandbox te donne 5 000 requêtes/jour et 3 connexions WebSocket simultanées - gratuit, pour évaluation uniquement, sans carte bancaire. {link}.","link":"Inscris-toi ici"},"frameworks":{"q":"Puis-je l'utiliser avec Express, Fastify ou Next.js ?","a":"Oui. Le SDK fonctionne dans n'importe quel environnement Node.js. Utilise-le dans des routes Express, des plugins Fastify, des routes API Next.js ou des scripts autonomes."},"runtimes":{"q":"Ça fonctionne avec Bun et Deno ?","a":"Oui. Le SDK est compatible avec Bun et Deno. Installe-le via {cmd} ou importe-le depuis npm dans Deno."}},"nextLinks":{"start":{"title":"Bien démarrer","sub":"Démarrage rapide complet de l'API"},"bot":{"title":"Créer un assistant de chat","sub":"Tutoriel pas à pas"}}}},"leaderboards":{"brightMode":{"toLight":"Passer les sections lumineuses en clair","toggleDark":"Activer/désactiver le mode sombre"},"shopping":{"crumbTail":"Live shopping","seoBoard":"Shopping","h1":"Live shopping TikTok LIVE {region}","h2":"Vendeurs {region} classés par volume de ventes hebdomadaire","intro":"Le classement live shopping {region} classe les créateurs qui vendent sur TikTok LIVE dans cette région selon le volume de ventes généré par leurs lives sur le cycle hebdomadaire. Ce n'est pas la même population que le classement des cadeaux : un vendeur peut être classé ici grâce au chiffre d'affaires de ses produits tout en ne recevant presque aucun diamant, c'est pourquoi les agences prospectent les deux classements séparément. Les lignes marquées LIVE étaient en direct au moment où cette page a été générée.","pageTitle":"Classement TikTok LIVE Shopping {region}","ogSubtitle":"Vendeurs live shopping classés par volume de ventes","ogBadge":"SHOPPING"},"gaming":{"board":"Gaming","h1Game":"TikTok LIVE {region} Gaming - {game}","h1":"Classement gaming TikTok LIVE {region}","h2Game":"Streamers {game} classés par diamants","h2":"{count} jeux suivis, classés par diamants","introGame":"Le classement {game} liste les créateurs TikTok LIVE qui streament {game} pour le public {region}, triés selon les diamants envoyés par leurs spectateurs pendant le cycle en cours. Les classements par jeu se réinitialisent à leur propre rythme : une bonne session peut faire gagner plusieurs places à un créateur en quelques heures. Les lignes marquées LIVE étaient en direct au moment où cette page a été générée.","intro":"Le classement gaming {region} regroupe tous les créateurs TikTok LIVE qui streament un jeu suivi pour cette région, triés selon les diamants reçus pendant le cycle en cours. {count} classements par jeu se trouvent en dessous, chacun avec son propre cycle de réinitialisation et ses propres concurrents, et un créateur peut figurer dans les deux en même temps.","pageTitle":"Classement {board} TikTok LIVE {region}","ogSubtitle":"Créateurs gaming classés par diamants","ogBadge":"GAMING"},"league":{"board":"Ligue {label}","h1":"TikTok LIVE {region} - Ligue {label}","h2":"Classement de la division {label}, par diamants","intro":"{label} est l'une des {siblings} divisions de ligue TikTok LIVE en compétition dans le groupe {region}. Ce classement suit les {total} créateurs placés dans la division pour le cycle en cours, leurs totaux de diamants et qui est en live en ce moment. Les divisions sont redistribuées à chaque cycle : la place ici dépend du volume de cadeaux plutôt que du nombre de followers, c'est pourquoi elle bouge bien plus vite qu'un classement de followers.","docTitle":"Classement TikTok LIVE {region} Ligue {label}","pageTitle":"Classement Ligue {label} TikTok LIVE {region}","ogSubtitle":"Classement de ligue par diamants, actualisé en direct","ogBadge":"LIGUES"},"dated":{"loading":"Chargement du classement historique...","notFound":{"title":"Aucune donnée disponible","body":"Aucun instantané du classement trouvé pour cette date.","back":"← Retour au classement actuel"},"crumbRankings":"Classements","heading":"Classement TikTok LIVE {board}","historicalBadge":"Instantané historique","stats":{"totalDiamonds":"Total diamants","totalRevenue":"Revenu total","estEarnings":"Gains estimés"},"goToday":"Voir le classement du jour","todaysRankings":"Classements du jour","empty":"Aucun instantané n'a été enregistré pour cette date. {link}.","emptyLink":"Voir le classement du jour","cols":{"streamer":"Streamer","diamonds":"Diamants","revenue":"Revenu","earnings":"Gains"},"seo":{"title":"Classement TikTok LIVE {country} - {date}","titleFallback":"Classement TikTok LIVE historique","descriptionEmpty":"Aucun instantané du classement TikTok LIVE {country} n'est enregistré pour le {date}.","description":"Instantané du classement TikTok LIVE {country} du {date} - {count} créateurs, {earned} de gains estimés."},"jsonLd":{"home":"Accueil","rankings":"Classements TikTok LIVE","board":"Classement {country}"}},"nav":{"creatorsRank":"Classement créateurs","giftersRank":"Classement donateurs","rising":"En progression","creators":"Créateurs","gifters":"Donateurs","gaming":"Gaming"},"rising":{"title":"{accent} Intel","titleAccent":"Rising","sub":"Nouveaux gros donateurs qui émergent + créateurs en pleine série. Actualisé régulièrement.","tabs":{"gifters":"Donateurs en hausse","creators":"Créateurs en progression"},"gate":{"title":"Réservé à l'offre Agency Global","body":"Rising Intel fait remonter des comptes que la plupart des plateformes n'ont pas encore repérés. Disponible exclusivement pour les abonnés Agency Global.","cta":"Passer à Agency Global"},"featureName":"Rising Intel","loading":"Chargement des signaux de progression...","empty":"Aucune progression sur cette période pour l'instant. Reviens d'ici peu.","stats":{"last24h":"dernières 24 h","vsAvg":"vs moy.","ageDays":"{n} j","age":"ancienneté","gifters":"donateurs"},"updated":"Mis à jour {when}.","seo":{"title":"Rising Intel - tik.tools","description":"Les nouveaux donateurs et créateurs qui montent fort sur TikTok LIVE. Flux de données réservé aux offres Agency."}},"time":{"minAgo":"il y a {n} min","hoursAgo":"il y a {n} h","shortly":"sous peu","inHours":"dans {n} h","inMin":"dans {n} min"},"live":"LIVE","teams":{"title":"{accent} et clubs","titleAccent":"Équipes","sub":"Les clubs TikTok classés selon le total des diamants de leurs membres, par région. Tous les autres classements classent des créateurs ; celui-ci classe les équipes derrière eux.","loading":"Chargement du classement des équipes...","empty":"Pas encore de classement des équipes en cache pour cette région - en cours de construction. Reviens dans quelques minutes.","count":"{n} clubs","copyHosts":"Copier les hôtes","featureName":"Le classement Équipes / Clubs","level":"Niv. {n}","members":"{n} membres","host":"hôte {'@'}{handle}","diamonds":"diamants","upsell":{"body":"{more} sont masqués. Le classement complet des équipes, avec chaque club et chaque hôte sans masquage dans les {regions} régions, est une fonctionnalité Agency Global.","more":"{n} autres clubs","cta":"Voir les offres Agency"},"updated":"Mis à jour {when}","resets":", réinitialisation du classement {when}","seo":{"title":"Classements des équipes et clubs TikTok LIVE - tik.tools","description":"Le classement Équipes et Clubs de TikTok par région : les clubs classés selon le total des diamants de leurs membres, avec niveau du club, nombre de membres et hôte. Données réservées aux offres Agency."}},"team":{"notFound":{"title":"Équipe introuvable","body":"Cet hôte ne dirige aucun club TikTok que nous suivons actuellement.","back":"Parcourir le classement des équipes"},"crumb":"Équipes et clubs","level":"Niveau {n}","rankIn":"N°{rank} · {region}","regionFallback":"région","stats":{"diamonds":"Diamants","members":"Membres","regionalRank":"Rang régional","estEarnings":"Gains estimés"},"hostedBy":"Animé par","upsell":"Le nom du club, l'hôte et la liste des membres sont visibles sans masquage avec l'offre {plan}. Les stats ci-dessus sont en direct pour tout le monde.","loading":"Chargement de l'équipe...","seo":{"maskedName":"Un club TikTok LIVE ({region})","itsRegion":"sa région","fallbackName":"Équipe TikTok LIVE","title":"{name} - Équipe TikTok LIVE {'|'} tik.tools","description":"Club TikTok LIVE classé n°{rank} ({region}) - {members} membres, {diamonds} diamants au total. Niveau {level}.","descriptionFallback":"Stats des équipes et clubs TikTok LIVE.","ogTitle":"{name} - Équipe TikTok LIVE"}},"radar":{"badge":"Données créateur","title":"Radar","sub":"Qui dépense sur tes lives. Ton tableau de bord des gros donateurs.","gate":{"title":"Connecte-toi pour accéder à Radar","body":"Connecte-toi en tant que créateur pour voir qui t'envoie des cadeaux, leurs habitudes de dépense et quand tes gros donateurs sont en ligne.","cta":"Se connecter →"},"placeholder":"{'@'}pseudo du créateur","loadingBtn":"Chargement...","analyze":"Analyser","scanning":"Analyse des données donateurs...","topWhales":"Tes plus gros donateurs (depuis toujours)","gifts":"{n} cadeaux","allGifters":"Tous les donateurs","cols":{"gifter":"Donateur","diamonds":"Diamants","value":"Valeur","gifts":"Cadeaux"},"verified":"Vérifié","empty":"Pas encore de données donateurs pour {'@'}{handle}. Le suivi des cadeaux se construit au fil des lives.","upgrade":{"title":"Tu veux des alertes gros donateurs et des analyses complètes ?","body":"Passe à la version supérieure pour être prévenu quand tes plus gros donateurs sont en ligne sur d'autres lives.","cta":"Mettre à niveau →"},"seo":{"title":"Radar créateur - données donateurs"}},"hub":{"hero":{"title":"Classement TikTok LIVE","sub":"Classements en temps réel sur {regions} régions dans le monde","apiNote":"Aussi disponible via l'API pour les développeurs.","apiLink":"Voir le guide de l'API de classements →","streamingNow":"En live maintenant","activeRegions":"Régions actives"},"card":{"live":"{n} en live","earnings":"Gains","resetsIn":"Réinitialisation dans"},"countries":{"eyebrow":"PAR PAYS","title":"Parcourir par pays","sub":"Chaque pays renvoie vers son classement régional - les pays d'un même groupe TikTok partagent un seul classement. {link}","link":"Tous les classements par pays et leur fonctionnement","tabLive":"En live","tabAll":"Tous les pays","loading":"Chargement..."},"gaming":{"title":"Classements gaming TikTok LIVE","new":"NOUVEAU","sub":"Le classement gaming en direct de l'app, dans chaque région, actualisé en continu.","tag":"Exclusivité Agency","open":"Ouvrir","preview":"Aperçu"},"seo":{"titleLive":"{live} en live · Classement TikTok LIVE mondial","title":"Classement TikTok LIVE mondial","descriptionLive":"Classements TikTok LIVE en temps réel sur {regions} régions - {live} créateurs en live maintenant, {earned} gagnés aujourd'hui. Vois les meilleurs créateurs, les diamants et les revenus estimés - mis à jour en continu.","description":"Classements du jour TikTok LIVE en temps réel pour {regions} régions dans le monde. Vois les meilleurs créateurs, les diamants gagnés, les revenus estimés et le statut live - mis à jour en continu."}},"gifters":{"eyebrow":"CLASSEMENT EXCLUSIF DES DONATEURS","title":"Classement des donateurs TikTok","share":"Partager","periods":{"daily":"Aujourd'hui","weekly":"Cette semaine","monthly":"Ce mois-ci"},"statsHeading":{"global":{"daily":"Total des cadeaux aujourd'hui dans le monde","weekly":"Total des cadeaux cette semaine dans le monde","monthly":"Total des cadeaux ce mois-ci dans le monde"},"region":{"daily":"Total des cadeaux aujourd'hui - {region}","weekly":"Total des cadeaux cette semaine - {region}","monthly":"Total des cadeaux ce mois-ci - {region}"}},"tableHeading":{"global":{"daily":"Top donateurs aujourd'hui dans le monde","weekly":"Top donateurs cette semaine dans le monde","monthly":"Top donateurs ce mois-ci dans le monde"},"region":{"daily":"Top donateurs aujourd'hui - {region}","weekly":"Top donateurs cette semaine - {region}","monthly":"Top donateurs ce mois-ci - {region}"}},"stats":{"totalDiamonds":"Total diamants","estValue":"Valeur estimée","activeGifters":"Donateurs actifs"},"logIn":"Se connecter","unlock":{"upgradeGlobal":"Passer à Agency Global","withAgency":"Débloquer avec Agency"},"global":"Monde","count":"{n} donateurs","copyAll":"Tout copier","cols":{"gifter":"Donateur","diamonds":"Diamants","estValue":"Valeur estimée","creatorsGifted":"Créateurs soutenus","gifts":"Cadeaux"},"mask":{"all":{"board":"Les {n} top donateurs de ce classement sont tous masqués avec ton offre.","region":"Les {n} top donateurs - {region} sont tous masqués avec ton offre."},"some":{"board":"{n} des {total} top donateurs de ce classement sont masqués.","region":"{n} des {total} top donateurs - {region} sont masqués."},"detailShown":"Les {shown} premiers sont affichés en entier ; les autres gardent leur rang, avec nom, diamants et valeur masqués.","detailNone":"Les rangs sont réels ; les noms, les diamants et la valeur sont masqués.","unlockWhales":"Débloque les gros donateurs qui financent tes créateurs."},"row":{"passGifter":"Donateur PASS","verifiedGifter":"Donateur vérifié","watching":"Regarde un live en ce moment","passPrivate":"PASS PRIVÉ"},"empty":"Pas encore de données donateurs - reviens bientôt.","seo":{"title":"Classement des donateurs TikTok - top donateurs LIVE dans le monde","titleRegion":"Classement des donateurs TikTok - {region}","description":"Classement des donateurs TikTok LIVE en temps réel. Les top donateurs du monde entier classés par diamants.","descriptionRegion":"Classement des donateurs TikTok LIVE - {region}. Les top donateurs classés par diamants."},"og":{"title":"Top donateurs TikTok LIVE","subtitle":"Les plus gros donateurs de TikTok LIVE, actualisés en direct.","badge":"DONATEURS"}},"ranks":{"hero":{"eyebrow":"CLASSEMENTS ET RANGS","title":"{accent} et rangs TikTok LIVE","titleAccent":"Classements","sub":"Chaque région, chaque classement, actualisés en temps réel. Les créateurs par diamants, les donateurs derrière eux, les classements gaming par jeu, la course hebdomadaire au GMV TikTok Shop et les classes de ligue A1-D5 - au même endroit.","ctaBrowse":"Parcourir les classements","ctaGaming":"Classements gaming et shopping"},"seePricing":"Voir les tarifs","trust":{"regions":"régions","products":"types de classements","live":"En direct","refreshed":"actualisé"},"new":"NOUVEAU","viz":{"unmasked":"Sans masquage","hoverToUnmask":"Survole pour démasquer","weeklyGmv":"GMV HEBDO - {label}","global":"Monde","cutoff":"SEUIL TIKTOK","peak":"pic n°{n}","leagueTags":{"elite":"Élite","rising":"En hausse","mid":"Milieu","entry":"Entrée"}},"features":{"creators":{"tier":"Sans masquage dès Pro+","title":"Classements des créateurs","text":"Les meilleurs créateurs de chaque région, classés par diamants. De vrais pseudos à copier pour les contacter - plus aucun nom masqué une fois débloqué.","cta":"Ouvrir les classements créateurs"},"gifters":{"title":"Données donateurs","text":"Les vrais top donateurs derrière chaque créateur. Qui finance qui, comment un gros donateur répartit ses dépenses - trouve l'argent avant la concurrence.","cta":"Explorer les données donateurs"},"gaming":{"title":"Classements gaming","text":"Des classements par région et par jeu construits à partir des classements gaming en direct. Vois qui grimpe dans chaque jeu, région par région.","cta":"Voir les classements gaming"},"shop":{"title":"Classements live shopping","text":"Le classement hebdomadaire du GMV TikTok Shop par région - qui vend vraiment en LIVE - plus les produits qui partent le plus vite.","cta":"Ouvrir les classements shopping"},"leagues":{"tier":"Ligues sans masquage dès Ultra+","title":"Classements de ligue","text":"Les échelles de classes A1 à D5 par région - les classes de revenus compétitives de TikTok, capturées en continu. Vois exactement dans quelle classe un créateur est en compétition.","cta":"Parcourir les classes de ligue"},"movers":{"title":"Finder et les mouvements 99+","text":"Trouve région par région les créateurs qui valent le coup d'être approchés, et révèle tous ceux qui sont entrés dans le top 99 d'une région aujourd'hui - même après que TikTok les a fait passer sous le seuil.","cta":"Révéler les mouvements"}},"final":{"title":"Tous les classements, sans masquage, dans un seul abonnement.","sub":"Pro débloque les classements créateurs. Ultra ajoute les classes de ligue. Agency débloque les donateurs, le gaming, le shopping et les outils de recrutement.","browse":"Parcourir les classements"},"seo":{"title":"Classements et rangs TikTok LIVE - tik.tools","description":"Tous les classements TikTok LIVE au même endroit : créateurs par diamants, top donateurs, classements gaming, la course hebdomadaire au GMV TikTok Shop et les classes de ligue A1-D5 sur {regions} régions, actualisés en direct.","ogDescription":"Classements créateurs, donateurs, gaming, live shopping et ligues sur {regions} régions, actualisés en temps réel."},"og":{"title":"Classements et rangs TikTok LIVE","subtitle":"Classements créateurs, donateurs, gaming, shopping et ligues sur {regions} régions.","badge":"CLASSEMENTS"}}},"legal":{"lastUpdated":"Dernière mise à jour : {date}","ogImageBadge":"MENTIONS LÉGALES","terms":{"seo":{"title":"Conditions d'utilisation - offre gratuite Sandbox, non-remboursement, usage raisonnable","description":"Conditions de l'API TikTok LIVE TikTool : évaluation Sandbox gratuite de 7 jours (5 000 req/jour, sans carte bancaire). Les offres payantes ne sont pas remboursables - remboursements partiels uniquement si le service est défaillant de notre côté. Limites de débit d'usage raisonnable. SDK open source.","ogDescription":"Offre Sandbox (5 000 req/jour, sans carte). Offres payantes non remboursables. Remboursements partiels uniquement si le service est défaillant de notre côté. Des conditions pensées pour les développeurs de l'API TikTok LIVE.","ogImageTitle":"Conditions d'utilisation","ogImageSubtitle":"Offre gratuite Sandbox, usage raisonnable et conditions de facturation."},"title":"Conditions d'utilisation","intro":"En utilisant ce site et l'API TikTools (le \"Service\"), vous acceptez d'être lié par les conditions générales suivantes (les \"Conditions d'utilisation\"). {strong} Toute violation de l'une des conditions ci-dessous entraînera la résiliation de votre Compte. Vous acceptez d'utiliser le Service à vos propres risques.","introStrong":"SI VOUS N'ACCEPTEZ PAS CES CONDITIONS GÉNÉRALES, VOUS NE DEVEZ PAS ACCEPTER CET ACCORD ET NE POUVEZ PAS UTILISER LE SERVICE.","serviceDescription":{"h":"1. Description du Service et avertissement relatif à l'API tierce","c1":"1.1 TikTools fournit une {strong} qui permet aux développeurs d'accéder en temps réel aux données de diffusion TikTok LIVE, notamment les messages du chat, les cadeaux virtuels, le nombre de spectateurs et d'autres indicateurs d'engagement.","c1Strong":"API tierce gérée","c2":"1.2 {strong} \"TikTok\" est une marque de ByteDance Ltd. Toutes les marques et tous les contenus liés à TikTok sont la propriété de leurs détenteurs respectifs.","c2Strong":"TikTools n'est ni affilié à TikTok ou ByteDance Ltd., ni approuvé ou sponsorisé par eux.","c3":"1.3 {strong} Notre Service traite des données de diffusion accessibles publiquement pour fournir des événements structurés. Ce pipeline de données est exploité de manière indépendante et n'est pas officiellement pris en charge par TikTok.","c3Strong":"TikTok ne propose pas d'API publique native pour les données des streams TikTok LIVE.","c4":"1.4 {strong} Dans ce cas, TikTools tentera de mettre à jour ses systèmes pour rétablir l'accès, sans aucune garantie de succès ni de délai. Vous reconnaissez et acceptez que le Service puisse devenir temporairement ou définitivement indisponible en raison de mesures prises par TikTok.","c4Strong":"TikTok peut supprimer, modifier, bloquer ou retirer l'accès à ses endpoints à tout moment et sans préavis.","c5":"1.5 Ce Service dépend de l'accès à la plateforme de TikTok. {strong} si TikTok restreint, bloque ou limite de toute autre manière l'accès à sa plateforme ou à ses données. TikTools décline toute responsabilité pour de telles interruptions.","c5Strong":"Le Service peut être interrompu, modifié ou arrêté à tout moment et sans préavis"},"accountTerms":{"h":"2. Conditions relatives au compte","c1":"2.1 Votre compte utilisateur ne peut être utilisé que par une seule organisation. Un même compte partagé entre plusieurs organisations n'est pas autorisé.","c2":"2.2 Vous êtes responsable de la sécurité de votre identifiant, de votre mot de passe et de vos clés API. TikTools ne peut être et ne sera pas tenu responsable de toute perte ou de tout dommage résultant du non-respect de cette obligation de sécurité.","c3":"2.3 Vous ne devez pas utiliser le Service pour mener des activités illégales ou non autorisées, y compris, sans s'y limiter, la contrefaçon de droits d'auteur ou de marques, le harcèlement, le spam ou l'abus envers TikTok ou ses créateurs.","c4":"2.4 Vous ne pouvez pas porter atteinte aux droits de propriété intellectuelle de TikTok ou de ses créateurs. Vous serez banni du Service s'il est signalé que vous avez commis de telles violations.","c5":"2.5 {strong} Le Service ne peut pas être consulté ni utilisé par, ou pour le compte de, toute entreprise, tout produit ou toute personne qui exploite, développe ou est affilié à un service concurrent de TikTools, y compris à des fins de benchmark, de reproduction ou d'approvisionnement en données ou fonctionnalités pour une offre concurrente. Nous nous réservons le droit, à notre seule discrétion, de suspendre ou de bannir définitivement tout compte que nous estimons exploité par un concurrent ou affilié à celui-ci, sans préavis et sans obligation de proposer une voie de recours.","c5Strong":"Services concurrents."},"multiAccount":{"h":"3. Politique multi-comptes et prévention des abus","c1":"3.1 {strong} Chaque personne ou organisation a droit à un seul compte, sauf autorisation expresse de TikTools.","c1Strong":"Vous ne pouvez pas créer plusieurs comptes pour contourner les limites d'utilisation, les limites de débit ou d'autres restrictions.","c2":"3.2 Nous surveillons les schémas de création de comptes, notamment les adresses IP, les adresses e-mail (y compris leurs variantes normalisées) et les empreintes de navigateur. Créer des comptes avec des alias d'e-mail ou d'autres variantes de la même adresse e-mail pour obtenir des clés API gratuites supplémentaires constitue une violation des présentes conditions.","c3":"3.3 Si nos systèmes détectent un abus potentiel de comptes multiples, un avertissement vous sera présenté. Poursuivre la création de comptes en double après cet avertissement peut entraîner :","c3a":"(a) La suspension ou la résiliation de tous les comptes associés ;","c3b":"(b) La révocation de toutes les clés API des comptes associés ;","c3c":"(c) Un bannissement définitif du Service.","c4":"3.4 Les comptes disposant d'un abonnement payant actif peuvent avoir plusieurs clés API, selon ce que prévoit leur offre. La restriction multi-comptes vise spécifiquement la création de comptes distincts pour obtenir un accès gratuit supplémentaire.","c5":"3.5 Nous nous réservons le droit de signaler, restreindre ou résilier tout compte dont nous estimons, à notre seule discrétion, qu'il est utilisé pour abuser du Service."},"sandbox":{"h":"4. Offre Sandbox et accès aux clés API","c1":"4.1 L'offre gratuite Sandbox (une évaluation de 7 jours à compter de la création du compte) donne accès à tous les endpoints de l'API avec des limites de débit réduites, des quotas de requêtes quotidiens et un masquage des identifiants sur les endpoints d'intelligence. L'accès Sandbox est destiné exclusivement à l'{evaluation} et est disponible pendant {period}. Passé ce délai, l'accès à l'API avec une clé Sandbox prend fin et chaque requête renvoie une réponse \"Evaluation period ended\" jusqu'à la souscription d'une offre payante.","c1Evaluation":"évaluation","c1Period":"7 jours à compter de la création du compte","c2":"4.2 L'utilisation de Sandbox est soumise à des limites, notamment, sans s'y limiter : plafonds de requêtes quotidiens, limites de débit par minute, limites de connexions WebSocket, plafonds de durée des sessions WebSocket et limites de vérification en masse. Ces limites peuvent être ajustées à tout moment et sans préavis.","c3":"4.3 {strong} L'\"utilisation en production\" comprend, sans s'y limiter : tout déploiement alimentant un produit ou un site en ligne destiné à des clients, toute charge de travail commerciale interne, tout service payant ou monétisé, tout pipeline d'agence / de repérage / de génération de leads, tout bot ou toute intégration automatisée qui s'exécute selon une planification en dehors de sessions de test développeur, toute application fonctionnant sur une infrastructure partagée et toute application utilisée par d'autres personnes que vous-même. Le multi-comptes, la rotation de clés gratuites, le changement d'IP pour contourner le plafond quotidien ou le regroupement de plusieurs clés Sandbox dans une même charge de travail constituent tous une utilisation en production.","c3Strong":"L'utilisation de l'offre Sandbox en production est interdite.","c4":"4.4 {strong} TikTools surveille l'utilisation de l'offre Sandbox afin de s'assurer qu'elle reste dans le cadre d'une évaluation. Lorsque nous établissons qu'une clé Sandbox est utilisée en production ou pour servir des utilisateurs finaux, nous pouvons {ban}. Nous ne sommes pas tenus de divulguer la manière dont cette conclusion a été établie. Si vous avez besoin d'un accès production, souscrivez à Basic, Pro, Ultra ou Global Agency avant la mise en ligne.","c4Strong":"Détection et application.","c4Ban":"bannir définitivement le compte et toutes les clés associées, sans avertissement et sans remboursement","c5":"4.5 Si vous avez besoin de limites plus élevées pour des applications en production, vous devez souscrire à une offre payante. Utiliser plusieurs comptes Sandbox pour construire une application en production constitue en soi une violation d'utilisation en production au sens de 4.3.","c6":"4.6 TikTools se réserve le droit de modifier, restreindre ou supprimer l'accès à l'offre Sandbox à tout moment et sans préavis."},"payment":{"h":"5. Paiement et remboursements","c1":"5.1 Au-delà des limites de l'offre gratuite, il peut vous être demandé de saisir un moyen de paiement valide pour accéder aux fonctionnalités premium ou à des limites d'utilisation plus élevées.","c2":"5.2 Les abonnements sont facturés d'avance de manière récurrente (chaque semaine, chaque mois ou chaque année). Vous pouvez résilier à tout moment, et votre abonnement se poursuivra jusqu'à la fin de la période de facturation en cours.","c3":"5.3 {strong} L'évaluation Sandbox gratuite de 7 jours existe pour que vous puissiez vérifier le produit avant de payer. Nous n'accordons aucun remboursement en cas de regret après achat, d'achat accidentel, d'utilisation pour des tests ou du scraping, de changement d'offre ou de toute situation de type \"satisfait ou remboursé sans condition\" - dès qu'une clé payante est activée, elle consomme des données en temps réel et de la bande passante WebSocket que nous avons déjà payées.","c3Strong":"Les offres payantes ne sont pas remboursables.","c4":"5.4 {strong} - panne prolongée imputable à notre infrastructure, double prélèvement ou erreur de facturation. Le crédit couvre uniquement la période de facturation concernée et reste à notre seule discrétion. Pour demander un examen, écrivez au support en indiquant l'e-mail de votre compte, le libellé de votre clé et les dates auxquelles le problème est survenu.","c4Strong":"Des remboursements partiels ne sont accordés que lorsqu'un service est manifestement défaillant de notre côté","c5":"5.5 {strong} pour la période restante de votre abonnement. TikTools fera des efforts raisonnables pour rétablir le service mais ne peut garantir ni délai ni résultat.","c5Strong":"Si TikTok bloque ou restreint l'accès à sa plateforme, rendant le Service temporairement ou définitivement indisponible, vous n'avez pas droit à un remboursement","c3Policy":"5.3 Les offres API et Agency ne sont pas remboursables, sauf dans les cas décrits en 5.4. Les heures de lecture sont remboursables conformément à la section 16 (Remboursements).","c4Policy":"5.4 Si un service est manifestement défaillant de notre côté (panne prolongée imputable à notre infrastructure), ou en cas de double prélèvement ou d'erreur de facturation, nous pouvons accorder un crédit. Le crédit couvre uniquement la période de facturation concernée et reste à notre seule discrétion. Pour demander un examen, écrivez au support en indiquant l'e-mail de votre compte, le libellé de votre clé et les dates auxquelles le problème est survenu.","c5Policy":"5.5 Si TikTok bloque ou restreint l'accès à sa plateforme, rendant le Service temporairement ou définitivement indisponible, cela ne donne droit à aucun remboursement au-delà de la section 16 (Remboursements). TikTools fera des efforts raisonnables pour rétablir le service mais ne peut garantir ni délai ni résultat."},"cancellation":{"h":"6. Résiliation","c1":"6.1 Vous êtes seul responsable de la résiliation correcte de votre compte. Une demande de résiliation par e-mail ou par téléphone n'est pas considérée comme une résiliation. Vous pouvez résilier votre abonnement à tout moment depuis le portail de facturation de votre tableau de bord.","c2":"6.2 Si vous supprimez votre compte, l'ensemble du contenu et des données associés à ce compte sera immédiatement supprimé du Service. Ces informations ne peuvent pas être récupérées une fois supprimées.","c3":"6.3 TikTools a le droit, à sa seule discrétion, de suspendre ou de résilier tout compte à tout moment, pour quelque raison que ce soit ou sans raison, y compris, sans s'y limiter, en cas de soupçon d'abus, de violation des présentes conditions ou à la demande des autorités.","c4":"6.4 TikTools se réserve le droit de refuser le service à quiconque, pour quelque raison que ce soit, à tout moment."},"copyright":{"h":"7. Droits d'auteur et propriété du contenu","c1":"7.1 Nous ne revendiquons aucun droit de propriété intellectuelle sur les éléments que vous fournissez au Service. Vos éléments restent les vôtres.","c2":"7.2 Vous défendrez TikTools contre toute réclamation, demande, action ou procédure engagée contre TikTools alléguant que votre contenu, ou votre utilisation du Service, enfreint ou détourne les droits de propriété intellectuelle d'un tiers ou viole les lois applicables.","c3":"7.3 Vous indemniserez TikTools pour tous dommages et intérêts définitivement prononcés contre TikTools, ainsi que pour les honoraires d'avocat raisonnables engagés par TikTools, en lien avec une telle réclamation."},"privacy":{"h":"8. Confidentialité","c1":"8.1 Nous collectons des informations utilisées uniquement pour fournir et améliorer le Service, y compris, sans s'y limiter, les adresses e-mail, les adresses IP, les statistiques d'utilisation et les données anti-abus.","c2":"8.2 Nous ne vendrons aucune information personnelle identifiable à des tiers à des fins lucratives.","c3":"8.3 Nous pouvons divulguer des informations personnelles identifiables dans des circonstances particulières, par exemple pour répondre à des injonctions ou à d'autres procédures judiciaires.","c4":"8.4 Les cookies sont nécessaires pour utiliser certaines fonctionnalités du Service, notamment l'authentification et la détection des abus.","c5":"8.5 Pour plus de détails, consultez notre {link}.","c5Link":"Politique de confidentialité","c6":"8.6 {strong} Le Service reproduit des données TikTok accessibles publiquement, y compris les classements LIVE publics de TikTok. Nous ne sommes pas à l'origine de ces données et ne publions rien sur un créateur que TikTok n'ait pas déjà rendu public.","c6Strong":"Données de classement publiques.","c7":"8.7 Nous ne retirons ni ne masquons des créateurs individuels des données de classement publiques sur demande. Un créateur qui ne souhaite pas apparaître dans les classements publics doit cesser d'apparaître sur les classements publics de TikTok à la source, via son compte TikTok et les paramètres de classement LIVE de TikTok ; il cessera alors d'apparaître ici.","c8":"8.8 Les clauses 8.6 et 8.7 concernent uniquement les données de classement publiques. Elles n'affectent pas les données que vous nous fournissez en tant que titulaire d'un compte, que vous pouvez supprimer, et ne limitent ni les droits dont vous pouvez disposer en vertu de la loi applicable, ni toute obligation qui nous incombe de donner suite à une demande légale vérifiée."},"warranties":{"h":"9. Exclusion de garanties","c1":"9.1 {strong} Le Service est fourni \"en l'état\" et \"selon disponibilité\", sans garantie d'aucune sorte, expresse ou implicite, y compris, sans s'y limiter, les garanties implicites de qualité marchande, d'adéquation à un usage particulier ou d'absence de contrefaçon.","c1Strong":"Vous utilisez le Service à vos propres risques.","c2":"9.2 TikTools ne garantit pas l'exactitude, l'exhaustivité, la fiabilité ou la disponibilité des données fournies via le Service.","c3":"9.3 TikTools n'est pas responsable des mesures prises par TikTok susceptibles d'affecter la disponibilité de ce Service, y compris, sans s'y limiter, les changements d'API, la suppression d'endpoints, les limitations de débit, les bannissements d'IP ou les changements de politique de la plateforme.","c4":"9.4 {strong} Le Service peut être interrompu, dégradé ou arrêté à tout moment en raison de facteurs incluant, sans s'y limiter : les changements de la plateforme TikTok, des problèmes d'infrastructure, la maintenance ou des décisions commerciales.","c4Strong":"TikTools ne garantit pas que le Service sera disponible à un moment donné ni pendant une durée donnée.","c5":"9.5 Vous reconnaissez que le Service dépend d'une intégration tierce avec la plateforme de TikTok et que cette intégration peut échouer, cesser de fonctionner ou devenir définitivement indisponible sans aucune faute de la part de TikTools."},"liability":{"h":"10. Limitation de responsabilité","c1":"10.1 {strong}, y compris, sans s'y limiter, la perte de bénéfices, de données, d'usage, de clientèle, d'opportunités commerciales, de revenus ou d'autres pertes immatérielles résultant de :","c1Strong":"En aucun cas TikTools, ses exploitants, dirigeants, employés ou affiliés ne pourront être tenus responsables de dommages indirects, accessoires, spéciaux, consécutifs ou punitifs","c1a":"(a) Votre utilisation ou votre impossibilité d'utiliser le Service ;","c1b":"(b) Le blocage, la restriction ou la modification par TikTok de l'accès à sa plateforme ;","c1c":"(c) Un accès non autorisé à vos données ou à vos clés API ;","c1d":"(d) Tout bug, toute erreur ou toute inexactitude du Service ;","c1e":"(e) Les interruptions, indisponibilités ou l'arrêt du Service ;","c1f":"(f) Tout comportement ou contenu de tiers accessible via le Service.","c2":"10.2 La responsabilité totale cumulée de TikTools pour l'ensemble des réclamations ne pourra excéder le moins élevé des montants suivants : (a) le montant que vous avez payé à TikTools au cours des trois (3) mois précédant la réclamation, ou (b) cent dollars américains (100 $).","c3":"10.3 {strong}","c3Strong":"Vous renoncez expressément à toute demande de dommages et intérêts découlant de l'interruption, de la modification ou de l'arrêt du Service en raison de changements de la plateforme TikTok ou de toute autre cause indépendante de la volonté de TikTools."},"rateLimits":{"h":"11. Limites de débit et usage raisonnable","c1":"11.1 Les limites de débit et les quotas de requêtes quotidiens peuvent changer à tout moment et sans préavis. Le dépassement des limites de débit peut entraîner la suspension temporaire ou définitive de votre compte ou de votre clé API.","c2":"11.2 Les abonnés aux offres premium bénéficient de limites de débit plus élevées, d'un routage prioritaire et d'un support dédié. Ces avantages sont soumis à un usage raisonnable et peuvent être ajustés si nous estimons que les schémas d'utilisation sont abusifs ou nuisent aux autres utilisateurs.","c3":"11.3 Les chiffres publiés sur notre page de tarifs, dans la documentation, les guides et les pages marketing sont indicatifs de l'offre au moment de leur rédaction et ne constituent pas une garantie contractuelle d'un débit précis. Les limites sont ajustées en continu en fonction de la capacité, du comportement de la plateforme en amont et des abus, de sorte qu'un chiffre publié peut différer de la limite en vigueur à un moment donné.","c4":"11.4 Les limites réellement appliquées à votre clé font foi et vous sont visibles : le tableau de bord de votre compte indique votre offre actuelle, votre quota quotidien et votre consommation, et {endpoint} renvoie les valeurs en vigueur par minute, de WebSocket simultanés et de vérification en masse pour la clé avec laquelle vous l'appelez. En cas de divergence entre un chiffre publié et la valeur appliquée à votre clé, la valeur appliquée prévaut. Si une limite en vigueur est sensiblement inférieure à l'offre que vous avez achetée et qu'elle affecte votre utilisation, contactez le support et nous la corrigerons ou ajusterons votre offre.","c5":"11.5 {strong} Votre abonnement vous accorde une licence limitée, non exclusive et non transférable pour accéder à l'API et utiliser les données qu'elle renvoie dans le cadre de vos propres opérations commerciales internes - par exemple, suivre les régions, les créateurs et les classements avec lesquels vous travaillez activement. La licence porte sur le droit d'{use} les données dans vos opérations, et non d'acquérir, de copier ou d'accumuler le jeu de données lui-même.","c5Strong":"Utilisation autorisée et licence sur les données.","c5Use":"utiliser","c6":"11.6 {strong} Les jeux de données agrégés de classements, de ligues, de donateurs et les données associées constituent le cœur du produit. Vous ne pouvez pas utiliser l'API, en tout ou en partie, pour extraire, collecter, scraper, dupliquer ou reconstituer systématiquement le jeu de données à travers les régions ou dans le temps au-delà de votre propre usage opérationnel. Aucune offre ne vous donne droit à un flux en masse de toutes les régions ou de l'ensemble du jeu de données à la fois ; toute technique visant à obtenir l'intégralité du jeu de données - y compris la répartition des requêtes sur toutes les régions, la rotation de clés ou de comptes, ou le regroupement de plusieurs clés dans une même charge d'extraction - est interdite, quelle que soit l'offre.","c6Strong":"Pas d'extraction en masse ni de scraping.","c7":"11.7 {strong} Vous ne pouvez pas revendre, sous-licencier, republier, redistribuer ou mettre de toute autre manière les données (ou toute partie substantielle ou dérivée de celles-ci) à la disposition d'un tiers, ni les utiliser pour construire, alimenter ou entraîner un jeu de données ou un service concurrent, sans notre autorisation écrite préalable. Les limites de débit et quotidiennes existent en partie pour faire respecter ces règles ; les contourner, ou utiliser l'accès pour une extraction ou une redistribution en gros plutôt que pour votre propre usage opérationnel, constitue une violation des présentes Conditions et peut entraîner une suspension ou une résiliation sans remboursement.","c7Strong":"Pas de redistribution ni de revente."},"indemnification":{"h":"12. Indemnisation","c1":"12.1 Vous acceptez d'indemniser et de dégager de toute responsabilité TikTools et ses exploitants contre toute réclamation, tous dommages, obligations, pertes, responsabilités, coûts et frais (y compris les honoraires d'avocat) découlant de : (a) votre utilisation du Service ; (b) votre violation des présentes Conditions ; (c) votre violation de tout droit d'un tiers, y compris tout droit de propriété intellectuelle ; ou (d) toute réclamation selon laquelle votre utilisation du Service a causé un préjudice à un tiers."},"discordBot":{"h":"13. Utilisation du bot Discord","intro":"Si vous invitez le bot Discord TikTools sur votre serveur, les conditions supplémentaires suivantes s'appliquent :","c1":"13.1 {strong} En utilisant le bot, vous acceptez de respecter strictement les Conditions d'utilisation et les Règles de la communauté de Discord.","c1Strong":"Conformité à la plateforme :","c2":"13.2 {strong} En configurant le bot pour envoyer des alertes dans un salon précis, vous confirmez disposer des permissions nécessaires sur le serveur. Il vous appartient de veiller à ce que le volume de notifications du salon respecte les règles de votre serveur.","c2Strong":"Responsabilité de l'administrateur :","c3":"13.3 {strong} Exploiter abusivement les commandes slash du bot, tenter de contourner les délais entre commandes ou utiliser le bot pour inonder volontairement des salons Discord de messages excessifs entraînera l'inscription définitive de l'ID de votre serveur Discord sur liste noire pour l'utilisation du bot, et pourra entraîner la résiliation de votre compte API TikTools associé.","c3Strong":"Abus et spam :","c4":"13.4 {strong} TikTools est une intégration indépendante et n'est pas affilié à Discord Inc. Nous déclinons toute responsabilité pour les mesures de modération prises par Discord contre votre serveur ou votre compte Discord.","c4Strong":"Limitation de responsabilité :"},"youtube":{"h":"14. Services d'API YouTube","c1":"14.1 TikTools utilise les services d'API YouTube pour publier et gérer nos propres vidéos tutoriels sur notre propre chaîne YouTube. Lorsque notre Service interagit avec YouTube, les {terms} s'appliquent également, et les informations traitées par Google sont régies par les {privacy}.","c1Terms":"Conditions d'utilisation de YouTube","c1Privacy":"Règles de confidentialité de Google","c2":"14.2 Aucune donnée client n'est envoyée à YouTube et aucun client ne s'authentifie auprès de YouTube via le Service. Consultez notre {link} pour savoir ce qui est stocké et comment l'accès est révoqué.","c2Link":"Politique de confidentialité"},"general":{"h":"15. Conditions générales","c1":"15.1 Vous acceptez de ne pas reproduire, dupliquer, modifier, vendre ou revendre le Service sans l'autorisation écrite expresse de TikTools.","c2":"15.2 N'altérez pas le Service, ne tentez pas d'y accéder sans autorisation et ne laissez pas entendre faussement que vous êtes associé à TikTools ou à l'un de ses services.","c3":"15.3 Les présentes Conditions sont régies par les lois de l'État du Delaware, États-Unis, et interprétées conformément à celles-ci, sans égard à ses règles de conflit de lois.","c4":"15.4 Le fait que TikTools n'exerce pas un droit ou une disposition des présentes Conditions ne vaut pas renonciation à ce droit ou à cette disposition.","c5":"15.5 Les questions relatives aux présentes Conditions d'utilisation doivent être adressées à {email}.","c6":"15.6 Le Service est fourni par B4Battle LLC, 131 Continental Drive, Newark, DE 19713, United States (e-mail : {email}, téléphone : +1 610 552 3035). Dans les présentes Conditions, toute référence à \"TikTools\" désigne B4Battle LLC."},"refunds":{"h":"16. Remboursements","c1":"Remboursements. Vous pouvez demander un remboursement par compte. Dès votre demande, votre accès prend fin immédiatement : les heures de lecture restantes sont supprimées et les recharges automatiques sont désactivées. Nous remboursons ensuite la partie non utilisée de votre paiement, calculée sur la base du prix que vous avez payé pour ces heures, déduction faite des frais du prestataire de paiement afférents à ce paiement. Les heures déjà utilisées ne sont pas remboursées. Un compte ne peut bénéficier que d'un seul remboursement ; toute demande de remboursement ultérieure est refusée. Les remboursements sont effectués sur le moyen de paiement d'origine et peuvent mettre 5 à 10 jours ouvrés à apparaître. Ceci ne limite aucun des droits dont vous disposez en vertu de la loi qui vous est applicable.","c2":"En cas de divergence entre les traductions, la version anglaise prévaut."}},"privacy":{"seo":{"title":"Politique de confidentialité - zéro pistage, aucune revente de données","description":"TikTool ne vend jamais vos données. Zéro traceur publicitaire. Clés API chiffrées avec scrypt. Les données des streams TikTok LIVE sont relayées en temps réel uniquement - rien n'est stocké. Lisez notre engagement complet en matière de confidentialité.","ogDescription":"Aucun traceur publicitaire. Aucune revente de données. Clés API chiffrées. Données TikTok LIVE relayées en temps réel uniquement - jamais stockées. Transparence totale.","ogImageTitle":"Politique de confidentialité","ogImageSubtitle":"Zéro pistage et aucune revente de données."},"title":"Politique de confidentialité","intro":"En utilisant ce site et l'API TikTools (le \"Service\"), vous acceptez d'être lié par la politique de confidentialité suivante (la \"Politique de confidentialité\"). {strong} TikTools prend votre vie privée au sérieux. Cette politique explique comment vos informations personnelles sont collectées et utilisées.","introStrong":"SI VOUS N'ACCEPTEZ PAS LES TERMES DE CETTE POLITIQUE DE CONFIDENTIALITÉ, VOUS NE DEVEZ PAS L'ACCEPTER ET NE POUVEZ PAS UTILISER LE SERVICE.","routine":{"h":"1. Collecte des informations courantes","p1":"Le Service enregistre des informations de base sur ses utilisateurs. Ces informations comprennent, sans s'y limiter, les adresses IP, les détails du navigateur, les horodatages et les pages de provenance. Aucune de ces informations ne permet d'identifier personnellement un utilisateur précis du Service. Elles sont enregistrées à des fins d'administration et de maintenance courantes."},"account":{"h":"2. Informations du compte","p1":"Lorsque vous créez un compte, nous collectons des informations telles que votre adresse e-mail, votre nom et vos identifiants d'authentification (hash du mot de passe ou jeton Google OAuth). Ces informations servent uniquement à fournir, maintenir et améliorer le Service.","p2":"Nous ne vendrons aucune information personnelle identifiable à des tiers à des fins lucratives.","p3":"Nous pouvons divulguer des informations personnelles identifiables dans des circonstances particulières, par exemple pour répondre à des injonctions, des décisions de justice ou d'autres procédures judiciaires."},"antiAbuse":{"h":"3. Collecte de données anti-abus","intro":"Pour prévenir les abus et faire respecter nos {link}, nous collectons et traitons les données suivantes :","introLink":"Conditions d'utilisation","ipLabel":"Adresse IP à l'inscription :","ip":"{label} Votre adresse IP est enregistrée lors de la création de votre compte. Elle sert à détecter la création de plusieurs comptes depuis le même appareil ou le même réseau.","emailLabel":"Normalisation des e-mails :","email":"{label} Nous normalisons les adresses e-mail pour détecter les comptes en double créés avec des variantes de la même adresse.","flagsLabel":"Marqueurs de compte :","flags":"{label} Si notre système détecte un abus potentiel de comptes multiples, nous créons un enregistrement interne reliant le compte signalé à d'autres comptes provenant de la même adresse IP ou du même e-mail normalisé. Ces données comprennent le type de signalement, les IDs des comptes liés, l'adresse IP et l'horodatage.","fingerprintLabel":"Cookies d'empreinte d'appareil :","fingerprint":"{label} Nous pouvons déposer des cookies pour identifier les navigateurs associés à la création de plusieurs comptes. Ces cookies servent uniquement à la détection des abus et ne sont pas utilisés à des fins publicitaires ou de pistage.","competitorLabel":"Détection des concurrents et des abus répétés :","competitor":"{label} Les données décrites dans cette section servent aussi à identifier les comptes exploités par des services concurrents ou affiliés à ceux-ci, et à reconnaître une partie précédemment bannie qui revient avec un nouveau compte. Lorsqu'une telle association est détectée, le compte peut être suspendu ou banni définitivement conformément à nos Conditions d'utilisation.","paidExempt":"Les comptes disposant d'un abonnement payant actif sont exemptés des avertissements multi-comptes, car plusieurs comptes légitimes sont attendus dans un contexte professionnel."},"cookies":{"h":"4. Cookies","p1":"Lorsque c'est nécessaire, le Service utilise des cookies pour stocker des informations sur les préférences et l'historique d'un visiteur afin de mieux le servir et/ou de lui présenter un contenu personnalisé. Les cookies sont nécessaires pour utiliser certaines fonctionnalités du Service.","p2":"Nous utilisons les types de cookies suivants :","authLabel":"Cookies d'authentification :","auth":"{label} Nécessaires pour maintenir votre session de connexion.","antiAbuseLabel":"Cookies anti-abus :","antiAbuse":"{label} Utilisés pour détecter la création potentielle de comptes multiples et avertir en conséquence. Ces cookies peuvent être conservés jusqu'à 30 jours.","preferenceLabel":"Cookies de préférences :","preference":"{label} Utilisés pour mémoriser vos paramètres et préférences."},"apiUsage":{"h":"5. Données d'utilisation de l'API","p1":"Nous collectons des statistiques d'utilisation liées à vos appels API, notamment le nombre de requêtes, les endpoints appelés, les temps de réponse et les taux d'erreur. Ces données servent à surveiller l'état du service, à appliquer les limites de débit et à améliorer le Service.","p2":"Nous ne stockons pas le contenu des données TikTok LIVE qui transitent par notre API. Les flux de données sont relayés en temps réel et ne sont pas conservés sur nos serveurs.","p3":"Les données de classements, de ligues, de donateurs et les données associées renvoyées par l'API sont fournies sous une licence limitée pour votre propre usage opérationnel, comme le précisent nos Conditions d'utilisation. Elles ne peuvent pas être extraites en masse, scrapées, dupliquées, redistribuées, revendues ni utilisées pour construire un jeu de données concurrent. Nos limites de débit et quotidiennes existent en partie pour faire respecter cette règle."},"thirdParties":{"h":"6. Tiers","p1":"Des services tiers peuvent utiliser des cookies, des scripts et/ou des balises web pour suivre l'activité des utilisateurs sur le Service. Ce suivi est effectué directement par ces tiers via leurs propres serveurs et est soumis à leurs propres politiques de confidentialité. Le Service n'a ni accès ni contrôle sur ces cookies, scripts et/ou balises web.","p2":"Nous utilisons {stripe} pour le traitement des paiements. Lorsque vous souscrivez à une offre payante, vos informations de paiement sont traitées directement par Stripe et sont soumises à la {link}. Nous ne stockons pas les données de votre carte bancaire.","p2Link":"Politique de confidentialité de Stripe"},"links":{"h":"7. Liens vers des sites tiers","p1":"Nous avons inclus des liens sur ce site pour votre usage et à titre de référence. Nous ne sommes pas responsables des politiques de confidentialité de ces sites. Sachez que leurs politiques de confidentialité peuvent différer de la nôtre."},"tiktokData":{"h":"8. Données TikTok et avertissement relatif à l'API tierce","p1":"TikTools n'est ni affilié à TikTok ou ByteDance Ltd., ni approuvé ou sponsorisé par eux.","p2":"TikTools fournit une {strong} permettant d'accéder aux données de diffusion TikTok LIVE accessibles publiquement. TikTok ne propose pas d'API publique native pour les données des lives. Notre Service traite des données de diffusion accessibles publiquement pour fournir des événements structurés.","p2Strong":"API tierce gérée","p3":"Toutes les données TikTok consultées via le Service sont des données publiques provenant des streams TikTok LIVE. Nous n'accédons pas aux informations privées des comptes TikTok, ne les collectons pas et ne les stockons pas.","p4":"{strong} Dans ce cas, nous mettons à jour nos systèmes pour rétablir l'accès lorsque c'est possible, mais nous ne pouvons pas garantir un service ininterrompu. La disponibilité des données TikTok via notre Service dépend entièrement des politiques de la plateforme TikTok et de son infrastructure technique, qui échappent à notre contrôle.","p4Strong":"TikTok peut supprimer, modifier ou bloquer l'accès à ses endpoints à tout moment et sans préavis.","p5":"{strong} Nos classements et les pages associées reflètent des informations que TikTok publie lui-même publiquement, y compris les classements LIVE publics de TikTok. Nous ne sommes pas à l'origine de ces informations et nous ne révélons rien sur un créateur que TikTok n'ait pas déjà rendu public. Un créateur apparaît dans nos classements parce qu'il apparaît dans ceux de TikTok.","p5Strong":"Données de classement des créateurs.","p6":"Pour cette raison, {strong} Retirer une entrée ici ne la retirerait pas de TikTok, ne rendrait pas l'information sous-jacente moins publique et donnerait dans nos classements une version trompeuse de ce que TikTok publie. Un créateur qui ne souhaite pas apparaître dans les classements publics doit le modifier à la source, via son compte TikTok et les paramètres de classement LIVE de TikTok. Dès qu'un créateur n'apparaît plus dans les classements publics de TikTok, il n'apparaît plus dans les nôtres.","p6Strong":"nous ne retirons ni ne masquons des créateurs individuels des données de classement publiques sur demande.","p7":"Ceci est distinct des données de votre propre compte. Si vous avez un compte tik.tools, les informations que vous nous avez fournies relèvent de la section Conservation des données ci-dessous et vous pouvez les supprimer. Cela ne remplace pas non plus les obligations qui nous incombent en vertu de la loi applicable : lorsque nous recevons une demande vérifiée à laquelle la loi nous oblige à donner suite, nous y donnons suite."},"security":{"h":"9. Sécurité des données","p1":"Internet est un système complexe. Votre contenu est transmis, stocké et traité via des réseaux et des appareils tiers sur lesquels TikTools n'a aucun contrôle. Nous faisons des efforts raisonnables pour garder vos données privées et sécurisées du mieux possible, mais nous ne pouvons pas garantir une sécurité absolue.","p2":"Les clés API sont stockées de manière sécurisée et transmises uniquement via des connexions chiffrées. Les hashs de mots de passe utilisent des algorithmes cryptographiques robustes (scrypt avec des sels aléatoires)."},"retention":{"h":"10. Conservation des données","p1":"Nous conservons les informations de votre compte tant que celui-ci est actif. Si vous supprimez votre compte, toutes les informations personnelles identifiables associées seront supprimées de nos systèmes sous 30 jours.","p2":"Les données d'utilisation agrégées et anonymisées peuvent être conservées indéfiniment à des fins d'analyse et d'amélioration.","p3":"Les signalements anti-abus et les enregistrements associés peuvent être conservés jusqu'à 12 mois après la suppression du compte afin d'empêcher les abus répétés."},"changes":{"h":"11. Modifications de cette politique","p1":"Nous nous réservons le droit de modifier cette politique de confidentialité à tout moment. Les modifications prennent effet dès leur publication sur cette page. Votre utilisation continue du Service après toute modification vaut acceptation de la politique révisée."},"discordBot":{"h":"12. Données et confidentialité du bot Discord","intro":"Si vous choisissez d'utiliser le bot Discord TikTools sur votre serveur, les conditions de confidentialité supplémentaires suivantes s'appliquent, conformément aux Conditions développeur de Discord :","collectedLabel":"Données collectées :","collected":"{label} Le bot collecte et stocke uniquement les données strictement nécessaires à son fonctionnement. Cela comprend l'ID de votre serveur Discord (Guild ID), les IDs des salons (vers lesquels les alertes sont envoyées) et les IDs utilisateur des administrateurs qui exécutent des commandes slash pour configurer le bot.","messageLabel":"Contenu des messages :","message":"{label} Pour permettre notre fonctionnalité fluide de matchmaking entre serveurs, le bot traite le contenu des messages de manière éphémère dans des salons désignés afin de détecter les acceptations de battle. Ces données sont traitées uniquement en mémoire pour une correspondance contextuelle en temps réel et sont immédiatement effacées. Nous NE journalisons, NE stockons et N'exportons PAS le contenu des messages humains, les messages privés ou les données de conversation vers une base de données, et nous ne les utilisons pas pour entraîner des modèles d'IA.","usageLabel":"Utilisation des données :","usage":"{label} Les IDs Discord collectés servent uniquement à acheminer les données TikTok LIVE demandées (ex. cadeaux, chat, battles) vers les bons salons Discord.","retentionLabel":"Conservation et suppression des données :","retention":"{label} Si vous expulsez ou retirez le bot TikTools de votre serveur Discord, les configurations d'alertes automatiques associées à l'ID de votre serveur deviennent orphelines et sont automatiquement purgées de notre base de routage active. Vous pouvez aussi demander à tout moment la suppression manuelle immédiate des données de votre serveur en nous contactant."},"youtube":{"h":"13. Services d'API YouTube","p1":"TikTools utilise les {strong} dans un seul but : publier nos propres vidéos tutoriels sur notre propre chaîne YouTube et gérer leurs titres, descriptions, miniatures, sous-titres et playlists.","p1Strong":"services d'API YouTube","p2":"Nous n'accédons pas aux données appartenant à toute autre chaîne, vidéo ou utilisateur YouTube, ne les collectons pas, ne les stockons pas et ne les traitons pas, et aucun client TikTools ne s'authentifie auprès de YouTube via notre Service. Le seul compte concerné est le nôtre, autorisé une seule fois par le propriétaire de la chaîne.","p3":"En utilisant les parties de notre Service connectées à YouTube, vous acceptez les {terms}. Les informations traitées par Google dans le cadre de ces services sont régies par les {privacy}.","p3Terms":"Conditions d'utilisation de YouTube","p3Privacy":"Règles de confidentialité de Google","storeLabel":"Ce que nous stockons :","store":"{label} un jeton d'actualisation OAuth pour notre propre chaîne YouTube, ainsi que les IDs et les métadonnées de publication des vidéos que nous avons publiées. Rien d'autre n'est récupéré depuis l'API YouTube.","revocationLabel":"Conservation et révocation :","revocation":"{label} le jeton d'actualisation est conservé sur nos propres serveurs avec un accès restreint et est supprimé lorsque l'intégration est désactivée. L'autorisation peut être révoquée à tout moment dans les {link}, ce qui met fin immédiatement et définitivement à notre accès. Les IDs de vidéos et les métadonnées de publication stockés sont supprimés dans les 30 jours suivant une demande de révocation.","revocationLink":"paramètres de sécurité Google"},"gdpr":{"h":"14. Responsable du traitement et vos droits","controllerLabel":"Qui est responsable de vos données :","controller":"{label} TikTools est exploité par B4Battle LLC, 131 Continental Drive, Newark, DE 19713, United States. B4Battle LLC est le responsable du traitement des données personnelles décrites dans la présente politique. Pour toute demande relative à vos données personnelles, contactez {email}.","purposesLabel":"Pourquoi nous traitons vos données :","purposeContract":"Pour fournir le service auquel vous avez souscrit : votre compte, vos clés API, votre forfait et vos limites d'utilisation (exécution d'un contrat).","purposePayment":"Pour encaisser les paiements et conserver les documents exigés par la loi (obligation légale).","purposeSecurity":"Pour protéger le service contre les abus, la fraude et les comptes gratuits multiples (intérêt légitime à maintenir un service sûr et équitable).","purposeSupport":"Pour répondre à vos messages d'assistance (exécution d'un contrat, ou intérêt légitime si vous n'êtes pas client).","rightsLabel":"Vos droits :","rightsIntro":"{label} Si vous vous trouvez dans l'Espace économique européen, au Royaume-Uni ou en Suisse, vous avez le droit :","rightAccess":"d'accéder aux données personnelles que nous détenons à votre sujet et d'en obtenir une copie ;","rightRectify":"de faire rectifier les données inexactes ;","rightErase":"de faire supprimer vos données, sauf si la loi nous oblige à les conserver (par exemple les justificatifs de paiement) ;","rightRestrict":"de limiter le traitement fondé sur notre intérêt légitime ou de vous y opposer ;","rightPortability":"de recevoir vos données dans un format portable et lisible par machine ;","rightWithdraw":"de retirer votre consentement à tout moment lorsque le traitement repose sur le consentement.","exercise":"Pour exercer l'un de ces droits, écrivez à {email} depuis l'adresse associée à votre compte. Nous répondons dans un délai d'un mois.","complaint":"Vous pouvez également introduire une réclamation auprès de l'autorité de protection des données de votre lieu de résidence ou de travail.","transfersLabel":"Transferts internationaux :","transfers":"{label} Nous sommes établis aux États-Unis et y traitons les données. Lorsque la loi l'exige, les transferts depuis l'EEE, le Royaume-Uni ou la Suisse reposent sur les clauses contractuelles types de la Commission européenne ou sur une garantie équivalente."},"contact":{"h":"15. Nous contacter","p1":"Pour toute question ou préoccupation concernant cette politique de confidentialité, contactez-nous à {email}."}},"changelog":{"seo":{"title":"Journal des modifications - TikTool","description":"Journal des modifications de la plateforme TikTool - toutes les mises à jour et corrections."},"title":"{accent} de la plateforme","titleAccent":"Journal des modifications","subtitle":"Toutes les mises à jour, corrections et améliorations de la plateforme TikTool.","loading":"Chargement...","empty":"Aucune entrée pour l'instant."},"updates":{"seo":{"title":"Nouveautés - tik.tools","description":"Nouveautés de la plateforme réservées aux clients."},"customerBadge":"(Espace client)","title":"{accent} de la plateforme","titleAccent":"Nouveautés","subtitle":"Les nouveautés de tik.tools - le journal complet des corrections, gains de performance et nouvelles fonctionnalités.","loading":"Chargement des nouveautés...","locked":{"title":"Nouveautés réservées aux abonnés","body":"Les vraies nouveautés de la plateforme sont réservées aux abonnés actifs. Le flux ci-dessous affiche des entrées fictives.","cta":"Abonne-toi pour voir les vraies nouveautés"},"empty":"Aucune nouveauté pour l'instant.","placeholderBadge":"EXEMPLE","badges":{"new":"Nouveau","fix":"Correctif","performance":"Performance","update":"Mise à jour","security":"Sécurité","docs":"Docs"}},"captions":{"headings":{"liveCaptions":"Sous-titres en direct","captionsGuide":"Guide des sous-titres TikTok LIVE","obsGuide":"Guide des sous-titres sur OBS"},"seo":{"description":"Les sous-titres en direct ne sont plus proposés aux nouveaux clients. Les clients existants peuvent continuer à les utiliser depuis leur tableau de bord.","obsDescription":"Les sous-titres en direct ne sont plus proposés aux nouveaux clients. Les clients existants peuvent continuer à utiliser les outils d'overlay de sous-titres depuis leur tableau de bord."},"notice":{"lead":"Les sous-titres en direct ne sont plus proposés aux nouveaux clients.","body":"Tu utilises déjà les sous-titres en direct ? Rien ne change pour toi. Gère tes sous-titres depuis ton tableau de bord et continue de les ajouter à ton stream avec les outils d'overlay de sous-titres.","openDashboard":"Ouvrir le tableau de bord","overlayTools":"Outils d'overlay de sous-titres","foot":"Tu développes sur TikTok LIVE ? Découvre {link}."}}},"agencyDesk":{"pulse":{"title":"Tableau","regions":"Régions","diamondFilter":{"title":"Filtrer par diamants mensuels","from":"De","fromAria":"Diamants à partir de","to":"À","toAria":"Diamants jusqu'à"},"hideIneligible":{"title":"Masquer les créateurs que tu as marqués non éligibles","label":"Masquer non éligibles"},"helpAria":"Comment fonctionne ce tableau","refreshAria":"Actualiser le tableau","locked":{"title":"Agency Global débloque le tableau régional en live","sub":"Vois tout le monde dans chaque ligue, classement, classement gaming et Top 99+ de tes régions, sans doublons et avec le statut en ligne en direct, plus le bot Telegram privé."},"capped":"{starter} affiche 1 région à la fois. Toutes les régions d'un coup, c'est avec {global}.","upgrade":"Mettre à niveau","namesUnlocked":"Noms débloqués","purpose":{"live":"Tout le monde dans tes régions, en live d'abord puis hors ligne, moins ceux que tu as déjà vérifiés. Copie un lot de 30, vérifie-les dans Backstage, puis marque-les comme traités pour charger les 30 suivants.","rising":"Les créateurs qui remontent vers les classements. Attrape-les avant une autre agence.","recruit":"Des créateurs frais à vérifier pour ta région. Traité le retire pour toute l'équipe, Réserver y met ton nom.","gifters":"Les baleines. Qui dépense aujourd'hui, cette semaine, ce mois-ci - et qui vient de commencer.","digest":"Ce qui a changé depuis ta dernière visite, sur toutes les listes.","team":"Qui gère qui : réservations avec étapes de prospection, journal des contacts, places et alertes."},"seo":{"title":"Agency Pulse - tous les créateurs de tes régions, en live","description":"Le tableau live pour agences : tous les créateurs du classement, des ligues, des classements gaming et des mouvements du Top 99 de chaque région, sans doublons et avec le statut en ligne en direct. Choisis tes régions, travaille une seule liste à jour.","ogDescription":"Choisis tes régions et obtiens la liste dédoublonnée de tous les créateurs des classements, ligues, classements gaming et mouvements du Top 99, avec le statut en ligne en direct."}},"views":{"live":"Live","rising":"En hausse","recruit":"Recruter","gifters":"Donateurs","digest":"Digest","team":"Équipe"},"segmentNav":{"aria":"Vues du tableau"},"batchBar":{"checkedThese":"Ces {count} sont vérifiés","next":"{count} suivants","undo":"Annuler"},"copyAll":{"titleOne":"Copier {count} pseudo, un par ligne","titleMany":"Copier {count} pseudos, un par ligne","copied":"{count} copiés","label":"Tout copier"},"deskRail":{"myClaims":"Mes réservations","claimsEmpty":"Aucune réservation pour l'instant. Réserver sur une carte met ton nom sur un créateur.","teamNotes":"Notes d'équipe","notesEmpty":"Aucune note pour l'instant. Une note sur une carte est partagée avec tous les managers.","teammate":"Coéquipier"},"claimStatus":{"claimed":"réservé","contacted":"contacté","responded":"a répondu","interested":"intéressé","signed":"signé","not_interested":"pas intéressé"},"explainer":{"dismiss":"Fermer","title":"Comment ton équipe utilise ce tableau","lines":{"claim":"Réserve un créateur ou un donateur pour y mettre ton nom - puis fais avancer l'étape avec les gros boutons CONTACTÉ / A RÉPONDU / INTÉRESSÉ. Toute l'équipe voit qui gère qui.","done":"Traité (dans le flux de recrutement) retire un créateur du tableau de tout le monde - personne ne le contacte deux fois.","notes":"Les notes que tu ajoutes sont partagées avec toute l'équipe.","copyAll":"Tout copier place chaque pseudo visible dans ton presse-papiers, un par ligne, prêt pour une vérification groupée."}},"helpSheet":{"aria":"Comment fonctionne ce tableau","title":"Comment utiliser ce tableau","close":"Fermer","gotIt":"Compris","steps":{"regions":{"title":"Choisis tes régions","text":"Le bouton Régions en haut pilote tous les onglets. Ta sélection est enregistrée."},"lists":{"title":"Chasse sur les quatre listes","text":"Live = à l'antenne en ce moment. En hausse = remonte vers le classement. Recruter = créateurs frais à vérifier. Donateurs = les baleines qui dépensent."},"intel":{"title":"Touche un nom pour les infos","text":"La carte s'ouvre instantanément avec les gains, les classements et les donateurs. Balaie pour parcourir la liste."},"claim":{"title":"Réserve ceux que tu travailles","text":"Réserver met ton nom sur un créateur pour toute l'équipe, puis les gros boutons CONTACTÉ / A RÉPONDU / INTÉRESSÉ suivent l'avancée de la prospection. Personne ne contacte deux fois un nom réservé."},"notes":{"title":"Les notes sont partagées","text":"Note sur une carte = une note d'équipe par créateur. Tous les managers la voient."},"copy":{"title":"Copier pour les vérifications groupées","text":"Copier prend un pseudo ; Tout copier prend toute la liste visible, un par ligne, prête à coller dans une vérification d'éligibilité groupée."},"clear":{"title":"Retire ce qui est traité","text":"Traité (dans Recruter) retire un créateur pour TOUTE l'équipe. Le petit x masque une carte juste pour TOI."},"team":{"title":"Équipe, c'est le registre","text":"Chaque réservation groupée par manager avec son étape, le journal des contacts, les places et les branchements d'alertes s'y trouvent."}}},"claimSheet":{"aria":"Réservation de {'@'}{handle}","claimedByYou":"Réservé par toi","claimedBy":"Réservé par {name}","notClaimed":"Non réservé","close":"Fermer","hintMine":"Où en est cette prospection ? Ton équipe voit l'étape instantanément.","hintOther":"Étape de prospection - seul le manager qui a réservé peut la modifier.","roster":{"added":"Dans ton roster","adding":"Ajout...","add":"Ajouter au roster","error":"Impossible d'ajouter au roster. Réessaie dans un instant.","full":"Ton roster est plein. Retire d'abord un créateur."},"done":"Terminé","release":"Libérer la réservation","stages":{"contacted":"CONTACTÉ","responded":"A RÉPONDU","interested":"INTÉRESSÉ","signed":"SIGNÉ","not_interested":"PAS INTÉRESSÉ"}},"lockedAccess":"Accès Agency requis","card":{"locked":"Verrouillé","new":"NOUVEAU","monthlyDiamonds":"Diamants mensuels : {band}","mark":{"eligible":"Éligible","premiumTitle":"Invitable uniquement via une place d'invitation premium","premium":"Éligible premium","ineligible":"Non éligible","checked":"Vérifié"},"claimedBy":"Réservé par {name}","eligibility":"Éligibilité","markEligible":"Marquer éligible","markIneligible":"Marquer non éligible","copied":"Copié","copyHandle":"Copier {'@'}{handle}","copy":"Copier","editNote":"Modifier la note d'équipe","addNote":"Ajouter une note d'équipe","note":"Note","markedDone":"Marqué traité","markDone":"Marquer traité - retire ce créateur du flux de toute l'équipe","done":"Traité","claimThis":"Réserver ce créateur","claimed":"Réservé","claim":"Réserver","hide":"Masquer de mon tableau","liveStat":"LIVE","active":{"today":"actif aujourd'hui","oneDay":"actif il y a 1 j","days":"actif il y a {days} j","oneMonth":"actif il y a 1 mois","months":"actif il y a {months} mois"}},"noteSheet":{"title":"Note sur {'@'}{handle}","close":"Fermer","placeholder":"Ajoute une note pour ton équipe - une mise en relation, un tarif, un rappel...","lastEditedBy":"Dernière modification par {name}","cancel":"Annuler","save":"Enregistrer"},"regionSheet":{"aria":"Choisis tes régions","title":"Tes régions","sub":"{count} actives - touche pour activer ou désactiver, enregistré automatiquement","close":"Fermer","done":"Terminé"},"live":{"progress":"{online} en live - {total} à vérifier dans {regions}","copyThese":"Copier ceux-ci","loading":"Chargement de ton tableau...","empty":{"title":"Tout est à jour dans tes régions","sub":"Tu as traité tous les créateurs ici. Les nouveaux noms arrivent tout seuls - ce tableau suit le live et s'actualise toutes les quelques secondes. Les noms vérifiés reviennent au bout de 30 jours."},"undoLast":"Annuler le dernier lot","regionsCount":"{count} régions"},"rising":{"empty":{"title":"Aucun créateur en hausse pour l'instant","sub":"Personne dans tes régions sélectionnées n'a remonté vers une réentrée sur ce cycle. Les nouveaux créateurs en hausse apparaissent ici quand les classements bougent."},"peak":"Pic #{rank}","backInReach":"de nouveau à portée : {amount}","liveNow":"en live"},"recruit":{"regionAria":"Région de recrutement","progress":"{remaining} restants sur {total}","empty":{"title":"Tout est à jour dans cette région","sub":"Tu as traité tous les candidats classés ici pour le moment. Les noms vérifiés reviennent au bout de 30 jours, ou change de région ci-dessus."},"points":"{score} pts"},"gifters":{"listAria":"Liste des donateurs","rising":"En hausse","top":"Top","periodAria":"Période","regionTitle":"Région : {region}","loading":"Chargement des donateurs...","upgradeFeature":"Infos donateurs","emptyRising":"Pas de nouvelle baleine sur cette période. Quand un donateur dépense bien plus que d'habitude, il apparaît ici.","emptyTop":"Aucune activité de donateur pour cette région pour l'instant. Ça se remplit à mesure que les cadeaux tombent en LIVE.","period":{"daily":"Aujourd'hui","weekly":"Semaine","monthly":"Mois"},"global":"Monde","diamonds":"{amount} diamants","creatorsGiftedOne":"{count} créateur soutenu","creatorsGiftedMany":"{count} créateurs soutenus"},"digest":{"caption":"Ton digest se met à jour ici en direct. Les envois Telegram et Discord arrivent plusieurs fois par jour.","seeAll":"Tout voir dans {view}","empty":"Rien de nouveau à rattraper pour l'instant. Dès que des créateurs passent en live et que les baleines dépensent, ton digest se remplit ici.","offline":"Hors ligne","sections":{"since":"Depuis ta dernière visite","earlier":"Plus tôt aujourd'hui","live":"En live en ce moment","gifters":"Nouveaux donateurs aujourd'hui"}},"team":{"claimed":{"title":"Réservés","lede":"Les créateurs et donateurs sur lesquels un coéquipier a mis son nom, avec l'étape de prospection. Tout le monde voit qui gère qui.","empty":"Aucun créateur réservé pour l'instant. Touche Réserver sur un créateur pour y mettre ton nom."},"contacted":{"title":"Contactés","lede":"Les noms que ton équipe marque comme traités disparaissent du tableau de tout le monde - pas de double contact.","empty":"Aucun contact pour l'instant. Marquer un créateur comme traité l'inscrit ici pour toute l'équipe."},"members":{"title":"Membres de l'équipe","member":"Membre","inviteLink":"Lien d'invitation","awaiting":"En attente d'acceptation","pending":"En attente","empty":"Juste toi pour l'instant. Invite un manager ou un recruteur pour partager le tableau."},"invite":{"placeholder":"coequipier{'@'}email.com","manager":"Manager","scout":"Recruteur","sending":"Envoi...","send":"Inviter","sent":"Invitation envoyée.","error":"Impossible d'envoyer cette invitation. Vérifie l'e-mail et réessaie."},"alerts":{"title":"Envoi des alertes","lede":"Reçois les alertes nouveaux créateurs là où ton équipe travaille déjà.","connected":"Connecté","tapToConnect":"Touche pour connecter"},"seats":"{used} places sur {cap}","roles":{"owner":"propriétaire","manager":"manager","scout":"recruteur"},"claimStatusLabel":{"claimed":"Réservé","contacted":"Contacté","responded":"A répondu","interested":"Intéressé","signed":"Signé","not_interested":"Pas intéressé"}},"unlockCard":{"paymentReceived":"Paiement reçu","unlocking":"Déblocage des noms...","namesShortly":"Les noms arrivent dans un instant.","confirming":"Confirmation de l'accès.","title":"Débloquer les noms","billingAria":"Période de facturation","weekly":"Hebdo","perWeek":"/sem.","monthly":"Mensuel","perMonth":"/mois","buy":"Acheter l'accès","note":"Déblocage immédiat. Résiliable à tout moment.","more":"Voir toutes les fonctionnalités agence"},"discord":{"aria":"Connecter Discord","close":"Fermer","eyebrow":"CONNECTER DISCORD","title":"Reçois tes classements dans {brand}","sub":"Trois étapes et les flux de classement de ton agence arrivent directement dans ton serveur.","step1":{"title":"Ajoute le bot","desc":"Ouvre l'invitation, choisis ton serveur et autorise. Tu dois être admin du serveur.","cta":"Ajouter le bot à Discord"},"step2":{"title":"Associe ta clé","desc":"Dans ton serveur, lance {command} et colle cette clé quand le bot la demande. Elle reste privée - le bot ne l'affiche jamais dans le salon."},"keyCopied":"Clé copiée","copyKey":"Copier la clé","copied":"Copié","copy":"Copier","step3":{"title":"Vois tes classements","desc":"Lance {command} pour démarrer les flux de classement, puis utilise les boutons pour afficher à la demande les créateurs, le gaming et les mouvements du 99+."},"noKey":"Aucune clé API trouvée sur ton compte pour l'instant.","keyLoadError":"Impossible de charger ta clé API - réessaie dans un instant.","loadingKey":"Chargement de ta clé...","copyFailed":"Échec de la copie - sélectionne la clé et copie-la à la main."},"telegram":{"aria":"Connecter Telegram","close":"Fermer","eyebrow":"CONNECTER TELEGRAM","title":"Reçois des alertes en direct dans {brand}","sub":"Scanne le QR code ou touche le lien - un appareil par lien.","qrAria":"QR code Telegram","qrCaption":"Scanne avec l'appareil photo du téléphone ou l'app Telegram","linkActive":"Lien actif pendant {seconds} s","open":"Ouvrir dans Telegram","copied":"Copié","copyLink":"Copier le lien","hintPc":"Sur {device} : touche Ouvrir dans Telegram.","pc":"PC","hintPhone":"Sur {device} : scanne le QR code.","phone":"téléphone","generating":"Génération...","generate":"Générer un nouveau lien","mintError":"Impossible de générer ton lien - réessaie dans un instant.","copyFailed":"Échec de la copie - sélectionne le lien et copie-le à la main."},"eligible":{"hero":{"title":"Trouve des {accent} à recruter","titleAccent":"nouveaux créateurs","sub":"Des nouveaux créateurs repérés dans les classements et les ligues, qui gagnent en ce moment dans toutes les régions actives. Copie les pseudos, vérifie l'éligibilité toi-même avec l'extension Chrome ou en collant la liste dans ton Backstage, et marque les résultats."},"preview":{"statLive":"créateurs en live en ce moment","statRegions":"régions couvertes","statEarned":"gagnés sur les classements du jour","title":"Qui gagne en ce moment, région par région","sub":"Chaque ligne ci-dessous est un vrai créateur du classement du jour. L'accès Agency révèle les pseudos, ajoute la tranche de diamants mensuels et te permet de marquer ceux que tu as déjà vérifiés.","liveCount":"{count} en live","seeBoard":"Voir le classement {region}","unlock":"Débloque les pseudos avec Agency","login":"Déjà membre ? Connecte-toi"},"gate":{"title":"Une offre Agency débloque le tableau de recrutement","sub":"Vérifie les créateurs avec l'extension ou à la main dans ton Backstage, marque les résultats et travaille un tableau de candidats propre, région par région.","cta":"Débloquer avec Agency"},"mode":{"aria":"Mode de vérification","auto":"Vérif. auto","manual":"Vérif. manuelle"},"regionAria":"Région","noRegions":"Aucune région pour l'instant","starterNote":"{starter} fonctionne avec une région à la fois. Toutes les régions d'un coup, c'est avec {global}.","upgrade":"Mettre à niveau","counts":{"eligible":"{count} marqués éligibles","premium":"{count} premium","ineligible":"{count} non éligibles","checked":"{count} vérifiés"},"hideIneligible":"Masquer non éligibles","copyEligible":"Copier les éligibles","manual":{"title":"Créateurs à vérifier","hint":"{region} - copie le lot, passe-le dans la vérification d'éligibilité de Backstage, puis marque chaque résultat.","loading":"Chargement des créateurs classés...","emptyTitle":"Tout est à jour dans {region}","emptySub":"Tu as traité tous les créateurs classés ici. Les noms vérifiés reviennent au bout de 30 jours, ou change de région ci-dessus."},"checked":{"title":"Créateurs vérifiés","loading":"Chargement de ton tableau...","allIneligibleTitle":"Tous les créateurs vérifiés ici sont marqués non éligibles","allIneligibleSub":"Désactive {toggle} pour les voir, ou change de région.","emptyTitle":"Aucun créateur vérifié dans cette région pour l'instant","emptyAuto":"Installe l'extension ci-dessus pour vérifier automatiquement.","emptyManual":"Copie un lot à gauche et marque les résultats pour remplir ce tableau."},"auto":{"title":"Vérification automatique","sub":"Installe l'extension, connecte un compte Backstage secondaire par région, et elle traite les listes classées pour toi - chaque résultat arrive sur ce tableau comme ton propre marquage d'éligibilité.","cta":"Obtenir l'extension"},"candidates":{"title":"Candidats au recrutement","sub":"Divisions inférieures en {region} - créateurs en live d'abord.","note":"La langue est détectée à partir du chat live du créateur. Elle indique le marché vers lequel il diffuse, pas un pays de compte vérifié.","loading":"Chargement des candidats...","empty":"Aucun créateur de division inférieure sur le classement {region} pour l'instant."},"seen":"vu le {date}","thisRegion":"cette région","rateLimit":"TikTok autorise environ 600 vérifications par heure. Patiente {minutes} min {seconds} s.","seo":{"title":"Trouver de nouveaux créateurs TikTok à recruter · Vérifie l'éligibilité toi-même","description":"Nouveaux créateurs TikTok repérés dans les classements et les ligues : qui gagne en ce moment, dans chaque région, classés selon leur progression. Copie les pseudos, vérifie l'éligibilité avec l'extension Chrome ou en collant la liste dans ton Backstage, et marque ce que tu as vérifié.","ogDescription":"Nouveaux créateurs repérés dans les classements et les ligues de toutes les régions actives. Copie les pseudos, vérifie l'éligibilité dans ton Backstage."},"og":{"title":"Nouveaux créateurs TikTok LIVE à recruter","subtitle":"Un tableau par région des créateurs à vérifier et recruter.","badge":"AGENCE"}}},"compare":{"ui":{"getTestKey":"Obtenir une clé de test gratuite","seePricing":"Voir les tarifs","swipeHint":"Fais glisser le tableau sur le côté pour voir toutes les colonnes","whoBuilds":"Qui développe tik.tools","breadcrumbAria":"Fil d'Ariane","breadcrumbHome":"Accueil","breadcrumbCompare":"Comparer","vsTitle":"tik.tools vs {name}","ogBadge":"COMPARATIF"},"hub":{"title":"tik.tools face aux autres","intro":"Des comparatifs factuels avec d'autres outils de données TikTok LIVE et pour agences, établis à partir des prix et fonctionnalités publiés par chaque éditeur. Chaque page est datée et cite ses sources ; les prix et limites de tik.tools sur ces pages sont lus en direct depuis nos offres.","listHeading":"Comparatifs","checked":"Vérifié le {date}","migrateNote":"Tu quittes plutôt une bibliothèque open source de connexion TikTok LIVE ? Consulte {link}.","migrateLink":"la migration en une étape","glanceHeading":"En bref","columns":{"vendor":"Éditeur","entryPrice":"Prix d'entrée","realtime":"Événements LIVE en temps réel","webhooks":"Webhooks signés","mcp":"Serveur MCP"},"glanceNote":"Résumé des pages détaillées ; chaque ligne renvoie au comparatif complet et à ses sources.","codeAndPackages":"Code et packages : {github}, {npm}, {pypi}.","seo":{"title":"Comparer tik.tools avec {toktik}, {rng} et {tikleap}","description":"Comparatifs datés et sourcés de tik.tools avec {toktik}, {rngFull} et {tikleap} : prix publiés, événements en temps réel, webhooks, MCP, SDK et outils de recrutement pour agences.","ogSubtitle":"Comparatifs datés et sourcés avec {toktik}, {rng} et {tikleap}."},"jsonLd":{"listName":"Comparatifs tik.tools"}},"detail":{"notFound":"Comparatif introuvable","checked":"Chiffres de {name} vérifiés le {date} sur ses pages publiques. Les chiffres de tik.tools sont en direct.","factsHeading":"Côte à côte","topic":"Sujet","plansAria":"Offres et prix","ourPlans":"Offres tik.tools","theirPlans":"Offres {name}","ourPlansNote":"Prix actuels et toutes les limites : {link}.","ourPlansNoteLink":"tarifs","chooseAria":"Lequel te convient","chooseUs":"Choisis tik.tools si","chooseThem":"Choisis {name} si","sourcesHeading":"Sources","ourPricing":"Tarifs tik.tools","ourDocs":"Documentation API tik.tools","correction":"Les éditeurs changent leurs prix. Si un chiffre ici n'est plus à jour, signale-le via {help} et nous le corrigerons. Autres comparatifs : {all}.","correctionHelp":"l'aide","correctionAll":"tous les comparatifs","seo":{"title":"tik.tools vs {displayName} : prix et fonctionnalités comparés","description":"{name} et tik.tools côte à côte : prix publiés, événements en temps réel, webhooks, MCP, SDK et outils pour agences. Chiffres de {name} vérifiés le {date}."}},"adoption":{"heading":"Téléchargements des packages publics","intro":"Le seul chiffre d'adoption que chaque éditeur ici publie de la même façon. Les chiffres npm couvrent {npmWindow} ({npmSite}) ; les chiffres PyPI portent sur {pypiWindow} ({pypiSite}).","npmWindow":"du {from} au {to}","pypiWindow":"les 30 derniers jours, relevés le {date}","columns":{"vendor":"Éditeur","package":"Package","downloads":"Téléchargements"},"notes":{"officialOnly":"SDK officiels uniquement ; les bibliothèques communautaires qui utilisent Euler Stream ne sont pas comptées","noSdk":"Aucun SDK publié sur npm ou PyPI"}},"migrate":{"hero":{"badge":"Migration en une étape","title":"Passe de TikTok-Live-Connector à TikTool en {accent}","titleAccent":"quelques secondes","desc":"Tu utilises déjà {pkg} ? Passe à l'API TikTool gérée en modifiant une seule ligne d'import. Mêmes noms d'événements, mêmes méthodes, aucun changement de code."},"steps":{"install":"Installe le SDK","import":"Modifie une ligne d'import","key":"Utilise ta clé API TikTools","keyNote":"Obtiens une clé gratuite sur {link} - sans carte bancaire."},"done":{"strong":"C'est tout.","text":"{strong} Tous tes gestionnaires d'événements existants fonctionnent à l'identique - {events}."},"example":{"title":"Exemple complet fonctionnel","desc":"Ce code fonctionne à l'identique avec {old} et {new}. Seul l'import change."},"compat":{"title":"Compatibilité 100 % des noms d'événements","desc":"Chaque nom d'événement TTLC fonctionne exactement pareil. Nous déclenchons aussi le nom natif TikTools en même temps.","columns":{"event":"Nom d'événement TTLC","status":"Statut","notes":"Remarques"},"notes":{"identical":"Identique","alias":"Alias de {event} - les deux se déclenchent","newIn":"Nouveau dans {version} - pris en charge","rawData":"Se déclenche avec le payload brut complet de l'événement","wsOpen":"Se déclenche à l'ouverture du WS"}},"why":{"title":"Pourquoi passer à l'API gérée ?","items":{"neverBreaks":{"title":"Ne casse jamais","desc":"TikTok met régulièrement à jour son protocole, ce qui casse les intégrations directes. TikTool gère tous les changements de protocole pour toi - zéro interruption."},"fasterDelivery":{"title":"Événements livrés plus vite","desc":"Moins de 50 ms de latence par événement grâce à notre infrastructure optimisée. Aucun décodage protobuf de ton côté."},"zeroDeps":{"title":"Zéro dépendance","desc":"Pas de protobufjs, pas de ws-client, pas de signature HTTP. Un seul package npm sans aucune dépendance externe."},"autoReconnect":{"title":"Reconnexion automatique","desc":"Reconnexion intégrée avec backoff exponentiel. Ta connexion survit aux coupures réseau et aux redémarrages des serveurs TikTok."},"dashboard":{"title":"Tableau de bord d'utilisation","desc":"Suis ton utilisation de l'API, tes connexions WebSocket et ton volume d'événements en temps réel sur tik.tools/dashboard."},"support":{"title":"Support développeur","desc":"Obtiens de l'aide via Discord, par e-mail ou dans le chat de support intégré. Temps de réponse inférieur à 4 heures."}}},"faq":{"title":"Questions fréquentes","items":{"types":{"q":"Mes types TypeScript vont-ils encore fonctionner ?","a":"Oui. {pkg} fournit des définitions TypeScript complètes pour chaque payload d'événement - {chat}, {gift}, {roomUser} et tous les autres. Si tu utilisais les types maintenus par la communauté TTLC, les nôtres sont plus stricts et suivent le vrai schéma protobuf de TikTok."},"options":{"q":"Et les options TTLC comme sessionId, processInitialData et requestPollingIntervalMs ?","a":"Les options du constructeur qui contrôlent la connexion - {sessionId}, {requestPollingIntervalMs}, {enableExtendedGiftInfo} et similaires - sont acceptées et transmises. Les options devenues inutiles (comme {processInitialData}) sont ignorées sans erreur, donc ton objet de config n'a pas besoin d'être nettoyé."},"apiKey":{"q":"TTLC fonctionne parfois sans clé API. M'en faut-il une pour TikTool ?","a":"Oui - une {signApiKey} est requise. La clé Sandbox gratuite s'obtient en 30 secondes sur {loginLink}, sans carte bancaire. Sandbox inclut 5 000 appels API/jour et 3 connexions WebSocket simultanées, de quoi développer et tester."},"protocol":{"q":"Que se passe-t-il concrètement quand TikTok met à jour son protocole ?","a":"Avec TTLC, les mises à jour périodiques de l'algorithme de signature et du schéma protobuf de TikTok font cesser de fonctionner la bibliothèque - parfois quelques heures après un déploiement TikTok, sans correctif tant que le mainteneur open source ne l'a pas patchée. Avec TikTool, les mises à jour du protocole sont gérées sur nos serveurs. Ton code ne voit aucun changement ; les événements continuent d'arriver."}}},"bonus":{"title":"Bonus : ce que TTLC n'a pas","items":{"liveFeed":{"title":"Live Feed Discovery","desc":"Recherche et découvre qui est en live sur TikTok en ce moment. Filtre par langue, région et nombre de spectateurs."},"pythonSdk":{"title":"SDK Python","desc":"SDK Python complet disponible : pip install tiktok-live-api. Même API, mêmes événements, autre langage."}}},"cta":{"title":"Prêt à migrer ?","desc":"Obtiens une clé API gratuite - sans carte bancaire. L'offre Sandbox inclut 5 000 requêtes/jour et 3 connexions WebSocket simultanées - gratuite, réservée au développement et à l'évaluation.","getKey":"Clé API gratuite","docs":"Lire la documentation"},"seo":{"title":"Migrer depuis TikTok-Live-Connector - passage en une étape à l'API TikTool","description":"Passe de tiktok-live-connector à l'API TikTool gérée en modifiant une seule ligne d'import. Mêmes noms d'événements, mêmes méthodes, aucun changement de code. Zéro maintenance.","ogTitle":"Migrer depuis TikTok-Live-Connector - en une étape","ogDescription":"Passe de tiktok-live-connector à TikTool en modifiant une seule ligne d'import. Mêmes événements, même API, aucun changement de code.","ogImageTitle":"Migre vers TikTool en une étape","ogImageSubtitle":"Remplaçant direct de TikTok-Live-Connector, sans maintenance du protocole.","ogBadge":"MIGRER"}},"vendors":{"eulerstream":{"tagline":"API TikTok LIVE avec une offre gratuite, une offre Business à 50 $/mois et des options payantes","summary":"{name} vend une API TikTok LIVE : un WebSocket qui transmet les événements TikTok LIVE en protobuf binaire, des routes REST pour le statut live, les infos de salle, les classements, les cadeaux et les agences, une API de signature, des TikTok LIVE Alerts envoyées à ton endpoint HTTP et un serveur MCP hébergé en bêta publique. {name} est une marque de son propriétaire ; tik.tools n'y est pas affilié.","plansNote":"Options listées sur chaque offre, sans prix affiché sur la page tarifs : Premium Webcast Routes, Priority API Requests, Enterprise Server Access, TikTok LIVE Signature Access, TikTok CAPTCHA Routes et TikTok Dataset Catalog Routes. Le curseur de tarifs affiche aussi des paliers de 50 000 à 200 000 requêtes/jour ; leurs prix n'apparaissent pas dans le texte de la page. Ses conditions indiquent que les limites des offres peuvent changer sans préavis.","plans":{"community":{"price":"0 $, sans carte","detail":"2 500 requêtes/jour, 25 WebSockets cloud, 5 TikTok LIVE Alerts"},"business":{"price":"50 $/mois","detail":"10 000 requêtes/jour, 100 WebSockets cloud, 50 TikTok LIVE Alerts ; essai gratuit de 7 jours"},"enterprise":{"price":"Sur devis","detail":"250 000+ requêtes/jour, 1 500+ WebSockets cloud, 1 000+ TikTok LIVE Alerts"}},"facts":{"entry":{"topic":"Option d'entrée","ours":"Clé Sandbox pour une évaluation de 7 jours, puis dès {apiBasicWeekly}/semaine","them":"Offre Community à 0 $ avec 2 500 requêtes/jour et 25 WebSockets cloud ; Business propose un essai gratuit de 7 jours"},"around10k":{"topic":"Environ 10 000 requêtes par jour","ours":"Basic, {apiBasicMonthly}/mois : {basicDailyLimit} requêtes/jour, {basicWsLimit} lives simultanés","them":"Business, 50 $/mois : 10 000 requêtes/jour, 100 WebSockets cloud"},"higherVolumes":{"topic":"Volumes plus élevés","ours":"Offres Pro, Ultra et Agency en libre-service avec prix publiés, jusqu'à {agencyDailyLimit} requêtes/jour et {agencyWsLimit} flux simultanés","them":"Enterprise sur devis pour 250 000+ requêtes/jour"},"eventFormat":{"topic":"Format des événements live","ours":"Événements JSON décodés, {eventTypes} types d'événements WebSocket documentés","them":"Transmet tous les événements TikTok LIVE en protobuf binaire, à décoder avec son SDK ou une bibliothèque communautaire"},"connectionLifetime":{"topic":"Durée de vie d'une connexion live","ours":"12 heures sur Pro, 24 heures sur Ultra et Agency","them":"8 heures, d'après ses codes de fermeture WebSocket"},"alerts":{"topic":"Alertes et webhooks","ours":"Signés HMAC sur chaque offre payante : début et fin de live ; pic de spectateurs et cadeaux de grande valeur sur Ultra et Agency ; paliers de followers et alertes de recrutement sur Agency","them":"TikTok LIVE Alerts envoyées à ton endpoint HTTP : 5, 50 ou 1 000+ selon l'offre ; les événements déclencheurs ne sont pas listés sur sa page de cibles d'alertes"},"mcp":{"topic":"Serveur MCP pour assistants IA","ours":"tiktok-live-mcp sur npm, 11 outils, fonctionne dans Claude, Cursor et VS Code","them":"Endpoint MCP hébergé en bêta publique (\"pas encore prêt pour la production\"), 19 outils pour la modération et les classements"},"sdks":{"topic":"SDK","ours":"Node.js/TypeScript et Python","them":"TypeScript, Python, C#, Java et Go, générés à partir de sa spec OpenAPI, plus un SDK WebSocket"},"rankings":{"topic":"Classements","ours":"44 régions de classement avec classements du jour, de ligue, gaming et Popular LIVE","them":"Classements par pays, par ligue et par diamants gagnés ; le nombre de régions n'est pas indiqué"},"agencyTools":{"topic":"Outils pour agences","ours":"Offre Agency : flux de recrutement de créateurs et vérificateur d'éligibilité Backstage","them":"Recherche Agency Registry parmi 100 000+ agences TikTok LIVE, et routes API de catalogue d'agences"}},"chooseThem":{"freePlan":"Tu veux une offre gratuite sans limite de durée pour de petits volumes.","moreWebsockets":"Tu as besoin de plus de WebSockets simultanés autour de 10 000 requêtes par jour.","otherLanguages":"Tu développes en C#, Java ou Go et veux un SDK officiel, ou tu veux les événements protobuf bruts."},"chooseUs":{"decodedJson":"Tu veux des événements JSON décodés et des webhooks signés sans écrire de décodeur protobuf.","publishedPrices":"Tu as besoin de prix publiés en libre-service au-delà de 10 000 requêtes par jour.","agencyTools":"Tu gères une agence et as besoin d'outils de recrutement et d'éligibilité.","rankings":"Tu as besoin de classements sur 44 régions avec classements du jour, de ligue, gaming et Popular LIVE."},"glance":{"entry":"Offre gratuite ; Business 50 $/mois","realtime":"WebSocket, tous les événements en protobuf binaire","webhooks":"LIVE Alerts : 5 / 50 / 1 000+ selon l'offre","mcp":"Hébergé, bêta publique"},"sources":{"pricing":"Tarifs {name}","websocketDocs":"Documentation WebSocket {name}","eventTypes":"Types d'événements {name}","alertTargets":"Cibles d'alertes LIVE {name}","mcp":"MCP {name}","terms":"Conditions {name}"}},"toktik":{"tagline":"Site de données TikTok LIVE et API développeur avec des offres facturées en crédits","summary":"{name} publie des classements TikTok LIVE, des classements de donateurs, un annuaire d'agences et un vivier de recrutement, et vend une API développeur REST et WebSocket. Ses offres sont mensuelles, adossées à un portefeuille de crédits prépayés, avec des flux en temps réel facturés à la minute par salle.","plansNote":"Les prix concernent le module Live. Le module Lookup Data ajoute de 5 $ à 79 $/mois, ou de 18 $ à 279 $/mois en pack. Une lecture en cache coûte 1 crédit ; une requête fraîche vers TikTok coûte 1 250 crédits ; les flux en temps réel sont facturés à la minute par salle.","plans":{"free":{"price":"0 $/mois","detail":"5 000 requêtes/jour, lectures en cache uniquement, classements masqués, historique de 7 jours"},"starter":{"price":"15 $/mois","detail":"15 000 requêtes/jour, top 3 sans masquage, historique de 90 jours, export CSV"},"pro":{"price":"39 $/mois","detail":"100 000 requêtes/jour, classements sans masquage, historique de 180 jours, 3 places"},"scale":{"price":"99 $/mois","detail":"400 000 requêtes/jour, classements de ligue sans masquage, export XLSX, historique de 12 mois, 5 places"},"agency":{"price":"249 $/mois","detail":"1 200 000 requêtes/jour, outils de roster, pseudos des recrues, digest créateurs, 10 places ; vendu via leur équipe commerciale"}},"facts":{"pricingModel":{"topic":"Modèle de prix","ours":"Offres hebdomadaires ou mensuelles à prix fixe avec plafonds de requêtes par jour et de flux simultanés. Les lives ne sont pas facturés à la minute.","them":"Offres mensuelles plus un portefeuille de crédits prépayés. Chaque requête fraîche vers TikTok coûte 1 250 crédits et les flux en temps réel sont facturés à la minute par salle."},"eventTypes":{"topic":"Types d'événements en temps réel","ours":"{eventTypes} types d'événements WebSocket documentés","them":"15 types d'événements, d'après sa référence temps réel"},"connecting":{"topic":"Connexion à une salle live","ours":"Connexion par pseudo avec ta clé API ; jusqu'à {proWsLimit} flux simultanés sur Pro et {agencyWsLimit} sur Agency","them":"Génère un jeton à courte durée de vie, puis abonne-toi aux créateurs via un seul socket ; chaque abonnement indique en file d'attente, actif ou hors ligne"},"webhooks":{"topic":"Webhooks","ours":"Signés HMAC sur chaque offre payante : début et fin de live ; pic de spectateurs et cadeaux de grande valeur sur Ultra et Agency ; paliers de followers et alertes de recrutement sur Agency","them":"Webhooks et alertes listés sur chaque offre"},"gifterFirehose":{"topic":"Flux donateurs en direct","ours":"Inclus sur Agency","them":"Annoncé comme à venir sur Agency"},"mcp":{"topic":"Serveur MCP pour assistants IA","ours":"tiktok-live-mcp sur npm, 11 outils, fonctionne dans Claude, Cursor et VS Code","them":"Aucun listé sur ses pages tarifs ou développeur"},"sdks":{"topic":"SDK","ours":"Node.js/TypeScript et Python","them":"JavaScript et Python"},"agencyDirectory":{"topic":"Annuaire d'agences","ours":"Les agences revendiquent une fiche et reçoivent des messages privés ; les coordonnées des agences ne sont pas republiées","them":"Annuaire public des agences TikTok LIVE ; les coordonnées se débloquent avec l'offre Agency"},"eligibility":{"topic":"Éligibilité des créateurs","ours":"L'offre Agency inclut une extension Chrome qui vérifie l'éligibilité agence directement dans ton Backstage","them":"Pseudos des recrues et marquages sur l'offre Agency"},"exports":{"topic":"Exports","ours":"Copie de classements entiers dans le presse-papiers sur Ultra et Agency","them":"CSV dès Starter, XLSX dès Scale"},"entry":{"topic":"Option d'entrée","ours":"Clé Sandbox pour une évaluation de 7 jours, puis dès {apiBasicWeekly}/semaine","them":"Offre gratuite : 5 000 lectures en cache/jour, classements masqués, sans carte"}},"chooseThem":{"freeTier":"Tu veux une offre sans frais pour de petits volumes de lectures en cache.","exports":"Tu as besoin d'exports CSV ou XLSX et d'une profondeur d'historique annoncée sur les petites offres.","creditWallet":"Tu préfères un seul portefeuille de crédits mensuel partagé entre une app web et une API."},"chooseUs":{"noPerMinute":"Tu suis beaucoup de salles live à la fois et ne veux pas de facturation à la minute.","fullEvents":"Tu as besoin de toute la gamme d'événements LIVE, pas d'un sous-ensemble.","oneVendor":"Tu veux des webhooks signés, un serveur MCP et des SDK chez un seul éditeur.","eligibility":"Ton agence vérifie l'éligibilité des créateurs dans son propre Backstage."},"glance":{"entry":"Offre gratuite ; payant dès 15 $/mois","realtime":"WebSocket, 15 types d'événements, facturé à la minute par salle","webhooks":"Listés sur chaque offre","mcp":"Aucun listé"},"sources":{"pricing":"Tarifs {name}","realtime":"Référence temps réel {name}","developerApi":"API développeur {name}"}},"rngrow":{"tagline":"Leads de recrutement par pays pour agences TikTok LIVE, avec options de prospection par IA","summary":"{displayName} vend un accès Radar par pays aux créateurs TikTok LIVE qu'il a vérifiés comme libres de rejoindre une agence, avec les données de gains en diamants. AI Recruiter et AI Manager sont vendus en plus, et l'accès API est fourni avec chaque pays Radar.","plansNote":"Prix TTC. Marchés listés : Roumanie, Royaume-Uni, États-Unis, Allemagne, Italie, France, Pologne, Espagne, Australie, MENA et LATAM, avec l'Asie centrale annoncée prochainement. Un essai Radar de 1 jour sur un pays est proposé une fois par compte, après validation.","plans":{"radar":{"price":"1 599 €/mois par pays","detail":"Leads de créateurs recrutables pour un marché ; premier mois à 799 € ; accès API inclus (60 requêtes/min, 10 000 requêtes/jour)"},"radarWeekly":{"name":"Radar hebdo","price":"399 €/semaine par pays","detail":"Le même accès Radar facturé à la semaine"},"additionalCountry":{"name":"Pays supplémentaire","price":"1 199 €/mois chacun","detail":"Un deuxième marché ajouté à une offre Radar existante"},"dayPass":{"price":"49 €","detail":"24 heures d'accès à un marché"},"aiRecruiter":{"price":"De 299 € à 1 199 €/mois","detail":"De 1 500 à 25 000 réponses IA ; nécessite une offre Radar active dans chaque pays"},"aiManager":{"price":"De 299 € à 1 199 €/mois","detail":"Coaching de créateurs via WhatsApp, décompté en réponses IA"}},"facts":{"oneMarket":{"topic":"Un marché pendant un mois","ours":"{agencyGlobalMonthly}/mois couvre toutes les régions que nous classons","them":"1 599 €/mois par pays (799 € le premier mois)"},"weekly":{"topic":"Option hebdomadaire","ours":"{agencyGlobalWeekly}/semaine, toutes les régions","them":"399 €/semaine par pays"},"moreMarkets":{"topic":"Plus de marchés","ours":"Inclus","them":"1 199 €/mois par pays supplémentaire"},"findingCreators":{"topic":"Trouver des créateurs libres","ours":"Nouveaux créateurs qui apparaissent dans les classements régionaux et les ligues, classés selon leur progression ; tu confirmes l'éligibilité toi-même","them":"{name} vérifie l'éligibilité agence des créateurs et livre les leads dans son tableau de bord"},"eligibility":{"topic":"Vérification d'éligibilité","ours":"L'extension Chrome vérifie l'éligibilité dans ton propre Backstage, ou colle une liste en masse directement dedans","them":"Effectuée par {name} avant la livraison des leads"},"outreach":{"topic":"Prospection","ours":"Non automatisée ; ton équipe contacte les créateurs","them":"AI Recruiter envoie premiers messages, réponses et invitations depuis ton Backstage, dès 299 €/mois en plus de Radar"},"api":{"topic":"API incluse dans l'offre","ours":"{agencyDailyLimit} requêtes/jour, {agencyRateLimit}/min, {agencyWsLimit} lives simultanés","them":"10 000 requêtes/jour et 60/min par pays"},"diamonds":{"topic":"Suivi des diamants","ours":"Classements du jour, de ligue, gaming et Popular LIVE avec diamants, pages créateurs et flux donateurs en direct","them":"Les leads incluent les données de gains en diamants ; classements publics de donateurs et de ligues"},"realtime":{"topic":"Temps réel et alertes","ours":"Flux WebSocket ({eventTypes} types d'événements WebSocket documentés) et webhooks signés, alertes de recrutement comprises","them":"API REST avec signaux HOT pour les créateurs dont les cadeaux explosent ; ni flux d'événements de salle live ni webhooks dans sa documentation API"},"devTools":{"topic":"Outils développeur","ours":"SDK Node.js et Python, serveur MCP","them":"SDK JavaScript ({'@'}rngrow/sdk)"}},"chooseThem":{"checkedLeads":"Tu recrutes dans un ou deux pays et veux des leads déjà vérifiés pour toi.","autoOutreach":"Tu veux une prospection envoyée automatiquement depuis ton Backstage."},"chooseUs":{"severalRegions":"Tu recrutes dans plusieurs régions et veux un seul prix pour toutes.","ownTeam":"Ton équipe vérifie elle-même l'éligibilité dans ton propre Backstage et prend contact.","allInOne":"Tu as aussi besoin du suivi des diamants, d'alertes live, d'une API, de webhooks ou d'un serveur MCP dans la même offre."},"glance":{"entry":"1 599 €/mois par pays (799 € le premier mois)","realtime":"API REST avec signaux HOT ; aucun flux d'événements de salle live listé","webhooks":"Aucun dans sa documentation API","mcp":"Aucun listé"},"sources":{"pricing":"Tarifs {name}","aiRecruiter":"{name} AI Recruiter","apiDocs":"Documentation API {name}"}},"tikleap":{"tagline":"Site public de classements TikTok LIVE avec une API REST en packs hebdomadaires","summary":"{name} publie des classements TikTok LIVE par pays, des ligues, des classements gaming et des données donateurs, et vend un accès API REST en packs hebdomadaires à paiement unique. Il propose aussi un endpoint MCP hébergé qui utilise la même clé API.","plansNote":"Les packs sont des paiements uniques de 7 jours, pas des abonnements. Les recherches de créateurs uniques comptent dans un plafond séparé de créateurs/jour.","plans":{"basic":{"price":"5 $/semaine","detail":"11 000 requêtes/jour, 600 créateurs/jour, données actuelles uniquement, 60 requêtes/min"},"pro":{"price":"10 $/semaine","detail":"77 000 requêtes/jour, 2 200 créateurs/jour, 30 jours d'historique, 180 requêtes/min"},"ultra":{"price":"25 $/semaine","detail":"320 000 requêtes/jour, 22 000 créateurs/jour, 60 jours d'historique, 600 requêtes/min"}},"facts":{"weeklyPrice":{"topic":"Prix hebdomadaire (Basic / Pro / Ultra)","ours":"{apiBasicWeekly} / {apiProWeekly} / {apiUltraWeekly}","them":"5 $ / 10 $ / 25 $"},"requestsPerDay":{"topic":"Requêtes par jour","ours":"{basicDailyLimit} / {proDailyLimit} / {ultraDailyLimit}","them":"11 000 / 77 000 / 320 000"},"requestsPerMinute":{"topic":"Requêtes par minute","ours":"{basicRateLimit} / {proRateLimit} / {ultraRateLimit}","them":"60 / 180 / 600"},"billing":{"topic":"Facturation","ours":"Abonnement hebdomadaire ou mensuel","them":"Packs de 7 jours à paiement unique"},"realtime":{"topic":"Événements LIVE en temps réel","ours":"Flux WebSocket pour n'importe quel créateur en live, {eventTypes} types d'événements WebSocket documentés, de {basicWsLimit} à {ultraWsLimit} flux simultanés","them":"Uniquement des endpoints REST dans sa documentation API (classements, créateurs, lives et événements de live)"},"webhooks":{"topic":"Webhooks","ours":"Signés HMAC sur chaque offre payante : début et fin de live ; pic de spectateurs et cadeaux de grande valeur sur Ultra et Agency ; paliers de followers et alertes de recrutement sur Agency","them":"Aucun dans sa documentation API"},"mcp":{"topic":"Serveur MCP","ours":"tiktok-live-mcp, s'exécute en local via npx","them":"Endpoint MCP hébergé via HTTP"},"sdks":{"topic":"SDK","ours":"Node.js/TypeScript et Python","them":"Aucun publié sur npm ou PyPI"},"boards":{"topic":"Classements","ours":"Classements régionaux sur chaque offre (entièrement sans masquage dès Pro) ; classements de ligue entièrement sans masquage dès Ultra ; classements gaming, Popular LIVE et équipes sur Agency","them":"Classements, ligues, gaming et cadeaux en temps réel dans chaque pack"},"agencyTools":{"topic":"Outils pour agences","ours":"Offre Agency : flux de recrutement, vérificateur d'éligibilité Backstage, flux donateurs en direct","them":"Aucun outil de recrutement pour agences listé"}},"chooseThem":{"restOnly":"Tu as seulement besoin des données de classements et de ligues en REST au prix hebdomadaire le plus bas.","hostedMcp":"Tu veux un endpoint MCP hébergé, sans rien à installer.","oneTime":"Tu préfères des packs hebdomadaires à paiement unique plutôt qu'un abonnement."},"chooseUs":{"realtime":"Tu as besoin d'événements en temps réel des salles live (chat, cadeaux, battles) via WebSocket.","webhooksSdks":"Tu veux des webhooks signés et des SDK pour Node.js et Python.","agencyTools":"Tu gères une agence et as besoin d'outils de recrutement et d'éligibilité."},"glance":{"entry":"5 $/semaine","realtime":"REST uniquement","webhooks":"Aucun dans sa documentation API","mcp":"Endpoint hébergé"},"sources":{"apiPackages":"Packs API {name}","apiDocs":"Documentation API {name}"}}},"ours":{"ownership":"tik.tools est un produit indépendant. Ce n'est ni un revendeur, ni une surcouche, ni une marque d'un autre fournisseur de données TikTok LIVE, et il n'est affilié ni à TikTok ni à ByteDance. tik.tools gère sa propre collecte de données et développe et exploite sa propre API WebSocket, ses webhooks live signés HMAC, son serveur MCP (tiktok-live-mcp) et ses SDK ({'@'}tiktool/live et tiktok-live-api).","glance":{"entry":"Dès {apiBasicWeekly}/semaine ; Agency {agencyGlobalMonthly}/mois, toutes les régions","realtime":"WebSocket, {eventTypes} types d'événements","webhooks":"Signés HMAC, sur chaque offre payante","mcp":"Oui, tiktok-live-mcp sur npm"},"plans":{"basic":{"price":"{apiBasicWeekly}/semaine ou {apiBasicMonthly}/mois","detail":"{basicDailyLimit} requêtes/jour, {basicWsLimit} lives simultanés, webhooks signés"},"pro":{"price":"{apiProWeekly}/semaine ou {apiProMonthly}/mois","detail":"{proDailyLimit} requêtes/jour, {proWsLimit} lives simultanés, classements régionaux entièrement sans masquage"},"ultra":{"price":"{apiUltraWeekly}/semaine ou {apiUltraMonthly}/mois","detail":"{ultraDailyLimit} requêtes/jour, {ultraWsLimit} lives simultanés, classements de ligue entièrement sans masquage"},"agency":{"price":"{agencyGlobalWeekly}/semaine ou {agencyGlobalMonthly}/mois","detail":"Toutes les régions que nous classons, flux de recrutement de créateurs, vérificateur d'éligibilité Backstage, classements gaming et Popular LIVE, flux donateurs en direct, {agencyDailyLimit} requêtes/jour, {agencyWsLimit} lives simultanés"}}}},"agency":{"seo":{"title":"Outils pour agences TikTok LIVE - repérage de créateurs, listes à copier, infos donateurs {'|'} tik.tools","description":"Agency Starter et Agency Global pour les agences TikTok LIVE : listes à copier-coller, pipeline de recrutement, places d'équipe, alertes de repérage Telegram + Discord. Global ajoute la santé du roster, le repérage dans toutes les régions, les infos top donateurs et l'API niveau Ultra.","ogImageTitle":"Outils agence TikTok LIVE","ogImageSubtitle":"Repère des créateurs, copie des listes et lis les infos donateurs.","ogImageBadge":"AGENCE"},"hero":{"kicker":"Pour les agences TikTok LIVE","openWord":"Ouvrir {label}","words":{"creatorScouting":"Repérage de créateurs","topGifters":"Top donateurs","newCreators":"Nouveaux créateurs","rosterApi":"API roster","seats":"{count} places"},"sub":"Repérage de créateurs, listes à copier-coller, infos top donateurs, {seats} places de manager sur chaque offre et limites API sur mesure - avec deux offres agence, {starterPlan} et {globalPlan}.","cta":{"newCreators":"Nouveaux créateurs","manageTeam":"Gérer l'équipe","getAccess":"Obtenir l'accès Agency","chat":"Discuter avec nous","billing":"Facturation","openDashboard":"Tableau de bord"},"trust":{"aria":"L'agence en chiffres","regions":"{count} régions","seats":"{count} places incluses sur chaque offre","api":"API Agency Global"}},"rosterTabs":{"aria":"Listes agence","tabs":{"creators":"Créateurs","gifters":"Top donateurs","eligible":"Nouveaux créateurs"},"meta":{"creators":{"title":"Top créateurs, toutes régions","cta":"Voir tous les créateurs"},"gifters":{"title":"Top donateurs","cta":"Voir tous les donateurs"},"eligible":{"title":"Nouveaux créateurs à repérer","cta":"Voir tous les nouveaux créateurs"}},"livePill":"{count} en live","copyAllAria":{"creators":"Copier les {count} créateurs","gifters":"Copier les {count} donateurs"},"copiedCount":"{count} copiés","copyAllCount":"Tout copier ({count})","liveNow":"En live","copyOneAria":"Copier {name}","empty":"Chargement de la liste...","unlockMore":{"creators":"autres vrais créateurs - débloque tous les noms + tout copier","gifters":"autres vrais donateurs - débloque tous les noms + tout copier"},"fallbackName":"créateur","perThirtyDays":"{amount} / 30 j"},"valueModules":{"kicker":"Tout ce dont une agence a besoin","title":"Deux offres. Toute la boîte à outils.","seats":{"tag":"Équipe","title":"{count} places sur chaque offre, sans surcoût","body":"Toute ton équipe de managers utilise l'app avec un seul abonnement agence, {starterPlan} ou {globalPlan}.","caption":"{count} managers sur Starter comme sur Global"},"api":{"tag":"Développeur","title":"Limites API sur mesure","body":"{starterPlan} inclut une API niveau Pro ; {globalPlan} débloque l'API niveau Ultra + l'accès WebSocket - le haut de la gamme.","rungs":{"entry":"Entrée","production":"Production","included":"Inclus"}},"copy":{"tag":"Workflow","title":"Listes à copier-coller","body":"Créateurs, top donateurs, candidats à recruter - rassemblés dans un panier et copiés en un clic.","copied":"{count} copiés","copyAll":"Tout copier ({count})"},"alerts":{"tag":"Alertes","title":"Alertes de repérage","body":"Les flux de classement Telegram + Discord envoient des noms frais directement à ton équipe - copie-les dès qu'ils tombent.","feedHead":"#rank-feed - créateurs en hausse","copyAria":"Copier {handle}"},"reveal":{"tag":"Démasquer","title":"Du masqué au vrai, instantanément","body":"La version gratuite affiche des noms masqués. Agency révèle chaque vrai pseudo à copier.","hintTouch":"Révélé automatiquement pour les agences","hintHover":"Survole pour démasquer"},"constellation":{"tag":"Tout inclus","title":"Global : toutes les fonctionnalités","body":"{globalPlan} : Nouveaux créateurs, infos donateurs, alertes, API Ultra, copie groupée, tableau de bord, {seats} places - un seul prix. {starterPlan} couvre le tableau de bord, le recrutement et l'équipe pour moins cher.","satellites":{"talents":"Talents","gifters":"Donateurs","alerts":"Alertes","ultraApi":"API Ultra","bulkCopy":"Copie groupée","teamSeats":"Places d'équipe"}}},"pricing":{"seo":{"title":"Accès Agency pour agences TikTok LIVE - repérage, listes à copier, infos donateurs {'|'} tik.tools","description":"Agency Starter et Agency Global : listes à copier-coller, pipeline de recrutement, places d'équipe, alertes de repérage Telegram + Discord. Global ajoute la santé du roster, le repérage dans toutes les régions, les infos top donateurs et l'API niveau Ultra."},"kicker":"Offres agence","title":"Commence avec le tableau de bord. Débloque tout avec Global.","sub":"{starterPlan} gère ton roster, ton pipeline et ton équipe avec {seats} places. {globalPlan} ajoute la santé du roster, le flux de recrutement toutes régions, tous les classements réservés à Global, les infos donateurs et une capacité API au-delà d'Ultra.","badges":{"monthly":"MENSUEL","weekly":"HEBDO","save":"économise {percent} %"},"perMonth":"/mois","perWeek":"/semaine","billed":{"monthly":"Facturé chaque mois","monthlyOnly":"Facturé chaque mois - mensuel uniquement","weekly":"Facturé chaque semaine - environ {price} par mois","monthlyOneCharge":"Facturé chaque mois - un seul prélèvement, pas quatre"},"hooks":{"starter":"Le tableau de bord agence et une API niveau Pro. Inclus, sans crédits. Résiliable à tout moment.","weekly":"Infos complètes sans masquage + {seats} places + API Ultra + alertes + copie groupée. Résiliable à tout moment.","monthly":"Le même accès complet, facturé au mois pour le meilleur tarif. Résiliable à tout moment."},"globalAdds":"{plan} ajoute","opening":"Ouverture...","processing":"Traitement...","confirming":"Confirmation du paiement...","preparing":"Préparation du paiement sécurisé...","cta":{"onPlanManage":"Tu as {plan} - Gérer l'offre","switchInBilling":"Passer à {plan} dans Facturation","onAgencyManage":"Tu as Agency - Gérer l'offre","get":"Obtenir {plan}","upgradeToGlobal":"Passer à Global","getAgency":"Obtenir Agency","everyMonth":"{action} - {price} par mois","everyWeek":"{action} - {price} par semaine"},"fine":{"monthly":"Renouvellement mensuel. {link}.","weekly":"Renouvellement hebdomadaire. {link}."},"manageInBilling":"Gérer ou résilier dans Facturation","crosslink":"Pas une agence ? Voir les tarifs développeur","modal":{"close":"Fermer","badgeStarterMonthly":"AGENCY STARTER MENSUEL","badgeWeekly":"AGENCY HEBDO","badgeMonthly":"AGENCY MENSUEL"},"success":{"title":"Accès débloqué","body":"Les infos agence sont actives. Va sur ton tableau de bord.","cta":"Tableau de bord"},"order":{"credit":"Crédit pour le temps non utilisé sur ton offre actuelle","tax":"Taxes","creditedNextInvoice":"Crédité sur ta prochaine facture","chargedToday":"Débité aujourd'hui","totalToday":"Total aujourd'hui","labelWeekly":"{plan} hebdo","labelMonthly":"{plan} mensuel"},"paypalSwap":{"opening":"Ouverture de PayPal...","continue":"Continuer vers PayPal","footnote":"Valide la nouvelle offre dans PayPal. Ton offre PayPal actuelle est annulée dès la validation, tu n'es donc jamais facturé deux fois."},"proration":{"confirmChange":"Confirmer le changement - {amount} aujourd'hui","confirmUpgrade":"Confirmer le passage - {amount} aujourd'hui","footnote":"Débité sur ta carte enregistrée. Un seul abonnement, pas de double facturation - ton offre actuelle est créditée."},"business":{"label":"Achat professionnel","companyName":"Nom de l'entreprise"},"methods":{"card":"S'abonner par carte","cardSub":"Visa - Mastercard - Amex - Google Pay - Apple Pay","once":"Paiement unique - sans renouvellement automatique","onceSub":"Alipay - WeChat - Crypto - Carte - iDEAL - Pix - OXXO","paypal":"S'abonner avec PayPal","paypalSub":"Solde PayPal - carte liée - s'ouvre dans une fenêtre","footnote":"Sécurisé par Stripe et PayPal - résiliable à tout moment depuis ta page Facturation Agency"},"back":"Retour","oneTimeTag":"paiement unique","pay":"Payer {amount}","chooseAnother":"Choisir un autre moyen","errors":{"upgradeFailed":"Le passage a échoué. Ton offre n'a pas changé.","noApprovalLink":"PayPal n'a pas renvoyé de lien d'approbation. Réessaie.","paypalChangeFailed":"Impossible de lancer le changement PayPal. Ton offre n'a pas changé.","initFailed":"Impossible d'initialiser le paiement. Réessaie.","checkoutFailed":"Échec du paiement","paymentFailed":"Le paiement a échoué."},"features":{"global":{"realUsernames":"Vrais pseudos + URL de profil (toutes les régions actives)","copyAll":"Copie n'importe quel nom + tout copier sur chaque classement","newCreators":"Outil Nouveaux créateurs (liste complète)","popularLive":"Popular LIVE - top créateurs en temps réel par région","gifterIntel":"Infos top donateurs + graphe entre créateurs","seats":"{seats} places de manager, un seul prix","ultraApi":"API niveau Ultra + accès WebSocket","alerts":"Alertes de repérage Telegram + Discord","bulkCopy":"Copie groupée + tableau de bord agence"},"starter":{"apiRequests":"Requêtes API niveau Pro ({dailyRequests} par jour)","wsRooms":"{wsConnections} salles live WebSocket","accountChecks":"{accountChecks} vérifications de compte par jour","boards":"Classements standard, de ligue et gaming sans masquage","gifterBoard":"Classement des donateurs sans masquage pour ta région","dashboard":"Tableau de bord agence : roster, pipeline, recrutement par région, base donateurs","digest":"Digest créateurs, alertes de repérage et page équipe","seats":"{seats} places incluses","backstage":"Extension d'éligibilité Backstage ({backstageChecks} vérifications par jour)","noCredits":"Inclus, aucun crédit à acheter"},"globalAdds":{"rosterHealth":"Santé du roster, alertes de santé et digest santé du roster","allRegions":"Flux de recrutement et de créateurs éligibles toutes régions","shoppingWeekly":"Classements shopping et hebdomadaires","gifterFirehose":"Classement mondial des donateurs, flux donateurs en continu et infos top donateurs","hotSpikes":"Pics soudains et sorties de ligue","popularLive":"Popular LIVE, créateurs en hausse et autres classements réservés à Global","unlimitedBackstage":"Vérifications d'éligibilité Backstage illimitées","ultraPlus":"Capacité API au-delà d'Ultra : {wsConnections} salles WebSocket, {accountChecks} vérifications de compte par jour"}}},"trialModal":{"close":"Fermer","eyebrow":"GLOBAL AGENCY","next":"Suivant","back":"Retour","step1":{"title":"Quelle est ton agence ?","sub":"Accès complet Agency Global. Consulte les tarifs pour choisir une offre.","label":"Saisis le nom de ton agence","placeholder":"ex. Northstar Talent"},"step2":{"title":"Quelle région ?","sub":"La région où ton agence repère et travaille.","label":"Saisis ta région","placeholder":"ex. États-Unis, MENA, Asie du Sud-Est","activating":"Activation...","activate":"Activer 20 minutes"},"success":{"title":"C'est parti","sub":"20 minutes d'accès complet débloquées."},"upsell":{"eyebrow":"ACCÈS AGENCY","title":"Garde l'accès complet","cta":"Voir les pass hebdo et mensuel"},"errors":{"generic":"Une erreur s'est produite. Réessaie.","sessionExpired":"Ta session a expiré. Reconnecte-toi."}},"onboarding":{"aria":"Prise en main de l'évaluation agence","skip":"Passer","back":"Retour","next":"Suivant","finish":"Commencer à explorer","stepOf":"ÉTAPE {step} SUR {total}","welcome":{"eyebrow":"GLOBAL AGENCY ACTIF","title":"Bienvenue dans ton {accent}","accentTrial":"évaluation agence","accentAccess":"accès agence","subTrial":"L'accès complet Agency Global est actif sur ton compte dès maintenant - chaque créateur sans masquage, chaque donateur, chaque recrue en hausse. Le compte à rebours a démarré, alors plongeons directement dans les données.","subPaid":"L'accès complet Agency Global est actif sur ton compte - chaque créateur sans masquage, chaque donateur, chaque recrue en hausse, dans les {count} régions. Plongeons directement dans les données.","cta":"C'est parti","clockLabel":"FIN DE L'ACCÈS DANS","clockAria":"Temps restant","clockNote":"Accès complet jusqu'à la fin du compte à rebours","paidLabel":"ACCÈS COMPLET DÉBLOQUÉ","paidNote":"Chaque région, chaque créateur, sans masquage - pour toute ton équipe."},"copy":{"title":"Copie n'importe quel créateur, {accent}","accent":"partout","sub":"Chaque {'@'}pseudo sur tik.tools est maintenant à toi. Ouvre Nouveaux créateurs, un classement, une page donateur - un tap copie le pseudo directement dans ton workflow Backstage. Pas de masque, pas de nom générique.","live":"LIVE","copied":"copié","copy":"copier"},"rising":{"title":"Vois qui est {accent}","accent":"en hausse","sub":"Découvre les talents montants avant tout le monde - plus l'accès complet aux top donateurs, aux classements gaming par jeu et à chaque créateur entré dans un Top 99+ régional aujourd'hui mais pas en live en ce moment. Les recrues cachées derrière le seuil.","cutoff":"SEUIL TIKTOK","peak":"pic #{rank}","features":{"rising":{"label":"Créateurs en hausse","desc":"La vitesse plutôt que le volume - les séries chaudes dès qu'elles démarrent."},"gifters":{"label":"Top donateurs","desc":"Les vraies baleines derrière chaque créateur, sans masquage."},"gaming":{"label":"Classements gaming","desc":"Par région, par jeu, sur tous les titres."}}},"team":{"title":"Fais bosser ton équipe {accent}","accent":"toute la journée","sub":"Envoie les mêmes flux de repérage directement dans Discord et Telegram pour que tes managers aient des listes à copier-coller là où ils travaillent.","installDiscord":"Installer le bot Discord","opening":"Ouverture...","telegram":"Obtenir l'accès Telegram","commandsHead":"Trois étapes dans ton serveur","emptyHint":"Appuie sur {button} pour ouvrir l'invitation, puis les trois commandes de configuration apparaissent ici.","steps":{"add":{"cmd":"Ajouter le bot","desc":"Choisis ton serveur dans l'onglet d'invitation qui vient de s'ouvrir, puis autorise."},"setup":{"desc":"Associe ta clé API tik.tools pour que le bot réponde avec les données de ton agence."},"rank":{"desc":"Recherche n'importe quel créateur - puis ajoute /watch et /roster pour ton équipe."}},"tgError":"Impossible de générer un lien personnel - le lien public du bot ci-dessus fonctionne toujours."}},"creatorDigest":{"seo":{"title":"Digest créateurs - nouveaux créateurs TikTok à recruter, par e-mail {'|'} tik.tools","description":"Reçois par e-mail les nouveaux créateurs TikTok LIVE repérés dans les classements et les ligues de tes régions : pseudos à copier-coller plus un fichier CSV, toutes les {hours} heures jusqu'à une fois par semaine, dans {count} régions. Uniquement les créateurs dont le meilleur mois des {months} derniers mois est resté sous {cap} diamants ; tu vérifies l'éligibilité.","name":"Digest créateurs","ogImageSubtitle":"Nouveaux créateurs à recruter dans tes régions, envoyés par e-mail en pseudos + CSV.","ogImageBadge":"AGENCE"},"jsonLd":{"breadcrumbHome":"Accueil"},"getStarter":"Obtenir {plan} - {price}/mois","hero":{"kicker":"Exclusif agences","title":"Les nouveaux créateurs à recruter dans tes régions. {highlight}","titleHighlight":"Dans ta boîte mail.","sub":"Le Digest créateurs t'envoie les nouveaux créateurs repérés dans les classements et les ligues de tes régions, en pseudos à copier-coller plus un fichier CSV, prêts pour ta propre vérification d'éligibilité. Toutes les 6 heures, chaque jour ou chaque semaine - à toi de choisir.","setup":"Configurer ton digest","sample":"Voir un exemple d'e-mail"},"facts":{"aria":"Le digest en bref","regions":"régions au choix","hoursValue":"{hours} h","cadence":"fréquence la plus rapide, jusqu'à hebdomadaire","sheet":"fichier joint à chaque e-mail","ceiling":"plafond de diamants sur le meilleur mois, {months} derniers mois"},"features":{"kicker":"Ce que tu reçois","title":"De nouveaux talents à recruter, selon ton rythme","lede":"Les mêmes candidats que sur la page {link} : des créateurs qui gagnent en ce moment et dont le meilleur mois des {months} derniers mois est resté sous {cap} diamants, la règle d'invitation de TikTok. Le digest livre les noms ; tu vérifies l'éligibilité avec l'extension Chrome ou en collant la liste dans ton Backstage.","ledeLink":"Nouveaux créateurs","items":{"copy":{"title":"Pseudos à copier-coller","body":"Un pseudo par ligne, groupés par région. Sélectionne, copie, colle dans la vérification d'éligibilité groupée de ton Backstage ou dans ton tableau de prospection. Pas de scraping, pas de mise en forme."},"csv":{"title":"Un fichier CSV avec chaque e-mail","body":"Pseudo, nom affiché, région et score de classement. S'ouvre dans Sheets ou Excel ; importe-le tel quel dans ton CRM."},"delta":{"title":"Nouveaux depuis le dernier digest","body":"Les noms absents de ton e-mail précédent sont en haut. Passe à \"nouveaux noms uniquement\" et chaque digest ne contient que les nouveautés."},"cadence":{"title":"Ton rythme","body":"Toutes les 6, 12 ou 18 heures, chaque jour ou chaque semaine. Assez rapide pour contacter un créateur le jour où il commence à gagner, assez lent pour tout traiter le lundi."},"regions":{"title":"{count} régions","body":"Choisis un marché ou tous. Chaque région a son propre bloc dans l'e-mail et sa propre colonne dans le fichier."},"ceiling":{"title":"Filtre plafond intégré","body":"Seuls les créateurs dont le maximum mensuel de diamants sur les {months} derniers mois reste sous {cap} entrent dans la liste - la règle d'invitation de TikTok, et le même filtre que la page Nouveaux créateurs. L'éligibilité, c'est à toi de la vérifier."}}},"sample":{"kicker":"Exemple d'e-mail","title":"Ce qui arrive dans ta boîte mail","lede":"Un e-mail par digest. Les noms arrivent un par ligne pour que tu puisses coller le bloc directement dans la vérification d'éligibilité groupée de ton Backstage, un tableur ou un message. Le CSV contient les mêmes noms avec la région, le nom affiché et le score de classement.","list":{"newFirst":"Nouveaux depuis le dernier digest, listés en premier","fullList":"Liste complète de la région en dessous (ou seulement les nouveaux noms, si tu préfères)","csv":"Fichier CSV joint à chaque e-mail","recipient":"Envoyé à l'e-mail de ton compte, à personne d'autre"},"aria":"Exemple d'e-mail de digest","when":"Toutes les 6 heures","subject":"Nouveaux créateurs à vérifier - Amérique du Nord, Brésil - 248 noms","greeting":"Salut Maya, voici les nouveaux créateurs repérés dans tes régions en ce moment.","newTag":"Nouveaux depuis le dernier digest","regionNorthAmerica":"Amérique du Nord","regionBrazil":"Brésil","rows":"{count} lignes"},"steps":{"kicker":"Configuration","title":"Trois étapes, environ une minute","items":{"open":{"title":"Ouvre les réglages du digest","body":"Les comptes agence les trouvent sur cette page et dans le tableau de repérage, sous Équipe. Active l'interrupteur."},"pick":{"title":"Choisis régions, fréquence et mode","body":"Touche les régions où tu recrutes, choisis la fréquence des e-mails et décide entre la liste complète à chaque fois ou seulement les nouveaux noms."},"save":{"title":"Enregistre","body":"Le premier digest part lors du prochain envoi programmé, vers l'e-mail de ton compte. Modifie ce que tu veux plus tard, l'e-mail suivant en tient compte."}}},"settings":{"kicker":"Ton digest","title":"Configure-le ici","lede":"Les digests partent vers l'e-mail de ton compte. Change de régions ou de fréquence quand tu veux ; le digest suivant utilise les nouveaux réglages."},"price":{"kicker":"Inclus avec Agency","title":"Inclus dans chaque offre Agency","lede":"Le digest est fourni avec chaque compte Agency, Starter et Global, avec le tableau de bord agence, les listes à copier-coller, les places d'équipe et le bot de repérage Telegram. Pas d'option payante, pas de frais par région.","perMonth":"/ mois","alt":"ou {plan} dès {price} par semaine","note":"Déblocage immédiat. Résiliable à tout moment."},"faq":{"kicker":"FAQ","title":"Les questions des agences","items":{"eligibility":{"q":"Le digest vérifie-t-il l'éligibilité ?","a":"Non. Le digest repère les nouveaux créateurs dans les classements et les ligues et écarte tous ceux qui ont atteint {cap} diamants ou plus sur l'un des {months} derniers mois, la règle d'invitation de TikTok. Tu vérifies l'éligibilité toi-même avec l'extension Chrome ou en collant les pseudos dans la vérification groupée de ton Backstage."},"regions":{"q":"À combien de régions puis-je m'abonner ?","a":"Autant que tu veux, jusqu'aux {count}. Chaque région forme un bloc séparé dans l'e-mail et un groupe séparé dans le CSV, donc même une large sélection reste lisible."},"modes":{"q":"Quelle différence entre la liste complète et les nouveaux noms uniquement ?","a":"La liste complète envoie tous les candidats de tes régions à chaque fois, avec les nouveaux signalés en haut. Les nouveaux noms uniquement n'envoient que les créateurs absents de ton digest précédent."},"recipient":{"q":"Où l'e-mail est-il envoyé ?","a":"À l'e-mail de ton compte tik.tools. Le destinataire est défini par ton compte, pas par le formulaire, donc un digest ne peut jamais être redirigé vers quelqu'un d'autre."},"charge":{"q":"Le digest est-il payant en plus ?","a":"Non. Il fait partie de chaque offre Agency, Starter et Global, avec le tableau de bord agence, les listes à copier-coller, les places d'équipe et le bot de repérage Telegram."}}}},"digestSettings":{"title":"Digests par e-mail","lede":"Tu reçois les nouveaux créateurs repérés dans chaque région en pseudos à copier-coller avec un fichier CSV joint, envoyés à l'e-mail de ton compte selon la fréquence choisie.","regions":{"label":"Régions","count":"{active} actives, {picked} choisies","loadError":"Impossible de charger les régions. Recharge la page et réessaie."},"countryBoards":"Classements par pays","cadence":{"label":"Fréquence","hours":{"6":"Toutes les 6 heures","12":"Toutes les 12 heures","18":"Toutes les 18 heures","24":"Chaque jour","168":"Chaque semaine"},"atSetTimes":"À heures fixes"},"sendAt":{"label":"Envoyer à","hint":"jusqu'à {max} fois par jour, heure {tz}"},"timezone":"Fuseau horaire","perRegion":{"label":"Horaires différents par région","hint":"facultatif - les régions sans horaires propres partent aux horaires ci-dessus","ownTimes":" : horaires propres","sameAsAbove":" : comme ci-dessus"},"mode":{"label":"Chaque e-mail","options":{"full":"Liste complète à chaque fois","new":"Nouveaux noms uniquement"}},"include":{"label":"Inclure","creators":"Créateurs","gifters":"Donateurs + leurs 3 créateurs principaux"},"attachment":{"label":"Pièce jointe","hint":"pour le copier-coller en masse, un fichier par région est plus simple à confier à une équipe","combined":"Un seul fichier combiné","split":"Un fichier par région, pseudos uniquement"},"saving":"Enregistrement...","save":"Enregistrer les réglages du digest","feedback":{"pickTime":"Choisis au moins une heure d'envoi.","ownTimesOne":", {count} région avec ses propres horaires","ownTimesMany":", {count} régions avec leurs propres horaires","atTimes":"à {times} ({tz}){ownTimes}","cadence":{"6":"toutes les 6 heures","12":"toutes les 12 heures","18":"toutes les 18 heures","24":"chaque jour","168":"chaque semaine"},"saved":"Enregistré - {when} vers l'e-mail de ton compte.","savedOff":"Enregistré - digests désactivés.","saveFailed":"Impossible d'enregistrer. Vérifie qu'une région est sélectionnée."}},"recruit":{"seo":{"title":"Recruter des créateurs par tranche de gains - tik.tools","description":"Recherche de créateurs à recruter pour agences. Présélectionne des créateurs selon leur tranche moyenne de diamants mensuels, dans toutes les régions."},"badge":"Fonction agence","title":"Recrute par {highlight}","titleHighlight":"tranche de gains","sub":"Présélectionne des créateurs selon leurs diamants mensuels moyens. Les résultats sont des fourchettes pensées pour guider le recrutement, pas pour exporter nos données.","upsell":{"title":"La recherche de créateurs à recruter est réservée à Agency","body":"Passe à une offre supérieure pour filtrer les créateurs par tranche de gains mensuels dans toutes les régions.","unlock":"Débloquer avec Agency","login":"Se connecter"},"filters":{"region":"Région","allRegions":"Toutes les régions","avgMonth":"Moy. / mois","searching":"Recherche...","search":"Rechercher"},"table":{"creator":"Créateur","active":"Actif","liveDays":"Jours de live","months":"{count} mois","days":"{count} j","foot":"Jusqu'à 50 résultats - les chiffres sont des fourchettes, pas des totaux exacts."},"empty":"Aucun créateur ne correspond à cette tranche et cette région.","notices":{"dailyCap":"Limite quotidienne de recherches atteinte. Réinitialisation dans 24 heures.","rate":"Trop de recherches - patiente un instant et réessaie.","allRegions":"{starterPlan} recherche une région à la fois. Choisis une région, ou passe à {globalPlan} pour chercher dans toutes les régions d'un coup.","planRequired":"Offre Agency requise.","unavailable":"La recherche est temporairement indisponible. Réessaie dans un instant."}},"watchedGifters":{"nav":"Donateurs suivis","intro":"Ajoute les donateurs qui t'intéressent par {'@'}pseudo ou lien de profil TikTok. Nous suivons les créateurs qu'ils soutiennent et suivent, pour enregistrer davantage de leurs cadeaux.","disclosureTitle":"Couverture partielle","disclosure":"La couverture n'est pas totale : nous enregistrons les cadeaux d'un donateur dans les rooms LIVE auxquelles nous sommes connectés. Nous suivons automatiquement les créateurs que ce donateur soutient et suit pour en capter davantage, mais les cadeaux envoyés dans des rooms où nous ne sommes pas peuvent nous échapper.","inputLabel":"Pseudo TikTok ou lien de profil","inputPlaceholder":"{'@'}pseudo ou tiktok.com/{'@'}pseudo","add":"Ajouter le donateur","adding":"Ajout...","counter":"{count} donateurs suivis sur {limit}","added":"Tu suis maintenant {'@'}{handle}.","alreadyWatching":"{'@'}{handle} est déjà dans ta liste.","removed":"Tu ne suis plus {'@'}{handle}.","empty":"Aucun donateur suivi pour l'instant. Ajoutes-en un ci-dessus pour commencer à enregistrer ses cadeaux.","loadError":"Impossible de charger tes donateurs suivis.","retry":"Réessayer","remove":"Retirer","removeConfirm":"Ne plus suivre {'@'}{handle} ? Ses cadeaux enregistrés restent dans nos données, mais nous arrêtons d'étendre la couverture autour de lui.","showGifts":"Afficher les cadeaux","hideGifts":"Masquer les cadeaux","lastGift":"Dernier cadeau","lastGiftLine":"{gift} à {'@'}{creator}","noGiftsYet":"Aucun cadeau enregistré pour l'instant","totalDiamonds":"Diamants enregistrés","gifts":"Cadeaux","creators":"Créateurs soutenus","diamondsShort":"{count} diamants","coverage":{"full":"{total} créateurs suivis pour ce donateur : {gifted} à qui il a offert des cadeaux, {follows} qu'il suit, {seen} rooms où il a été vu. {live} en live maintenant, {recording} en cours d'enregistrement.","private":"{total} créateurs suivis pour ce donateur : {gifted} à qui il a offert des cadeaux, {seen} rooms où il a été vu. {live} en live maintenant, {recording} en cours d'enregistrement. Sa liste d'abonnements est privée sur TikTok : seuls l'historique de cadeaux et les rooms où il a été vu sont utilisés.","notChecked":"{total} créateurs suivis pour ce donateur : {gifted} à qui il a offert des cadeaux, {seen} rooms où il a été vu. {live} en live maintenant, {recording} en cours d'enregistrement. Sa liste d'abonnements n'a pas encore été vérifiée.","starting":"Extension de la couverture en cours de démarrage, reviens dans quelques minutes.","updated":"Mis à jour {ago}"},"panel":{"giftsTitle":"Cadeaux enregistrés","creatorsTitle":"Créateurs soutenus","time":"Heure","creator":"Créateur","gift":"Cadeau","diamonds":"Diamants","creatorSummary":"{diamonds} diamants en {gifts} cadeaux","noFeed":"Aucun cadeau enregistré pour ce donateur pour l'instant.","loading":"Chargement des cadeaux...","loadMore":"Charger plus"},"alerts":{"title":"Alerte cadeau","label":"M'alerter quand ce donateur envoie un cadeau d'au moins","unit":"pièces","save":"Enregistrer","saving":"Enregistrement...","turnOff":"Désactiver","on":"Alerte active : cadeaux de {coins} pièces ou plus.","off":"Aucune alerte définie pour ce donateur.","saved":"Alerte enregistrée.","turnedOff":"Alerte désactivée.","unavailable":"Les réglages d'alerte n'ont pas pu être chargés pour le moment.","delivery":"Les alertes arrivent via les webhooks de ton compte abonnés à gifter.watched_gift, ou via les places Telegram de ton agence.","webhooksLink":"Gérer les webhooks","errors":{"range":"Saisis un nombre entier de pièces entre {min} et {max}.","failed":"Impossible d'enregistrer l'alerte. Ta liste d'alertes est peut-être pleine, sinon réessaie dans un instant."}},"errors":{"invalid":"Saisis un {'@'}pseudo TikTok ou un lien de profil.","notFound":"Nous n'avons pas trouvé ce compte TikTok.","limit":"Ton offre inclut {limit} donateurs suivis. Retires-en un pour en ajouter un autre.","rate":"Trop de modifications. Attends quelques minutes et réessaie.","locked":"Les donateurs suivis font partie des offres Agency payantes.","notWatched":"Ce donateur ne fait plus partie de ta liste de suivi.","feed":"Impossible de charger les cadeaux de ce donateur.","generic":"Un problème est survenu. Réessaie."},"locked":{"title":"Les donateurs suivis font partie des offres Agency payantes","body":"Agency Starter inclut {starter} donateurs suivis et Agency Global en inclut {global}. Nous étendons la couverture live autour de chacun pour enregistrer davantage de leurs cadeaux.","cta":"Voir les offres Agency"}}},"legalNotice":{"text":"Ceci est une traduction fournie à titre indicatif. En cas de divergence, la version anglaise fait foi. {link}","link":"Lire la version anglaise"},"dashboard":{"meta":{"title":"Tableau de bord - TikTool Live"},"loading":"Chargement du tableau de bord...","common":{"seePricing":"Voir les tarifs"},"actions":{"copy":"Copier","copied":"Copié","copiedBang":"Copié !","copyKey":"Copier la clé","hide":"Masquer","show":"Afficher","hideKey":"Masquer la clé","showKey":"Afficher la clé","revealKey":"Révéler la clé"},"units":{"hours":"{n} h","days":"{n} j","thousands":"{n} k","millions":"{n} M"},"ago":{"seconds":"il y a {n} s","minutes":"il y a {n} min","hours":"il y a {n} h","days":"il y a {n} j"},"blocked":{"title":"Compte restreint","logout":"Se déconnecter","seePlans":"Voir les offres","contact":"Nous contacter","defaultMessage":"Ton compte a été restreint. Contacte le support si tu penses qu'il s'agit d'une erreur."},"header":{"title":"Tableau de bord","billing":"Facturation","resetTitle":"Toutes les limites quotidiennes se réinitialisent à minuit UTC","resetIn":"Réinitialisation des limites quotidiennes dans {time}"},"keyBar":{"unnamed":"Sans nom","live":"{count} en live","upgradeKey":"Améliorer la clé"},"nudge":{"title":"Lance ta première requête en {seconds} secondes","sub":"Cette clé n'a encore fait aucune requête. Fichier prêt à l'emploi, déjà rempli avec ta clé API. Choisis un langage - copie, colle, exécute.","copyLabel":"Copier le code de démarrage","dismiss":"Fermer"},"fpWarn":{"title":"Utilisation en production détectée sur une clé Sandbox","foot":"Les clés Sandbox sont réservées au développement et à l'évaluation. Une utilisation continue en production entraînera un bannissement automatique et définitif (sans remboursement, sans avertissement). {link}.","termsLink":"Voir les Conditions §4.3-4.4","upgradeNow":"Mettre à niveau"},"evaluation":{"endedLabel":"Évaluation terminée","endedOn":"Terminée le {date}","endedHint":"Ton évaluation Sandbox est terminée : les requêtes API et les sessions live de ce compte sont refusées. Choisis une offre pour continuer."},"community":{"label":"Sessions gratuites utilisées aujourd'hui","reached":"Limite de démo quotidienne atteinte","hint":"{duration} max par session. Réinitialisation à minuit UTC.","upgrade":"Mettre à niveau"},"live":{"title":"Activité en direct","sub":"Temps réel - envoyé en direct depuis ton trafic en cours","state":{"connecting":"CONNEXION","idle":"EN ÉCOUTE","active":"LIVE"},"idleTitle":"En écoute de l'activité en direct","idleBody":"Fais ton premier appel API et ce panneau s'allume instantanément.","copyLabel":"Copier le code du premier appel","statWs":"WS {window}","statRest":"REST {window}","statErrors":"Erreurs {window}"},"welcome":{"title":"Ta clé API est prête","subtitle":"Une clé de niveau Sandbox a été créée pour ton compte. Conserve-la en lieu sûr - c'est la seule fois où la clé complète est affichée.","keyLabel":"Clé API","copied":"Copié dans le presse-papiers","getStarted":"Commencer","docs":"Documentation","starTitle":"Mets-nous une étoile sur GitHub","star":"Mettre une étoile sur GitHub","reqPerDay":"{count} requêtes / jour","wsConnections":"{count} connexions WebSocket","upgradeAnytime":"Passe à l'offre supérieure quand tu veux"},"empty":{"title":"Bienvenue sur TikTool Live","desc":"Crée ta première clé API pour te connecter aux lives TikTok en temps réel.","creating":"Création...","create":"Créer ta première clé API"},"stats":{"todayRequests":"Requêtes du jour","evalEnded":"Évaluation terminée - {link}","seePricing":"voir les tarifs","ofDailyLimit":"sur une limite quotidienne de {limit}","wsToday":"Connexions WS aujourd'hui","wsPerDay":"sur {limit} par jour, réinitialisation à minuit UTC","wsNoCap":"pas de plafond quotidien sur cette offre","totalRequests":"Requêtes totales","allTime":"depuis toujours","wsConnections":"Connexions WebSocket","live":"En live","idle":"Inactif","activeConnections":"connexions actives","subscription":"Abonnement","activePlan":"Actif - {plan}","monthly":"Mensuel","upgrade":"AMÉLIORER","upgradeTo":"PASSER À {plan}"},"expiry":{"evalEndedUpgrade":"Évaluation terminée - passe à une offre payante pour continuer","expired":"Accès expiré","evalEndsToday":"L'évaluation se termine aujourd'hui","evalDaysLeft":"Évaluation : {days} jours restants","expiresToday":"Expire aujourd'hui","daysLeft":"{days} jours restants"},"badge":{"renewing":"RENOUVELLEMENT","expiring":"EXPIRE BIENTÔT","expired":"EXPIRÉ"},"upgradeNudge":{"title":"Tu as utilisé {pct} % de ton quota de requêtes du jour","reqPerDay":"{value} req/jour","webSockets":"{value} WebSockets","unlock":"Débloquer {plan}"},"limits":{"title":"Limites effectives","custom":"PERSONNALISÉ","override":"DÉROGATION","evalEnded":"Évaluation terminée : l'API refuse cette clé, ces limites ne s'appliquent donc plus. {link} pour continuer.","items":{"dailyLimit":"Requêtes / jour","rateLimit":"Requêtes / min","wsLimit":"Connexions WebSocket","bulkCheckLimit":"ID par vérification groupée","wsDailyLimit":"Connexions WS / jour"}},"key":{"title":"Clé API - {label}","titleEditing":"Clé API -","rename":"Renommer la clé","meta":{"plan":"Offre","status":"Statut","renews":"Renouvellement","cancels":"Annulation","giftExpires":"Fin du cadeau","expired":"Expirée","accessUntil":"Accès jusqu'au","created":"Créée"},"regenerateTitle":"Renouveler cette clé API (nouvelle valeur, mêmes limites + même ID)","regenerate":"Régénérer la clé","deleteTitle":"Retirer cette clé API de ton tableau de bord","delete":"Supprimer la clé","cancelSubTitle":"Annuler l'abonnement de cette clé","cancelSub":"Annuler l'abonnement"},"quickStart":{"title":"Démarrage rapide"},"usage":{"title":"Statistiques d'utilisation","metric":{"all":"Toutes","requests":"Requêtes","errors":"Erreurs"},"range":{"today":"Aujourd'hui (UTC)","yesterday":"Hier (UTC)","lastHours":"{n} dernières heures","days":"{n} jours"},"loading":"Chargement des données d'utilisation...","unit":{"connections":"connexions","errors":"erreurs","requests":"requêtes"},"series":{"requests":"Requêtes","ws":"WS","errors":"Erreurs"},"stats":{"totalRequests":"Requêtes totales","errorRate":"Taux d'erreur","avgResponse":"Réponse moyenne","uniqueIps":"IP uniques","wsSessions":"Sessions WS"},"seriesMissing":"Le détail horaire de cette période n'est pas disponible pour le moment. Tes endpoints les plus utilisés sur la période sont listés ci-dessous.","showLastHours":"Afficher les {n} dernières heures","empty":"Aucune requête enregistrée sur cette période.","methods":"Méthodes","statusCodes":"Codes de statut"},"traffic":{"title":"Trafic {window}","total":"Total","errors":"Erreurs","empty":"Aucune requête sur les dernières {window}.","hover":"{hour} - {count} req","hoverWithErrors":"{hour} - {count} req, {errors} err"},"topEndpoints":"Endpoints les plus utilisés","recent":{"title":"Appels API récents","endpoint":"Endpoint","method":"Méthode","status":"Statut","time":"Heure","details":"Détails"},"newKey":{"title":"Nomme ta nouvelle clé API","desc":"Donne un nom à ta clé pour la repérer dans ton tableau de bord.","placeholder":"ex. Production, Staging, Assistant 2...","continue":"Continuer vers le choix de l'offre"},"upgrade":{"keyCreated":"Clé créée !","activated":"Abonnement activé !","choosePlanFor":"Choisis une offre pour {label}","upgradeYourKey":"Améliore ta clé","descNewKey":"Choisis une offre pour ta nouvelle clé API","descUpgrade":"Choisis une offre pour débloquer des limites plus élevées et des fonctionnalités premium","successNewKey":"Ta nouvelle clé API {label} a été créée avec l'offre {plan}. Le tableau de bord va s'actualiser dans un instant.","successUpgrade":"Ta clé API est passée à {plan}. Le tableau de bord va s'actualiser dans un instant.","backToDashboard":"Retour au tableau de bord","cycle":{"weekly":"Hebdo","monthly":"Mensuel"},"cycleLower":{"weekly":"hebdomadaire","monthly":"mensuel"},"period":{"wk":"sem.","mo":"mois"},"feat":{"reqPerDay":"{value} req/jour","ws":"{count} WS","wsFirehose":"{count} WS + Firehose","captionOne":"{count} sous-titrage","captionOther":"{count} sous-titrages","priorityRouting":"Routage prioritaire","proLevelApi":"API niveau Pro","agencyDashboard":"Tableau de bord agence","seats":"{count} places","unmaskedGifter":"API donateurs sans masquage"},"select":"Choisir","selected":"Choisi","discountNamed":"Remise ({name})","discount":"Remise","subtotal":"Sous-total","total":"Total","taxNextStep":"Taxes calculées à l'étape suivante","taxAuto":"Taxes calculées automatiquement le cas échéant","couponToggle":"Tu as un code promo ?","couponPlaceholder":"Code promo","checking":"Vérification...","apply":"Appliquer","remove":"Retirer","couponApplied":"Code promo appliqué !","business":"Achat professionnel","companyName":"Nom de l'entreprise","taxId":"Numéro fiscal / numéro de TVA (facultatif)","continueToPayment":"Continuer vers le paiement","swapCredit":"Crédit pour le temps non utilisé sur ton offre actuelle","swapLine":"{plan} {cycle}","continueToPaypal":"Continuer vers PayPal","keepCurrent":"Garder l'offre actuelle","creditedNext":"Crédité sur ta prochaine facture","chargedToday":"Débité sur ta carte aujourd'hui","confirmChange":"Confirmer le changement d'offre","or":"ou","compare":"Comparer toutes les fonctionnalités","settingUp":"Préparation du paiement...","paymentMethod":"Moyen de paiement","processing":"Traitement...","pay":"Payer {amount}","backToSummary":"Retour au récapitulatif","secured":"Sécurisé par Stripe. Nous ne stockons jamais les données de ta carte.","errors":{"alreadyOnPlan":"Cette clé est déjà sur cette offre.","pricePlanFailed":"Impossible de calculer le prix de ce changement d'offre. Réessaie.","paypalNoLink":"PayPal n'a pas renvoyé de lien d'approbation. Réessaie.","changeFailedRetry":"Impossible de changer d'offre. Réessaie ou contacte le support.","changeFailedUnchanged":"Impossible de changer d'offre. Ton offre n'a pas été modifiée.","invalidCoupon":"Code promo invalide","couponValidateFailed":"Impossible de valider le code promo","fixCoupon":"Corrige ou retire le code promo invalide avant de continuer.","stripeNotLoaded":"Le système de paiement n'est pas chargé. Réessaie.","initFailed":"Le paiement n'a pas pu être initialisé. Réessaie.","createSubFailed":"Impossible de créer l'abonnement","paymentFailed":"Le paiement a échoué"}},"topUp":{"added":"Crédits ajoutés !","title":"Recharger des crédits de sous-titres","desc":"Choisis un pack de crédits. {n} crédit = {n} min × {n} langue.","success":"{credits} ont été ajoutés à ton compte. Ton tableau de bord va s'actualiser dans un instant.","done":"Terminé","bestValue":"Meilleur rapport qualité-prix","credits":"crédits","creditsCount":"{count} crédits","ratePerCredit":"{price}/crédit","savings":"{percent} % d'économie","backToPackages":"Retour aux packs","errors":{"invalidCoupon":"Code promo invalide","createFailed":"Impossible de créer le paiement"}},"regenerate":{"title":"Régénérer la clé API ?","desc":"Cela va {replace} ta clé API actuelle par une nouvelle. L'ancienne clé va {stop}. Ton abonnement et ton offre seront transférés sur la nouvelle clé.","replace":"remplacer","stop":"cesser de fonctionner immédiatement","cancel":"Annuler","loading":"Régénération...","confirm":"Oui, régénérer","failed":"Échec de la régénération. Réessaie."},"cancelSub":{"title":"Annuler l'abonnement ?","desc":"Cela va {cancel} pour cette clé et {revoke}. Cette action est irréversible.","cancelStrong":"annuler l'abonnement Stripe","revokeStrong":"révoquer la clé API","warning":"{forfeit} à la fin de ton abonnement. Les crédits de sous-titres nécessitent un abonnement {plan} ou supérieur actif.","forfeit":"Tous les crédits de sous-titres achetés seront perdus","keep":"Garder l'abonnement","loading":"Annulation...","confirm":"Oui, annuler et révoquer"},"deleteKey":{"title":"Supprimer la clé API ?","desc":"Cela retire la clé de ton tableau de bord et {deactivate} - elle cesse de fonctionner tout de suite. Tout abonnement actif lié à cette clé est annulé.","deactivate":"la désactive immédiatement","keep":"Garder la clé","loading":"Suppression...","confirm":"Oui, supprimer la clé","failed":"Impossible de supprimer la clé"},"subStatus":{"active":"Actif","paymentFailed":"Paiement échoué","awaitingPayment":"En attente de paiement","paymentIncomplete":"Paiement incomplet","cancelled":"Annulé","unpaid":"Impayé","expired":"Expiré","free":"Gratuit"}},"account":{"billing":{"seoTitle":"Facturation - TikTools","title":"Facturation","dashboard":"Tableau de bord","loading":"Chargement des données de facturation...","loadFailed":"Impossible de charger les données de facturation. {retry}","retry":"Réessayer","subsTitle":"Abonnements et clés","empty":"Aucun abonnement ni aucune clé active.","viewPlans":"Voir les offres","keyRevoked":"Clé révoquée","weekendCountdown":"{time} avant le renouvellement automatique en {plan} hebdo ({date})","labels":{"status":"Statut","plan":"Offre","billing":"Facturation","amount":"Montant","accessUntil":"Accès jusqu'au","renews":"Renouvellement","ended":"Terminé"},"cancelling":"Annulation en cours","interval":{"year":"Annuel","week":"Hebdo","month":"Mensuel"},"per":{"year":"{amount}/an","week":"{amount}/sem.","month":"{amount}/mois"},"cancelNotice":"L'abonnement prendra fin le {date}","pausedOn":"En pause - aucun prélèvement. La facturation reprend le {date}.","pausedAuto":"En pause - aucun prélèvement. La facturation reprend automatiquement.","resumeNow":"Reprendre maintenant","changePlan":"Changer d'offre","cancelSubscription":"Annuler l'abonnement","reactivate":"Réactiver / nouvelle offre","prepaid":"Prépayé","renewStack":"Renouvelle maintenant - les jours s'ajoutent à ceux qui restent","appStorePlan":"Abonnement App Store","appStoreManage":"Gérer dans l'App Store","renewNow":"Renouveler maintenant","sandboxNoSub":"Offre {plan} - sans abonnement","notLinked":"Abonnement non associé","upgrade":"Mettre à niveau","getPlan":"Choisir une offre","paymentMethod":"Moyen de paiement","noPaymentMethod":"Aucun moyen de paiement enregistré","opening":"Ouverture...","updatePm":"Mettre à jour le moyen de paiement","addPm":"Ajouter un moyen de paiement","details":{"title":"Informations de facturation","intro":"Affiché dans la rubrique \"Facturé à\" de tes factures. Pour facturer une entreprise, saisis son nom, son adresse et son numéro de TVA.","name":"Entreprise ou nom complet","address":"Adresse","address2":"Complément d'adresse","optional":"facultatif","city":"Ville","postalCode":"Code postal","state":"État ou région","country":"Pays","chooseCountry":"Choisis un pays","taxId":"Numéro de TVA ou fiscal","taxIdUnavailable":"Non disponible pour ce pays","verification":"Vérification : {status}","saving":"Enregistrement...","save":"Enregistrer les informations","saved":"Enregistré. Les nouvelles factures utiliseront ces informations.","saveFailed":"Impossible d'enregistrer tes informations de facturation. Réessaie."},"nextPayment":"Prochain paiement","due":"Échéance le {date}","invoiceHistory":"Historique des factures","th":{"invoice":"Facture","date":"Date","amount":"Montant","status":"Statut"},"view":"Voir","downloadPdf":"Télécharger le PDF","cancelModal":{"title":"Annuler l'abonnement ?","desc":"Ton abonnement reste actif jusqu'à la fin de la période de facturation en cours. Ensuite, la clé repassera à l'offre {plan}.","pauseHead":"Besoin d'une pause plutôt ?","pauseDesc":"Mets en pause pendant {days} jours - tu gardes ta clé, ton offre et ton historique. Aucun prélèvement pendant la pause, et la facturation reprend automatiquement.","pauseCta":"Mettre en pause {days} jours","working":"En cours...","keep":"Garder l'abonnement","cancelling":"Annulation..."},"paymentModal":{"updateTitle":"Mettre à jour le moyen de paiement","addTitle":"Ajouter un moyen de paiement","cancel":"Annuler","saving":"Enregistrement...","save":"Enregistrer la carte"},"errors":{"pauseFailed":"Impossible de mettre l'abonnement en pause","resumeFailed":"Impossible de reprendre l'abonnement","cancelFailed":"Impossible d'annuler l'abonnement","portalFailed":"Impossible d'ouvrir le portail de facturation. Contacte {email}","notLoaded":"Le système de paiement n'est pas chargé","loadFormFailed":"Impossible de charger le formulaire de paiement","updateFailed":"Impossible de mettre à jour le moyen de paiement"},"previousKey":"Clé précédente","unknownPlan":"Inconnu","timeLeft":{"renewing":"Renouvellement en cours","days":"{d} j {h} h restants","hours":"{h} h {m} min restantes"},"status":{"active":"Actif","trialing":"Actif","past_due":"En retard de paiement","unpaid":"Impayé","incomplete":"Paiement en attente","incomplete_expired":"Paiement non finalisé","canceled":"Annulé","cancelled":"Annulé","paused":"En pause","suspended":"Suspendu","expired":"Expiré","approval_pending":"En attente d'approbation","approved":"Approuvé","pending":"En attente","processing":"En cours de traitement","failed":"Paiement échoué","refunded":"Remboursé","partially_refunded":"Partiellement remboursé","paid":"Payé","open":"Ouverte","draft":"Brouillon","void":"Annulée","uncollectible":"Irrécouvrable","verified":"Vérifié","unverified":"Non vérifié","unavailable":"Indisponible","unknown":"Inconnu"}},"vipBilling":{"seoTitle":"Facturation PASS - TikTool","title":"Facturation PASS","plans":"Offres PASS","apiBilling":"Facturation API","empty":"Aucun abonnement PASS actif.","viewPlans":"Voir les offres PASS","subscription":"Abonnement PASS","membership":"Adhésion PASS","endsOn":"L'abonnement prend fin le {date}","managePlan":"Gérer l'offre","noInvoices":"Aucune facture PASS pour l'instant.","cancelTitle":"Annuler l'abonnement PASS ?","cancelDesc":"Ton offre reste active jusqu'à la fin de la période de facturation. Ensuite, les fonctionnalités PASS sont retirées. Aucun remboursement pour les mois entamés.","keepPlan":"Garder l'offre","cancelFailed":"L'annulation a échoué. Réessaie."},"daypass":{"seoTitle":"Accès {plan} - Tik.Tools","eyebrow":"invitation","title":"Ton {pass} gratuit","lede":"Accès {plan} complet - tous les classements par région, classements de ligue + gaming, infos donateurs et le bot Discord des classements.","giftersDesc":"Top donateurs + profils de créateurs","success":{"title":"C'est parti.","sub":"Accès {plan} complet débloqué pour {hours} heures. À toi de jouer :","ranksTitle":"Classements en direct","ranksDesc":"Toutes les régions, en temps réel, sans masquage","botTitle":"Ajoute le bot Discord","botDesc":"Puis tape {command} sur ton serveur","giftersTitle":"Créateurs et donateurs","foot":"Le pass expire dans {hours} h. On t'enverra par e-mail un moyen de continuer en un clic."},"demo":{"unmaskTitle":"Classements sans masquage","unmaskDesc":"Chaque classement de région et de ligue, avec les vrais noms","intelTitle":"Infos donateur","discordDesc":"Les classements en direct sur ton serveur"},"activating":"Activation de ton pass...","activate":"Activer mon Day Pass","google":"Continuer avec Google pour commencer","fineprint":"Facturé au mois ou à la semaine · annulable à tout moment.","startFailed":"Impossible de démarrer ton pass. Réessaie."},"daypassKeep":{"seoTitle":"Continuer avec {plan} - Tik.Tools","errorTitle":"Un problème est survenu","retry":"Réessayer","redirecting":"Redirection vers le paiement sécurisé...","payWith":"{plan} - paie avec Apple Pay, Google Pay, PayPal ou par carte.","planMonthly":"{plan} - {price}/mois","planWeekly":"{plan} - {price}/semaine","notOpened":"Le paiement ne s'est pas ouvert. Réessaie.","failed":"Le paiement a échoué. Réessaie."},"page":{"seoTitle":"Compte - TikTools","avatarAlt":"Toi","fallbackName":"Ton compte","loading":"Chargement de ton compte...","profile":"Profil","displayName":"Nom affiché","namePlaceholder":"Ton nom","saving":"Enregistrement...","save":"Enregistrer","saved":"Enregistré","saveFailed":"Impossible d'enregistrer","email":"E-mail","googleSignIn":"Connexion Google","emailPassword":"E-mail + mot de passe","password":"Mot de passe","googleNote":"Tu te connectes avec Google, il n'y a donc pas de mot de passe à modifier ici. Gère-le dans ton compte Google.","currentPassword":"Mot de passe actuel","newPassword":"Nouveau mot de passe","newPasswordPlaceholder":"Au moins {min} caractères, 1 majuscule, 1 chiffre","confirmPassword":"Confirmer le nouveau mot de passe","repeatPassword":"Répète le nouveau mot de passe","hintLength":"{min} caractères minimum","hintUpper":"1 majuscule","hintNumber":"1 chiffre","updating":"Mise à jour...","changePassword":"Changer le mot de passe","pwFine":"Nous envoyons un e-mail de confirmation à {email} à chaque changement de mot de passe.","planBilling":"Offre et facturation","currentPlan":"Offre actuelle","subscription":"Abonnement","noSubscription":"Aucun abonnement actif","manageBilling":"Gérer la facturation","viewPlans":"Voir les offres","signOut":"Se déconnecter","pwMismatch":"Les nouveaux mots de passe ne correspondent pas","pwChanged":"Mot de passe modifié. Un e-mail de confirmation est en route.","pwFailed":"Impossible de changer le mot de passe"},"completeProfile":{"seoTitle":"Compléter le profil - TikTool","connected":"TikTok connecté","title":"Une dernière étape","sub":"Ajoute ton e-mail pour recevoir les alertes, les reçus et les options de récupération du compte.","save":"Enregistrer et continuer","skip":"Passer pour l'instant","invalidEmail":"Saisis une adresse e-mail valide.","saveFailed":"Impossible d'enregistrer l'e-mail. Réessaie."},"forgot":{"seoTitle":"Réinitialise ton mot de passe - tik.tools","title":"Réinitialise ton mot de passe","subStep1":"Nous allons t'envoyer un code à {digits} chiffres par e-mail.","subStep2":"Saisis le code reçu par e-mail et choisis un nouveau mot de passe.","sending":"Envoi...","sendCode":"Envoyer le code de réinitialisation","codeLabel":"Code à {digits} chiffres","passwordPlaceholder":"Au moins {min} caractères","passwordHint":"Au moins {min} caractères, dont une majuscule et un chiffre.","saving":"Enregistrement...","setPassword":"Définir le nouveau mot de passe","differentEmail":"Utiliser une autre adresse e-mail","back":"Retour à la connexion","checkEmail":"Vérifie tes e-mails.","updated":"Mot de passe mis à jour. Redirection vers la connexion...","genericError":"Un problème est survenu. Réessaie."},"banned":{"seoTitle":"Compte suspendu","title":"BANNI","sub":"Compte suspendu pour usage abusif de l'API","permanent":"DÉFINITIF","perma":"DÉFINITIF","minutes":"{min} MIN","continue":"Continuer"},"claimError":{"seoTitle":"Erreur de vérification","title":"La vérification a échoué","close":"Fermer","fallback":"Une erreur est survenue pendant la vérification. Réessaie."},"refundPolicy":{"text":"Packs d'heures de lecture : un remboursement par compte. L'accès prend fin dès ta demande, et les heures non utilisées sont remboursées, déduction faite des frais du prestataire de paiement. Les offres API et Agency ne sont pas remboursables, sauf en cas de panne de notre côté, de double prélèvement ou d'erreur de facturation (Conditions 5.4). {link}.","link":"Voir les Conditions"}},"agencyDash":{"sections":{"home":"Tableau de bord","watchlist":"Liste de suivi","roster":"Roster","health":"Santé du roster","pipeline":"Pipeline de recrutement","tracker":"Suivi en direct","notes":"Notes","archive":"Archives","battles":"Historique des battles","gifters":"Base donateurs","tasks":"Tâches","teamActivity":"Activité de l'équipe","teamTasks":"Tâches de l'équipe","team":"Équipe"},"shell":{"agencyTools":"Outils pour agences","dashboard":"Tableau de bord","upgrade":"Mettre à niveau","billing":"Facturation","openMenu":"Ouvrir le menu agence","menu":"Menu agence","closeMenu":"Fermer le menu agence","workspace":"Espace de travail","account":"Compte","seePlans":"Voir les offres agence","backTo":"Retour à {brand}","explore":{"newCreators":"Nouveaux créateurs","agencyPulse":"Agency Pulse","rising":"En progression","agencies":"Agences"}},"wall":{"title":"CRM agence","body":"Le suivi en direct du roster, les infos donateurs, l'historique des battles et les outils d'équipe sont disponibles avec les offres agence.","cta":"Voir les offres agence"},"common":{"followers":"{count} followers","live":"LIVE","off":"OFF","offline":"hors ligne","archive":"Archiver","openProfile":"Ouvrir le profil"},"time":{"justNow":"à l'instant","minutesAgo":"il y a {n} min","hoursAgo":"il y a {n} h","daysAgo":"il y a {n} j","secondsShort":"{n} s","minutesShort":"{n} min","hoursShort":"{n} h","daysShort":"{n} j","agoSuffix":"il y a {ago}","now":"Maintenant"},"home":{"liveNow":"En live","watched":"Suivis","diamonds24h":"Diamants · 24 h","viewersNow":"Spectateurs en ce moment","viewers":"spectateurs","last24h":"24 h","liveEmpty":"Aucun des créateurs que tu suis n'est en live en ce moment. Nous actualisons leur statut toutes les quelques secondes.","recruit":"Recruter","recruitSub":"Nouveaux créateurs à recruter en {region}, repérés dans les classements et les ligues. Ajoutes-en un pour le suivre à chaque fois qu'il passe en LIVE.","recruitLoading":"Chargement des recrues...","watchButton":"+ Suivre","recruitEmpty":"Pas encore de recrues pour {region}. Consulte les créateurs sur la {link} pour remplir cette liste.","recruitPageLink":"page de recrutement","watchedOffline":"Suivis · hors ligne","offlineEmpty":"Aucun créateur suivi hors ligne."},"watchlist":{"intro":"Les créateurs non signés que tu repères - chaque fiche affiche l'historique CRM complet : qui l'a ajouté, qui l'a contacté, quand, l'éligibilité et la note en cours. Clique sur une carte pour ouvrir le profil du créateur et modifier la note.","copyAll":"Copier tous les pseudos pour le backstage","addTarget":"+ Ajouter une cible","usernamePrompt":"Pseudo TikTok (sans {'@'}) :","daily":"Du jour","topGifter":"Top donateur","addedBy":"Ajouté par","added":"Ajouté","status":{"newTarget":"Nouvelle cible","outreachSent":"Contact envoyé","inTalks":"En discussion","signed":"Signé","cold":"Froid"},"notePlaceholder":"Tentatives de contact, infos sur le propriétaire, conditions de rémunération, habitudes de réponse...","trail":"Historique complet","trailSystem":"système","trailEmpty":"Aucun événement enregistré auparavant.","toRoster":"Roster","archiveTitle":"Déplacer vers les archives des créateurs ignorés","empty":"La liste de suivi est vide. Utilise Discover (Tikter) pour ajouter des créateurs.","outreachNote":"La prise de contact se fait depuis ton propre backstage TikTok ou en DM - nous n'écrivons jamais aux créateurs à ta place."},"roster":{"intro":"Tes talents signés. Des notes par créateur pour l'équipe interne. Transcriptions + chat-spy disponibles avec Global.","cols":{"creator":"Créateur","status":"Statut","today":"Aujourd'hui (◇)","split":"Part %","lastLive":"Dernier live"},"remove":"Retirer","removeTitle":"Retirer du roster","notes":"Notes","removeConfirm":"Retirer {handle} de ton roster ? Il reste dans ta liste de suivi et peut être signé de nouveau à tout moment.","removeFailed":"Impossible de retirer le créateur du roster","signFailed":"Impossible de signer le créateur"},"notes":{"intro":"Tous les créateurs sur lesquels ton équipe a pris des notes. Clique sur une carte pour ouvrir le profil complet et le modifier.","withNotes":"Avec notes","allDecisions":"Toutes les décisions","empty":"Aucune note pour l'instant. Ouvre n'importe quel profil de créateur pour en ajouter une.","verified":"vérifié","noNote":"Pas encore de note - clique pour en ajouter une","decision":{"yes":"oui","no":"non","maybe":"peut-être"}},"archive":{"intro":"Les créateurs que tu as écartés dans Discover. Restaure-en un pour le faire réapparaître dans la pile.","empty":"Aucun créateur ignoré pour l'instant.","restore":"Restaurer"},"battles":{"intro":"Historique des matchs PK. La colonne du gros donateur adverse montre qui recruter ensuite.","cols":{"date":"Date","yourCreator":"Ton créateur","opponent":"Adversaire","result":"Résultat","margin":"Écart","oppWhale":"Gros donateur adv."},"win":"VICTOIRE","loss":"DÉFAITE"},"gifters":{"intro":"Les plus gros donateurs de ton roster. Clique sur un donateur pour voir où il donne ailleurs.","cols":{"gifter":"Donateur","total":"Total ◇","thisWeek":"Cette semaine","creatorsSupported":"Créateurs soutenus","alsoFunds":"Soutient aussi (hors agence)"},"outsideMasked":"+ • hors agence","outside":"+ {amount}◇ chez {count} hors agence","exclusive":"exclusif à ton roster"},"tasks":{"intro":"Des tâches CRM simples - attribution, échéance, marquer comme fait. Gratuit avec une inscription Google. Le reste du tableau de bord se débloque quand tu t'abonnes.","placeholder":"Nouvelle tâche... ex. 'Écrire en DM à {'@'}createur au sujet du contrat'","add":"Ajouter","deleteAria":"Supprimer","empty":"Rien pour l'instant. Ajoute ta première tâche ci-dessus."},"teamActivity":{"locked":"L'activité de l'équipe se débloque avec les offres Agency.","defaultTeamName":"Ton équipe","membersActiveOne":"{count} membre actif","membersActiveOther":"{count} membres actifs","all":"Tous","online":"En ligne {count}","idle":"Inactifs {count}","offline":"Hors ligne {count}","searchPlaceholder":"Rechercher un nom ou un e-mail...","empty":"Aucune activité de membre enregistrée pour l'instant. Les membres apparaissent ici dès qu'ils commencent à utiliser le tableau de bord.","noMatch":"Aucun membre ne correspond à ce filtre."},"teamTasks":{"locked":"Les tâches de l'équipe se débloquent avec les offres Agency.","intro":"Attribue du travail à ton équipe - titre, responsable, priorité, échéance. Change le statut sans glisser-déposer, via le menu déroulant de chaque carte."}},"agencyCrm":{"billing":{"title":"Facturation agence","subActive":"Gère ton abonnement, ton moyen de paiement et tes places Telegram. Annule ou reprends à tout moment.","subNone":"Choisis une offre Agency pour débloquer le tableau de bord agence.","loading":"Chargement...","empty":{"title":"Aucune offre agence active","body":"{starter} est facturé au mois. {global} est facturé à la semaine ou au mois. Choisis-en un pour ouvrir le paiement.","eyebrowMonthly":"{plan} - MENSUEL","eyebrowWeekly":"{plan} - HEBDO","perMonth":"/mois","perWeek":"/semaine","billedMonthly":"Facturé chaque mois","billedMonthlyOnly":"Facturé chaque mois - mensuel uniquement","billedWeekly":"Facturé chaque semaine - environ {price} par mois","billedMonthlyOneCharge":"Facturé chaque mois - un seul prélèvement, pas quatre","ctaMonthly":"Prendre {plan} - {price} par mois","ctaWeekly":"Prendre {plan} - {price} par semaine","save":"-{percent} %"},"current":{"eyebrow":"OFFRE ACTUELLE","meta":"{period} · statut :","resuming":"Reprise...","resume":"Réactiver le renouvellement automatique","openingCheckout":"Ouverture du paiement...","renew":"Renouveler maintenant","canceling":"Annulation...","cancelPlan":"Annuler l'offre","nextRenewal":"Prochain renouvellement","cancelsOn":"Annulation à cette date.","nextCharge":"Prochain prélèvement","payment":"Paiement","expires":"Exp. {month}/{year}"},"period":{"weekly":"Hebdo","monthly":"Mensuel","annual":"Annuel","fallback":"Offre agence"},"status":{"cancelingAtPeriodEnd":"annulation en fin de période","unknown":"inconnu","active":"actif","trialing":"actif","past_due":"en retard de paiement","unpaid":"impayé","canceled":"annulé","incomplete":"paiement en attente","incomplete_expired":"paiement non finalisé","paused":"en pause"},"seatStatus":{"active":"active","inactive":"inactive","revoked":"révoquée","pending_invite":"invitation en attente"},"cycle":{"weekly":"hebdomadaire","monthly":"mensuel","annual":"annuel"},"cadence":{"weekly":"par semaine","monthly":"par mois","annual":"par an"},"switch":{"upgradeTo":"Passer à {plan}","switchTo":"Passer à {plan}","toGlobalBody":"{plan} ajoute toutes les fonctionnalités réservées à Global en plus de ce que tu as déjà. Le temps Starter non utilisé t'est crédité.","toStarterBody":"{plan} conserve le tableau de bord agence, le recrutement et l'équipe pour {price} par mois. Tu perds les fonctionnalités réservées à Global ci-dessous ; le temps Global non utilisé t'est crédité.","billedPaypal":"Facturé via PayPal.","billedCard":"Facturé sur ta carte enregistrée.","checking":"Vérification...","globalWeekly":"Global hebdo - {price}/semaine","globalMonthly":"Global mensuel - {price}/mois","starterMonthly":"{plan} - {price}/mois"},"seats":{"title":"Places de l'équipe","titleWithPrice":"Places de l'équipe - {price} par place supplémentaire","pricePerWeek":"{price}/semaine","pricePerMonth":"{price}/mois","includes":"Ton offre inclut {seats} ({used} sur {cap} utilisées).","teamSeats":"{count} places d'équipe","billedWeekly":"Chaque place supplémentaire est facturée à la semaine avec ton offre Agency. Ajouter des places ne facture aujourd'hui que le reste de la semaine en cours.","billedMonthly":"Chaque place supplémentaire est facturée au mois avec ton offre Agency. Ajouter des places ne facture aujourd'hui que le reste du mois en cours.","removeNote":"Retirer une place prend effet immédiatement et le temps non utilisé est crédité sur ta prochaine facture.","extraSeats":"places supplémentaires","testMode":"Mode test - les achats de places ne débitent aucune vraie carte.","add":"Ajouter des places","updating":"Mise à jour...","removeOne":"Retirer une place","unassigned":"Non attribuée","memberFallback":"membre"},"telegram":{"title":"Radar Telegram - places agence","body":"Ton abonnement {plan} inclut {seats}. Scanne le QR code ou touche le lien sur un téléphone/PC pour connecter un appareil. Libère une place à tout moment en envoyant {command} au bot.","seats":"{count} places Telegram","linkActive":"Lien actif pendant {seconds} s","generating":"Génération...","generate":"Générer un lien de connexion Telegram","help":"Un lien associe un appareil. Recommence pour chaque employé, dans la limite de tes places.","qrAria":"QR code Telegram","qrCaption":"Scanne avec l'appareil photo du téléphone ou l'app Telegram","open":"Ouvrir dans Telegram","copied":"Copié","copyLink":"Copier le lien","hintPc":"Sur {device} : touche \"{open}\" - cela lance l'app de bureau ou Telegram Web.","pc":"PC","hintPhone":"Sur {device} : scanne le QR code ou colle le lien dans un navigateur.","phone":"téléphone","generateNew":"Générer un nouveau lien"},"modal":{"paypalCredit":"Ton offre PayPal actuelle est créditée de {credit} pour le temps non utilisé.","paypalCreditDays":"Ton offre PayPal actuelle est créditée de {credit} pour le temps non utilisé ({days} jours).","newPlan":"La nouvelle offre coûte {price} {cadence}.","newPlanFirstCharge":"La nouvelle offre coûte {price} {cadence}, premier prélèvement le {date}.","paypalNote":"PayPal s'ouvre pour approuver le nouvel accord ; l'ancien est annulé dès qu'il est approuvé.","creditUnused":"Crédit pour le temps non utilisé","lineItem":"{plan} {cycle}","tax":"Taxes","creditedNext":"Crédité sur ta prochaine facture","chargedToday":"Débité aujourd'hui","cardNote":"Débité sur ta carte enregistrée. Un seul abonnement, pas de double prélèvement.","keepCurrent":"Garder l'offre actuelle","switching":"Changement...","continuePaypal":"Continuer vers PayPal","confirmChange":"Confirmer le changement"},"cancel":{"title":"Annuler ton abonnement ?","body":"Tu gardes l'accès jusqu'au {date}. Ensuite, le tableau de bord agence, les infos sans masquage, la copie en masse et les alertes de repérage repassent en mode aperçu.","pick":"Choisis comment annuler :","endTitle":"Annuler en fin de période","endSub":"Recommandé. Tu gardes l'accès jusqu'au {date}.","immediateTitle":"Annuler immédiatement","immediateSub":"L'accès prend fin maintenant. Aucun remboursement pour la période en cours.","keep":"Garder l'offre","confirm":"Confirmer l'annulation"},"errors":{"removeSeat":"Impossible de retirer la place.","assignSeat":"Impossible de mettre à jour l'attribution.","cancel":"L'annulation a échoué","resume":"La reprise a échoué","samePlan":"Tu as déjà cette offre.","noSubscription":"Aucun abonnement actif à modifier. Lance plutôt l'offre depuis la page des tarifs agence.","priceFailed":"Impossible de calculer le prix de ce changement. Réessaie.","paypalNoLink":"PayPal n'a pas renvoyé de lien d'approbation. Réessaie.","notCompleted":"Le changement n'a pas abouti. Actualise la page pour vérifier ton offre avant de réessayer.","planChangeFailed":"Le changement d'offre a échoué. Ton offre n'a pas changé.","linkFailed":"Impossible de générer le lien.","clipboardBlocked":"Presse-papiers bloqué - fais un appui long sur le bouton \"Ouvrir dans Telegram\" pour copier manuellement."}},"seatModal":{"close":"Fermer","eyebrow":"PLACES DE L'ÉQUIPE","title":"Ajouter des places supplémentaires","subWeekly":"{price}/semaine par place supplémentaire, facturé chaque semaine avec ton offre Agency. Ton offre inclut déjà {count} places.","subMonthly":"{price}/mois par place supplémentaire, facturé chaque mois avec ton offre Agency. Ton offre inclut déjà {count} places.","testMode":"Mode test - aucune vraie carte ne sera débitée. Utilise une carte de test Stripe.","fewer":"Moins de places","more":"Plus de places","extraSeats":"places supplémentaires","countNoteOne":"Tu as actuellement {current} place supplémentaire. Taille totale de l'équipe après ce changement : {total}.","countNoteOther":"Tu as actuellement {current} places supplémentaires. Taille totale de l'équipe après ce changement : {total}.","dueTodayWeek":"À payer aujourd'hui, pour le reste de la semaine","dueTodayMonth":"À payer aujourd'hui, pour le reste du mois","tax":"Taxes","totalToday":"Total aujourd'hui","thenWeek":"Ensuite, chaque semaine avec ton offre","thenMonth":"Ensuite, chaque mois avec ton offre","review":"Voir le prix","processing":"Traitement...","payAndAdd":"Payer {amount} et ajouter les places","footnote":"Débité sur la carte de ton offre Agency · Sécurisé par Stripe","payBadge":"{count} PLACES SUPPLÉMENTAIRES","bankConfirm":"Ta banque demande une confirmation de la carte avant l'ajout des places.","preparing":"Préparation du formulaire sécurisé...","payButton":"Payer et ajouter les places","payFootnote":"Les places sont ajoutées dès que le paiement est accepté","successTitle":"Places ajoutées","successOne":"Tu as maintenant {count} place supplémentaire. Invite tes coéquipiers depuis la page équipe.","successOther":"Tu as maintenant {count} places supplémentaires. Invite tes coéquipiers depuis la page équipe.","done":"Terminé","errors":{"price":"Impossible de calculer le prix du changement de places.","start":"Le paiement n'a pas pu démarrer. Réessaie.","add":"Impossible d'ajouter les places.","payment":"Échec du paiement."}},"team":{"seoTitle":"Gestion d'équipe - TikTool Agency","title":"Gestion d'équipe","loading":"Chargement de ton équipe...","yourAgency":"ton agence","teammate":"coéquipier","noEmail":"aucun e-mail enregistré","backToDashboard":"Retour au tableau de bord","copy":"Copier","copied":"Copié","roles":{"owner":"propriétaire","manager":"manager","scout":"recruteur","member":"membre"},"error":{"title":"Impossible de charger ton équipe","body":"Un problème est survenu en contactant le service équipe. Réessaie dans un instant.","retry":"Réessayer"},"gate":{"title":"Monte ton équipe de recrutement","body":"Les places d'équipe te permettent d'ajouter des managers et des recruteurs qui partagent l'accès aux données de ton agence - sans abonnement séparé pour eux. Les invitations se débloquent avec les offres Agency.","plans":"Voir les offres agence"},"member":{"title":"Tu fais partie de {agency}","body":"Ton rôle : {role}. Seul le propriétaire de l'agence peut inviter ou retirer des membres. Tu as un accès complet aux données partagées de l'agence."},"owner":{"lead":"Ajoute des managers et des recruteurs à {agency}. Ils partagent ton accès aux données avec un seul abonnement - {count} places sont incluses dans ton offre.","seatsUsed":"places utilisées"},"invite":{"title":"Inviter un coéquipier","sub":"Saisis un e-mail (facultatif) et un rôle. S'il a déjà un compte TikTool, nous l'ajoutons immédiatement ; sinon, tu obtiens un lien d'invitation à partager.","email":"E-mail","optional":"facultatif","emailPlaceholder":"nom{'@'}tonentreprise.com - laisse vide pour un lien seul","role":"Rôle","roleManager":"Manager - voit les créateurs qui lui sont attribués","roleScout":"Recruteur - liste de suivi + copie en masse, sans les revenus","sending":"Envoi...","send":"Envoyer l'invitation","seatLimit":"Limite de places atteinte - retire un membre ci-dessous ou achète des places pour inviter à nouveau.","joined":"{email} a rejoint {agency}","joinedBody":"Rôle : {role}. Il peut se connecter et utiliser le tableau de bord partagé immédiatement.","another":"Inviter quelqu'un d'autre","linkReady":"Lien d'invitation prêt","expires":"Le lien expire dans {days} jours. Tu peux le révoquer à tout moment depuis la liste ci-dessous.","sendAnother":"En envoyer une autre"},"share":{"whatsappAria":"Partager sur WhatsApp","telegramAria":"Partager sur Telegram","emailAria":"Partager par e-mail","smsAria":"Partager par SMS","email":"E-mail","more":"Plus","message":"Tu as été invité à rejoindre mon agence TikTool en tant que {role}. Ouvre le lien pour accepter :","subject":"Rejoins mon agence TikTool"},"list":{"title":"Ton équipe","entriesOne":"{count} entrée","entriesOther":"{count} entrées","presenceNote":"La présence en ligne en temps réel arrive bientôt. Le statut ci-dessous indique si chaque invitation a été acceptée.","empty":"Pas encore de coéquipiers. Envoie ta première invitation ci-dessus pour constituer ton équipe de managers et de recruteurs.","you":"toi","linkOnly":"invitation par lien","pending":"En attente","accepted":"Acceptée","copyLink":"Copier le lien","revoke":"Révoquer","remove":"Retirer","swapTitle":"Besoin de remplacer quelqu'un ?","swapBody":"Retire un membre pour libérer sa place, puis envoie une nouvelle invitation à son remplaçant."},"regions":{"label":"Accès aux régions","saving":"Enregistrement...","saved":"Enregistré","failed":"Échec de l'enregistrement - réessaie","selected":"{count} sélectionnées","all":"Toutes les régions"},"buy":{"title":"Besoin de plus de {count} places ?","includes":"Ton offre inclut {count} places de manager et de recruteur.","includesExtra":"Ton offre inclut {count} places de manager et de recruteur, et tu en as {extra} en plus.","addFromBilling":"Ajoute des places supplémentaires depuis la Facturation - chacune est facturée avec ton offre Agency.","add":"Ajouter des places"},"remove":{"title":"Retirer {name} ?","body":"Il perdra immédiatement l'accès aux données partagées de l'agence et sa place sera libérée. Tu pourras l'inviter de nouveau plus tard.","cancel":"Annuler","removing":"Retrait...","confirm":"Retirer le membre"},"errors":{"invalidEmail":"Saisis un e-mail valide ou laisse vide pour une invitation par lien.","inviteFailed":"L'invitation a échoué. Réessaie.","revoke":"Impossible de révoquer cette invitation.","remove":"Impossible de retirer ce membre."}},"extension":{"seo":{"title":"Extension vérificateur d'éligibilité - Tik.Tools Agency","description":"Vérifie l'éligibilité aux invitations TikTok LIVE depuis le backstage de ton agence avec l'extension Chrome Tik.Tools. Incluse dans chaque offre agence."},"badge":"Outil agence","title":"Le {highlight} pour Chrome","titleHighlight":"vérificateur d'éligibilité","sub":"Vérifie l'éligibilité aux invitations TikTok LIVE directement depuis le backstage de ton agence - sans clé, sans copier-coller. La vérification continue pendant que les résultats arrivent en temps réel sur ta liste partagée.","login":"Connecte-toi pour continuer","unlock":"Débloquer avec Agency","included":"Incluse avec {starter} ({count} vérifications par jour) et {global} (illimité).","download":"Télécharger l'extension","storeSoon":"Version Web Store bientôt disponible","copy":"Copier","copied":"Copié","step1":{"title":"Télécharge et ajoute à Chrome","body":"Télécharge le fichier ci-dessus et décompresse-le dans un dossier que tu garderas (ne le supprime pas - Chrome charge l'extension depuis cet emplacement).","openTab":"Ouvre un nouvel onglet, colle ceci dans la barre d'adresse et appuie sur Entrée :","devMode":"Active le {label} (interrupteur en haut à droite).","devModeLabel":"Mode développeur","loadUnpacked":"Clique sur {label} et sélectionne le dossier décompressé.","loadUnpackedLabel":"Charger l'extension non empaquetée"},"step2":{"title":"Épingle-la","body":"Clique sur l'icône en forme de pièce de puzzle dans la barre d'outils de Chrome, puis sur l'épingle à côté de {name} pour l'avoir toujours à portée de clic."},"step3":{"title":"Connecte-toi avec Tik.Tools","body":"Ouvre l'extension et clique sur {label}. Elle utilise ce même compte - aucune clé API à coller. Ton offre agence la débloque immédiatement ({starter} : {count} vérifications par jour ; {global} : illimité).","loginLabel":"Se connecter"},"step4":{"title":"Connecte le backstage et lance les vérifications","body":"Ouvre ton backstage TikTok LIVE dans le même navigateur, choisis une région dans l'extension, et la connexion se fait automatiquement. Clique sur {label} - les créateurs vérifiés apparaissent sur ta liste avec leur résultat au fur et à mesure.","runLabel":"Lancer","openList":"Ouvrir ta liste de créateurs vérifiés"},"tips":{"title":"Conseils pour couvrir plusieurs régions","body":"Un compte backstage ne peut être connecté qu'une fois par profil Chrome. Pour vérifier plusieurs régions en même temps, utilise {emphasis}, chacun avec l'extension installée et connectée à ce compte. Chaque profil vérifie sa propre région et tous les résultats arrivent sur la même liste partagée ici.","emphasis":"un compte backstage par région, chacun dans son propre profil Chrome","warn":"Utilise des comptes backstage jetables pour les vérifications en masse - jamais le compte principal du propriétaire de l'agence."}},"join":{"seoTitle":"Rejoindre l'agence · TikTool","loading":"Chargement de l'invitation...","unavailable":"Invitation indisponible","notValid":"Invitation non valide","acceptFailed":"Impossible d'accepter l'invitation","home":"← Accueil","eyebrow":"INVITATION AGENCE","invited":"Tu as été invité à rejoindre l'agence en tant que {role}.","clickBelow":"Clique ci-dessous pour accepter et commencer à recruter ensemble.","joining":"Connexion à l'agence...","accept":"Accepter et rejoindre","loginToAccept":"Connecte-toi pour accepter","expiresSoon":"L'invitation expire bientôt.","expiresOn":"L'invitation expire le {date}.","consent":"En acceptant, tu acceptes que le propriétaire de l'agence puisse t'attribuer des créateurs et consulter ton activité."},"drilldown":{"close":"Fermer","memberFallback":"membre","loading":"Chargement de l'activité...","idleToday":"Inactif aujourd'hui","activeToday":"Actif aujourd'hui","listsCopied":"Listes copiées","timePerPage":"Temps par page (aujourd'hui)","page":"Page","time":"Temps","unknownPage":"(inconnue)","noPageTime":"Aucun temps de page enregistré aujourd'hui.","copyLog":"Journal des copies de listes","listFallback":"(liste)","timeline":"Chronologie de l'activité","noEvents":"Aucun événement enregistré aujourd'hui.","event":{"aPage":"une page","viewed":"A consulté {page}","left":"A quitté {page} après {duration}","copiedList":"A copié la liste {list}","copiedListBare":"A copié une liste","idle":"Inactif ({duration})","resumed":"Activité reprise","heartbeat":"Actif"},"duration":{"seconds":"{s} s","minutes":"{m} min {s} s","hours":"{h} h {m} min"},"ago":{"justNow":"à l'instant","minutes":"il y a {n} min","hours":"il y a {n} h","days":"il y a {n} j"}}},"agencyOps":{"common":{"compactK":"{n} k","compactM":"{n} M","hours":"{n} h","filterCreatorsAria":"Filtrer les créateurs","liveNow":"En live","back":"Retour","loading":"Chargement...","close":"Fermer"},"nav":{"dashboard":"Tableau de bord","watchlist":"Liste de suivi","roster":"Roster","health":"Santé du roster","pipeline":"Pipeline de recrutement","tracker":"Suivi en direct","notes":"Notes","archive":"Archives","battles":"Historique des battles","gifters":"Base donateurs","tasks":"Tâches","teamActivity":"Activité de l'équipe","teamTasks":"Tâches de l'équipe","team":"Équipe"},"healthBand":{"risk":"À risque","watch":"À surveiller","healthy":"En forme","unseen":"Pas encore observé"},"health":{"pageTitle":"Santé du roster - Agence","lockTitle":"Santé du roster","lockTextStarter":"La santé du roster, les alertes santé et le récapitulatif santé hebdomadaire font partie de {plan}. Passe à l'offre supérieure depuis la Facturation agence pour voir quels hôtes décrochent.","lockText":"Repère les hôtes qui décrochent avant qu'ils ne disparaissent - avec une offre agence.","title":"Santé du roster","sub":"Chaque hôte est comparé à ses quatre dernières semaines : un petit créateur qui garde sa semaine habituelle apparaît en forme, alors qu'un gros créateur qui divise la sienne par deux non.","updated":"Mis à jour {time}","filterAria":"Filtrer par santé","allHosts":"Tous les hôtes","alerts":{"title":"E-mails santé","sentTo":"Envoyés à {email}, selon le fuseau horaire et l'heure d'envoi de ton digest créateurs.","accountEmail":"l'e-mail de ton compte","daily":"Alerte quotidienne quand un hôte passe À risque","weekly":"Récapitulatif hebdomadaire du roster avec un CSV, le lundi","saveError":"Impossible d'enregistrer. Réessaie dans un instant."},"truncated":"Affichage des {shown} premiers créateurs sur les {total} de ton roster.","unavailable":"Les données de santé sont temporairement indisponibles. Ton roster ne risque rien - réessaie dans quelques minutes.","empty":{"title":"Aucun créateur dans ton roster pour l'instant","sub":"Ajoute des créateurs dans le Suivi en direct, ou signe-les via le pipeline de recrutement, et leur santé s'affichera ici.","cta":"Ajouter des créateurs"},"today":{"title":"Aujourd'hui","sub":"{count} à examiner, les plus urgents d'abord"},"wholeRoster":"Tout le roster","searchPlaceholder":"Filtrer par nom ou {'@'}pseudo","cols":{"creator":"Créateur","health":"Santé","diamonds7d":"Diamants 7 j","diamonds30d":"Diamants 30 j","diamonds90d":"Diamants 90 j","d30":"30 j","d90":"90 j","live7d":"Live 7 j","live30d":"Live 30 j","live90d":"Live 90 j","usualWeek":"Semaine habituelle"},"noMatch":"Aucun créateur ne correspond.","foot":"Les diamants et les heures de live correspondent à ce que nous avons observé en suivant chaque créateur ; les heures de live comptent le temps de diffusion capté. L'historique se construit à partir du jour où un créateur rejoint ton roster. Les créateurs marqués Pas encore observé n'ont aucun live observé sur les 90 derniers jours : ils ne sont donc pas notés et sont exclus des catégories À risque et À surveiller."},"tracker":{"pageTitle":"Suivi en direct - Agence","glassTitle":"Suivi en direct","glassSub":"Suis les cadeaux, les donateurs et le chat de tes créateurs - en direct et jour par jour - avec une offre agence.","glassCta":"Voir les offres agence","yourCreators":"Tes créateurs","addPlaceholder":"Ajoute un créateur - cherche un {'@'}pseudo ou un nom","track":"+ Suivre","notInDirectory":"Pas encore dans notre annuaire.","adding":"Ajout...","trackAnyway":"Suivre {'@'}{handle} quand même","noneFound":"Aucun créateur trouvé.","emptyRoster":"Aucun créateur suivi pour l'instant. Cherche ci-dessus pour en ajouter un - nous commençons à suivre ses cadeaux et son chat immédiatement.","followers":"{count} followers","watching":"spectateurs","stopTracking":"Arrêter de suivre {'@'}{handle}","confirmStop":"Arrêter de suivre {'@'}{handle} ?","history":"{'@'}{handle} - historique","pickCreator":"Choisis un créateur","watch":"Voir","noActivity":"Aucune activité suivie pour ce créateur pour l'instant.","giftsCount":"{count} cadeaux","chatsCount":"{count} messages","dayHeader":"{date} · {'@'}{handle}","pickDay":"Choisis un jour","gifts":"Cadeaux","chat":"Chat","noGifts":"Aucun cadeau ce jour-là.","noChat":"Aucun chat capté ce jour-là.","removeError":"Impossible de retirer le créateur","addError":"Impossible d'ajouter le créateur"},"pipeline":{"pageTitle":"Pipeline de recrutement - Agence","lockTitle":"Pipeline de recrutement","lockText":"Suis chaque créateur de la vérification à la signature, en équipe - avec une offre agence.","title":"Pipeline de recrutement","sub":"Les créateurs que tu as marqués éligibles ou revendiqués dans les classements, du contact à la signature. Un déplacement ici met à jour la revendication visible par toute ton équipe, et un créateur signé rejoint ton roster en un clic.","searchPlaceholder":"Filtrer par {'@'}pseudo","tabsAria":"Étapes du pipeline","unavailable":"Le pipeline est temporairement indisponible. Réessaie dans quelques minutes.","stage":{"checked":"Vérifié","contacted":"Contacté","signed":"Signé","not_interested":"Pas intéressé"},"empty":{"checked":"Les créateurs que tu marques éligibles dans le classement Nouveaux créateurs, ou que tu revendiques dans n'importe quel classement, arrivent ici.","contacted":"Déplace un créateur ici une fois que tu l'as contacté.","signed":"Les créateurs qui ont rejoint ton agence. Ajoute-les à ton roster pour suivre leur santé.","not_interested":"Les créateurs qui ont dit non. Ils restent ici pour que personne ne les contacte deux fois."},"move":{"checked":"Revenir à Vérifié","contacted":"Contacté","signed":"Signé","not_interested":"Pas intéressé"},"claimStatus":{"claimed":"Revendiqué","contacted":"Contacté","responded":"A répondu","interested":"Intéressé","signed":"Signé","not_interested":"Pas intéressé"},"markedEligible":"Marqué éligible","premiumEligible":"Éligible (invitation premium)","you":"toi","onlyOwner":"Seul {name} peut déplacer celui-ci.","onRoster":"Dans ton roster","addToRoster":"Ajouter au roster","showMore":"Afficher {count} de plus","errors":{"teammateOwns":"Ce créateur appartient à un coéquipier : lui seul peut le déplacer.","moveFailed":"Impossible de déplacer ce créateur. Réessaie dans un instant.","rosterFull":"Ton roster est complet. Retire un créateur avant d'en ajouter un autre.","addFailed":"Impossible d'ajouter au roster. Réessaie dans un instant."}},"tasks":{"everyone":"Tout le monde","member":"membre","newTask":"+ Nouvelle tâche","loading":"Chargement des tâches...","status":{"open":"À faire","in_progress":"En cours","done":"Terminé"},"priority":{"low":"Faible","medium":"Moyenne","high":"Élevée"},"archiveAria":"Archiver la tâche","unassigned":"Non attribuée","nothingHere":"Rien ici","modal":{"title":"Nouvelle tâche","fieldTitle":"Titre","titlePlaceholder":"ex. Écrire en DM à {'@'}createur au sujet du contrat","description":"Description","descriptionPlaceholder":"Détails facultatifs...","assignee":"Responsable","priority":"Priorité","dueDate":"Échéance","cancel":"Annuler","saving":"Enregistrement...","create":"Créer la tâche","titleRequired":"Le titre est obligatoire","createError":"Impossible de créer la tâche"}},"intercom":{"team":"Équipe","connected":"Connecté","connecting":"Connexion","searchPlaceholder":"Rechercher des membres...","searchAria":"Rechercher des membres de l'équipe","members":"Membres","noMembers":"Aucun membre ne correspond.","channels":"Canaux","noChannels":"Aucun canal pour l'instant.","directMessages":"Messages privés","noDms":"Cherche un membre pour démarrer une conversation.","loadEarlier":"Charger les messages précédents","sharedImage":"Image partagée","editAria":"Modifier le message","saveEdit":"Enregistrer la modification","cancelEdit":"Annuler la modification","edit":"Modifier","edited":"modifié","closeImage":"Fermer l'image","reactions":{"up":"Pouce levé","heart":"Cœur","check":"Terminé","eyes":"Vu"},"typingOne":"{name} est en train d'écrire...","typingTwo":"{first} et {second} sont en train d'écrire...","typingMany":"Plusieurs personnes sont en train d'écrire...","you":"Toi","attachImage":"Joindre une image","placeholder":"Écris un message...","messageAria":"Message","sendAria":"Envoyer le message","uploading":"Envoi de l'image...","sheetAria":"Chat d'équipe","openChat":"Ouvrir le chat d'équipe","collapseChat":"Réduire le chat d'équipe","pickToStart":"Choisis un canal ou un coéquipier pour commencer.","channel":"Canal","directMessage":"Message privé"},"activity":{"member":"membre","noPage":"Aucune page active","status":{"online":"En ligne","idle":"Inactif","offline":"Hors ligne"},"onlineNow":"En ligne","idleFor":"Inactif depuis {time}","lastSeen":"Vu il y a {time}","ago":"il y a {time}","justNow":"à l'instant","units":{"s":"{n} s","m":"{n} min","h":"{n} h","d":"{n} j"},"roles":{"owner":"Propriétaire","manager":"Manager","scout":"Recruteur","member":"Membre"}}},"accountTools":{"webhooks":{"seo":{"title":"Webhooks - TikTool","description":"Reçois des notifications d'événements live signées HMAC sur ton endpoint HTTPS. Adaptées à ton offre, relancées en cas d'échec, dédoublonnables."},"nav":{"dashboard":"Tableau de bord","docs":"Docs"},"newWebhook":"Nouveau webhook","sub":"Des POST HTTPS signés HMAC envoyés à ton endpoint quand les créateurs suivis passent en LIVE ou terminent leur live. Relancés en cas d'échec, rejouables, dédoublonnables via le champ stable {field}.","loading":"Chargement...","upgrade":{"title":"Les webhooks nécessitent une offre payante","body":"Disponibles avec {basic}, {pro}, {ultra} et {agency}. Tu es sur {tier}.","cta":"Voir les offres"},"stats":{"plan":"Offre","targetsUsed":"Cibles utilisées","dailyQuota":"Quota quotidien","allowedEvents":"Événements autorisés","allowedEventsValue":"{count} sur {total}"},"empty":{"title":"Aucun webhook pour l'instant","body":"Crées-en un pour commencer à recevoir des événements live sur ton endpoint.","cta":"Créer ton premier webhook"},"row":{"untitled":"Sans titre","allCreators":"TOUS les créateurs · firehose","creatorsOne":"{count} créateur","creatorsOther":"{count} créateurs","failStreak":"{count} échecs d'affilée","downgradeNote":"En pause - ton offre actuelle n'inclut plus l'un de ses événements. Passe à l'offre supérieure pour le réactiver automatiquement, ou supprime-le."},"status":{"pausedPlan":"en pause (offre)","disabled":"désactivé","healthy":"opérationnel","failing":"en échec","retrying":"nouvelle tentative","pending":"en attente"},"events":{"liveStart":"Un créateur suivi a lancé un live","liveEnd":"Un créateur suivi a terminé un live","peakViewers":"Le nombre de spectateurs simultanés a franchi un palier","highValueGift":"Cadeau de grande valeur (≥{threshold} diamants) reçu","followerMilestone":"Le nombre de followers a franchi un palier ({range})","eligible":"Un créateur intéressant à recruter est apparu ou a franchi un palier de score de ligue","watchedGift":"Un donateur de ta liste de suivi a envoyé un cadeau égal ou supérieur à ton seuil","hotSpike":"Un créateur a reçu {diamonds}+ diamants en {minutes} minutes","leagueDropout":"Un créateur est sorti d'un classement de division de ligue"},"everyCreator":"tous les créateurs de la plateforme","docs":{"verifyTitle":"Comment vérifier une livraison","verifyBody":"Chaque POST inclut {header} où {formula}. Rejette toute requête datant de plus de {minutes} minutes (fenêtre anti-rejeu).","payloadTitle":"Exemple de payload ({event})","retryTitle":"Politique de relance","retryBody":"Délai de connexion {connect} s, délai de lecture {read} s. Calendrier des relances : {schedule} ({attempts} tentatives, ~{hours} h). Après le nombre maximal de tentatives, l'événement passe en {deadLetter} ; tu peux le rejouer manuellement depuis la page de détail de n'importe quel webhook pendant {days} jours.","deadLetter":"dead-letter","scopingTitle":"Périmètre et volume","scopingIntro":"La liste {field} détermine ce que tu reçois :","scopingEmpty":"{lead} Tu reçois les événements pour {every} - un firehose à fort volume (des centaines d'événements par minute). La plupart des endpoints isolés ne suivent pas, et c'est la cause habituelle de la désactivation automatique d'un webhook.","scopingEmptyLead":"Liste vide = tout.","scopingScoped":"{lead} Jusqu'à {max} pseudos ; tu reçois les événements de ces créateurs uniquement. Recommandé pour pratiquement toutes les intégrations.","scopingScopedLead":"Liste ciblée = uniquement les tiens.","rosterBody":"Pour un roster qui change souvent, gère la liste depuis ton propre service : {endpoint} avec {body} {replaces}. Lis le webhook, calcule le nouvel ensemble et envoie le tableau complet en PATCH à chaque synchronisation - c'est ton ajout/retrait programmatique.","rosterReplaces":"remplace toute la liste","autoTitle":"Désactivation automatique","autoBody":"Une livraison qui échoue à ses {attempts} tentatives devient un {deadLetter}. Après {streak}, le webhook est désactivé automatiquement pour protéger ton endpoint. {reset}, donc un endpoint en bonne santé ne la déclenche jamais. Si un webhook est désactivé, corrige l'endpoint et réactive-le depuis sa page de détail. Si tu es sur le firehose sans périmètre, définis d'abord {field} - aucun endpoint ne tient de façon fiable le firehose complet.","autoStreak":"{count} dead-letters d'affilée","autoReset":"Toute livraison réussie remet ce compteur à zéro","quotaTitle":"Quota quotidien","quotaBody":"Chaque offre a un plafond de livraisons quotidien (affiché en haut de cette page) : {basic} {basicCap}, {pro} {proCap}, {ultra} {ultraCap}, {agency} {agencyCap}. Chaque événement distinct livré compte pour un ; les relances du même événement ne comptent pas à nouveau. Le compteur se réinitialise à {reset}. Une fois le plafond atteint, les événements suivants sont suspendus jusqu'à la réinitialisation - passe à l'offre supérieure pour un plafond plus élevé. Des échecs répétés de l'endpoint désactivent aussi automatiquement un webhook (voir ci-dessus)."},"create":{"title":"Nouveau webhook","close":"Fermer","name":"Nom","optional":"(facultatif)","namePlaceholder":"Production - alertes live Supabase","targetUrl":"URL cible","targetHint":"HTTPS uniquement, pas de réseaux privés","eventTypes":"Types d'événements","requires":"Nécessite {plan}","creators":"Créateurs","creatorsHint":"un pseudo par ligne ; jusqu'à {max}","creatorsWarn":"Si tu laisses ce champ vide, tu reçois {every} - un firehose à fort volume (des centaines d'événements/min) qui peut saturer ton endpoint et entraîner la désactivation automatique du webhook. Liste les créateurs voulus pour limiter les livraisons à eux seuls.","bearer":"Jeton Bearer","bearerHint":"(facultatif, envoyé dans l'en-tête Authorization)","cancel":"Annuler","creating":"Création...","submit":"Créer le webhook"},"secret":{"title":"Enregistre le secret de ton webhook","warn":"Ce secret ne sera plus affiché. Copie-le maintenant.","copied":"✓ Copié","copy":"Copier","saved":"Je l'ai enregistré"},"errors":{"load":"Échec du chargement","create":"Échec de la création"}},"webhookDetail":{"back":"Tous les webhooks","loading":"Chargement...","untitled":"Webhook sans titre","sending":"Envoi...","sendTest":"Envoyer un événement de test","edit":"Modifier","disable":"Désactiver","enable":"Activer","rotating":"Renouvellement...","rotate":"Renouveler le secret","delete":"Supprimer","downgrade":"{lead} Ton offre actuelle n'inclut plus l'un des événements de ce webhook, les livraisons sont donc en pause. Passe à l'offre supérieure pour le réactiver automatiquement (tes événements + ta liste de suivi sont conservés), ou supprime-le.","downgradeLead":"En pause suite à un changement d'offre.","cannotEnable":"Activation impossible :","test":{"succeeded":"Test réussi :","failed":"Test échoué :","result":"HTTP {status} en {ms} ms"},"editForm":{"title":"Modifier le webhook","name":"Nom","namePlaceholder":"Production - alertes live","events":"Événements","upgrade":"(offre supérieure)","creators":"Créateurs - un par ligne, sans {'@'}. Laisse vide pour tous les créateurs suivis (firehose).","creatorsOne":"{count} créateur","creatorsOther":"{count} créateurs","cancel":"Annuler","saving":"Enregistrement...","save":"Enregistrer les modifications"},"stats":{"status":"Statut","secret":"Secret","events":"Événements","creators":"Créateurs","failStreak":"Échecs d'affilée","lastDelivery":"Dernière livraison","allWatched":"tous les suivis","never":"jamais"},"deliveries":{"title":"Livraisons récentes ({days} derniers jours)","empty":"Aucune livraison pour l'instant.","when":"Quand","event":"Événement","creator":"Créateur","attempt":"Tentative","status":"Statut","latency":"Latence","ms":"{ms} ms","replay":"rejouer"},"notFound":"Webhook introuvable.","deleteModal":{"title":"Supprimer ce webhook ?","body":"Cela arrête toutes les futures livraisons vers {url}. Action irréversible.","cancel":"Annuler","confirm":"Supprimer"},"newSecret":{"title":"Nouveau secret de webhook","warn":"L'ancien secret est invalidé immédiatement. Mets à jour ton endpoint maintenant.","copied":"Copié","copy":"Copier","done":"Terminé"},"confirmRotate":"Renouveler le secret ? L'ancien secret cesse de fonctionner immédiatement.","errors":{"save":"Impossible d'enregistrer les modifications.","status":"Impossible de changer le statut.","test":"Le test a échoué","replay":"Échec du rejeu"}},"support":{"seoTitle":"Support - Tik.Tools","back":"Retour au tableau de bord","title":"Support","online":"Nous sommes en ligne - réponse en général en quelques minutes","offline":"Laisse un message et nous te répondrons","loading":"Chargement de ta conversation...","emptyTitle":"Comment pouvons-nous t'aider ?","emptyBody":"Envoie-nous un message et notre équipe te répondra ici.","notSent":"(non envoyé)","placeholder":"Écris ton message...","send":"Envoyer","time":{"now":"maintenant","minutes":"{count} min","hours":"{count} h","days":"{count} j"}}},"pagesMisc":{"showcase":{"hero":{"title":"Créé avec","subtitle":"Projets et intégrations mis en avant, créés par notre communauté avec l'API TikTok LIVE. Propose le tien et sois mis en avant."},"visit":"Visiter","empty":"Aucun projet mis en avant pour l'instant. Sois le premier à proposer le tien !","submit":{"heading":"Propose ton projet","sub":"Tu as créé quelque chose avec TikTool ? Propose-le ci-dessous et nous l'examinerons pour la vitrine.","loginPrompt":"Tu dois être connecté pour proposer un projet.","loginCta":"Inscription / Connexion","nameLabel":"Nom du projet","namePlaceholder":"ex. Mon assistant TikTok","descLabel":"Description","descPlaceholder":"Que fait ton projet ?","urlLabel":"URL du projet","logoLabel":"URL du logo (image carrée)","success":"Projet envoyé pour examen. Nous le mettrons en avant une fois approuvé !","submitting":"Envoi...","submit":"Proposer le projet","errorGeneric":"Un problème est survenu"},"seo":{"title":"Vitrine - Projets créés avec l'API TikTok LIVE","description":"Découvre les projets mis en avant créés avec l'API TikTok LIVE. Vois ce que construisent les développeurs - assistants, analytics, overlays et plus encore. Propose ton propre projet pour être mis en avant.","ogTitle":"Vitrine - Projets créés avec l'API TikTok LIVE","ogDescription":"Découvre les projets de la communauté mis en avant, créés avec l'API TikTok LIVE."}},"agencyNew":{"success":{"tag":"EN COURS DE VALIDATION","title":"Ta fiche est en cours de validation","sub":"On vérifie chaque fiche à la main. Délai moyen : quelques heures.","chat":"DISCUTER AVEC NOUS","view":"Voir ta fiche"},"intro":"Voici l'aperçu en direct de ta fiche. Modifie ce que tu veux directement - tout s'enregistre au fur et à mesure. Rien n'est public tant que nous ne l'avons pas approuvée.","roster":{"title":"Équipe","noteSignedIn":"Cherche ci-dessous pour revendiquer les créateurs que tu représentes.","noteSignedOut":"Revendique tes vrais créateurs après t'être connecté."},"details":{"title":"Détails","languages":"Langues","languagesPlaceholder":"Ajoute une langue, appuie sur Entrée","tags":"Tags","tagsPlaceholder":"Ajoute un tag, appuie sur Entrée","contactEmail":"E-mail de contact","contactPhone":"Téléphone de contact","private":"Privé"},"verify":{"title":"Vérification","copy":"Envoie une capture d'écran du backstage de ton agence (tableau de bord agence LIVE) - c'est ainsi que nous vérifions que l'agence t'appartient.","uploading":"Envoi...","done":"Preuve envoyée - remplacer","upload":"Envoyer une capture du backstage","failed":"Échec de l'envoi de la preuve - réessaie."},"creators":{"title":"Tes créateurs","copy":"Ajoute les créateurs que tu représentes. Tu peux aussi le faire une fois ta fiche approuvée.","searchPlaceholder":"Rechercher des créateurs par {'@'}pseudo ou nom affiché","searchAria":"Rechercher des créateurs","live":"LIVE","claimed":"Revendiqué","claim":"Revendiquer","signIn":"Connecte-toi pour revendiquer des créateurs.","claimFailed":"Échec de la revendication - réessaie."},"submit":{"note":"Tu te connecteras avec Google ou ton e-mail professionnel ; ton brouillon est enregistré et ne sera pas perdu.","submitting":"Envoi...","submit":"Soumettre pour validation","signInSubmit":"Se connecter et soumettre pour validation","failed":"Échec de l'envoi - réessaie."},"seo":{"title":"Référence ton agence - TikTool","description":"Crée gratuitement la fiche de ton agence TikTok LIVE sur TikTool."}}},"captions":{"watch":{"badge":"TRANSCRIPTION LIVE + VIDÉO","title":"Regarde n'importe quel TikTok LIVE avec des sous-titres en temps réel","sub":"Colle un pseudo. Regarde la vidéo live + la transcription à l'écran, traduite dans plus de 20 langues. Utilise l'offre de sous-titres de ton compte.","streamStep":"{n}. Live à regarder","usernameLabel":"Pseudo TikTok","usernamePlaceholder":"{'@'}pseudo ou recherche","liveBadge":"LIVE","keyStep":"{n}. Clé API","keyLabel":"Utiliser cette clé pour les sous-titres","keyHint":"Seules les clés payantes peuvent lancer les sous-titres. Les clés gratuites / Sandbox sont masquées.","languagesStep":"{n}. Langues","sourceLabel":"Source (audio)","autoDetect":"Détection automatique","translateTo":"Traduire en","noTranslation":"Sans traduction","translationHint":"La traduction coûte 2 min par minute réelle d'audio (transcription + 1 traduction). Sans traduction = 1 min/min.","minutesLeft":"Minutes restantes","cycleUsage":"{remaining} / {total} sur ce cycle - réinitialisation au renouvellement","noPlan":"Aucune offre de sous-titres active","upgradePlan":"Passer à l'offre supérieure ->","getPlan":"Choisir une offre ->","stop":"Arrêter les sous-titres","start":"Lancer les sous-titres en direct ->","placeholderTitle":"La vidéo + les sous-titres s'affichent ici","placeholderBody":"Choisis un créateur + clique sur Lancer. La vidéo live en haut, la transcription + la traduction en dessous.","transcript":"Transcription","transcriptTranslation":"Transcription + traduction","statusIdle":"Inactif","statusListening":"Écoute...","statusLive":"En live","waitingAudio":"en attente de l'audio...","overlayLink":"Créer plutôt un overlay OBS ->","manageLink":"Gérer le compte ->","modal":{"close":"Fermer","loginTitle":"Connecte-toi pour commencer","paidTitle":"Il te faut une offre payante","outTitle":"Plus de minutes de sous-titres","loginBody":"Connecte-toi (ou inscris-toi gratuitement) pour utiliser les sous-titres. Chaque nouveau compte démarre avec 10 minutes de démo.","paidBody":"Les sous-titres nécessitent une clé API sur l'offre {plan} ou supérieure. {plan} ({price}/sem.) inclut {hours} h de sous-titres par semaine.","outBody":"Tu as utilisé ton forfait pour ce cycle. Prends des minutes en plus (la recharge automatique garde les sous-titres actifs).","loginCta":"Connexion / Inscription ->","seePlans":"Voir les offres ->","topUp":"Recharger ->","notNow":"Pas maintenant"},"errors":{"offline":"Le live est passé hors ligne. Choisis un autre créateur en live.","connection":"Erreur de connexion au live. Réessaie.","couldNotStart":"Impossible de démarrer"},"seo":{"title":"Regarde n'importe quel live TikTok avec des sous-titres en temps réel - tik.tools","description":"Colle un pseudo TikTok, regarde la vidéo live et obtiens à l'écran la transcription en temps réel + des traductions dans plus de 20 langues. Sans code, sans app."}},"topup":{"close":"Fermer","headline":"Heures de sous-titres","sub":"Les offres de sous-titres regroupent des minutes live + traduites à chaque renouvellement. Recharge automatique quand il reste moins de 10 % (désactivable).","loadingPlans":"Chargement des offres...","weekly":"Hebdo","monthly":"Mensuel","save":"-20 %","mostPopular":"LE PLUS POPULAIRE","perMonth":"/mois","perWeek":"/sem.","planHours":"{hours} heures de sous-titres","loading":"Chargement...","subscribe":"S'abonner →","perMinute":"{price} par minute","fineprint":"{price} · annulable à tout moment","autoRenewNote":"Renouvellement automatique · annulable à tout moment depuis ton tableau de bord","backToPlans":"← retour aux offres","checkoutEyebrow":"Offre de sous-titres","hoursPerMonth":"{hours} heures / mois","hoursPerWeek":"{hours} heures / semaine","settingUp":"Préparation du paiement sécurisé...","subtotal":"Sous-total","tax":"Taxes","totalToday":"Total aujourd'hui","processing":"Traitement...","payNow":"Payer {amount} maintenant","autoRenewMonthly":"Renouvellement automatique chaque mois. Annulable à tout moment.","autoRenewWeekly":"Renouvellement automatique chaque semaine. Annulable à tout moment.","doneTitle":"Offre de sous-titres active","doneBody":"Tes heures sont créditées. Les sous-titres reprennent immédiatement sur ce live.","continue":"Continuer","upgrade":{"eyebrow":"Améliorer l'offre de sous-titres","inPlace":"Mise à niveau directe. Un seul abonnement, pas de double prélèvement.","creditUnused":"Crédit pour le temps {plan} non utilisé","newLine":"Nouvelle offre {plan} {billing}","chargedToday":"Débité sur ta carte aujourd'hui","confirm":"Confirmer la mise à niveau - {amount}","cancel":"Annuler"},"errors":{"needsConfirmation":"La mise à niveau nécessite une confirmation - réessaie.","unexpected":"Réponse inattendue du service de mise à niveau.","upgradeFailed":"La mise à niveau a échoué.","samePlan":"Tu as déjà cette offre.","initFailed":"Le paiement n'a pas pu être initialisé. Réessaie.","mountFailed":"Le formulaire de paiement n'a pas pu se charger. Actualise la page.","checkoutFailed":"Échec du paiement","paymentFailed":"Échec du paiement.","notConfirmed":"Paiement non confirmé. Essaie une autre carte."}}},"site":{"pricing":{"og":{"title":"Des tarifs simples et transparents","subtitle":"{days} jours d'évaluation gratuite, puis des offres à la semaine ou au mois. Aucune carte bancaire pour évaluer.","badge":"TARIFS"}},"home":{"og":{"subtitle":"Connecte-toi à n'importe quel live TikTok via WebSocket. Chat, cadeaux, likes et spectateurs en temps réel."}},"bestTime":{"og":{"title":"Le meilleur moment pour passer en LIVE sur TikTok","subtitle":"Carte de chaleur de l'engagement en temps réel, dans ton fuseau horaire.","badge":"TIMING"}},"featureCard":{"tag":"Fonctionnalité","learnMore":"En savoir plus"},"heroTabs":{"giftFallback":"Cadeau"},"liveDemo":{"giftFallback":"Cadeau"},"bookLiveDemo":{"firstNamePlaceholder":"Camille","agencyPlaceholder":"Acme Live","emailPlaceholder":"toi{'@'}entreprise.com"}},"siteDev":{"api":{"og":{"title":"API TikTok LIVE pour les développeurs","subtitle":"Reçois en flux le chat, les cadeaux, les likes et le nombre de spectateurs de n'importe quelle room TikTok LIVE."}},"agencySdk":{"heroHighlight":"SDK Agency","name":"SDK Agency TikTok LIVE"},"eventSamples":{"labels":{"gift":"Cadeaux virtuels","chat":"Messages du chat","like":"Likes","member":"Arrivées","follow":"Follows","share":"Partages","subscribe":"Abonnements","roomUser":"Nb de spectateurs","emote":"Emotes dans le chat","envelope":"Enveloppes rouges","linkMicBattle":"Battles PK","questionNew":"Q&R","liveShopping":"Live shopping","roomInfo":"Cycle de vie du live","battle":"État de la battle","battleArmies":"Contributeurs de la battle","linkMicOpponentGift":"Cadeaux adverses","linkMic":"Liaison co-host","poll":"Sondages","rankUpdate":"Classements en direct","rankNotice":"Bannière de classement","streamStatus":"Statut du live","control":"Signaux de contrôle","caption":"Sous-titres natifs","giftPanelUpdate":"Panneau de cadeaux","goalUpdate":"Objectifs","superFan":"Super Fans","superFanJoin":"Arrivées de Super Fans","roomPin":"Messages épinglés","barrage":"Barrage","fansEvent":"Fan Club","hostBoard":"Tableau de l'hôte","toast":"Notifications toast","questionSelected":"Question choisie","giftCollectionUpdate":"Collections de cadeaux","linkMicLayout":"Disposition co-host"},"descs":{"gift":"Nom du cadeau, valeur en diamants, nombre de répétitions, séries, expéditeur et relation.","chat":"Chaque message du chat avec les données utilisateur, les badges, la langue et le message auquel il répond.","like":"Lots de likes avec les infos de l'expéditeur et le total cumulé de la room.","member":"Qui entre dans la room, avec la source d'entrée et le nombre actuel de spectateurs.","follow":"Événements de nouveaux followers pendant le live.","share":"Quand des spectateurs partagent le live.","subscribe":"Notifications de nouveaux abonnements payants et de renouvellements.","roomUser":"Mises à jour du nombre de spectateurs en direct et instantané des meilleurs spectateurs.","emote":"Commentaires composés uniquement de stickers / emojis, séparés du chat texte.","envelope":"Lâchers d'enveloppes rouges virtuelles et rafales de portail.","linkMicBattle":"Début de battle, mises à jour du score en direct et résultat.","questionNew":"Questions des spectateurs envoyées au panneau Q&R de l'hôte.","liveShopping":"Événements de live shopping : produit mis en avant, billboard et actualisation des articles.","roomInfo":"Messages de contrôle : connexion prête, métadonnées de la room et statut du live.","battle":"État complet de la battle PK avec les scores des équipes, les ID des hôtes et la disposition.","battleArmies":"Score de battle par hôte avec les meilleurs contributeurs et le cadeau qui l'a fait bouger.","linkMicOpponentGift":"Cadeaux envoyés sur le live de l'hôte PK adverse, détaillés depuis une seule connexion.","linkMic":"Arrivées et départs de co-hosts pour un LIVE multi-invité.","poll":"Cycle de vie d'un sondage pendant le live - ouverture, vote et clôture.","rankUpdate":"Classements des donateurs et des spectateurs de la room.","rankNotice":"Bannières de classement et de ligue affichées aux spectateurs.","streamStatus":"Changements de statut du live - état d'enregistrement et revérifications du contenu.","control":"Signaux de contrôle du live - codes de statut de début, de pause et de fin.","caption":"Sous-titres automatiques natifs de TikTok affichés sur le LIVE, une fenêtre par frame.","giftPanelUpdate":"Actualisation du panneau de cadeaux quand le catalogue de la room change.","goalUpdate":"Progression des objectifs d'abonnés et de cadeaux vers une cible de la room.","superFan":"Niveau Super Fan d'un spectateur dans la room.","superFanJoin":"Un spectateur qui rejoint le club des Super Fans.","roomPin":"Un message du chat épinglé par l'hôte, avec la durée et l'auteur de l'action.","barrage":"Messages barrage mis en avant qui défilent sur le live.","fansEvent":"Événements du fan club, comme les montées de niveau et les actualisations de la communauté.","hostBoard":"Instantané du tableau de classement côté hôte pour la room.","toast":"Notifications système temporaires affichées à l'écran par la room.","questionSelected":"La question choisie par l'hôte dans le panneau Q&R.","giftCollectionUpdate":"Progression et statut d'achèvement des collections de cadeaux.","linkMicLayout":"Disposition des places co-host avec la room et l'utilisateur de chaque emplacement."},"fields":{"gift":{"giftName":"Nom affiché du cadeau envoyé.","diamondCount":"Valeur en diamants d'une unité du cadeau.","repeatCount":"Combien ont été envoyés dans le combo.","repeatEnd":"true quand une série est terminée - additionne sur cette frame.","user":"Profil de l'expéditeur : uniqueId, nickname, statut de follow + d'abonné.","receiverUserId":"Le créateur qui a reçu le cadeau. Dans un LIVE multi-invité, c'est l'invité/l'hôte concerné, pas toujours le propriétaire de la room."},"chat":{"comment":"Le texte du message.","language":"Code de langue du commentaire, détecté automatiquement.","emotes":"Emotes d'abonnés intégrées au message.","user":"Profil de l'auteur, y compris le rôle de modérateur et de follower."},"like":{"likeCount":"Likes de l'expéditeur dans ce lot.","totalLikeCount":"Total cumulé des likes de la room.","user":"Qui a envoyé le lot de likes."},"member":{"enterSource":"D'où vient le spectateur (homepage_hot, onglet Abonnements, recommandation).","viewerCount":"Nombre de spectateurs en direct au moment de l'arrivée.","user":"Le spectateur arrivé."},"follow":{"user":"Le spectateur qui vient de suivre.","actionType":"Code d'action sociale - 3 indique un follow."},"share":{"user":"Le spectateur qui a partagé le live.","actionType":"Code d'action sociale - 13 indique un partage."},"subscribe":{"subMonth":"Nombre de mois d'abonnement consécutifs.","subscribeType":"Nouvel abonnement ou renouvellement.","user":"Le spectateur qui s'abonne."},"roomUser":{"viewerCount":"Nombre actuel de spectateurs simultanés dans la room.","topViewers":"Classement des meilleurs spectateurs avec leur contribution en pièces."},"emote":{"emotes":"ID de l'emote + URL de l'image pour chaque sticker envoyé.","user":"Qui a envoyé l'emote."},"envelope":{"coins":"Total des pièces dans la cagnotte de l'enveloppe.","count":"Combien de spectateurs peuvent récupérer une part.","user":"Qui a lâché l'enveloppe."},"linkMicBattle":{"battleStatus":"start, progress ou end du match PK.","hosts":"Chaque camp avec son total de points en direct.","battleDurationMs":"Durée de la fenêtre de battle."},"questionNew":{"questionText":"La question envoyée par le spectateur.","user":"Qui l'a posée."},"liveShopping":{"action":"Action commerciale - mise en avant, billboard, actualisation.","productId":"ID catalogue du produit mis en avant.","price":"Montant en unités mineures + devise."},"roomInfo":{"status":"Statut de la room - 2 = en live, 4 = terminé.","roomId":"Identifiant unique de la room pour la session.","owner":"Le profil de l'hôte de la room."},"battle":{"status":"Code de phase de la battle - début, en cours ou terminée.","teams":"Chaque camp avec l'ID de l'hôte, son profil et son score en direct.","battleDuration":"Durée de la battle en secondes."},"battleArmies":{"hosts":"Chaque hôte avec le total de l'équipe et le classement détaillé des contributeurs.","lastGift":"Le cadeau qui a déclenché cette mise à jour du score, intégré directement.","secsRemaining":"Secondes restantes dans la fenêtre de battle."},"linkMicOpponentGift":{"senderUserId":"ID du spectateur qui a envoyé le cadeau côté adverse.","opponentRoomId":"ID de la room de l'hôte PK adverse.","diamondCount":"Valeur en diamants par unité du cadeau.","repeatCount":"Compteur de combo en cours dans la transaction."},"linkMic":{"action":"join ou leave pour la place co-host.","users":"Les créateurs co-hosts concernés par le changement."},"poll":{"pollId":"Identifiant de l'instance du sondage.","status":"État du sondage - ouvert, vote en cours ou clos.","optionsPayload":"JSON brut des options du sondage."},"rankUpdate":{"rankType":"Le classement concerné par cette mise à jour.","rankList":"Entrées classées avec l'utilisateur, la position et le score."},"rankNotice":{"rankType":"Code du type d'annonce.","position":"Position de classement affichée sur la bannière.","noticeKey":"Clé de la bannière indiquant de quelle annonce il s'agit."},"streamStatus":{"rawPayload":"Payload de statut brut tel qu'envoyé par la room."},"control":{"action":"Code de contrôle - 3 indique généralement la fin du live."},"caption":{"text":"Texte du sous-titre pour cette fenêtre.","language":"Code de la langue parlée détectée.","isFinal":"false pour un résultat provisoire, true pour une fenêtre définitive."},"giftPanelUpdate":{"panelId":"Identifiant du panneau de cadeaux modifié.","updatedAtSec":"Seconde Unix de l'actualisation du panneau."},"goalUpdate":{"goalKey":"L'objectif auquel appartient cette progression.","contributionLevel":"Niveau de progression vers l'objectif.","metadataJson":"JSON brut avec la cible et les totaux actuels."},"superFan":{"level":"Niveau Super Fan du spectateur.","displayType":"Le statut Super Fan affiché.","user":"Le spectateur Super Fan."},"superFanJoin":{"user":"Le spectateur qui a rejoint le club des Super Fans.","displayType":"Le statut d'arrivée affiché."},"roomPin":{"comment":"Le texte du message épinglé.","durationSeconds":"Combien de temps le message reste épinglé.","user":"Auteur du message épinglé."},"barrage":{"content":"Le texte du message barrage.","displayType":"Le style de barrage utilisé.","user":"Qui a envoyé le barrage."},"fansEvent":{"fanType":"Code de catégorie de l'événement du fan club.","eventKey":"L'événement du fan club déclenché."},"hostBoard":{"rawPayload":"Payload brut du tableau de l'hôte tel qu'envoyé par la room."},"toast":{"toastText":"Le texte de notification affiché aux spectateurs.","scene":"De quel toast il s'agit (ex. live_record)."},"questionSelected":{"questionText":"La question à laquelle l'hôte a choisi de répondre."},"giftCollectionUpdate":{"collectionId":"Identifiant de la collection de cadeaux.","status":"État de la collection - en cours ou terminée."},"linkMicLayout":{"slots":"Chaque place avec son index d'emplacement, l'ID de la room et l'ID de l'utilisateur."}}}},"widgets":{"tinderDeck":{"demoEmptyTitle":"Plus aucune carte de démo ici.","demoEmptyBody":"Abonne-toi à Tik.Tools Agency pour repérer des talents dans chaque région, chaque ligue, chaque jour.","seePlans":"Voir les offres Agency →","waitingTitle":"En attente d'autres créateurs en live...","waitingBody":"Seuls les créateurs actuellement en live dans cette région + ligue s'affichent. De nouvelles cartes apparaissent dès que d'autres lancent leur live.","upgrade":{"eyebrow":"MISE À NIVEAU","title":"Débloque toutes les ligues","blurb":"Tu as vu les cartes de démo de cette ligue. Abonne-toi à l'offre Agency pour repérer des talents dans chaque région et chaque classe, avec des décisions enregistrées et partagées avec toute ton équipe.","hint":"Balaye / flèche → pour voir la ligue suivante"},"live":"LIVE","unmute":"Activer le son","mute":"Couper le son","unmuteAll":"Activer le son de toutes les cartes","muteAll":"Couper le son de toutes les cartes","stamp":{"watch":"À SUIVRE","skip":"PASSER","maybe":"PEUT-ÊTRE"},"profile":"Profil →","skipAria":"Passer","watchAria":"Ajouter à la liste de suivi","hint":"← passer · → liste de suivi · ou fais glisser"},"cardLive":{"userFallback":"utilisateur","giftFallback":"cadeau","sentGift":"a envoyé {gift}","sentGiftCount":"a envoyé {gift} ×{count}","followed":"a commencé à suivre","joined":"a rejoint","liked":"a liké"}},"dataPages":{"gifterTags":{"earlyStriker":"Frappe Précoce","lateCloser":"Finisseur","rhythmGifter":"Donateur Régulier","heavyHitter":"Gros Calibre","loyalFan":"Fan Fidèle","creatorHopper":"Nomade des Créateurs","burstGifter":"Rafale de Cadeaux","whaleGifter":"Baleine","microGifter":"Micro-Donateur"},"regions":{"northAmerica":"Amérique du Nord","latinAmerica":"Amérique latine","colombiaPeruDominicanRepublic":"Colombie, Pérou et République dominicaine","australiaPacific":"Australie et Pacifique","bangladeshBhutanMaldives":"Bangladesh, Bhoutan et Maldives","centralAsia":"Asie centrale","germanyDach":"Allemagne & DACH","iberia":"Péninsule ibérique","centralEurope":"Europe centrale","lusophone":"Pays lusophones","irelandBalticsMalta":"Irlande, pays baltes et Malte","nordics":"Pays nordiques","balkans":"Balkans","nigeriaGhanaKenyaSouthAfrica":"Nigeria, Ghana, Kenya et Afrique du Sud"},"agencyDummy":{"name":"Nom de ton agence","tagline":"Une phrase courte sur ce que fait ton agence","description":"Nous sommes une agence TikTok LIVE qui aide les créateurs à développer leur audience, à passer en live en toute confiance et à gagner plus grâce aux cadeaux.\nNous gérons le planning, le coaching et les paiements pour que nos créateurs puissent se concentrer sur leur show.\nRemplace ce texte par ta propre histoire - avec qui tu travailles, les résultats que tu obtiens et pourquoi les créateurs devraient te rejoindre."}},"regions2":{"dummyRoster":{"yourcreator1":"Ton créateur","yourcreator2":"Étoile montante","yourcreator3":"Hôte du week-end","yourcreator4":"Streamer star des cadeaux"}},"readingHours":{"checkout":{"successTitle":"Paiement reçu","pendingTitle":"Paiement en cours","successHours":"{hours} ajoutées à votre solde.","successPending":"Vos heures sont ajoutées dès que le paiement est confirmé.","backToApp":"Retour à l'app","tryAgain":"Réessayer","failedTitle":"Le paiement n'a pas abouti","payCardPaypal":"Payer par carte ou PayPal","errors":{"generic":"Le paiement n'a pas abouti. Vous n'avez pas été débité.","cardDeclined":"Votre carte a été refusée.","insufficientFunds":"Les fonds de votre carte sont insuffisants.","expiredCard":"Votre carte a expiré.","incorrectCvc":"Le code de sécurité est incorrect.","incorrectNumber":"Le numéro de carte est incorrect.","invalidExpiry":"La date d'expiration n'est pas valide.","processingError":"Votre carte n'a pas pu être traitée. Veuillez réessayer.","authenticationRequired":"Votre banque vous demande de confirmer ce paiement. Veuillez réessayer.","authenticationFailed":"Votre banque n'a pas pu confirmer ce paiement. Vous n'avez pas été débité.","tooManyAttempts":"Trop de tentatives avec cette carte. Essayez une autre carte ou réessayez plus tard.","cardNotSupported":"Cette carte ne prend pas en charge ce paiement. Essayez une autre carte.","checkoutStart":"Le paiement n'a pas pu démarrer. Rien n'a été débité.","notCompleted":"Le paiement n'a pas été finalisé. Vous n'avez pas été débité.","unconfirmed":"Nous n'avons pas encore pu confirmer le paiement. Si vous avez été débité, vos heures arrivent dans quelques minutes.","paypalStart":"Le paiement PayPal n'a pas pu démarrer. Rien n'a été débité.","paypalFailed":"Le paiement PayPal n'a pas abouti. Vous n'avez pas été débité.","paypalLoad":"PayPal n'a pas pu se charger. Essayez une carte ou rechargez la page."}}},"rankCopy":{"title":"Copier tous les noms d'utilisateur de ce classement","lockedTitle":"La copie groupée est une fonctionnalité Agency","copied":"Copiés : {count}","copiedAria":"Noms d'utilisateur copiés dans le presse-papiers : {count}","empty":"Rien à copier","failed":"Échec de la copie","rateLimited":"Trop de copies, réessayez dans une minute"},"ttsLanding":{"seo":{"title":"TikTools - Alerts & TTS : écoutez le chat de votre TikTok LIVE sur iPhone","description":"L'app iPhone qui lit à voix haute le chat de votre TikTok LIVE et joue des alertes pour les cadeaux, nouveaux abonnés, partages et abonnements payants, pour streamer sans garder les yeux rivés sur l'écran."},"og":{"title":"Écoutez le chat de votre LIVE","subtitle":"Le chat TikTok LIVE lu à voix haute sur iPhone, avec des alertes cadeaux et abonnés.","badge":"App iPhone"},"hero":{"eyebrow":"TikTools - Alerts & TTS pour iPhone","title":"Écoutez le chat de votre LIVE","lead":"TikTools lit à voix haute le chat de votre TikTok LIVE sur iPhone, pour streamer sans fixer l'écran. Gardez les yeux sur la caméra sans manquer un seul commentaire.","free":"Lecture gratuite chaque jour : {welcomeHours} heures par jour pendant vos {days} premiers jours, puis {steadyMinutes} minutes par jour."},"store":{"download":"Télécharger dans l'App Store","soon":"Bientôt dans l'App Store"},"features":{"label":"Ce que fait l'app","title":"Tout votre LIVE, à voix haute","items":{"chat":{"title":"Le chat à voix haute","body":"Chaque nouveau commentaire est lu dès qu'il arrive, pour répondre à vos spectateurs sans baisser les yeux sur votre téléphone."},"alerts":{"title":"Alertes cadeaux, abonnés, partages et abonnements","body":"Un son et une bannière pour chaque cadeau, nouvel abonné, partage et abonnement payant. Les gros cadeaux ont droit à leur grand moment."},"voices":{"title":"Une voix par langue","body":"Chaque message est lu dans sa langue avec les voix de votre iPhone. Utilisez n'importe quelle voix iOS et donnez à chaque type d'événement sa propre voix."},"filters":{"title":"Des filtres à votre main","body":"Bloquez des mots, masquez des spectateurs, limitez la longueur des messages et le nombre de commentaires par minute, et ignorez tout ce qui commence par votre préfixe de commande."},"golive":{"title":"Alertes de passage en live","body":"Recevez une notification quand votre LIVE démarre ou quand un créateur que vous suivez passe en live. Un toucher, et le chat se met à parler."},"rankings":{"title":"Classements","body":"Voyez quels créateurs mènent sur TikTok LIVE en ce moment, région par région, directement dans l'app."},"watchlist":{"title":"Liste de créateurs","body":"Gardez vos créateurs favoris dans une liste, voyez quand ils étaient en live pour la dernière fois et choisissez qui vous prévient."}}},"gallery":{"label":"Captures d'écran","title":"Vu de plus près","alt":{"s01":"Écran de lecture de l'app lisant à voix haute le chat d'un LIVE","s02":"Écran d'accueil avec le temps de lecture gratuit du jour","s03":"Bannière d'alerte cadeau au-dessus du chat du LIVE","s04":"Réglages des voix avec une voix différente par langue","s05":"Réglages des filtres pour les mots, spectateurs, liens et commandes","s06":"Notification de passage en live sur l'écran verrouillé de l'iPhone","s07":"Réglages des alertes et liste de créateurs"}},"pricing":{"label":"Tarifs","title":"Du temps de lecture gratuit, chaque jour","free":"Chaque compte dispose de {welcomeHours} heures de lecture par jour pendant les {days} premiers jours, puis de {steadyMinutes} minutes par jour. Le crédit se renouvelle chaque jour et seul le temps passé à lire un LIVE est décompté.","packs":"Vous streamez plus longtemps ? Des packs de temps de lecture optionnels sont proposés en achats intégrés."},"cta":{"title":"Votre chat, dans vos oreilles","body":"Saisissez le nom d'utilisateur du LIVE depuis lequel vous streamez, touchez démarrer, et chaque commentaire est lu dès qu'il arrive."},"legal":{"linksLabel":"Aide et mentions légales de l'app","help":"Aide","privacy":"Politique de confidentialité","terms":"Conditions d'utilisation","disclaimer":"TikTools est une app indépendante, qui n'est ni affiliée à TikTok ni approuvée par TikTok."},"schema":{"offer":"Temps de lecture gratuit chaque jour. Des packs de temps de lecture optionnels sont vendus en achats intégrés."}}}}