Preheat oven to 300 degrees.
In a large skillet, heat 2 tablespoons of olive oil on high heat. Season lamb shanks with salt and pepper. Sear lamb on all sides until brown crust develops. Remove from pan and set aside.
Reduce heat to medium. Add an additional tablespoon of oil if needed. Add onions and saute until translucent, about 5 minutes.
Add garlic, ginger, and ground spices. Saute for 1 minute more.
Spoon the onion mixture into the bottom of a tagine. To this, add the tomatoes, chickpeas, and apricots.
Arrange the lamb shanks on top of this mixture and then pour in the 2 cups of chicken stock- you may need a little more or less depending on the size of your lamb. Lightly stir the sauce mixture underneath the lamb to combine the flavors a bit, and spoon some of the onion mixture over the top of the lamb.
Cover your tagine with it's lid and bake in the oven for 3 to 3.5 hours, or until lamb is fork-tender.
Taste sauce (carefully) and season with additional salt to taste.
Garnish with cilantro if desired.
Serve with couscous.