{"id":1389,"date":"2023-08-16T09:12:00","date_gmt":"2023-08-16T09:12:00","guid":{"rendered":"https:\/\/joseamaita.com\/en\/?p=1389"},"modified":"2023-08-16T14:44:24","modified_gmt":"2023-08-16T14:44:24","slug":"opc-router-tutorial-rest","status":"publish","type":"post","link":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/","title":{"rendered":"OPC Router Tutorial REST"},"content":{"rendered":"\n<p>Following the sixth part of the <a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial\/\">OPC Router tutorial<\/a>, I&#8217;m presenting how to connect web applications to industrial automation systems via the REST interface. Remember, we&#8217;re configuring and running a project for \u201cPap\u00edn\u201d, a fictional potato bread factory.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Why_an_OPC_Router_tutorial_with_REST\" >Why an OPC Router tutorial with REST?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Considerations\" >Considerations<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Prerequisites\" >Prerequisites<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Schematic_Diagram\" >Schematic Diagram<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#What_is_REST\" >What is REST?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#What_is_a_RESTful_API\" >What is a RESTful API?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Use_of_REST_in_the_industrial_automation_world\" >Use of REST in the industrial automation world<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Designing_a_simple_REST_API\" >Designing a simple REST API<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Working_with_OPC_Router_REST_and_SQL_Server\" >Working with OPC Router, REST and SQL Server<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Knowing_your_Plugins\" >Knowing your Plugins<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Knowing_your_Transfer_Objects\" >Knowing your Transfer Objects<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Configuring_your_Plugins\" >Configuring your Plugins<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Checking_your_Plugins\" >Checking your Plugins<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Working_with_Folders_and_Connections\" >Working with Folders and Connections<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Create_your_First_Basic_Test_Resource\" >Create your First Basic Test Resource<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Compile_Save_and_Publish_your_OPC_Router_Project_Configuration_with_REST\" >Compile, Save and Publish your OPC Router Project Configuration with REST<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Test_HTTP_requests_with_Swagger_and_Postman\" >Test HTTP requests with Swagger and Postman<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Swagger\" >Swagger<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Postman\" >Postman<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#API_testing_with_Swagger\" >API testing with Swagger<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#API_testing_with_Postman\" >API testing with Postman<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#Creating_Other_Resources\" >Creating Other Resources<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#GetMessage2\" >\/GetMessage2<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#LastMCurrPln01\" >\/LastMCurrPln01<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#LastMTorqPln02\" >\/LastMTorqPln02<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#LastMSpdPln03\" >\/LastMSpdPln03<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#LastValueLoclocationvariable\" >\/LastValueLoc{location}{variable}<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Why_an_OPC_Router_tutorial_with_REST\"><\/span>Why an OPC Router tutorial with REST?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Because &#8220;learning by doing&#8221; with examples is fun. Also, this protocol can offer us fascinating use cases: the capacity to create, read, update and delete information from industrial automation systems through the implementation of web-enabled applications, which it&#8217;s a perfect option when we want to integrate different types of modern technological solutions. See below a list of posts that complete this tutorial:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial\/\"><\/a><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial\/\">Getting Started with OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-sql\/\"><\/a><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-sql\/\">Connect an OPC DA server to Microsoft SQL Server<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-mqtt\/\"><\/a><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-mqtt\/\">Connect an MQTT data source to InfluxDB Cloud<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-calculator\/\"><\/a><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-calculator\/\">Perform multiple calculations within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-linux\/\"><\/a><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-linux\/\">Run an OPC Router application with Linux and Docker<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-simulator\/\">Build a process data simulator with Python, CSV and OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\">Explore basic RESTful web services within OPC Router<\/a> (this post)<\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-telegram\/\">Build a Telegram basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-sms\/\">Build an SMS basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-whatsapp\/\">Build a WhatsApp basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-teams\/\">Build a Teams basic interaction within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-backend\/\">Explore advanced RESTful web services within OPC Router<\/a><\/li><li><a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-portainer\/\">Run an OPC Router application with Portainer<\/a><\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Considerations\"><\/span>Considerations<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>From this point on, we must download and install OPC Router v4.27.5016.75 or later to make this feature work appropriately. Also, <strong>OPC Router Config<\/strong> was renamed to <strong>OPC Router Management<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Prerequisites\"><\/span>Prerequisites<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Firstly, you&#8217;ll need:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Google Chrome, Mozilla Firefox, or Microsoft Edge web browser \ud83c\udf10<\/li><li>Postman application \ud83d\udce7<\/li><li>Microsoft SQL Server database \ud83e\uddf1<\/li><li>Schematic diagram \ud83d\udcdd<\/li><li><strong>OPC Router Management<\/strong> application \ud83d\udcbb<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Schematic_Diagram\"><\/span>Schematic Diagram<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>To illustrate this idea better, look at this:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"974\" height=\"548\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_042-1.png\" alt=\"opc router tutorial rest 1\" class=\"wp-image-1551\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_042-1.png 974w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_042-1-300x169.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_042-1-768x432.png 768w\" sizes=\"auto, (max-width: 974px) 100vw, 974px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"What_is_REST\"><\/span>What is REST?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_002-1024x576.png\" alt=\"opc router tutorial rest 2\" class=\"wp-image-1393\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_002-1024x576.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_002-300x169.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_002-768x432.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_002.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Recently, <strong>REST<\/strong> (the acronym for <strong>RE<\/strong>presentational <strong>S<\/strong>tate <strong>T<\/strong>ransfer) has emerged as the standard architectural design for web services and web APIs. Consists of a software architectural style for data exchange between distributed hypermedia systems.<\/p>\n\n\n\n<p>The characteristics of a REST system are defined by six (6) design rules:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>Client-Server<\/strong>: There should be a separation between the server that offers a service, and the client that consumes it.<\/li><li><strong>Stateless<\/strong>: Each request from a client must contain all the information required by the server to carry out the request. In other words, the server cannot store information provided by the client in one request and use it in another request.<\/li><li><strong>Cacheable<\/strong>: The server must indicate to the client if requests can be cached or not.<\/li><li><strong>Layered System<\/strong>: Communication between a client and a server should be standardized in such a way that allows intermediaries to respond to requests instead of the end server, without the client having to do anything different.<\/li><li><strong>Uniform Interface<\/strong>: The method of communication between a client and a server must be uniform.<\/li><li><strong>Code on demand<\/strong>: Servers can provide executable code or scripts for clients to execute in their context. This constraint is the only one that is optional.<\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"What_is_a_RESTful_API\"><\/span>What is a RESTful API?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"480\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_003.png\" alt=\"opc router tutorial rest 3\" class=\"wp-image-1395\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_003.png 800w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_003-300x180.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_003-768x461.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p>The REST architecture was originally designed to fit the HTTP protocol that the World Wide Web uses. So, a REST API (or REST Application Programming Interface) is the respective implementation of the REST architecture of a concrete system. It&#8217;s then also referred to as a RESTful API or RESTful web service.<\/p>\n\n\n\n<p>The main idea of RESTful APIs is the notion of resources, which are represented by URIs (Uniform Resource Identifier). The clients send requests to these URIs using the methods defined by the HTTP protocol (basic actions like reading, creating, updating or deleting), and possibly as a result of that the state of the affected resource changes.<\/p>\n\n\n\n<p>The HTTP request methods are typically designed to affect a given resource in standard ways:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table style=\"border-style:solid;border-width:2px\"><thead><tr><th><strong>HTTP Method<\/strong><\/th><th><strong>Action<\/strong><\/th><\/tr><\/thead><tbody><tr><td>GET<\/td><td>Obtain information about one or more resources<\/td><\/tr><tr><td>POST<\/td><td>Create a new resource<\/td><\/tr><tr><td>PUT<\/td><td>Update a resource<\/td><\/tr><tr><td>DELETE<\/td><td>Delete a resource<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>In short, the interface defines resources and any associated parameters that describe the resource. For the RESTful API of a system, the provider usually provides API documentation in which all resources and their parameters can be viewed.<\/p>\n\n\n\n<p>The REST design does not require a specific format for the data provided with the requests. In general data is provided in the request body as a JSON blob, or sometimes as arguments in the query string portion of the URL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Use_of_REST_in_the_industrial_automation_world\"><\/span>Use of REST in the industrial automation world<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>When it comes to coupling systems, REST almost always plays a key role. Especially in connection with web-enabled systems, REST is one of the leading standards for system integration. But make no mistakes: although a modern technology, the concept behind REST is tried and tested. Connecting systems via REST is simple and effective due to its simple design. And because it is stateless, it is easy to scale. In the industrial sector, REST is used in many domain areas.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Designing_a_simple_REST_API\"><\/span>Designing a simple REST API<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The task of designing a web service or API that adheres to the REST guidelines then becomes an exercise in identifying the resources that will be exposed and how they will be affected by the different request methods.<\/p>\n\n\n\n<p>For our &#8220;Pap\u00edn&#8221; factory, the first thing to do is to decide what is the route prefix URL to access this service. For example, we could expose this service as:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>\/PPN-PBF-19_OPCRouterREST\/api\/v1.0<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<p>We have decided to include here the scope of the application and the version of the API in the URL. For the scope, it&#8217;s useful to provide a namespace that separates this service from others that can be running on the same system. Including the version in the URL can help with making updates in the future, since new and potentially incompatible functions can be added under a new version, without affecting applications that rely on the older functions.<\/p>\n\n\n\n<p>The next step is to select the resources that will be exposed by this service:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>HTTP Method<\/th><th>Resource Name<\/th><th>Resource Action<\/th><\/tr><\/thead><tbody><tr><td>GET<\/td><td>\/GetMessage1<\/td><td>First basic integration test (&#8220;Hello, World!&#8221;).<\/td><\/tr><tr><td>GET<\/td><td>\/GetMessage2<\/td><td>Second basic integration test (time-series data point).<\/td><\/tr><tr><td>GET<\/td><td>\/LastMCurrPln01<\/td><td>Most recent value of <strong>MCurr<\/strong> in PLN01.<\/td><\/tr><tr><td>GET<\/td><td>\/LastMTorqPln02<\/td><td>Most recent value of <strong>MTorq<\/strong> in PLN02.<\/td><\/tr><tr><td>GET<\/td><td>\/LastMSpdPln03<\/td><td>Most recent value of <strong>MSpd<\/strong> in PLN03.<\/td><\/tr><tr><td>GET<\/td><td>\/LastValueLoc{location}{variable}<\/td><td>Most recent value of any available variable in any specific location.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Working_with_OPC_Router_REST_and_SQL_Server\"><\/span>Working with OPC Router, REST and SQL Server<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Knowing_your_Plugins\"><\/span>Knowing your Plugins<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin with, the configuration of <a href=\"https:\/\/www.opc-router.com\/\">OPC Router<\/a> starts with your licensed plugins. There are several categories such as &#8220;Cloud \/ IoT&#8221;, &#8220;Topfloor&#8221;, &#8220;Shopfloor&#8221;, &#8220;Storage&#8221;, &#8220;Advanced&#8221;, &#8220;Messaging&#8221; and &#8220;Printer&#8221;.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"303\" height=\"363\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_046.png\" alt=\"opc router tutorial rest 4\" class=\"wp-image-1553\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_046.png 303w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_046-250x300.png 250w\" sizes=\"auto, (max-width: 303px) 100vw, 303px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"302\" height=\"985\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_047.png\" alt=\"opc router tutorial rest 5\" class=\"wp-image-1554\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_047.png 302w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_047-92x300.png 92w\" sizes=\"auto, (max-width: 302px) 100vw, 302px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>Make sure to notice <strong>REST<\/strong> and <strong>MS SQL<\/strong>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Knowing_your_Transfer_Objects\"><\/span>Knowing your Transfer Objects<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, we&#8217;re going to need four (4) transfer objects to solve our use cases:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"302\" height=\"1011\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_048.png\" alt=\"opc router tutorial rest 6\" class=\"wp-image-1555\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_048.png 302w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_048-90x300.png 90w\" sizes=\"auto, (max-width: 302px) 100vw, 302px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Specifically, make sure to notice <strong>REST trigger<\/strong>, <strong>JSON Write<\/strong>, <strong>Constant Values<\/strong> and <strong>Database<\/strong>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Configuring_your_Plugins\"><\/span>Configuring your Plugins<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Following identification, OPC Router needs to configure every licensed plugin. Let&#8217;s start creating a new plug-in instance with <strong>REST<\/strong> (double click on the object) and the <strong>REST APIs<\/strong> tab:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"310\" height=\"338\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_049.png\" alt=\"opc router tutorial rest 7\" class=\"wp-image-1557\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_049.png 310w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_049-275x300.png 275w\" sizes=\"auto, (max-width: 310px) 100vw, 310px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"237\" height=\"239\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_050.png\" alt=\"opc router tutorial rest 8\" class=\"wp-image-1558\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_050.png 237w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_050-150x150.png 150w\" sizes=\"auto, (max-width: 237px) 100vw, 237px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, define a new REST API for our system:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"434\" height=\"509\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_051.png\" alt=\"opc router tutorial rest 9\" class=\"wp-image-1559\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_051.png 434w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_051-256x300.png 256w\" sizes=\"auto, (max-width: 434px) 100vw, 434px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Checking_your_Plugins\"><\/span>Checking your Plugins<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Following identification, OPC Router needs to configure every licensed plugin. Let&#8217;s check the plug in instance with <strong>MS SQL<\/strong> (double click on object):<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"307\" height=\"620\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_052.png\" alt=\"opc router tutorial rest 10\" class=\"wp-image-1560\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_052.png 307w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_052-149x300.png 149w\" sizes=\"auto, (max-width: 307px) 100vw, 307px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, check the local Microsoft SQL Server database storage and press the &#8220;Check connection&#8221; button to test connectivity.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"588\" height=\"551\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_053.png\" alt=\"opc router tutorial rest 11\" class=\"wp-image-1561\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_053.png 588w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_053-300x281.png 300w\" sizes=\"auto, (max-width: 588px) 100vw, 588px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"588\" height=\"551\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_054.png\" alt=\"opc router tutorial rest 12\" class=\"wp-image-1562\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_054.png 588w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_054-300x281.png 300w\" sizes=\"auto, (max-width: 588px) 100vw, 588px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Working_with_Folders_and_Connections\"><\/span>Working with Folders and Connections<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Create a &#8220;REST&#8221; folder to arrange your resources better. For example, name <em>P_PBF19_REST<\/em> to your main connections folder.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"307\" height=\"317\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_055-1.png\" alt=\"opc router tutorial rest 13\" class=\"wp-image-1567\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_055-1.png 307w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_055-1-291x300.png 291w\" sizes=\"auto, (max-width: 307px) 100vw, 307px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Create_your_First_Basic_Test_Resource\"><\/span>Create your First Basic Test Resource<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>To begin with, let&#8217;s create our first basic resource as &#8220;<strong>GET GetMessage1<\/strong>&#8220;:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"592\" height=\"567\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_056-1.png\" alt=\"opc router tutorial rest 14\" class=\"wp-image-1568\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_056-1.png 592w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_056-1-300x287.png 300w\" sizes=\"auto, (max-width: 592px) 100vw, 592px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"453\" height=\"317\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_057.png\" alt=\"opc router tutorial rest 15\" class=\"wp-image-1570\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_057.png 453w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_057-300x210.png 300w\" sizes=\"auto, (max-width: 453px) 100vw, 453px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Watch an empty design panel so you can start building your connection:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"346\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_058-1024x346.png\" alt=\"opc router tutorial rest 16\" class=\"wp-image-1571\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_058-1024x346.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_058-300x101.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_058-768x260.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_058.png 1269w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, drag and drop these two blocks as shown here:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"442\" height=\"79\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_059.png\" alt=\"opc router tutorial rest 17\" class=\"wp-image-1573\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_059.png 442w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_059-300x54.png 300w\" sizes=\"auto, (max-width: 442px) 100vw, 442px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, edit the REST trigger block and make sure it looks like this:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"477\" height=\"651\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_060.png\" alt=\"opc router tutorial rest 18\" class=\"wp-image-1574\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_060.png 477w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_060-220x300.png 220w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"410\" height=\"267\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_061.png\" alt=\"opc router tutorial rest 19\" class=\"wp-image-1575\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_061.png 410w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_061-300x195.png 300w\" sizes=\"auto, (max-width: 410px) 100vw, 410px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, edit the &#8220;Constant Values&#8221; block with a fixed &#8220;Hello, World!&#8221; message.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"477\" height=\"584\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_062.png\" alt=\"opc router tutorial rest 20\" class=\"wp-image-1576\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_062.png 477w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_062-245x300.png 245w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"182\" height=\"72\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_063.png\" alt=\"opc router tutorial rest 21\" class=\"wp-image-1578\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this instant, make sure both transfer objects look like these:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"698\" height=\"262\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_064.png\" alt=\"opc router tutorial rest 22\" class=\"wp-image-1579\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_064.png 698w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_064-300x113.png 300w\" sizes=\"auto, (max-width: 698px) 100vw, 698px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Finally, make sure to link blocks as shown here to complete your first basic integration test:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"694\" height=\"254\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_065.png\" alt=\"opc router tutorial rest 23\" class=\"wp-image-1580\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_065.png 694w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_065-300x110.png 300w\" sizes=\"auto, (max-width: 694px) 100vw, 694px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Compile_Save_and_Publish_your_OPC_Router_Project_Configuration_with_REST\"><\/span>Compile, Save and Publish your OPC Router Project Configuration with REST<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>At this time, you need to compile, save and publish the connection you just created by clicking the &#8220;Go productive&#8221; button:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"339\" height=\"995\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_066.png\" alt=\"opc router tutorial rest 24\" class=\"wp-image-1582\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_066.png 339w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_066-102x300.png 102w\" sizes=\"auto, (max-width: 339px) 100vw, 339px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"695\" height=\"258\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_067.png\" alt=\"opc router tutorial rest 25\" class=\"wp-image-1584\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_067.png 695w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_067-300x111.png 300w\" sizes=\"auto, (max-width: 695px) 100vw, 695px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Meanwhile, the project is saved and published.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"418\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_068.png\" alt=\"opc router tutorial rest 26\" class=\"wp-image-1586\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_068.png 673w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_068-300x186.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"418\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_069.png\" alt=\"opc router tutorial rest 27\" class=\"wp-image-1587\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_069.png 673w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_069-300x186.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, press the &#8220;Yes&#8221; button to start the OPC Router service and run your application.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"418\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_070.png\" alt=\"opc router tutorial rest 28\" class=\"wp-image-1588\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_070.png 673w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_070-300x186.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, watch the connection state:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"338\" height=\"373\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_071.png\" alt=\"opc router tutorial rest 29\" class=\"wp-image-1589\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_071.png 338w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_071-272x300.png 272w\" sizes=\"auto, (max-width: 338px) 100vw, 338px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Test_HTTP_requests_with_Swagger_and_Postman\"><\/span>Test HTTP requests with Swagger and Postman<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Swagger\"><\/span>Swagger<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"285\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_082-1024x285.png\" alt=\"opc router tutorial rest 30\" class=\"wp-image-1610\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_082-1024x285.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_082-300x83.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_082-768x213.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_082.png 1396w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><a href=\"https:\/\/swagger.io\/\">Swagger<\/a> is a set of open-source tools built around the <a href=\"https:\/\/github.com\/OAI\/OpenAPI-Specification\">OpenAPI Specification<\/a> (previously known as the Swagger Specification) that can help you design, build, document and consume REST APIs. The major Swagger tools include:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/editor.swagger.io\/?_ga=2.55601135.576455742.1663254188-1009490556.1662553494\">Swagger Editor<\/a> \u2013 browser-based editor where you can write OpenAPI definitions.<\/li><li><a href=\"https:\/\/github.com\/swagger-api\/swagger-ui\">Swagger UI<\/a> \u2013 renders OpenAPI definitions as interactive documentation that <strong>lets your users try out the API calls directly in the browser<\/strong>.<\/li><li><a href=\"https:\/\/github.com\/swagger-api\/swagger-codegen\">Swagger Codegen<\/a> \u2013 generates server stubs and client libraries from an OpenAPI definition.<\/li><li><a href=\"https:\/\/editor-next.swagger.io\/?_ga=2.21988735.576455742.1663254188-1009490556.1662553494\">Swagger Editor Next (beta)<\/a> \u2013 browser-based editor where you can write and review OpenAPI and AsyncAPI definitions.<\/li><li><a href=\"https:\/\/github.com\/swagger-api\/swagger-core\">Swagger Core<\/a> \u2013 Java-related libraries for creating, consuming, and working with OpenAPI definitions.<\/li><li><a href=\"https:\/\/github.com\/swagger-api\/swagger-parser\">Swagger Parser<\/a> \u2013 standalone library for parsing OpenAPI definitions.<\/li><li><a href=\"https:\/\/github.com\/swagger-api\/apidom\">Swagger APIDom<\/a> \u2013 provides a single, unifying structure for describing APIs across various description languages and serialization formats.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Postman\"><\/span>Postman<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"534\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_083-1024x534.png\" alt=\"opc router tutorial rest 31\" class=\"wp-image-1612\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_083-1024x534.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_083-300x157.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_083-768x401.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_083.png 1194w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>There are various tools for quick and easy testing of REST interfaces. One of the best known is Postman. <a href=\"https:\/\/www.postman.com\/\">Postman<\/a> is an API platform for building and using APIs, which simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"API_testing_with_Swagger\"><\/span>API testing with Swagger<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>.To start testing with the Swagger framework, do this:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Firstly, make sure the OPC Router service is running:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"224\" height=\"135\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_031.png\" alt=\"opc router tutorial rest 32\" class=\"wp-image-1507\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>In the REST API &#8220;PPN_REST&#8221;, copy the link from the <strong>OpenAPI UI URL<\/strong>. For example, you should see something like this:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-4 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<pre class=\"wp-block-code\"><code>http:&#47;&#47;DESKTOP-92S2B9F:8383\/PPN-PBF-19_OPCRouterREST\/api\/v1.0\/openapi\/index.html?url=%2fPPN-PBF-19_OPCRouterREST%2fapi%2fv1.0%2fdata.json<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"935\" height=\"509\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_072.png\" alt=\"opc router tutorial rest 33\" class=\"wp-image-1592\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_072.png 935w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_072-300x163.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_072-768x418.png 768w\" sizes=\"auto, (max-width: 935px) 100vw, 935px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this instant, open a web browser and enter the copied OpenAPI UI URL in a new tab:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"125\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_073-1024x125.png\" alt=\"opc router tutorial rest 34\" class=\"wp-image-1594\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_073-1024x125.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_073-300x37.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_073-768x94.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_073.png 1220w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>When prompted, enter your stored credentials:<\/li><\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-5 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"417\" height=\"87\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_034.png\" alt=\"opc router tutorial rest 35\" class=\"wp-image-1511\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_034.png 417w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_034-300x63.png 300w\" sizes=\"auto, (max-width: 417px) 100vw, 417px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"333\" height=\"293\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_035.png\" alt=\"opc router tutorial rest 36\" class=\"wp-image-1515\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_035.png 333w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_035-300x264.png 300w\" sizes=\"auto, (max-width: 333px) 100vw, 333px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>Simultaneously, notice the Swagger main page:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"934\" height=\"531\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_074.png\" alt=\"opc router tutorial rest 37\" class=\"wp-image-1596\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_074.png 934w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_074-300x171.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_074-768x437.png 768w\" sizes=\"auto, (max-width: 934px) 100vw, 934px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, click the resource &#8220;<strong>\/GetMessage1<\/strong>&#8221; to display its options:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"689\" height=\"407\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_075.png\" alt=\"opc router tutorial rest 38\" class=\"wp-image-1597\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_075.png 689w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_075-300x177.png 300w\" sizes=\"auto, (max-width: 689px) 100vw, 689px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, press the &#8220;Try it out&#8221; button to begin the test:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"444\" height=\"326\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_038.png\" alt=\"opc router tutorial rest 39\" class=\"wp-image-1521\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_038.png 444w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_038-300x220.png 300w\" sizes=\"auto, (max-width: 444px) 100vw, 444px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Subsequently, watch the resource takes no parameters:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"293\" height=\"227\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_076.png\" alt=\"opc router tutorial rest 40\" class=\"wp-image-1599\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, press the &#8220;Execute&#8221; button and prepare for the response:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"507\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_077-1024x507.png\" alt=\"opc router tutorial rest 41\" class=\"wp-image-1600\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_077-1024x507.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_077-300x148.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_077-768x380.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_077.png 1154w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this instant, watch the response went successfully.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"787\" height=\"694\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_078.png\" alt=\"opc router tutorial rest 42\" class=\"wp-image-1603\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_078.png 787w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_078-300x265.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_078-768x677.png 768w\" sizes=\"auto, (max-width: 787px) 100vw, 787px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, go back to OPC Router and check the connection.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"338\" height=\"373\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_079.png\" alt=\"opc router tutorial rest 43\" class=\"wp-image-1605\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_079.png 338w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_079-272x300.png 272w\" sizes=\"auto, (max-width: 338px) 100vw, 338px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"704\" height=\"282\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_080.png\" alt=\"opc router tutorial rest 44\" class=\"wp-image-1606\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_080.png 704w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_080-300x120.png 300w\" sizes=\"auto, (max-width: 704px) 100vw, 704px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"API_testing_with_Postman\"><\/span>API testing with Postman<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>In order to start testing with Postman, do this:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Again, make sure the OPC Router service is running.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>At this instant, run the Postman desktop application.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"81\" height=\"93\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_081.png\" alt=\"opc router tutorial rest 45\" class=\"wp-image-1607\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, create a new HTTP request by pressing the &#8220;New&#8221; and &#8220;HTTP Request&#8221; buttons.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_084.png\" alt=\"opc router tutorial rest 46\" class=\"wp-image-1614\" width=\"417\" height=\"87\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_084.png 417w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_084-300x63.png 300w\" sizes=\"auto, (max-width: 417px) 100vw, 417px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"852\" height=\"515\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_085.png\" alt=\"opc router tutorial rest 47\" class=\"wp-image-1616\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_085.png 852w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_085-300x181.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_085-768x464.png 768w\" sizes=\"auto, (max-width: 852px) 100vw, 852px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>With this in mind, enter the request URL:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"150\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_086.png\" alt=\"opc router tutorial rest 48\" class=\"wp-image-1620\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_086.png 627w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_086-300x72.png 300w\" sizes=\"auto, (max-width: 627px) 100vw, 627px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Change to the &#8220;Authorization&#8221; tab and enter the appropriate credentials:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"991\" height=\"205\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_087.png\" alt=\"opc router tutorial rest 49\" class=\"wp-image-1621\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_087.png 991w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_087-300x62.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_087-768x159.png 768w\" sizes=\"auto, (max-width: 991px) 100vw, 991px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Press the &#8220;Send&#8221; button to test the HTTP request against the REST API.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"219\" height=\"186\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_088.png\" alt=\"opc router tutorial rest 50\" class=\"wp-image-1622\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Finally, verify the successful response:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"429\" height=\"156\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_089.png\" alt=\"\" class=\"wp-image-1623\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_089.png 429w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_089-300x109.png 300w\" sizes=\"auto, (max-width: 429px) 100vw, 429px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"979\" height=\"225\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_090.png\" alt=\"\" class=\"wp-image-1625\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_090.png 979w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_090-300x69.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_090-768x177.png 768w\" sizes=\"auto, (max-width: 979px) 100vw, 979px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"409\" height=\"50\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_091.png\" alt=\"\" class=\"wp-image-1628\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_091.png 409w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_091-300x37.png 300w\" sizes=\"auto, (max-width: 409px) 100vw, 409px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Creating_Other_Resources\"><\/span>Creating Other Resources<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"GetMessage2\"><\/span>\/GetMessage2<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Now, let&#8217;s create our second basic resource as &#8220;<strong>GET GetMessage2<\/strong>&#8220;. Repeat the same procedure as with &#8220;\/GetMessage1&#8221;, but change the &#8220;Constant Values&#8221; block for a &#8220;JSON Write&#8221; block.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"373\" height=\"80\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_092.png\" alt=\"\" class=\"wp-image-1631\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_092.png 373w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_092-300x64.png 300w\" sizes=\"auto, (max-width: 373px) 100vw, 373px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, edit the REST trigger block to include the new URL endpoint and the JSON response format:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"477\" height=\"651\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_093.png\" alt=\"\" class=\"wp-image-1632\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_093.png 477w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_093-220x300.png 220w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"409\" height=\"256\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_094.png\" alt=\"\" class=\"wp-image-1633\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_094.png 409w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_094-300x188.png 300w\" sizes=\"auto, (max-width: 409px) 100vw, 409px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, edit the &#8220;JSON Write&#8221; block with a fixed time-series data point.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"674\" height=\"798\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_095.png\" alt=\"\" class=\"wp-image-1634\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_095.png 674w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_095-253x300.png 253w\" sizes=\"auto, (max-width: 674px) 100vw, 674px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"675\" height=\"797\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_096.png\" alt=\"\" class=\"wp-image-1635\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_096.png 675w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_096-254x300.png 254w\" sizes=\"auto, (max-width: 675px) 100vw, 675px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"163\" height=\"256\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_097.png\" alt=\"\" class=\"wp-image-1636\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Specifically, make sure both transfer objects look like these:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"647\" height=\"263\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_098.png\" alt=\"\" class=\"wp-image-1637\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_098.png 647w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_098-300x122.png 300w\" sizes=\"auto, (max-width: 647px) 100vw, 647px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Finally, make sure to link blocks as shown here to complete your second basic integration test:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"647\" height=\"264\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_099.png\" alt=\"\" class=\"wp-image-1638\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_099.png 647w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_099-300x122.png 300w\" sizes=\"auto, (max-width: 647px) 100vw, 647px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Repeat the section &#8220;Compile, Save and Publish your OPC Router Project Configuration with REST&#8221; to apply changes.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Later, test the API with Swagger.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"776\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_100-1024x776.png\" alt=\"\" class=\"wp-image-1639\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_100-1024x776.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_100-300x227.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_100-768x582.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_100.png 1062w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"795\" height=\"775\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_101.png\" alt=\"\" class=\"wp-image-1640\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_101.png 795w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_101-300x292.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_101-768x749.png 768w\" sizes=\"auto, (max-width: 795px) 100vw, 795px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Additionally, test the API with Postman.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"843\" height=\"817\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_102.png\" alt=\"\" class=\"wp-image-1642\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_102.png 843w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_102-300x291.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_102-768x744.png 768w\" sizes=\"auto, (max-width: 843px) 100vw, 843px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"423\" height=\"60\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_103.png\" alt=\"\" class=\"wp-image-1643\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_103.png 423w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_103-300x43.png 300w\" sizes=\"auto, (max-width: 423px) 100vw, 423px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LastMCurrPln01\"><\/span>\/LastMCurrPln01<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Let&#8217;s create the resource to return the most recent value of <strong>MCurr<\/strong> in PLN01 as &#8220;<strong>GET LastMCurrPln01<\/strong>&#8220;:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"338\" height=\"336\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_104.png\" alt=\"\" class=\"wp-image-1644\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_104.png 338w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_104-300x298.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_104-150x150.png 150w\" sizes=\"auto, (max-width: 338px) 100vw, 338px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, drag and drop these four blocks as shown here:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"390\" height=\"279\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_105.png\" alt=\"\" class=\"wp-image-1645\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_105.png 390w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_105-300x215.png 300w\" sizes=\"auto, (max-width: 390px) 100vw, 390px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>After that, edit the REST trigger block to include the new URL endpoint and the JSON response format:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"477\" height=\"651\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_106.png\" alt=\"\" class=\"wp-image-1646\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_106.png 477w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_106-220x300.png 220w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"418\" height=\"257\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_107-1.png\" alt=\"\" class=\"wp-image-1651\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_107-1.png 418w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_107-1-300x184.png 300w\" sizes=\"auto, (max-width: 418px) 100vw, 418px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, edit the &#8220;Constant Values&#8221; block with a fixed location for PLN01 and the appropriate variable code:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"477\" height=\"584\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_108.png\" alt=\"\" class=\"wp-image-1653\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_108.png 477w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_108-245x300.png 245w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"184\" height=\"134\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_109.png\" alt=\"\" class=\"wp-image-1654\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Furthermore, edit the Database block and make sure it looks like this:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"643\" height=\"785\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_110.png\" alt=\"\" class=\"wp-image-1656\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_110.png 643w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_110-246x300.png 246w\" sizes=\"auto, (max-width: 643px) 100vw, 643px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"643\" height=\"785\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_111.png\" alt=\"\" class=\"wp-image-1657\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_111.png 643w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_111-246x300.png 246w\" sizes=\"auto, (max-width: 643px) 100vw, 643px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"643\" height=\"785\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_112.png\" alt=\"\" class=\"wp-image-1658\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_112.png 643w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_112-246x300.png 246w\" sizes=\"auto, (max-width: 643px) 100vw, 643px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"284\" height=\"254\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_113.png\" alt=\"\" class=\"wp-image-1659\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, edit the JSON Write block:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"674\" height=\"797\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_114.png\" alt=\"\" class=\"wp-image-1661\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_114.png 674w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_114-254x300.png 254w\" sizes=\"auto, (max-width: 674px) 100vw, 674px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"160\" height=\"130\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_115.png\" alt=\"\" class=\"wp-image-1662\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, make sure all transfer objects look like these:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"658\" height=\"571\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_116.png\" alt=\"\" class=\"wp-image-1663\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_116.png 658w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_116-300x260.png 300w\" sizes=\"auto, (max-width: 658px) 100vw, 658px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Following this, make sure to link blocks as shown here to complete your third resource:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"666\" height=\"571\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_117.png\" alt=\"\" class=\"wp-image-1664\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_117.png 666w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_117-300x257.png 300w\" sizes=\"auto, (max-width: 666px) 100vw, 666px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"664\" height=\"571\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_118.png\" alt=\"\" class=\"wp-image-1665\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_118.png 664w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_118-300x258.png 300w\" sizes=\"auto, (max-width: 664px) 100vw, 664px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Repeat the section &#8220;Compile, Save and Publish your OPC Router Tutorial Project Configuration with REST&#8221; to apply changes.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"338\" height=\"995\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_119.png\" alt=\"\" class=\"wp-image-1666\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_119.png 338w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_119-102x300.png 102w\" sizes=\"auto, (max-width: 338px) 100vw, 338px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>At this point, test the API with Swagger.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"884\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_120-1024x884.png\" alt=\"\" class=\"wp-image-1667\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_120-1024x884.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_120-300x259.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_120-768x663.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_120.png 1062w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"811\" height=\"690\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_121.png\" alt=\"\" class=\"wp-image-1668\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_121.png 811w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_121-300x255.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_121-768x653.png 768w\" sizes=\"auto, (max-width: 811px) 100vw, 811px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Moreover, test the API with Postman.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"838\" height=\"710\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_122.png\" alt=\"\" class=\"wp-image-1669\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_122.png 838w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_122-300x254.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_122-768x651.png 768w\" sizes=\"auto, (max-width: 838px) 100vw, 838px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"408\" height=\"51\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_123.png\" alt=\"\" class=\"wp-image-1670\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_123.png 408w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_123-300x38.png 300w\" sizes=\"auto, (max-width: 408px) 100vw, 408px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, check the most recent value for <strong>MCurr<\/strong> in PLN01 within SQL Server:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"625\" height=\"98\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_128.png\" alt=\"\" class=\"wp-image-1678\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_128.png 625w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_128-300x47.png 300w\" sizes=\"auto, (max-width: 625px) 100vw, 625px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LastMTorqPln02\"><\/span>\/LastMTorqPln02<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Let&#8217;s create the resource to return the most recent value of <strong>MTorq<\/strong> in PLN02 as &#8220;<strong>GET LastMTorqPln02<\/strong>&#8220;. Repeat the same procedure as with &#8220;\/\/LastMCurrPln01&#8221;, but change values for &#8220;cd_location3&#8221; and &#8220;cd_variable&#8221; within the &#8220;Constant Values&#8221; block, along with the appropriate URL endpoint within the &#8220;REST trigger&#8221; block.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"340\" height=\"376\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_124.png\" alt=\"\" class=\"wp-image-1672\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_124.png 340w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_124-271x300.png 271w\" sizes=\"auto, (max-width: 340px) 100vw, 340px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"666\" height=\"580\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_125.png\" alt=\"\" class=\"wp-image-1673\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_125.png 666w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_125-300x261.png 300w\" sizes=\"auto, (max-width: 666px) 100vw, 666px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Repeat the section &#8220;Compile, Save and Publish your OPC Router Tutorial Project Configuration with REST&#8221; to apply changes.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, test the API with Swagger.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"877\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_126-1024x877.png\" alt=\"\" class=\"wp-image-1675\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_126-1024x877.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_126-300x257.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_126-768x658.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_126.png 1067w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"815\" height=\"695\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_127.png\" alt=\"\" class=\"wp-image-1676\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_127.png 815w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_127-300x256.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_127-768x655.png 768w\" sizes=\"auto, (max-width: 815px) 100vw, 815px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Additionally, test the API with Postman.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"705\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_129.png\" alt=\"\" class=\"wp-image-1680\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_129.png 840w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_129-300x252.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_129-768x645.png 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"410\" height=\"49\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_130.png\" alt=\"\" class=\"wp-image-1681\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_130.png 410w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_130-300x36.png 300w\" sizes=\"auto, (max-width: 410px) 100vw, 410px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Lastly, check the most recent value for <strong>MTorq <\/strong>in PLN02 within SQL Server:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"635\" height=\"104\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_131.png\" alt=\"\" class=\"wp-image-1682\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_131.png 635w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_131-300x49.png 300w\" sizes=\"auto, (max-width: 635px) 100vw, 635px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LastMSpdPln03\"><\/span>\/LastMSpdPln03<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Let&#8217;s create the resource to return the most recent value of <strong>MSpd<\/strong> in PLN03 as &#8220;<strong>GET LastMSpdPln03<\/strong>&#8220;. Repeat the same procedure as with &#8220;\/LastMTorqPln02&#8221;, but change values for &#8220;cd_location3&#8221; and &#8220;cd_variable&#8221; within the &#8220;Constant Values&#8221; block, along with the appropriate URL endpoint within the &#8220;REST trigger&#8221; block.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"339\" height=\"393\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_132.png\" alt=\"\" class=\"wp-image-1684\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_132.png 339w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_132-259x300.png 259w\" sizes=\"auto, (max-width: 339px) 100vw, 339px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"662\" height=\"586\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_133.png\" alt=\"\" class=\"wp-image-1685\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_133.png 662w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_133-300x266.png 300w\" sizes=\"auto, (max-width: 662px) 100vw, 662px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Repeat the section &#8220;Compile, Save and Publish your OPC Router Tutorial Project Configuration with REST&#8221; to apply changes.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Additionally, test the API with Swagger.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"882\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_134-1024x882.png\" alt=\"\" class=\"wp-image-1688\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_134-1024x882.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_134-300x258.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_134-768x661.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_134.png 1066w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"804\" height=\"688\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_135.png\" alt=\"\" class=\"wp-image-1689\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_135.png 804w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_135-300x257.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_135-768x657.png 768w\" sizes=\"auto, (max-width: 804px) 100vw, 804px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Test the API with Postman.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"713\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_136.png\" alt=\"\" class=\"wp-image-1690\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_136.png 840w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_136-300x255.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_136-768x652.png 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"402\" height=\"47\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_137.png\" alt=\"\" class=\"wp-image-1691\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_137.png 402w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_137-300x35.png 300w\" sizes=\"auto, (max-width: 402px) 100vw, 402px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Finally, check the most recent value for <strong>MSpd <\/strong>in PLN03 within SQL Server:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"103\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_138.png\" alt=\"\" class=\"wp-image-1692\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_138.png 627w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_138-300x49.png 300w\" sizes=\"auto, (max-width: 627px) 100vw, 627px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"LastValueLoclocationvariable\"><\/span>\/LastValueLoc{location}{variable}<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Let&#8217;s create the resource to return the most recent value of any available variable in any specific location as &#8220;<strong>GET LastValueLoc<\/strong>&#8220;. The new thing to do here is to add request parameters &#8220;cd_location1&#8221;, &#8220;cd_location2&#8221;, &#8220;cd_location3&#8221; and &#8220;cd_variable&#8221; within the &#8220;REST trigger&#8221; block, along with the appropriate URL endpoint.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"337\" height=\"411\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_139.png\" alt=\"\" class=\"wp-image-1696\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_139.png 337w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_139-246x300.png 246w\" sizes=\"auto, (max-width: 337px) 100vw, 337px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Edit the REST trigger block to include the new URL endpoint and request parameters:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"477\" height=\"651\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_140.png\" alt=\"\" class=\"wp-image-1699\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_140.png 477w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_140-220x300.png 220w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"406\" height=\"367\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_141.png\" alt=\"\" class=\"wp-image-1700\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_141.png 406w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_141-300x271.png 300w\" sizes=\"auto, (max-width: 406px) 100vw, 406px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Then, make sure to link blocks as shown here:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"747\" height=\"415\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_142.png\" alt=\"\" class=\"wp-image-1701\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_142.png 747w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_142-300x167.png 300w\" sizes=\"auto, (max-width: 747px) 100vw, 747px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Compile, save and publish.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Also, test the API with Swagger.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"852\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_143-1024x852.png\" alt=\"\" class=\"wp-image-1702\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_143-1024x852.png 1024w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_143-300x250.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_143-768x639.png 768w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_143.png 1061w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Finally, get the most recent value of <strong>MVolt<\/strong> in PLN02:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"950\" height=\"451\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_144.png\" alt=\"\" class=\"wp-image-1703\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_144.png 950w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_144-300x142.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_144-768x365.png 768w\" sizes=\"auto, (max-width: 950px) 100vw, 950px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"982\" height=\"375\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_145.png\" alt=\"\" class=\"wp-image-1707\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_145.png 982w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_145-300x115.png 300w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_145-768x293.png 768w\" sizes=\"auto, (max-width: 982px) 100vw, 982px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"620\" height=\"103\" src=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_146.png\" alt=\"\" class=\"wp-image-1705\" srcset=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_146.png 620w, https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/09\/img_p_13_146-300x50.png 300w\" sizes=\"auto, (max-width: 620px) 100vw, 620px\" \/><\/figure>\n\n\n\n<p>Did you enjoy this OPC Router tutorial with REST? I&#8217;d love to hear from you.<\/p>\n\n\n\n<p>Stay tuned and follow part 8 of this tutorial! \ud83d\ude0e<\/p>\n\n\n\n<p>For other articles like this one in English, click <a href=\"https:\/\/joseamaita.com\/en\/blog\/\">here<\/a>. To see them in Spanish, click <a href=\"https:\/\/joseamaita.com\/blog\/\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Following the sixth part of the OPC Router tutorial, I&#8217;m presenting how to connect web applications to industrial automation systems via the REST interface. Remember, we&#8217;re configuring and running a project for \u201cPap\u00edn\u201d, a fictional potato bread factory. Why an OPC Router tutorial with REST? Because &#8220;learning by doing&#8221; with examples is fun. Also, this&hellip;&nbsp;<a href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">OPC Router Tutorial REST<\/span><\/a><\/p>\n<div class='heateor_sss_sharing_container heateor_sss_vertical_sharing heateor_sss_bottom_sharing' style='width:44px;left: -10px;top: 100px;-webkit-box-shadow:none;box-shadow:none;' data-heateor-sss-href='https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/1389'><div class=\"heateor_sss_sharing_ul\"><a aria-label=\"Facebook\" class=\"heateor_sss_facebook\" href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1389\" title=\"Facebook\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg\" style=\"background-color:#0765FE;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 32 32\"><path fill=\"#fff\" d=\"M28 16c0-6.627-5.373-12-12-12S4 9.373 4 16c0 5.628 3.875 10.35 9.101 11.647v-7.98h-2.474V16H13.1v-1.58c0-4.085 1.849-5.978 5.859-5.978.76 0 2.072.15 2.608.298v3.325c-.283-.03-.775-.045-1.386-.045-1.967 0-2.728.745-2.728 2.683V16h3.92l-.673 3.667h-3.247v8.245C23.395 27.195 28 22.135 28 16Z\"><\/path><\/svg><\/span><\/a><a aria-label=\"Twitter\" class=\"heateor_sss_button_twitter\" href=\"https:\/\/twitter.com\/intent\/tweet?text=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.&url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1389\" title=\"Twitter\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_twitter\" style=\"background-color:#55acee;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"-4 -4 39 39\"><path d=\"M28 8.557a9.913 9.913 0 0 1-2.828.775 4.93 4.93 0 0 0 2.166-2.725 9.738 9.738 0 0 1-3.13 1.194 4.92 4.92 0 0 0-3.593-1.55 4.924 4.924 0 0 0-4.794 6.049c-4.09-.21-7.72-2.17-10.15-5.15a4.942 4.942 0 0 0-.665 2.477c0 1.71.87 3.214 2.19 4.1a4.968 4.968 0 0 1-2.23-.616v.06c0 2.39 1.7 4.38 3.952 4.83-.414.115-.85.174-1.297.174-.318 0-.626-.03-.928-.086a4.935 4.935 0 0 0 4.6 3.42 9.893 9.893 0 0 1-6.114 2.107c-.398 0-.79-.023-1.175-.068a13.953 13.953 0 0 0 7.55 2.213c9.056 0 14.01-7.507 14.01-14.013 0-.213-.005-.426-.015-.637.96-.695 1.795-1.56 2.455-2.55z\" fill=\"#fff\"><\/path><\/svg><\/span><\/a><a aria-label=\"Linkedin\" class=\"heateor_sss_button_linkedin\" href=\"https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1389\" title=\"Linkedin\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_linkedin\" style=\"background-color:#0077b5;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 32 32\"><path d=\"M6.227 12.61h4.19v13.48h-4.19V12.61zm2.095-6.7a2.43 2.43 0 0 1 0 4.86c-1.344 0-2.428-1.09-2.428-2.43s1.084-2.43 2.428-2.43m4.72 6.7h4.02v1.84h.058c.56-1.058 1.927-2.176 3.965-2.176 4.238 0 5.02 2.792 5.02 6.42v7.395h-4.183v-6.56c0-1.564-.03-3.574-2.178-3.574-2.18 0-2.514 1.7-2.514 3.46v6.668h-4.187V12.61z\" fill=\"#fff\"><\/path><\/svg><\/span><\/a><a aria-label=\"Whatsapp\" class=\"heateor_sss_whatsapp\" href=\"https:\/\/api.whatsapp.com\/send?text=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.%20https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1389\" title=\"Whatsapp\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg\" style=\"background-color:#55eb4c;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"-6 -5 40 40\"><path class=\"heateor_sss_svg_stroke heateor_sss_no_fill\" stroke=\"#fff\" stroke-width=\"2\" fill=\"none\" d=\"M 11.579798566743314 24.396926207859085 A 10 10 0 1 0 6.808479557110079 20.73576436351046\"><\/path><path d=\"M 7 19 l -1 6 l 6 -1\" class=\"heateor_sss_no_fill heateor_sss_svg_stroke\" stroke=\"#fff\" stroke-width=\"2\" fill=\"none\"><\/path><path d=\"M 10 10 q -1 8 8 11 c 5 -1 0 -6 -1 -3 q -4 -3 -5 -5 c 4 -2 -1 -5 -1 -4\" fill=\"#fff\"><\/path><\/svg><\/span><\/a><a aria-label=\"Telegram\" class=\"heateor_sss_button_telegram\" href=\"https:\/\/telegram.me\/share\/url?url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1389&text=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.\" title=\"Telegram\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_telegram\" style=\"background-color:#3da5f1;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 32 32\"><path fill=\"#fff\" d=\"M25.515 6.896L6.027 14.41c-1.33.534-1.322 1.276-.243 1.606l5 1.56 1.72 5.66c.226.625.115.873.77.873.506 0 .73-.235 1.012-.51l2.43-2.363 5.056 3.734c.93.514 1.602.25 1.834-.863l3.32-15.638c.338-1.363-.52-1.98-1.41-1.577z\"><\/path><\/svg><\/span><\/a><a aria-label=\"Reddit\" class=\"heateor_sss_button_reddit\" href=\"https:\/\/reddit.com\/submit?url=https%3A%2F%2Fjoseamaita.com%2Fen%2Fwp-json%2Fwp%2Fv2%2Fposts%2F1389&title=joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.\" title=\"Reddit\" rel=\"nofollow noopener\" target=\"_blank\" style=\"font-size:32px!important;box-shadow:none;display:inline-block;vertical-align:middle\"><span class=\"heateor_sss_svg heateor_sss_s__default heateor_sss_s_reddit\" style=\"background-color:#ff5700;width:40px;height:40px;margin:0;display:inline-block;opacity:1;float:left;font-size:32px;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box\"><svg style=\"display:block;\" focusable=\"false\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"100%\" height=\"100%\" viewBox=\"-3.5 -3.5 39 39\"><path d=\"M28.543 15.774a2.953 2.953 0 0 0-2.951-2.949 2.882 2.882 0 0 0-1.9.713 14.075 14.075 0 0 0-6.85-2.044l1.38-4.349 3.768.884a2.452 2.452 0 1 0 .24-1.176l-4.274-1a.6.6 0 0 0-.709.4l-1.659 5.224a14.314 14.314 0 0 0-7.316 2.029 2.908 2.908 0 0 0-1.872-.681 2.942 2.942 0 0 0-1.618 5.4 5.109 5.109 0 0 0-.062.765c0 4.158 5.037 7.541 11.229 7.541s11.22-3.383 11.22-7.541a5.2 5.2 0 0 0-.053-.706 2.963 2.963 0 0 0 1.427-2.51zm-18.008 1.88a1.753 1.753 0 0 1 1.73-1.74 1.73 1.73 0 0 1 1.709 1.74 1.709 1.709 0 0 1-1.709 1.711 1.733 1.733 0 0 1-1.73-1.711zm9.565 4.968a5.573 5.573 0 0 1-4.081 1.272h-.032a5.576 5.576 0 0 1-4.087-1.272.6.6 0 0 1 .844-.854 4.5 4.5 0 0 0 3.238.927h.032a4.5 4.5 0 0 0 3.237-.927.6.6 0 1 1 .844.854zm-.331-3.256a1.726 1.726 0 1 1 1.709-1.712 1.717 1.717 0 0 1-1.712 1.712z\" fill=\"#fff\"\/><\/svg><\/span><\/a><a class=\"heateor_sss_more\" aria-label=\"More\" title=\"More\" rel=\"nofollow noopener\" style=\"font-size: 32px!important;border:0;box-shadow:none;display:inline-block!important;font-size:16px;padding:0 4px;vertical-align: middle;display:inline;\" href=\"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/1389\" onclick=\"event.preventDefault()\"><span class=\"heateor_sss_svg\" style=\"background-color:#ee8e2d;width:40px;height:40px;margin:0;display:inline-block!important;opacity:1;float:left;font-size:32px!important;box-shadow:none;display:inline-block;font-size:16px;padding:0 4px;vertical-align:middle;display:inline;background-repeat:repeat;overflow:hidden;padding:0;cursor:pointer;box-sizing:content-box;\" onclick=\"heateorSssMoreSharingPopup(this, 'https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/1389', 'joseamaita.com%20-%20The%20place%20where%20I%20make%20things%20happen.', '' )\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"-.3 0 32 32\" version=\"1.1\" width=\"100%\" height=\"100%\" style=\"display:block;\" xml:space=\"preserve\"><g><path fill=\"#fff\" d=\"M18 14V8h-4v6H8v4h6v6h4v-6h6v-4h-6z\" fill-rule=\"evenodd\"><\/path><\/g><\/svg><\/span><\/a><\/div><div class=\"heateorSssClear\"><\/div><\/div>","protected":false},"author":1,"featured_media":1402,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[42,17,5,3,22,41],"tags":[43,24,25,23,44,28],"class_list":["post-1389","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-api","category-data-transfer","category-english","category-industrial-automation","category-opc-router","category-rest","tag-api","tag-data-transfer","tag-industrial-automation","tag-opc-router","tag-rest","tag-sql-server"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>OPC Router Tutorial REST - joseamaita.com<\/title>\n<meta name=\"description\" content=\"Following the sixth part of the OPC Router tutorial, I&#039;m presenting how to connect web applications to industrial systems via REST.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"OPC Router Tutorial REST - joseamaita.com\" \/>\n<meta property=\"og:description\" content=\"Following the sixth part of the OPC Router tutorial, I&#039;m presenting how to connect web applications to industrial systems via REST.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\" \/>\n<meta property=\"og:site_name\" content=\"joseamaita.com\" \/>\n<meta property=\"article:published_time\" content=\"2023-08-16T09:12:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-16T14:44:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png\" \/>\n\t<meta property=\"og:image:width\" content=\"335\" \/>\n\t<meta property=\"og:image:height\" content=\"367\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jos\u00e9 Alberto Maita\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jos\u00e9 Alberto Maita\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"32 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\"},\"author\":{\"name\":\"Jos\u00e9 Alberto Maita\",\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4\"},\"headline\":\"OPC Router Tutorial REST\",\"datePublished\":\"2023-08-16T09:12:00+00:00\",\"dateModified\":\"2023-08-16T14:44:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\"},\"wordCount\":2367,\"image\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png\",\"keywords\":[\"API\",\"Data Transfer\",\"Industrial Automation\",\"OPC Router\",\"REST\",\"SQL Server\"],\"articleSection\":[\"API\",\"Data Transfer\",\"English\",\"Industrial Automation\",\"OPC Router\",\"REST\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\",\"url\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\",\"name\":\"OPC Router Tutorial REST - joseamaita.com\",\"isPartOf\":{\"@id\":\"https:\/\/joseamaita.com\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png\",\"datePublished\":\"2023-08-16T09:12:00+00:00\",\"dateModified\":\"2023-08-16T14:44:24+00:00\",\"author\":{\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4\"},\"description\":\"Following the sixth part of the OPC Router tutorial, I'm presenting how to connect web applications to industrial systems via REST.\",\"breadcrumb\":{\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage\",\"url\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png\",\"contentUrl\":\"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png\",\"width\":335,\"height\":367},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/joseamaita.com\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"OPC Router Tutorial REST\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/joseamaita.com\/en\/#website\",\"url\":\"https:\/\/joseamaita.com\/en\/\",\"name\":\"joseamaita.com\",\"description\":\"The place where I make things happen.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/joseamaita.com\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4\",\"name\":\"Jos\u00e9 Alberto Maita\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/joseamaita.com\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g\",\"caption\":\"Jos\u00e9 Alberto Maita\"},\"url\":\"https:\/\/joseamaita.com\/en\/author\/joseamaita\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"OPC Router Tutorial REST - joseamaita.com","description":"Following the sixth part of the OPC Router tutorial, I'm presenting how to connect web applications to industrial systems via REST.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/","og_locale":"en_US","og_type":"article","og_title":"OPC Router Tutorial REST - joseamaita.com","og_description":"Following the sixth part of the OPC Router tutorial, I'm presenting how to connect web applications to industrial systems via REST.","og_url":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/","og_site_name":"joseamaita.com","article_published_time":"2023-08-16T09:12:00+00:00","article_modified_time":"2023-08-16T14:44:24+00:00","og_image":[{"width":335,"height":367,"url":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png","type":"image\/png"}],"author":"Jos\u00e9 Alberto Maita","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Jos\u00e9 Alberto Maita","Est. reading time":"32 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#article","isPartOf":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/"},"author":{"name":"Jos\u00e9 Alberto Maita","@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4"},"headline":"OPC Router Tutorial REST","datePublished":"2023-08-16T09:12:00+00:00","dateModified":"2023-08-16T14:44:24+00:00","mainEntityOfPage":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/"},"wordCount":2367,"image":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage"},"thumbnailUrl":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png","keywords":["API","Data Transfer","Industrial Automation","OPC Router","REST","SQL Server"],"articleSection":["API","Data Transfer","English","Industrial Automation","OPC Router","REST"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/","url":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/","name":"OPC Router Tutorial REST - joseamaita.com","isPartOf":{"@id":"https:\/\/joseamaita.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage"},"image":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage"},"thumbnailUrl":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png","datePublished":"2023-08-16T09:12:00+00:00","dateModified":"2023-08-16T14:44:24+00:00","author":{"@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4"},"description":"Following the sixth part of the OPC Router tutorial, I'm presenting how to connect web applications to industrial systems via REST.","breadcrumb":{"@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#primaryimage","url":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png","contentUrl":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png","width":335,"height":367},{"@type":"BreadcrumbList","@id":"https:\/\/joseamaita.com\/en\/opc-router-tutorial-rest\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/joseamaita.com\/en\/"},{"@type":"ListItem","position":2,"name":"OPC Router Tutorial REST"}]},{"@type":"WebSite","@id":"https:\/\/joseamaita.com\/en\/#website","url":"https:\/\/joseamaita.com\/en\/","name":"joseamaita.com","description":"The place where I make things happen.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/joseamaita.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/b53d49d3ddf8f348fed0d484b541b1a4","name":"Jos\u00e9 Alberto Maita","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/joseamaita.com\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dfc4d3fa06e5fa2aee2ef3834715e1b8?s=96&d=mm&r=g","caption":"Jos\u00e9 Alberto Maita"},"url":"https:\/\/joseamaita.com\/en\/author\/joseamaita\/"}]}},"jetpack_featured_media_url":"https:\/\/joseamaita.com\/en\/wp-content\/uploads\/sites\/2\/2022\/08\/img_p_13_001.png","_links":{"self":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/1389","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/comments?post=1389"}],"version-history":[{"count":153,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/1389\/revisions"}],"predecessor-version":[{"id":2823,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/posts\/1389\/revisions\/2823"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/media\/1402"}],"wp:attachment":[{"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/media?parent=1389"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/categories?post=1389"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/joseamaita.com\/en\/wp-json\/wp\/v2\/tags?post=1389"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}