Uncapped Punjab allrounder Gurkeerat Singh has been included in India's ODI squad for the first three matches against South Africa in October, while uncapped Karnataka seamer S Aravind was picked for the T20 internationals.
The players left out from the full-strength ODI squad that had toured Bangladesh were allrounder Ravindra Jadeja and seamer Dhawal Kulkarni. Gurkeerat, who bowls offspin took Jadeja's spot in the squad while legspinner Amit Mishra came in for Kulkarni.
Gurkeerat, 25, had two impressive outings for India A recently. He had taken 2 for 42 and scored an unbeaten 87 in the tri-series final victory against Australia A in August, and then he made 65 and took 5 for 29 against a Bangladesh A team comprising several international players in the first one-day game in Bangalore.
"Gurkeerat was picked looking at his all-round capabilities," Sandeep Patil, the chairman of selectors, said. "The demands of the game are such that we need more allrounders."
The selectors said they had not contemplated any change in the captaincy, with MS Dhoni returning to lead the ODI and T20I squads after Virat Kohli had captained India to a Test series win in Sri Lanka. Dhoni had retired from Test cricket during the tour of Australia last year.
"We have not discussed anything regarding the ODI captaincy," Patil said. "We are very happy the way Dhoni has led. We have total backing for Dhoni during this series."
Fast bowler Mohammed Shami was not included in either squad because he is still undergoing rehabilitation for the knee injury he suffered during the tour of Australia in 2014-15. Shami last played for India during the 2015 World Cup and been sidelined from all competitive cricket since.
India did not pick any of their fastest bowlers - Umesh Yadav, Varun Aaron or Ishant Sharma - for the T20 internationals, preferring the medium pace offered by Bhuvneshwar Kumar, Mohit Sharma, Aravind, and Stuart Binny.
"We have picked this side looking at the wickets," Patil said. "We have not lost faith in our [fast] bowlers. There is still a lot of time to go to World Twenty20. We did discuss Ishant Sharma also. Not like we have earmarked him only for Tests."
South Africa arrive in India in the last week of September and play three T20Is, five ODIs and four Tests during a tour that ends on December 7.
ODI squad: MS Dhoni (captain), R Ashwin, Stuart Binny, Shikhar Dhawan, Virat Kohli, Bhuvneshwar Kumar, Axar Patel, Ajinkya Rahane, Suresh Raina, Ambati Rayudu, Mohit Sharma, Rohit Sharma, Umesh Yadav, Gurkeerat Singh, Amit Mishra
T20I squad: MS Dhoni (captain), R Ashwin, Stuart Binny, Shikhar Dhawan, Virat Kohli, Bhuvneshwar Kumar, Axar Patel, Ajinkya Rahane, Suresh Raina, Ambati Rayudu, Mohit Sharma, Rohit Sharma, S Aravind, Harbhajan Singh, Amit Mishra