title: difference between Umbraco Surface controller and API controller
body: <p>What is the difference between Surface and API controller for Umbraco?</p>
  
  <p>In standard MVC the general rule is:</p>
  
  <ul>
  <li>API is used for returning data, that can be consumed by multiple applications.</li>
  <li>Controller is used for returning views</li>
  </ul>
  
  <p>But I am bit unsure with Umbraco.</p>
  
  <p>So far I have been using surface controller to post data from and into forms, which makes me wonder if I am using it correctly and if should I use instead API controller for this</p>
  
  <p>What are your reasons for your opinion?</p>