Shakib Al Hasan on Saturday was named to return as Bangladesh's Twenty20 international captain after he bowed to a Bangladesh Cricket Board (BCB) ultimatum to scrap a deal with a betting site.
The all-rounder was given the nod to lead the side for the upcoming Asia Cup in the United Arab Emirates and the World Cup in Australia.
"Shakib realised his mistake," BCB cricket operations chief Jalal Yunus told reporters as he announced the decision.
"He is a very important player for us."
Earlier this month Shakib announced a partnership with Betwinner News, a portal operated by a gambling firm based in the Dutch Caribbean island of Curacao.
He wrote on his social media pages that it was the "one and only source of sports news!"
Gambling is illegal in Bangladesh and he was forced to cancel the deal after the BCB president, Nazmul Hassan, issued an ultimatum ordering him to choose between the national team and Betwinner.
Shakib captained Bangladesh to seven wins and 14 defeats in 21 T20Is until he was banned for two years - one of them suspended - in 2019 after he failed to record corrupt approaches.
Shakib, who also returned as Test captain in July, replaces wicketkeeper-batsman Nurul Hasan as Bangladesh's T20 skipper.
Nurul was retained in the Asia Cup squad despite undergoing surgery on a finger in Singapore last week in the hope that he would regain his fitness by the time the tournament starts on 27 August in Dubai.
"His stitches will be removed on 21 August. Hopefully, the result will be positive," said chief selector Minhajul Abedin.
Three-time Asia Cup finalists Bangladesh will face Sri Lanka and Afghanistan in Group B of the competition, with two teams progressing to the next round.
Former captain Mushfiqur Rahim also returned to the side after being rested for the T20 series in Zimbabwe, where Bangladesh lost a series against the hosts for the first time.
Pace bowler Ebadot Hossain was handed a place in the T20 side for the first time after he impressed in Tests and one-day internationals, while batsman Sabbir Rahman and all-rounder Mohammad Saifuddin returned after a long gap.
Bangladesh will play a tri-nation tournament in New Zealand in October involving the hosts and Pakistan before they travel to Australia for the T20 World Cup.
Bangladesh squad for Asia Cup:
Shakib Al Hasan (capt), Anamul Haque, Mushfiqur Rahim, Afif Hossain, Mosaddek Hossain, Mahmudullah Riyad, Mahedi Hasan, Mohammad Saifuddin, Hasan Mahmud, Mustafizur Rahman, Nasum Ahmed, Sabbir Rahman, Mehidy Hasan, Ebadot Hossain, Parvez Hossain, Nurul Hasan and Taskin Ahmed