South Africa have opted to rest paceman Dale Steyn for the tour of Sri Lanka later this month.
The pace spearhead struggled with a hip injury during last month's ICC Champions Trophy and was forced to sit out the semi-final defeat to tournament hosts England.
Following the limited-overs series in Sri Lanka, South Africa have Test series against Pakistan, India and Australia and do not want to risk Steyn's fitness.
"We are resting Dale Steyn as we have a very important and crowded test season ahead of us," said Cricket South Africa selection convener Andrew Hudson
"We want to be absolutely certain that, as the leader of our attack, he is properly rested and fit."
Test captain Graeme Smith was not considered as he recovers from ankle surgery, but seamer Morne Morkel was passed fit after missing most of the Champions Trophy with a groin strain.
Wicketkeeper-batsman Quinton de Kock has been recalled, while all-rounder David Wiese earned his first call-up to the Twenty20 squad.
South Africa take on Sri Lanka in the first of five one-day internationals on 20 July, with the series being followed by three Twenty20 matches
One-day squad: AB de Villiers, Hashim Amla, Farhaan Behardien, Quinton de Kock, Faf du Plessis, JP Duminy, Colin Ingram, Rory Kleinveldt, Ryan McLaren, David Miller, Morne Morkel, Chris Morris, Alviro Petersen, Robin Peterson, Aaron Phangiso, Lonwabo Tsotsobe.
Twenty20 squad: Faf du Plessis, Farhaan Behardien, Henry Davids, Quinton de Kock, AB de Villiers, JP Duminy, Imran Tahir, Rory Kleinveldt, Ryan McLaren, David Miller, Morne Morkel, Chris Morris, Wayne Parnell, Aaron Phangiso, Lonwabo Tsotsobe, David Wiese.