It really depends on the amount of calls you&#x27;ll have to make. What if you had 10,000 lights? What we tend to do is allow for partial updates with PATCH on just the lights you&#x27;d want to change.<p>ie<p>PATCH <a href="http:&#x2F;&#x2F;bla&#x2F;url&#x2F;lights" rel="nofollow">http:&#x2F;&#x2F;bla&#x2F;url&#x2F;lights</a><p>{ light1: ON, light351: ON, light 4672: ON }<p>I think that since generally documentation around RESTful API&#x27;s is generally very good with in-browser demo calls, interpretation of the REST API although differs between implementors, is generally relatively similar enough.<p>However there are cases where REST design just won&#x27;t work, or implementing the design abstracts work from the API supplier to the consumer. Where once a &quot;runThisScript(object)&quot; would be easy enough for a developer, now the script itself must be implemented by the developer to call the RESTful endpoints.<p>In cases like this, we occasionally break REST design for the convenience of developers.