Skip to main content

API Documentation

Pages: API Tokens · Interactive API Docs

API Documentation

Studio Plus

The Statbate Plus API provides programmatic access to analytics data for Studio Plus accounts. Use the in-app interactive docs for exact request and response schemas; use this page for access rules, endpoint families, and production limits.

Access

Authorization: Bearer your-api-token-here

The API also accepts your account identifier as a bearer token for quick testing, but a dedicated API token is safer for scripts and integrations.

Endpoint Families

AreaExamplesUse
Models/model/{site}/{name}/info, /activity, /tips, /sessions, /chatModel profile, earnings, sessions, and chat history
Members/members/{site}/{name}/info, /tips, /model/{model}, /activity, /top-modelsMember spending and activity analysis
Batch members/members/{site}/info/batch, /model-spending/batch, /top-models/batchEfficient bulk lookups for up to 100 members at a time
Messages/messages/searchGlobal message search with room, sender, text, page, and cursor filters
Tags/tags, /tags/searchTag metadata and search
Live room data/room/{site}/{roomname}/online-usersCurrent online user list where supported

Rate Limits

Rate limits use multiple buckets. A request must fit under every bucket that applies to its route.

BucketPaid Studio Plus limitScope
General API account bucket120 requests/minuteShared by authenticated API endpoints that use the general API throttle
General API IP bucket600 requests/minuteShared by traffic from the same real client IP
/messages/search account bucket120 requests/minuteSeparate from the general API bucket; split by query shape
/messages/search IP bucket180 requests/minuteSeparate from the general API IP bucket; split by query shape
Batch endpoint account bucket120 requests/minutePer batch endpoint bucket
Batch endpoint IP bucket600 requests/minutePer batch endpoint bucket and real client IP

An authenticated principal is the Statbate account/user, not each individual API token. Multiple API tokens under one account share the same 120/min account bucket. Using multiple IP addresses does not increase one account above 120/min. Multiple accounts or tokens on the same IP can still hit the shared 600/min IP bucket.

Only the per-minute buckets above are enforced. Parallel requests can still receive 429 Too Many Requests when one of those buckets is exhausted.

Rate-limit responses include standard headers such as X-RateLimit-Limit and X-RateLimit-Remaining. On 429 responses, use Retry-After and X-RateLimit-Reset for backoff.

Batch Endpoint Limits

EndpointInput capDate/range capNotes
POST /members/{site}/info/batch100 namesFixed trailing 30-day daily token payloadNo custom range; no field filtering; snapshot-backed fields refresh about every 5 minutes
POST /members/{site}/model-spending/batch100 usernames or names31 daysRequires model_username or model; optimized for "member spent on this model" lookups
POST /members/{site}/top-models/batch100 names31 daysReturns up to 50 top models per member

Batch endpoints are designed to reduce request volume. If you are calling many single-member endpoints in a loop, check whether a batch endpoint can replace that pattern before requesting higher raw limits.

GET /messages/search supports room, sender, text query, date range, zero-based page pagination, and opaque cursor / next_cursor pagination. per_page is clamped to 10-500. Page-mode totals are windowed, not exact full-result counts.

Its rate-limit buckets are separate from the general API buckets. The account limit is still 120/min, but it is counted separately from the general API limit. The IP limit is lower at 180/min. Message-search limits are also split by query shape, so browsing a room and running text searches do not necessarily consume the same exact limiter key.

Higher Limits And API Features

If current limits are not enough, contact support before building around higher request volume. In many cases, the same use case can be handled with a batch endpoint, a different endpoint shape, or a more efficient request pattern.

When requesting higher limits or a new API feature, include:

  • endpoints you call
  • expected request volume
  • whether the workload is real-time or batch
  • data you are trying to collect
  • whether a batch endpoint or different response shape would solve the problem

Contact: