Insomnia ile API dokümanı oluşturmak için insomnia-documenter paketi kullanacağız, öncesinde kısaca REST API, Insomnia dan bahsedelim.
REST API Nedir?
- REST(REpresentational State Transfer) kısaltılmış halidir.
- REST sistemlere bir standart getirerek birbirleriyle haberleşmesini kolaylaştırır.
- REST web servis oluşturmak için kullanılan bir yöntemdir.
- REST HTTP protokolünü kullanarak gelen isteklere JSON, XML vb. yapılar ile cevap verir.
- HTTP üzerinde çalıştığı için hızlıdır.
Insomnia Nedir?
Insomnia API nizi dizayn etmenize yarayan bir araçtır, bu araç ile oluşturduğunuz API nizi örnek istekler oluşturarak test edebilirsiniz. Insomnia nın bize sunduğu birçok özellik API mizi daha kolay yönetebilmemizi sağlar.
- İstekleri gruplayabilir, çevresel değişkenler(environment variables) tanımlayabilirsiniz.
- Dönen response ları detaylı bir şekilde inceleyebilirsiniz.
- Birden fazla proje için workspace ler oluşturabilirsiniz.
Daha detaylı bilgi için sitesinden özelliklerini incelyebilirsiniz.
Gerekli Araçlar
- İlk olarak Insomnia yı sitesinden kendi işletim sisteminize göre indirmelisiniz.
- Daha sonra insomnia-documenter adlı paketi kurabilirsiniz.
Insomnia Dokümanlaştırma
Insomnia ile API dokümanı oluşturmak için demoyu indirip Insomnia import edelim.

Burdan “From File” diyerek indirdiğiniz demo dosyasını import edebilirsiniz.
Import işleminden sonra artık dokümanımızı istediğimiz gibi değiştirebiliriz örneğin workspace deki açıklamayı güncellemek için ayarlar kısmından “Workspace Settings” kısmına tıklayın
Daha sonra “Write” kısmına tıklayarak markdown formatında açıklamaları düzenleyebilir, “Preview” kısmında görüntüleyebilirsiniz.
İsteklerle ilgili açıklamaları isteğe tıklayıp “Docs” kısmından “Edit” tıklayıp, düzenleyebilirsiniz.

Query kısmına tıklayarak parametrelere açıklama girebilirsiniz.

Açıklamaları istediğimiz gibi düzenledikten sonra export alıp güncel halini çalıştıralım. Bu kısımla ilgili youtubedaki videoyu izleyebilirsiniz.
Export Data ya tıklayıp Current Workspace i seçebiliriz.
Burdan dokümandan çıkarmak istediğimiz istekleri kaldırabiliriz, daha sonra Export diyerek JSON formatıda bilgisayara kaydedelim.
Done diyerek bilgisayarda istediğimiz kısma kaydedelim.

Daha sonra console(terminal) den kaydettiğimiz kısımda aşağıdaki komutu çalıştıralım.
npx insomnia-documenter --config Insomnia_2020-04-30.json --output insomnia-demo
Bu komut insomnia-demo adlı dosyanın içine gerekli dosyaları oluşturacak, daha sonra o dizine geçip aşağıdaki komutu çalıştırabilirsiniz.
npx serve

Sonuç
Insomnia size birden fazla dilde örnek barındıran bir dokümantasyon sağlayacaktır. Bulutfon için oluşturduğumuz API dokümantasyonu yazımızı inceleyebilirsiniz