Axar Patel and Ravichandran Ashwin gave a spectacular rearguard response to help India overcome Nathan Lyon's spin masterclass as the hosts finished one run behind Australia's first-innings 263 on a dramatic day two of the second Test on Saturday.
Patel smashed 74 and dominated his 114-run partnership for the eighth wicket with Ashwin to rescue India who had slumped to 139-7 in the second session.
Australia moved to 61-1 in the final 12 overs of the day though they lost Usman Khawaja, their top scorer in the first innings, to a stunning reflex catch at leg slip by Shreyas Iyer.
Travis Head was batting on a run-a-ball 39 at stumps, with Marnus Labuschagne on 16 at the other end.
Earlier, having bowled out Australia for a modest total on Friday, India were in cruise control at 46 for no loss before Lyon (5-67) turned the match on its head.
The off-spinner mowed down India's top order to leave them reeling at 66-4.
Australia blew all three reviews inside 25 overs but Lyon, leading the tourists' three-pronged spin attack, kept chipping away at India's top order.
The off-spinner trapped KL Rahul lbw for 17 and, two balls later, had a strong lbw appeal against Cheteshwar Pujara turned down.
Pujara could not make the most of the reprieve though as Lyon, in his next over, struck a double blow.
The off-spinner bowled India captain Rohit Sharma (32) and trapped Pujara lbw for a duck in the batsman's 100th test.
Peter Handscomb took a brilliant catch at short leg to remove Iyer off Lyon.
Virat Kohli (44) combined with Ravindra Jadeja in a 59-run stand to stage a mini-recovery but both fell to spinners in the second session.
Todd Murphy removed Jadeja for 26 but debutant Matt Kuhnemann dealt a bigger blow when he trapped Kohli lbw for his maiden Test wicket.
Australia looked poised for a significant first-innings lead but Patel and Ashwin forged the only century-plus partnership of the match to frustrate them.
All-rounder Patel brought up his fifty in style, hitting Kuhnemann over deep mid-wicket for a six.
Cummins dismissed Ashwin for 37 and took a stunning catch at mid-wicket to send back Patel as India were all out for 262.
Australia opener David Warner, who was struck in the head while batting on Friday, has been ruled out of the rest of the match with Matt Renshaw coming in as the concussion substitute.
India are 1-0 ahead in the four-Test series for the Border-Gavaskar Trophy following their comprehensive victory in Nagpur.