Skip to content
TipPage Docs
Esc
navigateopen⌘Jpreview

Grant credits

Grants sub-reward credits to a signed-in viewer - the same operation as the dashboard’s grant form; the credits appear on the viewer’s tip page immediately. Credits can only be granted to viewers who have signed in at least once: an unknown name or id answers 404 viewer_not_signed_in, and nothing is granted. Requires viewers:manage.

POST/viewers/{user}/credits/grant
Authorization
AuthorizationBearer token (tp_live_...) · headerrequired
A TipPage API key, created in Dashboard → Settings → Developer.
Path parameters
userstringrequired
The viewer's Twitch user id, login, or display name (names are case-insensitive; URL-encode names with special characters). All-digit input is tried as a user id first. Prefer the user id in automation - it survives renames and can never be ambiguous.
Request body
requiredapplication/json
amountintegerrequired
Credits to grant.
min 1 · max 100
Responses
200Granted; the fresh balance is returned.
successboolean
grantedinteger
viewerViewer
A viewer who has signed in to the tip page with Twitch.
Show properties
twitch_user_idstring
loginstring
display_namestring
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).
creditsCreditBalance
A viewer's sub-reward credit balance.
Show properties
availableinteger
Credits spendable right now.
totalinteger
Credits ever granted.
usedinteger
Credits already spent.
400`amount` isn't an integer from 1 to 100 (`bad_request`).
errorstringrequired
Human-readable message.
codestring
Machine-readable code (e.g. `missing_scope`, `not_in_queue`).
401Missing or invalid API key (`missing_api_key` / `invalid_api_key`).
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
404No viewer with that name or Twitch user id has ever signed in to this tip page (`viewer_not_signed_in`). Signing in with Twitch is what creates a viewer - until then they can't be looked up or granted credits.
errorstringrequired
Human-readable message.
codestring
Machine-readable code (e.g. `missing_scope`, `not_in_queue`).
409More than one signed-in viewer matches that name (`ambiguous_viewer`) - retry with the Twitch user id.
errorstringrequired
Human-readable message.
codestring
Machine-readable code (e.g. `missing_scope`, `not_in_queue`).
429Rate limit exceeded - check the `RateLimit-*` headers.
errorstring
Request
curl -X POST "https://api.tippage.com/v1/viewers/string/credits/grant" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": 1
}'
Response
{
  "success": true,
  "granted": 0,
  "viewer": {
    "twitch_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"
  },
  "credits": {
    "available": 0,
    "total": 0,
    "used": 0
  }
}