Общий облик современного веб-приложения, как правило, определяется полным разделением между клиентом и сервером. Каждая из сторон для другой является «черным ящиком». Сервер ничего не знает про внутреннее устройство клиентов, а клиенты — про устройство сервера. Кроме того, веб-приложение может быть не единственным клиентом. API стоит проектировать так, чтобы его можно было использовать без изменений на любой платформе — веб, мобильные и десктопные приложения.