President Donald Trump and Attorney General Jeff Sessions were once the closest of political allies. Then-U.S. Sen. Sessions, R-Ala., played a key role in Trump's accession in the GOP three years ago — and was later rewarded with one of the administration's top jobs.

But their relationship appeared to go south when Sessions recused himself from the Department of Justice's probe into whether Russia helped Trump win the 2016 presidential election.

A look back the good times and bad:

Feb. 28, 2016: The endorsement

There was time when establishment Republicans kept an arm's length from Trump, who was deemed to be a brash outsider with little chance of winning the GOP nomination. That all changed when Sessions became the first major lawmaker to put on a "Make American Great Again" cap in throwing his support behind the real estate developer and first-time political candidate. It wasn't the first time Sessions had appeared with the Queens, New York, native, but it was the first time he gave an official endorsement.

Trump thanked him, saying, "I am deeply honored to have the endorsement of Senator Jeff Sessions, leader of congressional conservatives. He has been called the Senate's indispensable man and the gold standard."

Jan. 10, 2017: No talks with the Russians — or so he said

During his confirmation hearing in front of the Senate Judiciary Committee, Sessions was asked then-U.S. Sen. Al Franken, D-Minn., "If there is any evidence that anyone affiliated with the Trump campaign communicated with the Russian government in the course of this campaign, what will you do?"

Sessions answered: "I'm not aware of any of those activities. I have been called a surrogate at a time or two in that campaign and I did not have communications with the Russians, and I'm unable to comment on it."

It turned out that Sessions actually had spoken twice to Russian Ambassador Sergey Kislyak during the 2016 campaign, it was revealed in March, 2017. But a spokeswoman at the time said the conversations took place in his capacity as a senator on the Armed Services Committee, not a Trump campaign surrogate.

Attorney General Jeff Sessions arrives before the Senate Intelligence Committee on June 13, 2017 in Washington. Win McNamee / Getty Images

Feb. 8, 2017: Confirmed

Sessions was confirmed by the Senate, 52-47, after contentious debate.

And at the time, President Trump seemed very happy with the pick, tweeting out a fairly enthusiastic "Congratulations!"

But the good feelings were not going to last long.

President Donald Trump shakes Jeff Sessions' hand after Sessions was sworn in as U.S. Attorney General in the Oval Office on Feb. 9, 2017 Win McNamee / Getty Images file

March 2, 2017: "I have decided to recuse myself"

Sessions might not have have known this on March 2, 2017 — but that was the day lost his job as the nation's top law enforcement official.

"I should not be involved in investigating a campaign I had a role in," he said. "I have decided to recuse myself from any existing or future investigations of any matters related in any way to the campaigns for President of the United States."

Trump initially defended Sessions and said he did nothing wrong.

Jeff Sessions is an honest man. He did not say anything wrong. He could have stated his response more accurately, but it was clearly not.... — Donald J. Trump (@realDonaldTrump) March 3, 2017

May, 2017: "Idiot"

If the president had tried to keep his anger at Sessions under wraps, it didn't last long.

After Mueller's appointment as special counsel, Trump reportedly berated Sessions during a private, Oval Office tongue lashing.

Trump accused Sessions of "disloyalty" and called him an "idiot," The New York Times later reported on Sept. 14, 2017.

July 24-26, 2017: "Beleaguered" and "weak"

As the Meuller probe wore on, Trump vented his frustration at Sessions, in a three-day-long Twitter attack.

The president asked: "So why aren't the Committees and investigators, and of course our beleaguered A.G., looking into Crooked Hillarys crimes & Russia relations? "

Later, Trump wrote: "Attorney General Jeff Sessions has taken a VERY weak position on Hillary Clinton crimes (where are E-mails & DNC server) & Intel leakers!"

Attorney General Jeff Sessions has taken a VERY weak position on Hillary Clinton crimes (where are E-mails & DNC server) & Intel leakers! — Donald J. Trump (@realDonaldTrump) July 25, 2017

Trump then summed up his frustration with: "Why didn't A.G. Sessions replace Acting FBI Director Andrew McCabe, a Comey friend who was in charge of Clinton investigation ...but got big dollars ($700,000) for his wife's political run from Hillary Clinton and her representatives. Drain the Swamp!"

Why didn't A.G. Sessions replace Acting FBI Director Andrew McCabe, a Comey friend who was in charge of Clinton investigation but got.... — Donald J. Trump (@realDonaldTrump) July 26, 2017

Jan. 4, 2018: Jeff Sessions is no Roy Cohn

The New York Times reports that Trump had openly complained about Sessions, saying he wasn't acting enough like Roy Cohn — the president's former personal lawyer and infamous counsel to red-baiting U.S. Sen. Joseph McCarthy in the 1950s.

Trump once asked White House counsel Donald F. McGahn II to lobby Sessions against recusing himself from the the Russia probe. At one point, the frustrated Trump said, "Where's my Roy Cohn?" according to The Times.

April 21, 2018: "Mr. Magoo" and "Mr. Peppers"

In more alleged name calling, Trump refuted a February Washington Post story that he called Sessions "Mr. Magoo" and Deputy Attorney General Rod Rosenstein "Mr. Peepers."

The Washington Post said I refer to Jeff Sessions as “Mr. Magoo” and Rod Rosenstein as “Mr. Peepers.” This is “according to people with whom the president has spoken.” There are no such people and don’t know these characters...just more Fake & Disgusting News to create ill will! — Donald J. Trump (@realDonaldTrump) April 21, 2018

June 5, 2018: Trump wants a do-over

The president said he needed a time machine.

Because if he had known Sessions would take himself out of the Russia probe, Trump insisted he would have picked a different person for the job.

"The Russian Witch Hunt Hoax continues, all because Jeff Sessions didn’t tell me he was going to recuse himself...I would have quickly picked someone else. So much time and money wasted, so many lives ruined...and Sessions knew better than most that there was No Collusion!," he tweeted.

The Russian Witch Hunt Hoax continues, all because Jeff Sessions didn’t tell me he was going to recuse himself...I would have quickly picked someone else. So much time and money wasted, so many lives ruined...and Sessions knew better than most that there was No Collusion! — Donald J. Trump (@realDonaldTrump) June 5, 2018

Aug. 23, 2018: Sessions fires back

For the most part, Sessions simply had absorbed his public and reported private beatings by Trump. But on this one day, he fired back.

"I took control of the Department of Justice the day I was sworn in, which is why we have had unprecedented success at effectuating the President's agenda," Sessions said in the statement.

Hours earlier, the president had told "Fox & Friends" that Sessions "never took control of the Justice Department."

Sept. 19, 2018: "Very sad" there's no attorney general

"I don't have an attorney general. It's very sad," Trump told Hill.TV. "I'm disappointed in the attorney general for numerous reasons. But we have an attorney general. I'm disappointed in the attorney general for many reasons."

Nov. 7, 2018: The end

One day after the GOP lost the House but held on to the Senate, Sessions announced he had tendered his resignation, at his boss' request.

Trump was asked about Sessions' status with the administration during a press conference earlier in the day. He gave no clue that the attorney general was on his out way out the door.

"We thank Attorney General Jeff Sessions for his service, and wish him well! A permanent replacement will be nominated at a later date," Trump tweeted.