Virat Kohli's second successive hundred was not enough as South Africa, aided by Aiden Markram's century, chased down a target of 359 to clinch a four-wicket win and level their one-day international (ODI) series 1-1 on Wednesday.
India, who lost openers Rohit Sharma and Yashasvi Jaiswal in the first 10 overs, regained their footing when Kohli (102) and Ruturaj Gaikwad (105) added 195 runs for the third wicket, before an unbeaten stand by captain KL Rahul (66) and Ravindra Jadeja helped them post 358-5 in Raipur.
Markram (110) scored his fourth ODI hundred in 88 balls, forming crucial partnerships with captain Temba Bavuma (46) and Matthew Breetzke (68), before Dewald Brevis (54) scored a swift fifty as South Africa inched towards their target.
Tony de Zorzi added a quick 17 runs from 11 balls before he was forced to retire with a hamstring injury, but Corbin Bosch and Keshav Maharaj guided the visitors with four balls to spare, achieving South Africa's third-biggest successful ODI run chase.
The decisive third match of the series will be played in Visakhapatnam on Saturday.

Daniil Medvedev handed Dubai title after Griekspoor withdrawal
England beat New Zealand to keep Pakistan's T20 World Cup hopes alive
Medvedev to face Griekspoor in bid for second Dubai title
Real Madrid face Man City again in Champions League knockouts
India defeat Zimbabwe to revive T20 World Cup hopes
