{"id":1537,"date":"2025-08-31T20:32:24","date_gmt":"2025-08-31T18:32:24","guid":{"rendered":"https:\/\/www.rocworks.at\/wordpress\/?p=1537"},"modified":"2025-08-31T20:32:24","modified_gmt":"2025-08-31T18:32:24","slug":"%e2%9c%a8-having-a-rest-and-graphql-api-on-the-wincc-unified-comfort-panel-its-possible","status":"publish","type":"post","link":"https:\/\/www.rocworks.at\/wordpress\/?p=1537","title":{"rendered":"\u2728 Having a REST and GraphQL API on the WinCC Unified Comfort Panel \u2014 it&#8217;s possible!"},"content":{"rendered":"\n<p>I recently started using my panel at home and felt lost without having such API&#8217;s.&nbsp;<\/p>\n\n\n\n<p>So I decided to change that:<\/p>\n\n\n\n<p>\u2705 I built a lightweight REST and a GraphQL server for WinCC Unified.<\/p>\n\n\n\n<p>\u2705 Implemented in Rust, they\u2019re native, lightweight, single executables.<\/p>\n\n\n\n<p>\u2705 Low memory and CPU footprint &#8211; thanks to Rust!<\/p>\n\n\n\n<p>\u2705 With GraphQL, there is also support for tag &amp; alarm subscriptions! \ud83d\udd04<\/p>\n\n\n\n<p>I always prefer using GraphQL \u2014 I find it tedious to constantly refer to separate REST documentation. But for some simple use cases, REST is perfectly fine.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-1024x768.jpg\" alt=\"\" class=\"wp-image-1540\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-1024x768.jpg 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-300x225.jpg 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-768x576.jpg 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-1536x1152.jpg 1536w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/IMG_1680-1-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-scaled.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"521\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-1024x521.png\" alt=\"\" class=\"wp-image-1541\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-1024x521.png 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-300x153.png 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-768x390.png 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-1536x781.png 1536w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-BrowseTags-1-2048x1041.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"742\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag-1024x742.png\" alt=\"\" class=\"wp-image-1542\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag-1024x742.png 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag-300x218.png 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag-768x557.png 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag-1536x1114.png 1536w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-ReadTag.png 1862w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"689\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe-1024x689.png\" alt=\"\" class=\"wp-image-1543\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe-1024x689.png 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe-300x202.png 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe-768x517.png 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe-1536x1033.png 1536w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/GraphQL-Subscribe-2048x1378.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-BrowseTags.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"778\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-BrowseTags-1024x778.png\" alt=\"\" class=\"wp-image-1544\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-BrowseTags-1024x778.png 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-BrowseTags-300x228.png 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-BrowseTags-768x583.png 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-BrowseTags.png 1398w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-ReadTag.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"794\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-ReadTag-1024x794.png\" alt=\"\" class=\"wp-image-1545\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-ReadTag-1024x794.png 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-ReadTag-300x233.png 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-ReadTag-768x596.png 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/REST-ReadTag.png 1302w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"565\" src=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-1024x565.png\" alt=\"\" class=\"wp-image-1546\" srcset=\"https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-1024x565.png 1024w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-300x166.png 300w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-768x424.png 768w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-1536x847.png 1536w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-2048x1130.png 2048w, https:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2025\/08\/htop-672x372.png 672w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>I recently started using my panel at home and felt lost without having such API&#8217;s.&nbsp; So I decided to change that: \u2705 I built a lightweight REST and a GraphQL server for WinCC Unified. \u2705 Implemented in Rust, they\u2019re native, lightweight, single executables. \u2705 Low memory and CPU footprint &#8211; thanks to Rust! \u2705 With &hellip; <a href=\"https:\/\/www.rocworks.at\/wordpress\/?p=1537\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">\u2728 Having a REST and GraphQL API on the WinCC Unified Comfort Panel \u2014 it&#8217;s possible!<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1537","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"_links":{"self":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1537"}],"version-history":[{"count":1,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1537\/revisions"}],"predecessor-version":[{"id":1547,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1537\/revisions\/1547"}],"wp:attachment":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}