Changelog
What changed in the developer API and the overlay document format.
October 2026
- The marketplace. New:
GET /market,/market/:slugand/market/:slug/preview; inventory items carryitemKindand a theme'smembers. The overlay document (stillschema: 1, additive) gainskind(overlayorwidget), any canvas size from 1 to 8192, the settings invarswith{{key}}variables andbindings, picture settings ({ "kind": "var", "key": … }), andparticleslayers.GET /catalog/overlayslists only overlays. Documents without any of this are unchanged. - The sound catalog. New:
GET /sounds,/sounds/categories,/sounds/:soundIdand/sounds/:soundId/audio, with a new API key scopesounds:read. Existing keys don't have it; create a new key to use it. - v1 introduced: catalog, inventory, overlays, API keys with scopes, a per-account rate limit (10 requests a minute), and the desktop app OAuth flow.
- Desktop sign-in also accepts the
forgecast://auth/callbackdeep link asredirect_uri(the desktop app uses it); loopback redirects still work. New: the app updater endpointGET /api/app/update/{target}/{arch}/{current}. - Groups and keyframes. The overlay document (still
schema: 1, additive) gainsgrouplayers andgroupId, and themanualKeyframes block the editor writes. Documents without them are unchanged. Brand logos in the editor are ordinaryshape: "path"layers.
Desktop app sign-in
Sign a person in to ForgeCast from a native app with OAuth 2.0 and PKCE. For scripts and servers, use an API key instead.
Build plugins
Plugins are small Lua programs that add to ForgeCast. React to chat, filter it, build your own windows and Dashboard boxes, and call other websites.

