MINNEAPOLIS -- Devin Booker had the ball, and a defensive switch left him staring at an old friend on the perimeter.
Teammates spread out to give Booker the spacing he needed, and the dynamic guard drove to the hoop before stopping for a step-back jumper over 7-foot Karl-Anthony Towns.
Booker got the best of Towns as the former Kentucky Wildcats tried to make up for their short-handed squads.
"I try to find certain games, when to be aggressive, when to not, when to make a play for other people when two are guarding me," Booker said. "Tonight, I got it going a little bit late."
Phoenix was clinging to a 98-95 lead when Towns missed a hurried 3-pointer with 9.2 seconds left from just inside the half-court line. Booker then iced the game with a pair of free throws.
"He's not afraid of the moment," Suns coach Monty Williams said. "You can take him for granted sometimes. But I don't. When you have a special player like that, you have to recognize it. I constantly talk to our guys about how he generates a lot of their open looks because of the attention that he draws."
Phoenix shot a season-low 34.4% from the field but tied a season low with seven turnovers. It also made 24 of 26 foul shots, outscoring Minnesota by 14 from the line.
"Just didn't follow our system, we didn't make shots," Towns said. "It's obviously a little hard to get in rhythm when you ain't making anything. They didn't go through tonight."
Booker's 17 points in the third quarter helped Phoenix regain control after the Wolves tied the game. When Minnesota closed within two in the final minutes, Booker scored in the lane over Towns. Wiggins answered, but Booker was there on the other end for a pair of free throws.
"We ran everything through him on offense tonight," the Suns' Frank Kaminsky said. "It was one of those nights you could tell he was being aggressive. Just getting him in actions, trying to get switches, get mismatches. And he was taking advantage of it."
Minnesota played without Robert Covington (personal reasons), Josh Okogie (left knee soreness), Jake Layman (left toe sprain) and Shabazz Napier (right hamstring strain). It was the second time in four games Okogie has been out with the injury. Layman missed his second straight game.
Treveon Graham was listed as available with a left arm contusion but didn't play.
"You can say they're three of our top four defenders, in a way," Minnesota coach Ryan Saunders said of Covington, Okogie and Graham. "Or maybe our three best. They impact the game with activity, too."
Suns: Rubio was out of the lineup for the third time in four games with back spasms. Baynes, who has been starting in place of the suspended Deandre Ayton, missed his third straight game with a right hip flexor strain. ... Phoenix had 17 assists on 19 made field goals in the first half. The Suns finished with 22 assists on 33 makes. ... Oubre is averaging 23.0 points on 45.7% shooting over his last five games. He said after the game that he's dealing with an illness.
Timberwolves: Towns has made at least three 3-pointers in eight consecutive games, the longest such streak in NBA history by a player listed as a center. He entered the day third in the league in made 3s. . Towns collected his 4,000th career rebound. He joins Shaquille O'Neal, Dwight Howard, Kevin Garnett, Chris Bosh and Anthony Davis as the only players with 7,500 points, 4,000 rebounds and 500 blocks at the age of 24 or younger. . Bates-Diop played 37:06 on Saturday. He entered the day with 38 total minutes this season.
Suns: Finish a back-to-back set Sunday in Denver.
Timberwolves: Travel to play Atlanta on Monday.
More AP NBA: https://apnews.com/NBA and https://twitter.com/AP-Sports
Randle hits tough stepback on Luka
Julius Randle stares down Luka Doncic, then jab steps and cans the jumper.
Towns scores 24, helps Timberwolves beat Heat 119-111
— Karl-Anthony Towns scored 24 points, including eight in the fourth quarter before fouling out, to lead the Minnesota Timberwolves to a 119-111 win against the Miami Heat on Friday night.
Brooks scores 32, Grizzlies pull away to beat Bulls 126-115
— Dylan Brooks scored a season-high 32 points and the Memphis Grizzlies took control in the second half to beat the Chicago Bulls 126-115 on Friday night.