Place chicken legs into a large zip top plastic bag. In a liquid measuring cup or small bowl, mix together olive oil, salt, pepper, paprika, cumin, cayenne pepper, garlic, and onion. Pour over chicken and seal zip top bag, taking care to remove as much air as possible.
Move chicken around in the zip top bag to ensure all chicken is well coated. Place on a small, rimmed baking sheet or inside of a casserole dish and into the refrigerator to marinate for at least one hour to overnight.
To bake chicken, preheat oven to 350 degrees F. Place chicken onto rimmed baking sheet or a skillet coated with a bit of olive oil. Bake until the internal temperature registers 160 degrees F with an instant read thermometer, about 30-35 minutes. Remove chicken from oven and coat with BBQ sauce. Return to oven until the chicken registers 165 degrees F with an instant read thermometer.
Remove from oven and allow to rest about 3 minutes before serving.
For a quicker recipe, omit marinating time and simply mix together olive oil, spices, garlic and onions and coat chicken before baking. You can also use your favorite bottled BBQ sauce in place of my homemade recipe.