PATCH /v9/projects/{idOrName}

Update the fields of a project using either its name or id.

Servers

Path parameters

Name Type Required Description
idOrName String Yes

The unique project identifier or the project name

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Query parameters

Name Type Required Description
teamId String No

The Team identifier to perform the request on behalf of.

slug String No

The Team slug to perform the request on behalf of.

Request body fields

Name Type Required Description
trustedSources Object No

Deployment Protection Trusted Sources

trustedSources.projects Object No
trustedSources.projects.name Object No
trustedSources.projects.name.label String No

The label or description of the trusted source

trustedSources.projects.name.customAllow[] Array No

Optional overrides for the default same-env-by-slug matching.

trustedSources.projects.name.customAllow[].to Object Yes

A set of environments, expressed as explicit slugs, a named preset, or both. At least one of slugs or preset must be set.

trustedSources.projects.name.customAllow[].to.preset String No

Valid values:

  • "all-custom"
trustedSources.projects.name.customAllow[].to.slugs[] Array No
trustedSources.projects.name.customAllow[].from Object Yes

A set of environments, expressed as explicit slugs, a named preset, or both. At least one of slugs or preset must be set.

trustedSources.projects.name.customAllow[].from.preset String No

Valid values:

  • "all-custom"
trustedSources.projects.name.customAllow[].from.slugs[] Array No
trustedSources.oidcProviders Object No
trustedSources.oidcProviders.name Object No
trustedSources.oidcProviders.name.to Object Yes

A set of environments, expressed as explicit slugs, a named preset, or both. At least one of slugs or preset must be set.

trustedSources.oidcProviders.name.to.preset String No

Valid values:

  • "all-custom"
trustedSources.oidcProviders.name.to.slugs[] Array No
trustedSources.oidcProviders.name.claims Object Yes
trustedSources.oidcProviders.name.claims.name String No
trustedSources.oidcProviders.name.label String No

The label or description of the trusted source

passport Object No

Passport configuration for the project.

passport.connectorId String Yes
passport.deploymentType String No

Valid values:

  • "preview"
  • "prod_deployment_urls_and_all_previews"
  • "all_except_custom_domains"
  • "all"

Default value: "all"

rootDirectory String No

The name of a directory or relative path to the source code of your project. When null is used it will default to the project root

autoExposeSystemEnvs Boolean No
customerSupportCodeVisibility Boolean No

Specifies whether customer support can see git source for a deployment

gitForkProtection Boolean No

Specifies whether PRs from Git forks should require a team member's authorization before it can be deployed

protectedSourcemaps Boolean No

Specifies whether sourcemaps are protected and require authentication to access.

publicSource Boolean No

Deprecated. Accepted for backwards compatibility but ignored.

ssoProtection Object No

Ensures visitors to your Preview Deployments are logged into Vercel and have a minimum of Viewer access on your team

ssoProtection.deploymentType String Yes

Specify if the Vercel Authentication (SSO Protection) will apply to every Deployment Target or just Preview

Valid values:

  • "preview"
  • "prod_deployment_urls_and_all_previews"
  • "all_except_custom_domains"
  • "all"

Default value: "preview"

serverlessFunctionRegion String No

The region to deploy Serverless Functions in this project

autoAssignCustomDomainsUpdatedBy String No
enableAffectedProjectsDeployments Boolean No

Opt-in to skip deployments when there are no changes to the root directory and its dependencies

passwordProtection Object No

Allows to protect project deployments with a password

passwordProtection.deploymentType String Yes

Specify if the password will apply to every Deployment Target or just Preview

Valid values:

  • "preview"
  • "prod_deployment_urls_and_all_previews"
  • "all_except_custom_domains"
  • "all"
passwordProtection.password String No

The password that will be used to protect Project Deployments

commandForIgnoringBuildStep String No
skewProtectionAllowedDomains[] Array No

Cross-site domains allowed to fetch skew-protected assets (hostnames, optionally with leading wildcard like *.example.com).

sourceFilesOutsideRootDirectory Boolean No

Indicates if there are source files outside of the root directory

oidcTokenConfig Object No

OpenID Connect JSON Web Token generation configuration.

oidcTokenConfig.issuerMode String No

team: https://oidc.vercel.com/[team_slug] global: https://oidc.vercel.com

Valid values:

  • "global"
  • "team"

Default value: "team"

oidcTokenConfig.enabled Boolean No

Whether or not to generate OpenID Connect JSON Web Tokens.

Default value: true

outputDirectory String No

The output directory of the project. When null is used this value will be automatically detected

tracing Object No

Tracing configuration for this project

tracing.domains String No

Comma-separated list of drain endpoint domains

tracing.samplingRules[] Array No

Sampling rules for trace collection

tracing.samplingRules[].rate Number Yes

Sampling rate from 0 to 1

tracing.samplingRules[].env String No

Environment to apply sampling to

Valid values:

  • "preview"
  • "production"
tracing.samplingRules[].requestPath String No

Request path prefix to apply the sampling rule to

tracing.samplingRules[].destination String No

Tracing destination this rule applies to. Derived server-side when project tracing is computed; accepted here so a computed config can round-trip through this endpoint.

Valid values:

  • "external"
  • "internal"
tracing.ignorePaths[] Array No

Paths to ignore for tracing

skewProtectionBoundaryAt Integer No

Deployments created before this absolute datetime have Skew Protection disabled. Value is in milliseconds since epoch to match "createdAt" fields.

directoryListing Boolean No
previewDeploymentSuffix String No

Custom domain suffix for preview deployments. Takes precedence over team-level suffix. Must be a domain owned by the team.

resourceConfig Object No

Specifies resource override configuration for the project

resourceConfig.buildMachineType String No

Valid values:

  • "elastic"
  • null
  • "standard"
  • "enhanced"
  • "turbo"
resourceConfig.functionZeroConfigFailover No

Specifies whether Zero Config Failover is enabled for this project.

resourceConfig.elasticConcurrencyEnabled Boolean No
resourceConfig.functionDefaultRegions[] Array No

The regions to deploy Vercel Functions to for this project

resourceConfig.buildQueue Object No
resourceConfig.buildQueue.configuration String No

Valid values:

  • "WAIT_FOR_NAMESPACE_QUEUE"
  • "SKIP_NAMESPACE_QUEUE"
resourceConfig.enableFunctionsBeta Boolean No
resourceConfig.functionDefaultTimeout Number No
resourceConfig.isNSNBDisabled Boolean No
resourceConfig.functionDefaultMemoryType String No

Valid values:

  • "performance"
  • "standard"
  • "performance_xl"
  • "standard_legacy"
resourceConfig.buildMachineSelection String No

Valid values:

  • "elastic"
  • "fixed"
resourceConfig.buildMachineElasticLastUpdated Number No
resourceConfig.fluid Boolean No
autoAssignCustomDomains Boolean No
skipGitConnectDuringLink Boolean No

Opts-out of the message prompting a CLI user to connect a Git repository in vercel link.

installCommand String No

The install command for this project. When null is used this value will be automatically detected

enableExternalRewriteCaching Boolean No

Specifies whether external rewrite caching is enabled for this project.

deploymentPolicy No
buildCommand String No

The build command for this project. When null is used this value will be automatically detected

trustedIps Object No

Restricts access to deployments based on the incoming request IP address

trustedIps.addresses[] Array Yes
trustedIps.addresses[].note String No

An optional note explaining what the IP address or subnet is used for

trustedIps.addresses[].value String Yes

The IP addresses that are allowlisted. Supports IPv4 addresses and CIDR notations. IPv6 is not supported

trustedIps.deploymentType String Yes

Specify if the Trusted IPs will apply to every Deployment Target or just Preview

Valid values:

  • "preview"
  • "prod_deployment_urls_and_all_previews"
  • "all_except_custom_domains"
  • "production"
  • "all"
trustedIps.protectionMode String Yes

exclusive: ip match is enough to bypass deployment protection (regardless of other settings). additional: ip must match + any other protection should be also provided (password, vercel auth, shareable link, automation bypass header, automation bypass query param)

Valid values:

  • "exclusive"
  • "additional"
enableProductionFeedback Boolean No

Opt-in to production toolbar on the project level

enablePreviewFeedback Boolean No

Opt-in to preview toolbar on the project level

connectConfigurations[] Array No

The list of connections from project environment to Secure Compute network

connectConfigurations[].connectConfigurationId String Yes

The ID of the Secure Compute network

connectConfigurations[].passive Boolean Yes

Whether the configuration should be passive, meaning builds will not run there and only passive Serverless Functions will be deployed

connectConfigurations[].buildsEnabled Boolean Yes

Flag saying if project builds should use Secure Compute

connectConfigurations[].envId String Yes

The ID of the environment

devCommand String No

The dev command for this project. When null is used this value will be automatically detected

name String No

The desired name for the project

optionsAllowlist Object No

Specify a list of paths that should not be protected by Deployment Protection to enable Cors preflight requests

optionsAllowlist.paths[] Array Yes
optionsAllowlist.paths[].value String Yes

The regex path that should not be protected by Deployment Protection

serverlessFunctionZeroConfigFailover No

Specifies whether Zero Config Failover is enabled for this project.

skewProtectionMaxAge Integer No

Deployments created before this rolling window have Skew Protection disabled. Value is in seconds to match "revalidate" fields.

dismissedToasts[] Array No

An array of objects representing a Dismissed Toast in regards to a Project. Objects are either merged with existing toasts (on key match), or added to the dimissedToasts array.`

dismissedToasts[].dismissedAt Number Yes

unix timestamp representing the time the toast was dimissed

dismissedToasts[].action String Yes

Whether the toast was dismissed, the action was accepted, or the dismissal with this key should be removed

Valid values:

  • "cancel"
  • "delete"
  • "accept"
dismissedToasts[].key String Yes

unique identifier for the dismissed toast

dismissedToasts[].value Yes
nodeVersion String No

Valid values:

  • "16.x"
  • "20.x"
  • "24.x"
  • "22.x"
  • "10.x"
  • "12.x"
  • "14.x"
  • "18.x"
staticIps Object No

Manage Static IPs for this project

staticIps.enabled Boolean Yes

Opt-in to Static IPs for this project

gitLFS Boolean No

Specifies whether Git LFS is enabled for this project.

previewDeploymentsDisabled Boolean No

Specifies whether preview deployments are disabled for this project.

framework String No

The framework that is being used for this project. When null is used no framework is selected

Valid values:

  • "ash"
  • "axum"
  • "docusaurus"
  • "jekyll"
  • "django"
  • "nestjs"
  • "dojo"
  • "solidstart-1"
  • "xmcp"
  • "services"
  • "docusaurus-2"
  • "svelte"
  • "middleman"
  • "tanstack-start"
  • "sapper"
  • "angular"
  • "fastapi"
  • "hydrogen"
  • "bun"
  • "ember"
  • "ruby"
  • "sanity"
  • "nitro"
  • "solidstart"
  • "stencil"
  • null
  • "saber"
  • "node"
  • "storybook"
  • "express"
  • "fasthtml"
  • "astro"
  • "nextjs"
  • "h3"
  • "remix"
  • "brunch"
  • "umijs"
  • "go"
  • "hono"
  • "parcel"
  • "python"
  • "eleventy"
  • "ionic-angular"
  • "create-react-app"
  • "redwoodjs"
  • "mastra"
  • "hugo"
  • "rust"
  • "elysia"
  • "hexo"
  • "polymer"
  • "actix-web"
  • "blitzjs"
  • "sanity-v2"
  • "zola"
  • "vue"
  • "react-router"
  • "vite"
  • "container"
  • "scully"
  • "sveltekit-1"
  • "gridsome"
  • "ionic-react"
  • "flask"
  • "preact"
  • "koa"
  • "gatsby"
  • "fastify"
  • "nuxtjs"
  • "vitepress"
  • "vuepress"
  • "sveltekit"
  • "eve"

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.