On May 14, 2009, Campos signed with the Seattle Mariners as an international free agent. He spent his first two professional seasons with the Venezuelan Summer League Mariners, posting a 5.73 ERA in 13 games in 2011, and an 8–2 record and 3.16 ERA in 14 starts in 2012.[1]
Prior to the 2012 season, John Sickels of Minorleagueball.com considered Campos the Mariners' fifth best prospect.[2] He spent the 2013 season with the Low–A Everett AquaSox, making 14 starts and compiling a 5–5 record and 2.32 ERA with 85 strikeouts across 81+1⁄3 innings pitched.[3]
New York Yankees
On January 13, 2012, Campos and Michael Pineda were traded to the New York Yankees in exchange for Jesús Montero and Héctor Noesí.[4][5][6] He spent the 2012 season with the Single–A Charleston RiverDogs, but made only five starts due to injury. Campos returned to Charleston in 2013, making 26 appearances (19 starts) and registering a 3.41 ERA with 77 strikeouts and 2 saves across 87 innings pitched.[7]
On November 20, 2013, the Yankees added Campis to their 40-man roster to protect him from the Rule 5 draft.[8] He underwent Tommy John surgery in April 2014 and missed the season as a result.[9] On December 2, 2014, the Yankees non-tendered Campos, and subsequently re–signed him to a minor league contract three days later.[10]
Campos spent the 2015 campaign with the High–A Tampa Yankees, also appearing in two games for the rookie–level Gulf Coast League Yankees. In 13 starts for Tampa, he pitched to a 3–7 record and 7.05 ERA with 31 strikeouts across 44+2⁄3 innings.[11] Campos was added back to the 40-man roster on November 4, 2015.
Arizona Diamondbacks
On July 31, 2016, the Yankees traded Campos to the Arizona Diamondbacks in exchange for Tyler Clippard.[12] The Diamondbacks promoted Campos to the major leagues on August 25.[13]
Los Angeles Angels
On November 4, 2016, the Los Angeles Angels claimed Campos off of waivers. In 11 games (9 starts) split between the rookie–level Arizona League Angels, High–A Inland Empire 66ers, and Triple–A Salt Lake Bees, he accumulated an 0–3 record and 8.22 ERA with 19 strikeouts over 23 innings pitched. On September 5, 2017, Campos was designated for assignment by the Angels.[14] He was released by the Angels on September 10.
On October 3, 2017, Campos re–signed with the Angels on a minor league contract.[15] In 12 games split between Salt Lake and the Double–A Mobile BayBears, he struggled to a 7.04 ERA with 20 strikeouts across 23 innings. Campos was released by the Angels organization on May 15, 2018.[16]
Sugar Land Skeeters
On June 26, 2018, Campos signed with the New Britain Bees of the Atlantic League of Professional Baseball. He did not appear for the Bees. On July 13, Campos signed with the Sugar Land Skeeters. In 22 games for Sugar Land, he compiled a 3–2 record and 5.64 ERA with 17 strikeouts across 22+1⁄3 innings pitched. Campos became a free agent following the 2018 season.
Pittsburgh Pirates
On January 30, 2019, Campos signed a minor league deal with the Pittsburgh Pirates.[17] He was released on June 21, 2019.
Lincoln Saltdogs
On June 29, 2019, Campos signed with the Lincoln Saltdogs of the American Association. He made only one appearance for the team, allowing three earned runs with one strikeout in an inning of relief.
Pericos de Puebla
On July 2, 2019, Campos's contract was purchased by the Pericos de Puebla of the Mexican League. He was released on July 24, 2019.
Parma Baseball
On April 16, 2021, Campos signed with the Parma Baseball Club of the Italian Baseball League (IBL). On July 17, he contributed to the victory of the 14th European Champions Cup for Parma Baseball.
Pericos de Puebla (second stint)
On July 14, 2022, Campos signed with the Pericos de Puebla of the Mexican League. He appeared in 12 games, going 0–1 with a 3.09 ERA and 11 strikeouts over 11+2⁄3 innings. Campos was released on January 19, 2023.[18]
Charros de Jalisco
On February 1, 2024, Campos signed with the Toros de Tijuana of the Mexican League.[19] On April 8, Campos was traded to the Charros de Jalisco.[20] In three appearances for Jalisco, he struggled to a 27.00 ERA with one strikeout across 2+1⁄3 innings of work. On April 22, Campos was released by the Charros.[21]