1. Registry
  2. Packages
  3. Vercel Provider
  4. API Docs
  5. ProjectDeploymentCheck
Viewing docs for Vercel v5.21.1
published on Thursday, Oct 15, 2026 by Pulumiverse
vercel logo vercel logo
Viewing docs for Vercel v5.21.1
published on Thursday, Oct 15, 2026 by Pulumiverse

    Creates and manages a Deployment Check for a Vercel project.

    This resource manages a project-level check definition. It does not execute tests, create a GitHub workflow or webhook endpoint, or report check-run results. Configure the corresponding GitHub workflow, external runner, or integration separately.

    Example Usage

    GitHub and webhook checks

    Use a Vercel access token authorized for the project. GitHub checks currently support only github; external_check_name must match the check reported by the workflow. GitHub checks cannot be rerequestable through Vercel.

    import * as pulumi from "@pulumi/pulumi";
    import * as vercel from "@pulumiverse/vercel";
    
    const config = new pulumi.Config();
    // GitHub repository connected to Vercel, in owner/repository format.
    const githubRepository = config.require("githubRepository");
    const example = new vercel.Project("example", {
        name: "deployment-checks-example",
        gitRepository: {
            type: "github",
            repo: githubRepository,
        },
    });
    // The external check name must match the check reported by your GitHub workflow.
    // This resource registers a gate; it does not create or run the workflow.
    const e2e = new vercel.ProjectDeploymentCheck("e2e", {
        projectId: example.id,
        name: "End-to-end tests",
        requires: "deployment-url",
        blocks: "deployment-alias",
        targets: ["production"],
        isRerequestable: false,
        source: {
            kind: "git-provider",
            provider: "github",
            externalCheckName: "e2e",
        },
    });
    // A webhook-backed check for an external test runner. The runner must handle
    // check events and report results through the Checks API separately.
    const webhook = new vercel.ProjectDeploymentCheck("webhook", {
        projectId: example.id,
        name: "External smoke tests",
        requires: "deployment-url",
        blocks: "none",
        targets: ["preview"],
        isRerequestable: true,
        source: {
            kind: "webhook",
        },
    });
    
    import pulumi
    import pulumiverse_vercel as vercel
    
    config = pulumi.Config()
    # GitHub repository connected to Vercel, in owner/repository format.
    github_repository = config.require("githubRepository")
    example = vercel.Project("example",
        name="deployment-checks-example",
        git_repository={
            "type": "github",
            "repo": github_repository,
        })
    # The external check name must match the check reported by your GitHub workflow.
    # This resource registers a gate; it does not create or run the workflow.
    e2e = vercel.ProjectDeploymentCheck("e2e",
        project_id=example.id,
        name="End-to-end tests",
        requires="deployment-url",
        blocks="deployment-alias",
        targets=["production"],
        is_rerequestable=False,
        source={
            "kind": "git-provider",
            "provider": "github",
            "external_check_name": "e2e",
        })
    # A webhook-backed check for an external test runner. The runner must handle
    # check events and report results through the Checks API separately.
    webhook = vercel.ProjectDeploymentCheck("webhook",
        project_id=example.id,
        name="External smoke tests",
        requires="deployment-url",
        blocks="none",
        targets=["preview"],
        is_rerequestable=True,
        source={
            "kind": "webhook",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    	"github.com/pulumiverse/pulumi-vercel/sdk/v5/go/vercel"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		// GitHub repository connected to Vercel, in owner/repository format.
    		githubRepository := cfg.Require("githubRepository")
    		example, err := vercel.NewProject(ctx, "example", &vercel.ProjectArgs{
    			Name: pulumi.String("deployment-checks-example"),
    			GitRepository: &vercel.ProjectGitRepositoryArgs{
    				Type: pulumi.String("github"),
    				Repo: pulumi.String(githubRepository),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// The external check name must match the check reported by your GitHub workflow.
    		// This resource registers a gate; it does not create or run the workflow.
    		_, err = vercel.NewProjectDeploymentCheck(ctx, "e2e", &vercel.ProjectDeploymentCheckArgs{
    			ProjectId: example.ID(),
    			Name:      pulumi.String("End-to-end tests"),
    			Requires:  pulumi.String("deployment-url"),
    			Blocks:    pulumi.String("deployment-alias"),
    			Targets: pulumi.StringArray{
    				pulumi.String("production"),
    			},
    			IsRerequestable: pulumi.Bool(false),
    			Source: &vercel.ProjectDeploymentCheckSourceArgs{
    				Kind:              pulumi.String("git-provider"),
    				Provider:          pulumi.String("github"),
    				ExternalCheckName: pulumi.String("e2e"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// A webhook-backed check for an external test runner. The runner must handle
    		// check events and report results through the Checks API separately.
    		_, err = vercel.NewProjectDeploymentCheck(ctx, "webhook", &vercel.ProjectDeploymentCheckArgs{
    			ProjectId: example.ID(),
    			Name:      pulumi.String("External smoke tests"),
    			Requires:  pulumi.String("deployment-url"),
    			Blocks:    pulumi.String("none"),
    			Targets: pulumi.StringArray{
    				pulumi.String("preview"),
    			},
    			IsRerequestable: pulumi.Bool(true),
    			Source: &vercel.ProjectDeploymentCheckSourceArgs{
    				Kind: pulumi.String("webhook"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vercel = Pulumiverse.Vercel;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        // GitHub repository connected to Vercel, in owner/repository format.
        var githubRepository = config.Require("githubRepository");
        var example = new Vercel.Project("example", new()
        {
            Name = "deployment-checks-example",
            GitRepository = new Vercel.Inputs.ProjectGitRepositoryArgs
            {
                Type = "github",
                Repo = githubRepository,
            },
        });
    
        // The external check name must match the check reported by your GitHub workflow.
        // This resource registers a gate; it does not create or run the workflow.
        var e2e = new Vercel.ProjectDeploymentCheck("e2e", new()
        {
            ProjectId = example.Id,
            Name = "End-to-end tests",
            Requires = "deployment-url",
            Blocks = "deployment-alias",
            Targets = new[]
            {
                "production",
            },
            IsRerequestable = false,
            Source = new Vercel.Inputs.ProjectDeploymentCheckSourceArgs
            {
                Kind = "git-provider",
                Provider = "github",
                ExternalCheckName = "e2e",
            },
        });
    
        // A webhook-backed check for an external test runner. The runner must handle
        // check events and report results through the Checks API separately.
        var webhook = new Vercel.ProjectDeploymentCheck("webhook", new()
        {
            ProjectId = example.Id,
            Name = "External smoke tests",
            Requires = "deployment-url",
            Blocks = "none",
            Targets = new[]
            {
                "preview",
            },
            IsRerequestable = true,
            Source = new Vercel.Inputs.ProjectDeploymentCheckSourceArgs
            {
                Kind = "webhook",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumiverse.vercel.Project;
    import com.pulumiverse.vercel.ProjectArgs;
    import com.pulumi.vercel.inputs.ProjectGitRepositoryArgs;
    import com.pulumiverse.vercel.ProjectDeploymentCheck;
    import com.pulumiverse.vercel.ProjectDeploymentCheckArgs;
    import com.pulumi.vercel.inputs.ProjectDeploymentCheckSourceArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var githubRepository = config.require("githubRepository");
            var example = new Project("example", ProjectArgs.builder()
                .name("deployment-checks-example")
                .gitRepository(ProjectGitRepositoryArgs.builder()
                    .type("github")
                    .repo(githubRepository)
                    .build())
                .build());
    
            // The external check name must match the check reported by your GitHub workflow.
            // This resource registers a gate; it does not create or run the workflow.
            var e2e = new ProjectDeploymentCheck("e2e", ProjectDeploymentCheckArgs.builder()
                .projectId(example.id())
                .name("End-to-end tests")
                .requires("deployment-url")
                .blocks("deployment-alias")
                .targets("production")
                .isRerequestable(false)
                .source(ProjectDeploymentCheckSourceArgs.builder()
                    .kind("git-provider")
                    .provider("github")
                    .externalCheckName("e2e")
                    .build())
                .build());
    
            // A webhook-backed check for an external test runner. The runner must handle
            // check events and report results through the Checks API separately.
            var webhook = new ProjectDeploymentCheck("webhook", ProjectDeploymentCheckArgs.builder()
                .projectId(example.id())
                .name("External smoke tests")
                .requires("deployment-url")
                .blocks("none")
                .targets("preview")
                .isRerequestable(true)
                .source(ProjectDeploymentCheckSourceArgs.builder()
                    .kind("webhook")
                    .build())
                .build());
    
        }
    }
    
    configuration:
      githubRepository:
        type: string
    resources:
      example:
        type: vercel:Project
        properties:
          name: deployment-checks-example
          gitRepository:
            type: github
            repo: ${githubRepository}
      # The external check name must match the check reported by your GitHub workflow.
      # This resource registers a gate; it does not create or run the workflow.
      e2e:
        type: vercel:ProjectDeploymentCheck
        properties:
          projectId: ${example.id}
          name: End-to-end tests
          requires: deployment-url
          blocks: deployment-alias
          targets:
            - production
          isRerequestable: false
          source:
            kind: git-provider
            provider: github
            externalCheckName: e2e
      # A webhook-backed check for an external test runner. The runner must handle
      # check events and report results through the Checks API separately.
      webhook:
        type: vercel:ProjectDeploymentCheck
        properties:
          projectId: ${example.id}
          name: External smoke tests
          requires: deployment-url
          blocks: none
          targets:
            - preview
          isRerequestable: true
          source:
            kind: webhook
    
    Example coming soon!
    

    Integration checks

    Integration checks require an integration installation token. The API identifies the integration and installation from that token. Use this token only with an integration source because it determines the returned source kind. The optional external_resource_id must belong to that installation.

    import * as pulumi from "@pulumi/pulumi";
    import * as vercel from "@pulumiverse/vercel";
    
    const config = new pulumi.Config();
    // An integration installation token authorized for this project.
    const integrationToken = config.require("integrationToken");
    // The ID or name of an existing project accessible to the integration.
    const projectId = config.require("projectId");
    // The team that owns the project.
    const teamId = config.require("teamId");
    const integration = new vercel.ProjectDeploymentCheck("integration", {
        projectId: projectId,
        name: "Integration quality gate",
        requires: "build-ready",
        blocks: "deployment-alias",
        targets: ["production"],
        source: {
            kind: "integration",
        },
    });
    
    import pulumi
    import pulumiverse_vercel as vercel
    
    config = pulumi.Config()
    # An integration installation token authorized for this project.
    integration_token = config.require("integrationToken")
    # The ID or name of an existing project accessible to the integration.
    project_id = config.require("projectId")
    # The team that owns the project.
    team_id = config.require("teamId")
    integration = vercel.ProjectDeploymentCheck("integration",
        project_id=project_id,
        name="Integration quality gate",
        requires="build-ready",
        blocks="deployment-alias",
        targets=["production"],
        source={
            "kind": "integration",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    	"github.com/pulumiverse/pulumi-vercel/sdk/v5/go/vercel"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		// An integration installation token authorized for this project.
    		integrationToken := cfg.Require("integrationToken")
    		// The ID or name of an existing project accessible to the integration.
    		projectId := cfg.Require("projectId")
    		// The team that owns the project.
    		teamId := cfg.Require("teamId")
    		_, err := vercel.NewProjectDeploymentCheck(ctx, "integration", &vercel.ProjectDeploymentCheckArgs{
    			ProjectId: pulumi.String(projectId),
    			Name:      pulumi.String("Integration quality gate"),
    			Requires:  pulumi.String("build-ready"),
    			Blocks:    pulumi.String("deployment-alias"),
    			Targets: pulumi.StringArray{
    				pulumi.String("production"),
    			},
    			Source: &vercel.ProjectDeploymentCheckSourceArgs{
    				Kind: pulumi.String("integration"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vercel = Pulumiverse.Vercel;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        // An integration installation token authorized for this project.
        var integrationToken = config.Require("integrationToken");
        // The ID or name of an existing project accessible to the integration.
        var projectId = config.Require("projectId");
        // The team that owns the project.
        var teamId = config.Require("teamId");
        var integration = new Vercel.ProjectDeploymentCheck("integration", new()
        {
            ProjectId = projectId,
            Name = "Integration quality gate",
            Requires = "build-ready",
            Blocks = "deployment-alias",
            Targets = new[]
            {
                "production",
            },
            Source = new Vercel.Inputs.ProjectDeploymentCheckSourceArgs
            {
                Kind = "integration",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumiverse.vercel.ProjectDeploymentCheck;
    import com.pulumiverse.vercel.ProjectDeploymentCheckArgs;
    import com.pulumi.vercel.inputs.ProjectDeploymentCheckSourceArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var integrationToken = config.require("integrationToken");
            final var projectId = config.require("projectId");
            final var teamId = config.require("teamId");
            var integration = new ProjectDeploymentCheck("integration", ProjectDeploymentCheckArgs.builder()
                .projectId(projectId)
                .name("Integration quality gate")
                .requires("build-ready")
                .blocks("deployment-alias")
                .targets("production")
                .source(ProjectDeploymentCheckSourceArgs.builder()
                    .kind("integration")
                    .build())
                .build());
    
        }
    }
    
    configuration:
      integrationToken:
        type: string
      projectId:
        type: string
      teamId:
        type: string
    resources:
      integration:
        type: vercel:ProjectDeploymentCheck
        properties:
          projectId: ${projectId}
          name: Integration quality gate
          requires: build-ready
          blocks: deployment-alias
          targets:
            - production
          source:
            kind: integration
    
    Example coming soon!
    

    Choosing check behavior

    • requires selects when the check can run: build-ready, deployment-url, or none.
    • blocks = "deployment-alias" gates domain assignment; blocks = "none" makes the check non-blocking. Omission uses the API default, deployment-alias.
    • targets accepts production, preview, or custom environment IDs (not slugs). For a custom environment managed by Terraform, use targets = [vercel_custom_environment.staging.id]. Omission defaults to production. Use ["all"] to select every environment; do not combine all with other targets or supply an empty set.
    • is_rerequestable defaults to false. Enable it only when your webhook runner or integration handles rerun requests.
    • Optional computed settings are populated from the API. Omitting a previously configured setting keeps its current value; it does not reset the setting to its creation default.

    Changing project_id, an explicitly configured team_id, or a configured source field replaces the check. Changing requires to none also replaces it because the API does not support that PATCH operation. Other supported settings update in place. Replacement deletes the old check and creates a new check with a new ID.

    Create ProjectDeploymentCheck Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ProjectDeploymentCheck(name: string, args: ProjectDeploymentCheckArgs, opts?: CustomResourceOptions);
    @overload
    def ProjectDeploymentCheck(resource_name: str,
                               args: ProjectDeploymentCheckArgs,
                               opts: Optional[ResourceOptions] = None)
    
    @overload
    def ProjectDeploymentCheck(resource_name: str,
                               opts: Optional[ResourceOptions] = None,
                               project_id: Optional[str] = None,
                               requires: Optional[str] = None,
                               blocks: Optional[str] = None,
                               is_rerequestable: Optional[bool] = None,
                               name: Optional[str] = None,
                               source: Optional[ProjectDeploymentCheckSourceArgs] = None,
                               targets: Optional[Sequence[str]] = None,
                               team_id: Optional[str] = None,
                               timeout: Optional[int] = None)
    func NewProjectDeploymentCheck(ctx *Context, name string, args ProjectDeploymentCheckArgs, opts ...ResourceOption) (*ProjectDeploymentCheck, error)
    public ProjectDeploymentCheck(string name, ProjectDeploymentCheckArgs args, CustomResourceOptions? opts = null)
    public ProjectDeploymentCheck(String name, ProjectDeploymentCheckArgs args)
    public ProjectDeploymentCheck(String name, ProjectDeploymentCheckArgs args, CustomResourceOptions options)
    
    type: vercel:ProjectDeploymentCheck
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "vercel_project_deployment_check" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args ProjectDeploymentCheckArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ProjectDeploymentCheckArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ProjectDeploymentCheckArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ProjectDeploymentCheckArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ProjectDeploymentCheckArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var projectDeploymentCheckResource = new Vercel.ProjectDeploymentCheck("projectDeploymentCheckResource", new()
    {
        ProjectId = "string",
        Requires = "string",
        Blocks = "string",
        IsRerequestable = false,
        Name = "string",
        Source = new Vercel.Inputs.ProjectDeploymentCheckSourceArgs
        {
            Kind = "string",
            ExternalCheckName = "string",
            ExternalResourceId = "string",
            Provider = "string",
            WebhookId = "string",
        },
        Targets = new[]
        {
            "string",
        },
        TeamId = "string",
        Timeout = 0,
    });
    
    example, err := vercel.NewProjectDeploymentCheck(ctx, "projectDeploymentCheckResource", &vercel.ProjectDeploymentCheckArgs{
    	ProjectId:       pulumi.String("string"),
    	Requires:        pulumi.String("string"),
    	Blocks:          pulumi.String("string"),
    	IsRerequestable: pulumi.Bool(false),
    	Name:            pulumi.String("string"),
    	Source: &vercel.ProjectDeploymentCheckSourceArgs{
    		Kind:               pulumi.String("string"),
    		ExternalCheckName:  pulumi.String("string"),
    		ExternalResourceId: pulumi.String("string"),
    		Provider:           pulumi.String("string"),
    		WebhookId:          pulumi.String("string"),
    	},
    	Targets: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	TeamId:  pulumi.String("string"),
    	Timeout: pulumi.Int(0),
    })
    
    resource "vercel_project_deployment_check" "projectDeploymentCheckResource" {
      lifecycle {
        create_before_destroy = true
      }
      project_id       = "string"
      requires         = "string"
      blocks           = "string"
      is_rerequestable = false
      name             = "string"
      source = {
        kind                 = "string"
        external_check_name  = "string"
        external_resource_id = "string"
        provider             = "string"
        webhook_id           = "string"
      }
      targets = ["string"]
      team_id = "string"
      timeout = 0
    }
    
    var projectDeploymentCheckResource = new ProjectDeploymentCheck("projectDeploymentCheckResource", ProjectDeploymentCheckArgs.builder()
        .projectId("string")
        .requires("string")
        .blocks("string")
        .isRerequestable(false)
        .name("string")
        .source(ProjectDeploymentCheckSourceArgs.builder()
            .kind("string")
            .externalCheckName("string")
            .externalResourceId("string")
            .provider("string")
            .webhookId("string")
            .build())
        .targets("string")
        .teamId("string")
        .timeout(0)
        .build());
    
    project_deployment_check_resource = vercel.ProjectDeploymentCheck("projectDeploymentCheckResource",
        project_id="string",
        requires="string",
        blocks="string",
        is_rerequestable=False,
        name="string",
        source={
            "kind": "string",
            "external_check_name": "string",
            "external_resource_id": "string",
            "provider": "string",
            "webhook_id": "string",
        },
        targets=["string"],
        team_id="string",
        timeout=0)
    
    const projectDeploymentCheckResource = new vercel.ProjectDeploymentCheck("projectDeploymentCheckResource", {
        projectId: "string",
        requires: "string",
        blocks: "string",
        isRerequestable: false,
        name: "string",
        source: {
            kind: "string",
            externalCheckName: "string",
            externalResourceId: "string",
            provider: "string",
            webhookId: "string",
        },
        targets: ["string"],
        teamId: "string",
        timeout: 0,
    });
    
    type: vercel:ProjectDeploymentCheck
    properties:
        blocks: string
        isRerequestable: false
        name: string
        projectId: string
        requires: string
        source:
            externalCheckName: string
            externalResourceId: string
            kind: string
            provider: string
            webhookId: string
        targets:
            - string
        teamId: string
        timeout: 0
    

    ProjectDeploymentCheck Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ProjectDeploymentCheck resource accepts the following input properties:

    ProjectId string
    The ID or name of the Vercel project.
    Requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    Blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    IsRerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    Name string
    The human-readable name of the Deployment Check.
    Source Pulumiverse.Vercel.Inputs.ProjectDeploymentCheckSource
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    Targets List<string>
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    TeamId string
    The ID of the Vercel team.
    Timeout int
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    ProjectId string
    The ID or name of the Vercel project.
    Requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    Blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    IsRerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    Name string
    The human-readable name of the Deployment Check.
    Source ProjectDeploymentCheckSourceArgs
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    Targets []string
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    TeamId string
    The ID of the Vercel team.
    Timeout int
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    project_id string
    The ID or name of the Vercel project.
    requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    is_rerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name string
    The human-readable name of the Deployment Check.
    source object
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets list(string)
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    team_id string
    The ID of the Vercel team.
    timeout number
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    projectId String
    The ID or name of the Vercel project.
    requires String
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    blocks String
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    isRerequestable Boolean
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name String
    The human-readable name of the Deployment Check.
    source ProjectDeploymentCheckSource
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets List<String>
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    teamId String
    The ID of the Vercel team.
    timeout Integer
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    projectId string
    The ID or name of the Vercel project.
    requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    isRerequestable boolean
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name string
    The human-readable name of the Deployment Check.
    source ProjectDeploymentCheckSource
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets string[]
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    teamId string
    The ID of the Vercel team.
    timeout number
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    project_id str
    The ID or name of the Vercel project.
    requires str
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    blocks str
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    is_rerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name str
    The human-readable name of the Deployment Check.
    source ProjectDeploymentCheckSourceArgs
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets Sequence[str]
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    team_id str
    The ID of the Vercel team.
    timeout int
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    projectId String
    The ID or name of the Vercel project.
    requires String
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    blocks String
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    isRerequestable Boolean
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name String
    The human-readable name of the Deployment Check.
    source Property Map
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets List<String>
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    teamId String
    The ID of the Vercel team.
    timeout Number
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ProjectDeploymentCheck resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ProjectDeploymentCheck Resource

    Get an existing ProjectDeploymentCheck resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ProjectDeploymentCheckState, opts?: CustomResourceOptions): ProjectDeploymentCheck
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            blocks: Optional[str] = None,
            is_rerequestable: Optional[bool] = None,
            name: Optional[str] = None,
            project_id: Optional[str] = None,
            requires: Optional[str] = None,
            source: Optional[ProjectDeploymentCheckSourceArgs] = None,
            targets: Optional[Sequence[str]] = None,
            team_id: Optional[str] = None,
            timeout: Optional[int] = None) -> ProjectDeploymentCheck
    func GetProjectDeploymentCheck(ctx *Context, name string, id IDInput, state *ProjectDeploymentCheckState, opts ...ResourceOption) (*ProjectDeploymentCheck, error)
    public static ProjectDeploymentCheck Get(string name, Input<string> id, ProjectDeploymentCheckState? state, CustomResourceOptions? opts = null)
    public static ProjectDeploymentCheck get(String name, Output<String> id, ProjectDeploymentCheckState state, CustomResourceOptions options)
    resources:  _:    type: vercel:ProjectDeploymentCheck    get:      id: ${id}
    import {
      to = vercel_project_deployment_check.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    IsRerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    Name string
    The human-readable name of the Deployment Check.
    ProjectId string
    The ID or name of the Vercel project.
    Requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    Source Pulumiverse.Vercel.Inputs.ProjectDeploymentCheckSource
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    Targets List<string>
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    TeamId string
    The ID of the Vercel team.
    Timeout int
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    Blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    IsRerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    Name string
    The human-readable name of the Deployment Check.
    ProjectId string
    The ID or name of the Vercel project.
    Requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    Source ProjectDeploymentCheckSourceArgs
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    Targets []string
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    TeamId string
    The ID of the Vercel team.
    Timeout int
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    is_rerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name string
    The human-readable name of the Deployment Check.
    project_id string
    The ID or name of the Vercel project.
    requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    source object
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets list(string)
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    team_id string
    The ID of the Vercel team.
    timeout number
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    blocks String
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    isRerequestable Boolean
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name String
    The human-readable name of the Deployment Check.
    projectId String
    The ID or name of the Vercel project.
    requires String
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    source ProjectDeploymentCheckSource
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets List<String>
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    teamId String
    The ID of the Vercel team.
    timeout Integer
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    blocks string
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    isRerequestable boolean
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name string
    The human-readable name of the Deployment Check.
    projectId string
    The ID or name of the Vercel project.
    requires string
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    source ProjectDeploymentCheckSource
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets string[]
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    teamId string
    The ID of the Vercel team.
    timeout number
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    blocks str
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    is_rerequestable bool
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name str
    The human-readable name of the Deployment Check.
    project_id str
    The ID or name of the Vercel project.
    requires str
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    source ProjectDeploymentCheckSourceArgs
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets Sequence[str]
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    team_id str
    The ID of the Vercel team.
    timeout int
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.
    blocks String
    The deployment stage blocked by the check. New checks currently support deployment-alias and none.
    isRerequestable Boolean
    Whether users can rerun the check. Defaults to false; must be false for a git-provider source.
    name String
    The human-readable name of the Deployment Check.
    projectId String
    The ID or name of the Vercel project.
    requires String
    The deployment stage required before the check runs: build-ready, deployment-url, or none. Changing this to none replaces the check because the API does not support that update.
    source Property Map
    The system that supplies the Deployment Check. Required when creating a check; changing a configured source field replaces the check. Omit it when managing an imported check whose source is not writable through the API.
    targets List<String>
    Deployment environments to which the check applies: production, preview, or a custom environment ID. Use ["all"] for every environment; all cannot be combined with other targets. The API defaults to ["production"].
    teamId String
    The ID of the Vercel team.
    timeout Number
    The timeout value supplied to check runners by the Checks API. When omitted, the API determines the value.

    Supporting Types

    ProjectDeploymentCheckSource, ProjectDeploymentCheckSourceArgs

    Kind string
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    ExternalCheckName string
    The external check name. Required for a git-provider source.
    ExternalResourceId string
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    Provider string
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    WebhookId string
    The webhook ID for a webhook source.
    Kind string
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    ExternalCheckName string
    The external check name. Required for a git-provider source.
    ExternalResourceId string
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    Provider string
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    WebhookId string
    The webhook ID for a webhook source.
    kind string
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    external_check_name string
    The external check name. Required for a git-provider source.
    external_resource_id string
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    provider string
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    webhook_id string
    The webhook ID for a webhook source.
    kind String
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    externalCheckName String
    The external check name. Required for a git-provider source.
    externalResourceId String
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    provider String
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    webhookId String
    The webhook ID for a webhook source.
    kind string
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    externalCheckName string
    The external check name. Required for a git-provider source.
    externalResourceId string
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    provider string
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    webhookId string
    The webhook ID for a webhook source.
    kind str
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    external_check_name str
    The external check name. Required for a git-provider source.
    external_resource_id str
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    provider str
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    webhook_id str
    The webhook ID for a webhook source.
    kind String
    The source kind. New checks support git-provider, integration, and webhook; vercel is response-only.
    externalCheckName String
    The external check name. Required for a git-provider source.
    externalResourceId String
    An optional external resource ID for an integration source. Creating integration checks requires an integration token; the API derives integration IDs from that token.
    provider String
    The Git provider. New git-provider checks currently support github; imported checks may report gitlab or bitbucket.
    webhookId String
    The webhook ID for a webhook source.

    Import

    Use team_id/project_id/check_id, or project_id/check_id when the provider supplies the team. Project names are supported; the imported identifier must match the project_id value in configuration to avoid replacement.

    With an explicit team:

    $ pulumi import vercel:index/projectDeploymentCheck:ProjectDeploymentCheck e2e team_xxx/prj_xxx/check_xxx
    

    With the team configured on the provider:

    $ pulumi import vercel:index/projectDeploymentCheck:ProjectDeploymentCheck e2e prj_xxx/check_xxx
    

    Project names are also supported. Use the same ID or name as project_id in config.

    $ pulumi import vercel:index/projectDeploymentCheck:ProjectDeploymentCheck e2e team_xxx/my-project/check_xxx
    

    For Terraform 1.5 and later:

    Match name and requires to the existing check before applying. Omit source to preserve an imported source, including Vercel-managed checks and Git-provider variants that this resource cannot create. Likewise, omit blocks to preserve an API value outside the configurable deployment-alias and none values. Inspect the imported state with terraform state show before configuring additional fields.

    A source is required for new checks. For an imported check with an omitted source, configuring a different source replaces it. Supply a writable source before changing requires to none; response-only sources cannot be recreated by this resource.

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    vercel pulumiverse/pulumi-vercel
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the vercel Terraform Provider.
    vercel logo vercel logo
    Viewing docs for Vercel v5.21.1
    published on Thursday, Oct 15, 2026 by Pulumiverse

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial