Ways to extend Owncast
There are two ways to build on top of Owncast, and the right one depends on where your code runs.
Update your version of Owncast for plugin support.
Plugins run inside the Owncast server. The server loads them at runtime, sandboxes them, and hands them events as they happen: chat messages, stream start and stop, fediverse activity, and HTTP requests. A plugin can add its own admin UI and serve endpoints without you hosting anything separately. Reach for a plugin when the behavior belongs with the server, such as a chat bot, a moderation rule, or a custom admin panel.
Web APIs and webhooks connect Owncast to code you run somewhere else. Webhooks push events out to your application when something happens on the stream. The web APIs let your application send actions back in, like posting a chat message, authenticated with an access token. Reach for these when you already run a service, when you are wiring Owncast into a third-party tool, or when the integration should live outside the server.
Both can run at the same time, reacting to the same events. Owncast also speaks ActivityPub, so your server federates with the fediverse without any extra code.
Improve this page
See something missing or incorrect? Edit this page and improve the documentation for everyone.
Related Documents
- Extend Owncast with pluginsWrite plugins that run sandboxed inside Owncast to react to chat, post to the fediverse, serve HTTP endpoints, and add UI.
- Owncast Web APIsIntegrate external code with Owncast over HTTP, using webhooks to receive events and access-token APIs to send actions.
- PluginsAn overview of Owncast plugins, what they can do for your stream, and how to install one from the admin.
- Run Owncast as a Background ServiceSetup owncast to run as a system service, automatically starting when your server does.
- Owncast Plugin APIsEvery owncast.* method your plugin can call from inside a handler, what it returns, and what permission it needs.
- What You Need to Run OwncastThere is no hard and fast rule for how much resources Owncast will use, since it depends on your configuration and requirements, but here are some examples.
