Skip to content
TipPage Docs
Esc
navigateopen⌘Jpreview

Queue a video

Put a video straight into the media queue, no tip attached - it plays on the overlay through the normal queue like any other request. The URL goes through the same validation as every entry route: platform parsing, playability checks, and the streamer’s banned-videos list. Queued items carry requested_via: "api" and fire the media.created webhook. Requires media:control.

POST/media
Authorization
AuthorizationBearer token (tp_live_...) · headerrequired
A TipPage API key, created in Dashboard → Settings → Developer.
Request body
requiredapplication/json
urlstring<uri>required
The video URL (YouTube and other supported platforms).
start_timeinteger
Start offset in seconds.
min 0 · default: 0
namestring
Display name shown in the queue ("requested by").
max length 100 · default: "API"
Responses
201Queued.
mediaQueueMediaItem
A media item in the pending queue.
Show properties
order_idstring
donor_namestring
media_urlstring<uri>
media_start_timeinteger
Start offset in seconds.
video_titlestring | null
video_thumbnailstring<uri> | null
video_durationinteger
Duration in seconds (0 = unknown).
platformstring
requested_viastring
tip | chat | admin | channel_point | ...
is_replayboolean
queued_atstring<date-time>
400Invalid, unplayable, or banned video (`invalid_media`), or missing url (`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
429Rate limit exceeded - check the `RateLimit-*` headers.
errorstring
Request
curl -X POST "https://api.tippage.com/v1/media" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "http://example.com",
  "start_time": 0,
  "name": "API"
}'
Response
{
  "media": {
    "order_id": "string",
    "donor_name": "string",
    "media_url": "http://example.com",
    "media_start_time": 0,
    "video_title": "string",
    "video_thumbnail": "http://example.com",
    "video_duration": 0,
    "platform": "youtube",
    "requested_via": "string",
    "is_replay": true,
    "queued_at": "2019-08-24T14:15:22Z"
  }
}