Opening batsman Mayank Agarwal completed a double century on Day 2 as India put South African bowlers to the sword in the first Test.
South Africa then lost cheap wickets before the second day ended, reaching 39 for three at the close, with Ravichandran Ashwin leading a spin rout of the top order.
Ashwin bowled Aiden Markram for five and Theunis de Bruyn caught behind for four. Nightwatchman Dane Piedt was bowled middle stump by Ravindra without scoring.
The 28-year-old Agarwal put on a record 317-run opening stand with opening partner Rohit Sharma to set the tone for India's dominance.
He smashed six sixes and 23 fours in a 371-ball knock, using the reverse sweep to good effect as he made his mark in just his fifth Test.
Paceman Vernon Philander bowled Pujara on the first delivery of the second session. Debutant spinner Senuran Muthusamy had Kohli caught and bowled as his maiden Test wicket.
Jadeja, who made 30 not out, and wicketkeeper-batsman Wriddhiman Saha, who hit 21, gave useful support in building up the huge total.