Visakhapatnam: India declared their first innings on 502 for seven bolstered by a double century from Mayank Agarwal on the second day of the opening Test against South Africa on Thursday.
At stumps, South Africa were 39 for three.
In reply to India's 502, South Africa's first wicket fell as Aiden Markram bowled Ashwin, SA score was only 14 runs.
Ashwin gave the second blow to South Africa when he got Theunis de Bruyn caught by Saha behind the wicket.
In the next over, Jadeja took his 199th Test wicket, he bowled night watchman Dane Piedt without score any run and reduce tourist 34 for 3.
Earlier, Agarwal made 215 to put South Africa's bowling attack on the ropes in Visakhapatnam.
The 28-year-old put on a record 317-run opening stand with Rohit Sharma to set the tone for India's dominance at the start of the three-match series.
Agarwal smashed six sixes and 23 fours in a 371-ball knock in just his fifth Test.
He fell to part-time spinner Dean Elgar in the afternoon session and departed with handshakes from the South African players.
Ravindra Jadeja, 30 not out, and wicketkeeper-batsman Wriddhiman Saha, 21, played useful cameos before India declared in the final session.
Sharma fell for 176, stumped off Keshav Maharaj before lunch, and India then lost two cheap wickets. Cheteshwar Pujara went for six and skipper Virat Kohli for 20.
Paceman Vernon Philander bowled Pujara on the first delivery of the second session. Debutant spinner Senuran Muthusamy got Kohli caught and bowled as his maiden Test wicket.
Agarwal kept up the attack until his departure to pile pressure on the South African bowlers in an extended afternoon session to make up for time lost to a thunderstorm on Wednesday.
Maharaj took three wickets from his 55 overs of left-arm spin.