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.
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.