Shawn Mendes was forced to cancel his gig in Brazil on Saturday after contracting laryngitis.

The Mercy singer apologised to fans, explaining that the throat condition and sinus infection had left him no choice but to axe the concert.

"Sao Paulo, I’m so so sorry to have to tell you this, but today I woke up feeling ill, and went to the doctor, to find out I have laryngitis and a sinus infection which has caused swelling of my vocal cords," the 21-year-old said in a Twitter statement as he announced the sad news. "It breaks my heart to do this but my doctors told me I can not perform tonight or it would risk long term damage to my voice.

"I love you all so much and apologise from the bottom of my heart as I wish I could be there on stage tonight. I promise I will make it up to you next time I’m back in South America. Te Amo."

He added, "Im so sorry," along with a heart emoji.

Hours later, he shared a video taken from his hotel window showing a sea of fans singing his songs standing in the street.

The In My Blood star's next scheduled gig is on 3 December in Rio de Janeiro, Brazil, before he takes his world tour to Buenos Aires, Argentina, on 6 December.