Huge kudos to @JonathanLauxenRomano's answer.
Here's how I made it work in App Router (same idea, new router):
import { headers } from 'next/headers'
await fetch(`${process.env.NEXT_PUBLIC_BASE_PATH}/api/test`, {
headers: {
Cookie: headers().get('cookie') ?? ''
}
})
I tried using cookies, retrieving the exact cookie from nextauth and manually retrieving the token in the API route... But this way the await getToken({req})
just works as expected!