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.

Real Madrid handed shock home loss as Celta Vigo spring surprise
Dubai Capitals overpower Abu Dhabi Knight Riders by 83 runs
Mid East finished strong with victory against Arabia
Norris takes F1 title as Verstappen wins Abu Dhabi race
Neser fires Australia to eight-wicket win in second Ashes test
