On NetTuts.com there's a recent post from Nikko Bautista about creating an API-centric application and how it can help you make a more flexible, accessible application overall. Code is included to make a simple TODO list application based on this idea.
Planning to start working on a new web application? In this tutorial, we'll discuss how to create an API-centric web application, and explain why this is essential in today's multi-platform world. [...] An API-Centric Web Application is a web application that basically executes most, if not, all its functionality through API calls. [...] Another characteristic of an API-Centric Web Application is that the API will always be stateless, meaning it can't recognize API calls by session.
He talks about how doing the work like this, though it might seem like more trouble up front, can lead to an easier time later when you need to add multi-platform support (or even open it to customers directly). In the sample application, he shows the creation of a TODO application that can create, read, update and delete items via an API. Also included is a bit of code to help secure your service with an APP ID and APP SECRET authentication set. Full code for the backend API and the frontend to interface with it can be downloaded here.