YouTuber James Charles has admitted to sending sexually explicit messages to underage boys.

In a video posted to his channel on Thursday, the 21-year-old beauty influencer said he understands his actions of sending the messages to two 16-year-olds was wrong.

He apologised in a 14-minute video titled ‘holding myself accountable’. It has 2.6 million views as of April 2 morning.

While he said there were “no excuses” going to be given in the video, he said he believed the young men when they said they were 18. He later found out they were 16 and was “immediately embarrassed” and blocked both people.

These conversations shouldn’t have happened, he said, admitting that he "f***ed up". He also said he would take time away from social media to "educate" himself about the issues.

But many weren't having it. They pointed out that influencers often only admitted to their mistakes when their reputations or brands were at stake.

Some said an apology wasn't enough for a crime.

Earlier this year, the YouTuber was accused of grooming minors by several young boys. He denied the allegations but has now addressed them in the video. In 2019, he was accused of using his fame to manipulate someone's sexuality.