<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Key on Bruno Pedro</title><link>https://brunopedro.com/tags/key/</link><description>Recent content in Key on Bruno Pedro</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 20 Apr 2018 17:54:46 +0200</lastBuildDate><atom:link href="https://brunopedro.com/tags/key/index.xml" rel="self" type="application/rss+xml"/><item><title>To REST or not to REST</title><link>https://brunopedro.com/2009/07/20/to-rest-or-not-to-rest/</link><pubDate>Mon, 20 Jul 2009 08:41:51 +0000</pubDate><guid>https://brunopedro.com/2009/07/20/to-rest-or-not-to-rest/</guid><description>&lt;p>Yesterday &lt;a href="http://twitter.com/esjewett" title="esjewett on twitter">@esjewett&lt;/a> &lt;a href="http://twitter.com/esjewett/status/2723828400">pointed out&lt;/a> that &lt;a href="http://tarpipe.com/">tarpipe&lt;/a>&amp;rsquo;s API 2.0 might not be considered RESTful. Quoting the previously written article &amp;ldquo;&lt;a href="http://www.esjewett.com/blog/a-restful-esme-api">A RESTful ESME API&lt;/a>&amp;rdquo;:&lt;/p>
&lt;blockquote>
&lt;p>REST is often seen as an alternative to RPC APIs, or &amp;ldquo;Remote Procedure Call&amp;rdquo; APIs. At root, the difference as described by Wikipedia is that RPC is about telling an application to do something while REST is about changing the state of the resources of an application.&lt;/p>
&lt;/blockquote>
&lt;span class="entry-published">
 &lt;span class="entry-author author vcard">
 &lt;span class="fn n">&lt;a href="http://www.theamazingrando.com/">Paul Sadauskas&lt;/a>, on &lt;a href="http://www.theamazingrando.com/blog/?p=107">another article&lt;/a> about the same subject, adds some rules that your API &lt;strong>should not&lt;/strong> follow:&lt;/span>
&lt;/span>
&lt;/span>
&lt;blockquote>
&lt;ol>
&lt;li>Clients have to read documentation to know the locations of top-level resources.&lt;/li>
&lt;li>Clients have to concatenate strings to get to the next resource.&lt;/li>
&lt;li>You have an &amp;ldquo;API/Key/Token&amp;rdquo; in a header or a url.&lt;/li>
&lt;li>You have a version string in a url.&lt;/li>
&lt;/ol>
&lt;/blockquote>
&lt;p>All this made me think about possible changes to become RESTful. Things seem to be easy when you&amp;rsquo;re offering operations to resources you own or control. When you&amp;rsquo;re dealing with processes that&amp;rsquo;s a whole different story. As &lt;a href="http://twitter.com/esjewett" title="esjewett on twitter">@esjewett&lt;/a> best &lt;a href="http://twitter.com/esjewett/status/2724662905">puts it&lt;/a>:&lt;/p></description></item></channel></rss>