I am trying to create an API centric webservice using Zend framework. I would like to have the front-end separated from the back-end and all communication should take place using the API only, as shown in this image:

The overall architecture can be summarized as shown in the following image:

I would like to know what is the best approach/ practice in terms of project organization and folder structure preferably keeping it compatible with zend’s way of project organization.
Should I create two separate projects one for handling only the front-end while the other to act solely as the API server?
I would recommend a separate Zend Application for the API using Zend’s rest controller library.
Here’s a good tutorial on it: http://www.techchorus.net/create-restful-applications-using-zend-framework. You’re basically using the same file structure as any zend app.
Then I’d have a completely separate zend app for your 3rd party.
If you’re keeping them on the same server, you just put them in separate directories.