Project Infrastructure
Use these commands for infrastructure attached to a Vercel project: cache, cron jobs, deploy hooks, Git connections, Edge Config, redirects, custom environments, and rolling releases.
Cache
vercel cache purge --type cdn --yes
vercel cache invalidate --tag mytag --yes
vercel cache dangerously-delete --tag old-data --yesdangerously-delete is destructive. Confirm intent before running it.
Cron Jobs
vercel crons ls --format json
vercel crons add --path /api/cron --schedule "0 10 * * *"
vercel crons run /api/cronvercel crons add writes to vercel.json; do not run it when the user only asked for inspection.
Deploy Hooks
vercel deploy-hooks ls --format json
vercel deploy-hooks create cms-rebuild --ref main
vercel deploy-hooks rm <hook-id> --yesDeploy hook URLs can trigger deployments. Treat them as secrets when presenting output.
Git Connection
vercel git connect
vercel git connect https://github.com/user/repo.git
vercel git disconnect --yesVerify the linked project and scope before changing Git connections.
Edge Config
vercel edge-config ls --format json
vercel edge-config add flags --items '{"enabled":true}' --format json
vercel edge-config get flags --format json
vercel edge-config items flags --format json
vercel edge-config update flags --patch '{"items":[{"operation":"upsert","key":"enabled","value":false}]}' --format json
vercel edge-config tokens flags --add read-only --format json
vercel edge-config rm flags --yesToken values and config contents may be sensitive. Avoid broad dumps unless needed.
Redirects and Routing
Use references/routing.md for route-rule syntax. Redirect-specific commands are available under vercel redirects:
vercel redirects ls
vercel redirects add /old /new --status 308
vercel redirects list-versions
vercel redirects promote <version-id> --yesRouting and redirect changes have separate command groups. Route changes are staged before vercel routes publish; redirect changes use redirect versions and promotion.
Custom Environments
vercel target ls --format json
vercel buy addon customEnvironment 2 --project my-app --yes
vercel buy addon customEnvironment 0 --project my-app --yes
vercel pull --environment=<target>
vercel --target=<target>vercel target lists custom environments for the linked project. vercel buy addon customEnvironment updates purchased custom environment capacity for a project via POST /v1/projects/custom-environments/settings. Quantity is in packs; each pack adds 5 environments. Use --project when the target project is not linked in the current directory. Set quantity to 0 to remove purchased capacity. Aliases include custom-environment and custom-environments. deploy and build accept --target; pull accepts --environment (not --target).
Rolling Releases
vercel rr configure --enable --advancement-type=automatic --stage=10,5m --stage=50,10m
vercel rr start --dpl=<deployment-url> --yes
vercel rr fetch
vercel rr approve --currentStageIndex=0 --dpl=<deployment-id>
vercel rr abort --dpl=<deployment-id>
vercel rr complete --dpl=<deployment-id>There is no vercel rr status command; use vercel rr fetch for current details.