Heat vegetable oil in a large pan. Add the whole spices and sauté until they release their aroma.
If using onions, add the sliced onions and sauté until golden brown. Add ginger-garlic paste and sauté for a minute until the raw smell disappears.
Add chopped tomatoes and cook until they become soft and the oil starts to separate. Add biryani masala, turmeric powder, red chili powder, and salt. Mix well.
Add chopped vegetables and cook for 5-7 minutes until they are partially cooked.
In a separate pot, boil 2 cups of water. Add soaked and drained basmati rice. Cook until the rice is 70-80% cooked. Drain the water.
Layer the partially cooked vegetables with the half-cooked rice in the pan. Sprinkle mint and coriander leaves on each layer.
Cover the pan with a tight-fitting lid. Cook on low heat for 15-20 minutes or until the rice is fully cooked and the flavors are absorbed.
Once done, gently fluff the biryani with a fork before serving. Enjoy!