API vs the backend