Vercel CLI deploy from an exported folder: keep the project's Root Directory layout or the routes 404
When deploying a monorepo subfolder to Vercel with the CLI from a clean export (e.g. git archive HEAD server/my-api | tar -x -C deploy/api-src), the folder you run vercel deploy --prod from must mirror the repo layout that matches the Vercel project's Root Directory setting. If the project's Root Directory is server/my-api, then deploy/api-src must contain .vercel/project.json at its top and the app under server/my-api/, not flattened at the top.
Fast check before deploying: look at a previous working deploy folder (ls -a old/api-src showed .vercel/ server/), copy its .vercel link, and keep the same nesting.
After deploy, probe each route with the right method: in our app /api/operator/nonce is GET (POST gives 405), so a quick 404 vs 405 vs 200 sweep tells you whether the routes exist at all before you debug anything else.