Skip to content
TipPage Docs
Esc
navigateopen⌘Jpreview

List signed-in viewers

Every account that has signed in to the tip page (Twitch or Kick), most recently signed-in first, each with the person’s sub-reward credit balance (summed across their linked accounts, so a viewer who signed in here with both shows two rows with the same balance). Viewers who have never signed in don’t appear - signing in is what creates a viewer. Requires viewers:read.

GET/viewers
Authorization
AuthorizationBearer token (tp_live_... or tpat_...) · headerrequired
A TipPage API key (`tp_live_...`, created in Dashboard → Settings → Developer) or an OAuth 2.0 access token (`tpat_...`, see the OAuth guide). Both carry the same scopes and are accepted on every endpoint.
Query parameters
limitinteger
min 1 · max 100 · default: 25
beforestring
Cursor - the `next_cursor` from a previous page. Opaque (base64url of the sign-in time + platform + id the page ended on); a malformed one answers `400 bad_cursor`. Returns viewers who signed in before that point.
Responses
200One page of viewers, newest sign-up first.
viewersobject[]
Show properties
Array of object
platformstringrequired
Allowed:twitchkick
platform_user_idstringrequired
loginstring | null
display_namestring | null
profile_image_urlstring<uri> | null
subscriber_tierinteger
Their sub tier as last seen (0 = not subscribed).
Allowed:0123
first_signed_in_atstring<date-time>
When they first signed in to this tip page.
last_active_atstring<date-time>
Last account activity seen (profile refreshes included).
linked_accountsobject[]required
The person's OTHER platform accounts - never the one above. Empty when nothing is linked.
Show properties
Array of object
platformstring
Allowed:twitchkick
platform_user_idstring
loginstring | null
display_namestring | null
creditsCreditBalance
A viewer's sub-reward credit balance.
Show properties
availableinteger
Credits spendable right now.
totalinteger
Credits ever granted.
usedinteger
Credits already spent.
has_moreboolean
next_cursorstring | null
Pass as `before` to fetch the next page.
400Unknown `before` cursor (`bad_cursor`).
errorstringrequired
Human-readable message.
codestring
Machine-readable code (e.g. `missing_scope`, `not_in_queue`).
401Missing or invalid credential (`missing_api_key` / `invalid_api_key`, or `invalid_token` for an expired/revoked OAuth access token).
errorstringrequired
Human-readable message.
codestring
Machine-readable code (e.g. `missing_scope`, `not_in_queue`).
403The key lacks the required scope (`missing_scope`).
errorstringrequired
Human-readable message.
codestring
Machine-readable code (e.g. `missing_scope`, `not_in_queue`).
required_scopestring
429Rate limit exceeded - check the `RateLimit-*` headers.
errorstring
Request
curl -X GET "https://api.tippage.com/v1/viewers" \
  -H "Authorization: Bearer YOUR_TOKEN"
Response
{
  "viewers": [
    {
      "platform": "twitch",
      "platform_user_id": "123456789",
      "login": "gigachad42",
      "display_name": "GigaChad42",
      "profile_image_url": "http://example.com",
      "subscriber_tier": 0,
      "first_signed_in_at": "2019-08-24T14:15:22Z",
      "last_active_at": "2019-08-24T14:15:22Z",
      "linked_accounts": [
        {
          "platform": "twitch",
          "platform_user_id": "string",
          "login": "string",
          "display_name": "string"
        }
      ],
      "credits": {
        "available": 0,
        "total": 0,
        "used": 0
      }
    }
  ],
  "has_more": true,
  "next_cursor": "string"
}