{"id":"MI-02","state":"MI","label":"Michigan's 2nd Congressional District","election_id":"87202","status":"uncalled","winner_id":null,"reporting":0,"previous_party":"R","afi_rating":{"rating":"Safe Republican","rating_tier":"safe_r","category":"Safe","favored_party":"R","gop_win_chance":99,"color":"#a21a15","updated":"2026-08-27T14:26:38+00:00","projected_flip":false,"flip_direction":null,"incumbent_party":"R","incumbent_name":"Moolenaar, John","open_seat":false,"freshman":false,"flipped_in_24":false,"trump_margin_2024":30,"gop_margin_2024":33.4,"redraw":false,"margin_change":null,"source":"AFI Ratings Admin","source_updated":"2026-10-11T16:14:09+00:00"},"updated":"2026-08-24T20:24:39.719Z","candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","votes":0,"color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","source_name":"John Moolenaar","identity_aliases":[],"incumbent":false,"endorsed":false,"match_method":"exact","display_priority":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","votes":0,"color":"#0f4b8f","photo_url":"","source_name":"Benjamin Ambrose","identity_aliases":[],"incumbent":false,"endorsed":false,"match_method":"exact","pct":0}],"featured_candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","votes":0,"color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","source_name":"John Moolenaar","identity_aliases":[],"incumbent":false,"endorsed":false,"match_method":"exact","display_priority":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","votes":0,"color":"#0f4b8f","photo_url":"","source_name":"Benjamin Ambrose","identity_aliases":[],"incumbent":false,"endorsed":false,"match_method":"exact","pct":0}],"matching_review":[],"office":"house","election_type":"House of Representatives","county_data_status":"available","county_data_note":"","counties_updated":"2026-08-22T01:29:45.148Z","counties_stale":false,"counties_complete":false,"total_votes":0,"winner_party":null,"leader_party":null,"leader_name":null,"leader_color":null,"vote_margin":null,"margin":null,"counties_path":"shards/915937974814985d00192ed23905e0444735138a5b5ba2996e92c6c0846520fc.json","counties":[{"name":"Barry","fips":"26015","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Clare","fips":"26035","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Eaton","fips":"26045","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Gladwin","fips":"26051","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Gratiot","fips":"26057","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Ionia","fips":"26067","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Isabella","fips":"26073","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Kent","fips":"26081","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Lake","fips":"26085","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Manistee","fips":"26101","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Mason","fips":"26105","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Mecosta","fips":"26107","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Midland","fips":"26111","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Montcalm","fips":"26117","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Muskegon","fips":"26121","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Newaygo","fips":"26123","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Oceana","fips":"26127","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Osceola","fips":"26133","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Ottawa","fips":"26139","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]},{"name":"Wexford","fips":"26165","reporting":0,"total_votes":0,"leader":null,"candidates":[{"id":"civic-87202-c4d7d88522927e58","name":"John Moolenaar","party":"R","color":"#a21a15","photo_url":"https://americafirstinsight.com/wp-content/uploads/2026/08/MoolenaarIcon.webp","votes":0,"pct":0},{"id":"civic-87202-4f43fd76398323b4","name":"Benjamin Ambrose","party":"D","color":"#0f4b8f","photo_url":"","votes":0,"pct":0}]}]}