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.

Eight teams qualify for Dubai Games finals
Shaidorov shocks rivals to capture gold as 'Quad God' Malinin crumbles
Sabalenka, Swiatek withdraw from Dubai Duty Free Tennis Championships
USA crush Netherlands to get on board at T20 World Cup
UAE beats Canada in T20 World Cup thriller
