Public öyle bir api gösteremem.Ciddi api projeleri privatedir zira.Publicler basic gösteriş amaçlıdır.Gerçek dünyanın onlarla doğrudan alakası bile yoktur.
Yapabileceğiniz şeyleri sıralayalım.
1- Oturup proje neyse tüm algoritmasını bir yere yazılı beyan edin.
2- Projeyi neyle yazacağınızı belirleyin (laravel,slim api,symfony...vs...)
3- Çatıyı ayağa kaldırın.
4- İhtiyaç duyulabilecek bağımlılıkları yükleyin (redis,mongo,elasticsearch,cassandra vs..)
5- Response yönetimini yazın... (Laravel için extends edilen controller sınıfı bunun icin uygundur)
6- Exceptionlarınızı ayarlayın.
7- Database için kurgulanan migrationları ayarlayın.
8- Authenticate kavramını yazın. yada paket kullanın.
9- Rollerinizi iyi kurgulayın
10- Yazmaya başlayın...
Bundan sonra sizin kaliteniz apinin geleceğidir.Ne kadar kötü başlarsanız o kadar sıkıcı hale getirirsiniz projeyi.
Kodlarınızı reusability hale getirmek zorundasınız.Bir yazdığınızı asla ikinci kez tekrarlamayın.
Yazdığınız sınıflar sadece tek bir işi yapsın.Başka iş yapamaz.Dış servis hizmeti alıyorsanız,asla o servisi kendiniz sağlıyormuş gibi yazmayın.Araya proxyler koyun.Ve asla clienta göre modelleme yazmayın.