Mix the yogurt, vinegar, crushed garlic, pepper, salt, cardamom, allspice, and juice of 1 lemon together in a large bowl.
Add the chicken, making sure it is well covered with the marinade. If it seems a bit dry, add enough olive oil to reach the right consistency.
Cover and place in the refrigerator for at least 8 hours, or preferably overnight.
After the chicken has marinated, place it into a large saucepan and cook it for 20 minutes until done. If it becomes dry, add a little water.
Once the chicken is cooked, you can either leave it as it is or shred it.
Whilst the chicken is cooking, mix together the tahini, crushed garlic, 1/4 cup lemon juice, and 2 tablespoons yogurt in a small bowl, then set aside.
In a larger bowl, add the onions, tomatoes, and cucumbers. Sprinkle with sumac, then add the parsley and optional pickle slices, mixing well. Set aside.
Cover 1/4 of each pita bread with the chicken. Top with the vegetables and cover with sauce.
Roll like a burrito or cut the pita open to form a pocket and fill it.