Rodriguez set up Roger Martinez's opening goal in the second half with a high, diagonal pass across the field, and substitute Duván Zapata scored late to seal the victory that allowed Colombia to end a 12-year winless streak against the Argentines.
Messi had missed a chance to put Argentina in front, sending a close-range header off target as his team opened the tournament with a loss for the first time since 1979. "Our best player was the entire team," Colombia coach Carlos Queiroz said. "The next match will certainly be more difficult, this is only the beginning."
Both Argentina and Colombia are trying to end title droughts, with the Argentines winless since the 1993 Copa America and the Colombians without a trophy since the 2001 edition. Argentina lost the finals of the World Cup in 2014 and the Copa America in 2015 and 2016, where it lost both of the latter in penalty shootouts against Chile.
Colombia's last win over Argentina was in South American qualifying for the World Cup in 2007. "It had been a long time (without beating Argentina)," Zapata said. "Everyone in Colombia is very happy, but there is still a long way to go in the Copa, we still have important matches ahead."
Messi and Rodriguez had a mostly quiet match in Salvador, although Rodriguez provided the assist for Martinez's 71st-minute opener. The playmaker gained possession inside Colombia's own half before picking out Martinez with a long pass. The forward brought the ball down on the left flank before cutting into the penalty area and shooting into the far corner of the net.
"We are disappointed because they scored a great goal when we were playing better," Messi said. "It will take some time to accept this defeat, but we have to take the positives from today and move on to try to win the next match. We still have plenty of chances."
Argentina's first loss in a Copa America game in regulation time since 2007 was confirmed in the 86th minute. Five minutes after entering the match, Zapata converted from Jefferson Lerma's cross. Argentina striker Sergio Aguero and Colombia veteran Radamel Falcao also couldn't do much to help their teams break through their opponents' defense in a tense opening match in Group B.
"We improved in the second half and created chances," said Argentina coach Lionel Scaloni, who complained of the bad field conditions at the Arena Fonte Nova. "We still have two matches left and if we win them we will certainly advance."
Argentina will next play against Paraguay in Belo Horizonte, while Colombia will face Qatar in Sao Paulo. Paraguay and Qatar meet in the other Group B match on Sunday in Rio de Janeiro. Earlier Saturday, Peru was held by 10-man Venezuela to a 0-0 draw in Group A, a result that left both teams two points behind host Brazil, which opened with a 3-0 win over Bolivia on Friday in Sao Paulo.
More AP soccer: https://apnews.com/apf-Soccer and https://twitter.com/AP_Sports