{"id":1180,"date":"2026-02-14T23:37:06","date_gmt":"2026-02-14T22:37:06","guid":{"rendered":"https:\/\/stagelight.app\/?p=1180"},"modified":"2026-02-14T23:40:12","modified_gmt":"2026-02-14T22:40:12","slug":"stagelight-api","status":"publish","type":"post","link":"https:\/\/stagelight.app\/index.php\/2026\/02\/14\/stagelight-api\/","title":{"rendered":"StageLight API"},"content":{"rendered":"\n<p>StageLight Now Integrates with Companion \u2013 Control Your Stage Like Never Before!<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">The Perfect Marriage: StageLight Meets Companion<\/h2>\n\n\n\n<p>Your lighting show just got a whole lot more powerful! With the new <strong>StageLight API<\/strong>, you can now control your fixtures and cue lists directly from <strong>Elgato&#8217;s Companion<\/strong> and your <strong>StreamDeck<\/strong>. No more complicated workarounds \u2013 pure control with the press of a button.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s New?<\/h2>\n\n\n\n<p>The <strong>StageLight API<\/strong> gives you UDP-based control over:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cue Lists<\/strong> \u2013 Activate\/deactivate, set levels, advance to the next cue<\/li>\n\n\n\n<li><strong>Fixture Control<\/strong> \u2013 Toggle fixtures, flash them, and adjust intensity<\/li>\n\n\n\n<li><strong>Tempo Control<\/strong> \u2013 Tap-tempo and live BPM adjustments<\/li>\n<\/ul>\n\n\n\n<p>All through a standardized protocol that works seamlessly with Companion.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How It Works \u2013 Step by Step<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Enable the StageLight API<\/h3>\n\n\n\n<p>Open <strong>StageLight<\/strong> on your device and navigate to:<\/p>\n\n\n\n<p><strong>Settings &gt; Protocols &gt; StageLight API &gt; Enable<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-1024x768.jpeg\" alt=\"\" class=\"wp-image-1183\" srcset=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-1024x768.jpeg 1024w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-300x225.jpeg 300w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-768x576.jpeg 768w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-1536x1151.jpeg 1536w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-2048x1535.jpeg 2048w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-920x690.jpeg 920w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/sl-api-790x593.jpeg 790w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The API will then listen on port <strong>60100<\/strong> (UDP) and wait for your commands.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Connect Companion to StageLight<\/h3>\n\n\n\n<p>In <strong>Companion<\/strong>, you&#8217;ll need to set up a <strong>Generic UDP Module<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-1024x572.png\" alt=\"\" class=\"wp-image-1186\" srcset=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-1024x572.png 1024w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-300x167.png 300w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-768x429.png 768w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-1536x857.png 1536w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-2048x1143.png 2048w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-udp-1236x690.png 1236w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open your Companion interface<\/li>\n\n\n\n<li>Go to <strong>Connections &gt; Add Connection<\/strong><\/li>\n\n\n\n<li>Select <strong>Generic UDP<\/strong><\/li>\n\n\n\n<li>Ensure port <strong>60100<\/strong> is configured<\/li>\n\n\n\n<li>Enter the IP address of your StageLight device<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Create Your StreamDeck Buttons<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"569\" src=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-1024x569.png\" alt=\"\" class=\"wp-image-1184\" srcset=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-1024x569.png 1024w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-300x167.png 300w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-768x427.png 768w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-1536x853.png 1536w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-2048x1137.png 2048w, https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/bf-button-1242x690.png 1242w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Now you can create custom buttons on your <strong>StreamDeck<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Button Action<\/strong>: Send UDP Command<\/li>\n\n\n\n<li><strong>Payload<\/strong>: Use the hex payloads from the <a href=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/StageLight_API_Documentation.pdf\">StageLight API Documentation<\/a><\/li>\n\n\n\n<li><strong>Examples<\/strong>:<\/li>\n\n\n\n<li>Toggle a cue list: <code>010001000003<\/code><\/li>\n\n\n\n<li>Set fixture to 75%: <code>0100020100024B<\/code><\/li>\n\n\n\n<li>Tap tempo: <code>01000300<\/code><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Real-World Use Cases<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Seamless Scene Transitions<\/h3>\n\n\n\n<p>Press a button on your StreamDeck \u2192 Next cue loads automatically \u2192 Smooth transitions without ever opening the app.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Live Fixture Control<\/h3>\n\n\n\n<p>Adjust LED intensity, flash fixtures, or switch them off directly from your StreamDeck \u2013 while you&#8217;re on stage.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Real-Time Tempo Control<\/h3>\n\n\n\n<p>Use the tap-tempo feature to sync your lighting design to the beat in real time.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Complete API Documentation<\/h2>\n\n\n\n<p>For all command details, payload structures, and additional configuration options, check out the <strong><a href=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/StageLight_API_Documentation.pdf\">StageLight API Documentation<\/a><\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Troubleshooting<\/h2>\n\n\n\n<p><strong>API not responding?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u2713 Make sure the API is enabled in Settings<\/li>\n\n\n\n<li>\u2713 Verify the port number (should be 60100)<\/li>\n\n\n\n<li>\u2713 Check that Companion and StageLight are on the same network<\/li>\n<\/ul>\n\n\n\n<p><strong>Command not working?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u2713 Use the correct hex format without spaces or prefixes<\/li>\n\n\n\n<li>\u2713 Double-check the exact payload structure in the <a href=\"https:\/\/stagelight.app\/wp-content\/uploads\/2026\/02\/StageLight_API_Documentation.pdf\">API Documentation<\/a><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Get Started Today!<\/h2>\n\n\n\n<p>Your lighting control just leveled up. With <strong>StageLight + Companion + StreamDeck<\/strong>, you&#8217;ve got a powerhouse setup for live shows, events, and productions.<\/p>\n\n\n\n<p><strong>Have fun with it \u2013 and let your stage shine! <\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>StageLight Now Integrates with Companion \u2013 Control Your Stage Like Never Before!<\/p>\n","protected":false},"author":1,"featured_media":1182,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_eb_attr":"","footnotes":""},"categories":[1,126,68],"tags":[137,136,61,130,129,138],"class_list":["post-1180","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","category-integrations","category-module-3-like-a-pro","tag-protocol","tag-streamdeck","tag-streaming","tag-studio","tag-studio-lighting","tag-udp"],"_links":{"self":[{"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/posts\/1180","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/comments?post=1180"}],"version-history":[{"count":7,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/posts\/1180\/revisions"}],"predecessor-version":[{"id":1193,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/posts\/1180\/revisions\/1193"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/media\/1182"}],"wp:attachment":[{"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/media?parent=1180"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/categories?post=1180"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stagelight.app\/index.php\/wp-json\/wp\/v2\/tags?post=1180"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}