Marinate the cleaned chicken pieces with ingredients listed under 'for marination' and keep aside.
Heat oil in a pan and add sliced pearl onions. Cook till it changes color slightly.
Add finely sliced onions and cook till it turns a dark brown color.
Add grated/crushed ginger and garlic and cook till the raw smell goes, around 2-3 mins. Add all masala powders and fry till oil starts appearing around 2 mins.
Add sliced tomato, salt, curry leaves and mix well. Cook till tomato becomes soft.
Add cubed potato (refer notes) and marinated chicken pieces. Mix well. Cook for 5 mins.
Add water. Let it boil. Reduce the flame and cover and cook till the chicken is done. This dish doesn't have gravy. Chicken pieces should be coated well with the masala.
Serve hot with pulao, ghee rice, fried rice etc;
Notes
I've added more onions than the usual qty for this recipe. I cooked the onions till they are caramelised and have a very dark brown colour, but make sure you dont burn them. I cooked them on low flame. If you are using a fatty chicken, reduce the qty of water for cooking accordingly. Instead of adding potato along with chicken, half boil the potato and cut them into wedges. Fry them till it turns golden brown. Garnish the dry chicken roast with fried potato wedges. Since the chicken is already marinated with salt, be careful while adding salt to the gravy. If you are in a mood to indulge, use ghee for cooking and also use fried potatoes.