There are
417 mi
from St Joseph, MO to Shakopee, MN
That's the driving distance. It would take 7 hours 40 mins to go from St Joseph, Missouri to Shakopee, Minnesota.
The flight distance (direct flight from St Joseph, MO to Shakopee, MN) is 354.56 mi.
417 mi = 670.97 kms