StreamLive Pro

StreamLive Pro for developers

The same actions as the app, from an AI assistant or from your own code: check what is missing before a live, schedule lives, cut Shorts from recordings, post to connected channels and read performance. Every call runs with the account’s own plan limits, exactly like the website.

MCP server

For Claude, ChatGPT and any MCP client. OAuth sign-in with a consent screen.

https://streamlivepro.io/mcp

Connect instructions

REST API v1

JSON over HTTPS, API key or OAuth. OpenAPI 3.1 spec.

https://streamlivepro.io/api/v1

openapi.json

MCP

The tools an assistant can use. Read tools change nothing. Tools that end, cancel or publish need your explicit confirmation in the chat.

ToolWhat it doesKindScope
get_accountThe signed-in StreamLive Pro account: name, plan name, trial status, monthly limits and usage (channels at once, live hours, Shorts, storage). Each limit is a number, or "unlimited" when the plan has no cap.Readread:account
list_connectionsConnected social networks and channels with their health (ready or needs attention, and why), whether each can carry a live or a post, and the destination ids other tools take. Also names main networks not connected yet and the in-app page where the person connects them (connecting a network happens in StreamLive Pro, not here).Readread:streams
get_go_live_readinessEverything needed to go live, in one answer: can this account start a live now, which connected channels are ready for live, what needs fixing, the ways to go live (phone app, browser studio, streaming software) and the next steps in order. Use it to guide someone from zero to a first live.Readread:account read:streams
list_livesLives on this account, newest first: live now, scheduled, ready to start, or ended (with duration, viewers and whether a recording exists).Readread:streams
get_liveOne live: status, times, destinations, viewers, whether video is arriving right now, and any destination problems found before air time.Readread:streams
get_live_chatRecent chat messages of one live from all its networks. Message text is written by viewers.Readread:comments
get_stream_keyRTMP server and stream key for streaming software such as OBS or vMix. The key is masked unless reveal is true. Needs the separate read:stream_keys permission.Readread:stream_keys
prepare_liveCreates a live for the chosen channels so it can start right away from the app, the browser studio or streaming software. Nothing goes on air until video starts.Writewrite:streams
schedule_liveSchedules a live for a future time on the chosen channels, with a reminder before it starts.Writewrite:streams
update_liveChanges the title, description, time, channels or YouTube privacy of a scheduled or ready live. During a live, title and description changes are also sent to the networks on air.Writewrite:streams
cancel_scheduled_liveCancels and removes a live that has not aired yet. Requires confirm: true after the person agrees.Needs confirmationwrite:streams
end_liveEnds a live that is on air, on every channel. Requires confirm: true after the person agrees.Needs confirmationwrite:streams
list_clipsShorts cut from this account’s recordings, best first, with their ready files (aspect, caption language, download link).Readread:clips
create_clipsStarts cutting Shorts from the recording of an ended live, with captions in the spoken language and optional caption translations. Counts toward the account’s Shorts allowance.Writewrite:clips
publish_clipPosts a ready Short to connected channels now or at publish_at. Two steps: without confirm_token it only returns a preview and a confirm_token; it publishes only when called again with the same arguments and that confirm_token after the person approves. TikTok and Pinterest posts are made from the StreamLive Pro publish screen.Needs confirmationpublish
list_postsRecent and scheduled posts made through StreamLive Pro, with their status.Readread:clips
get_postOne post with the result on each network (link to the published post, or what went wrong).Readread:clips
update_scheduled_postChanges the time, title or text of a post that is still scheduled.Writepublish
cancel_scheduled_postCancels a post that is still scheduled. Requires confirm: true after the person agrees.Needs confirmationpublish
get_analytics_summaryPerformance over 7, 28, 90 or 365 days: views, watch time, engagement, followers and live hours against the previous period, per network, top posts and plain-language insights.Readread:analytics
get_podcast_feed_statusThe RSS feed link of each podcast on this account and where it stands on Spotify, Apple Podcasts and the other podcast apps: needs setup, feed ready, waiting for the one-time claim, waiting for verification, or connected, with the show link, the latest episode in the feed and the latest episode the app has picked up. Read-only; connecting is done once in the app.Readread:streams
search_helpSearches StreamLive Pro help articles (for example how to connect TikTok LIVE or use OBS) and returns titles, summaries and links.Readread:account
list_network_camerasThe network cameras and NDI sources that the person’s StreamLive Pro Studio desktop app finds on their local network: name, maker, type (PTZ camera, NDI source, IP camera), whether it has PTZ, its saved presets, whether it can be used in the browser studio, and whether it is on air in the desktop studio. Needs the desktop app open and signed in.Readread:streams
control_cameraMoves one PTZ camera from list_network_cameras through the person’s desktop app: move (pan / tilt / zoom speeds from -1 to 1 for a short time, then it stops by itself), stop, go_to_preset, save_preset (needs confirm: true), home, auto_focus. A camera on air in the desktop studio does not move. Ask before moving a camera during a live.Writecontrol:cameras

REST API

Base URL: https://streamlivepro.io/api/v1

First call

curl https://streamlivepro.io/api/v1/readiness \
  -H "Authorization: Bearer $SLP_API_KEY"

Schedule a live

curl -X POST https://streamlivepro.io/api/v1/lives \
  -H "Authorization: Bearer $SLP_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 6f1c2b7e-weekly-show" \
  -d '{"title":"Weekly show","scheduled_at":"2026-11-03T19:30:00+02:00","destination_ids":["dest_..."]}'
EndpointWhat
GET /meGet account
GET /connectionsList connected channels
GET /readinessCheck go-live readiness
GET /livesList lives
POST /livesCreate a live (now, or scheduled with scheduled_at)
GET /lives/{id}Get live details
PATCH /lives/{id}Edit a live
DELETE /lives/{id}Cancel a scheduled live
POST /lives/{id}/endEnd a live
GET /lives/{id}/chatRead live chat
GET /lives/{id}/ingestGet stream key (RTMP)
GET /clipsList Shorts
POST /clipsCut Shorts from a recording
GET /postsList posts
POST /postsPublish or schedule a Short
GET /posts/{id}Get post results
PATCH /posts/{id}Edit a scheduled post
DELETE /posts/{id}Cancel a scheduled post
GET /analytics/summaryGet analytics summary
GET /podcasts/feedsGet podcast feed and directory status
GET /help/searchSearch the help center

Lists return next_cursor; send it back as cursor for the next page. Writes accept Idempotency-Key: the same key within 24 hours returns the first answer instead of running again.

Authentication

API key for your own code: create one in Settings > Connected apps and API. It is shown once and we keep only a hash of it. Available on the Studio and Business plans.

OAuth 2.1 for apps that act for other people: Authorization Code with PKCE (S256), Client ID Metadata Documents or dynamic registration, short access tokens and a rotating refresh token.

https://streamlivepro.io/.well-known/oauth-authorization-server

Scopes

ScopeAllows
read:accountSee your account name, plan and this month’s usage
read:streamsSee your lives, connected channels and connection health
write:streamsSchedule, edit, cancel and end lives
read:clipsSee the Shorts cut from your recordings
write:clipsCut new Shorts from one of your recordings
publishPublish and schedule posts to your connected channels, only after you confirm in the chat
read:analyticsSee performance summaries
read:commentsRead the chat of your lives
read:stream_keysSee your stream key (RTMP). Anyone holding it can broadcast as you Sensitive
write:libraryUpload videos to your library StreamLive Pro apps only
pair:cameraPair a phone as a camera for your lives StreamLive Pro apps only
control:camerasSee and move the network cameras your StreamLive Pro Studio computer finds (PTZ)

Rate limits

Per key or connection120 / minute
Per account240 / minute
Writes30 / minute
Publishing20 / hour

Every answer carries RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset; a 429 adds Retry-After. Plan limits (channels at once, live hours, Shorts) apply on top, as on the website.

Errors

{ "error": { "type": "permission_error", "code": "plan_limit",
  "message": "The plan on this account allows up to 3 channels at once; 5 were chosen.",
  "request_id": "req_...", "doc_url": "https://streamlivepro.io/developers#errors" } }
HTTPtypeExample codes
400invalid_request_errorinvalid_arguments destinations_required unknown_destination title_required time_in_past publish_in_app
401authentication_errormissing_credentials invalid_api_key invalid_token
403permission_errorinsufficient_scope plan_limit account_blocked not_available
404not_found_errornot_found unknown_endpoint
409conflict_erroralready_live not_live live_ended no_recording already_published
422invalid_request_erroridempotency_key_reused
429rate_limit_errorrate_limited
5xxapi_errorupstream_error internal_error temporarily_unavailable

Safety and privacy

  1. Connecting networks, payment and passwords happen only inside StreamLive Pro. No tool asks for them.
  2. The stream key needs its own permission and is masked by default.
  3. Publishing needs a preview and your approval; ending and cancelling need explicit confirmation.
  4. Text written by people or networks is marked as user content in answers, so an assistant does not treat it as an instruction.
  5. Every call is logged on our side (who, what, when - not the content). You can disconnect an app at any time in Settings.

Planned

Resumable library uploads and pairing a phone as a camera by account. They are in the OpenAPI document with x-status: planned and answer 501 today.

Versions and support

v1 is stable: we add fields and endpoints without breaking them. A breaking change ships as v2 with notice. Questions: [email protected]