## Update project `client.Pages.Projects.Edit(ctx, projectName, params) (*Project, error)` **patch** `/accounts/{account_id}/pages/projects/{project_name}` Set new attributes for an existing project. Modify environment variables. To delete an environment variable, set the key to null. ### Parameters - `projectName string` Name of the project. - `params ProjectEditParams` - `AccountID param.Field[string]` Path param: Identifier. - `BuildConfig param.Field[ProjectEditParamsBuildConfig]` Body param: Configs for the project build process. - `BuildCaching bool` Enable build caching for the project. - `BuildCommand string` Command used to build project. - `DestinationDir string` Output directory of the build. - `RootDir string` Directory to run the command. - `WebAnalyticsTag string` The classifying tag for analytics. - `WebAnalyticsToken string` The auth token for analytics. - `DeploymentConfigs param.Field[ProjectEditParamsDeploymentConfigs]` Body param: Configs for deployments in a project. - `Preview ProjectEditParamsDeploymentConfigsPreview` Configs for preview deploys. - `AIBindings map[string, ProjectEditParamsDeploymentConfigsPreviewAIBindings]` Constellation bindings used for Pages Functions. - `ProjectID string` - `AlwaysUseLatestCompatibilityDate bool` Whether to always use the latest compatibility date for Pages Functions. - `AnalyticsEngineDatasets map[string, ProjectEditParamsDeploymentConfigsPreviewAnalyticsEngineDatasets]` Analytics Engine bindings used for Pages Functions. - `Dataset string` Name of the dataset. - `Browsers map[string, ProjectEditParamsDeploymentConfigsPreviewBrowsers]` Browser bindings used for Pages Functions. - `BuildImageMajorVersion int64` The major version of the build image to use for Pages Functions. - `CompatibilityDate string` Compatibility date used for Pages Functions. - `CompatibilityFlags []string` Compatibility flags used for Pages Functions. - `D1Databases map[string, ProjectEditParamsDeploymentConfigsPreviewD1Databases]` D1 databases used for Pages Functions. - `ID string` UUID of the D1 database. - `DurableObjectNamespaces map[string, ProjectEditParamsDeploymentConfigsPreviewDurableObjectNamespaces]` Durable Object namespaces used for Pages Functions. - `NamespaceID string` ID of the Durable Object namespace. - `EnvVars map[string, ProjectEditParamsDeploymentConfigsPreviewEnvVars]` Environment variables used for builds and Pages Functions. - `type ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVar struct{…}` A plaintext environment variable. - `Type ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVarType` - `const ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVarTypePlainText ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVarType = "plain_text"` - `Value string` Environment variable value. - `type ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVar struct{…}` An encrypted environment variable. - `Type ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVarType` - `const ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVarTypeSecretText ProjectEditParamsDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVarType = "secret_text"` - `Value string` Secret value. - `FailOpen bool` Whether to fail open when the deployment config cannot be applied. - `HyperdriveBindings map[string, ProjectEditParamsDeploymentConfigsPreviewHyperdriveBindings]` Hyperdrive bindings used for Pages Functions. - `ID string` - `KVNamespaces map[string, ProjectEditParamsDeploymentConfigsPreviewKVNamespaces]` KV namespaces used for Pages Functions. - `NamespaceID string` ID of the KV namespace. - `Limits ProjectEditParamsDeploymentConfigsPreviewLimits` Limits for Pages Functions. - `CPUMs int64` CPU time limit in milliseconds. - `MTLSCertificates map[string, ProjectEditParamsDeploymentConfigsPreviewMTLSCertificates]` mTLS bindings used for Pages Functions. - `CertificateID string` - `Placement ProjectEditParamsDeploymentConfigsPreviewPlacement` Placement setting used for Pages Functions. - `Mode string` Placement mode. - `QueueProducers map[string, ProjectEditParamsDeploymentConfigsPreviewQueueProducers]` Queue Producer bindings used for Pages Functions. - `Name string` Name of the Queue. - `R2Buckets map[string, ProjectEditParamsDeploymentConfigsPreviewR2Buckets]` R2 buckets used for Pages Functions. - `Name string` Name of the R2 bucket. - `Jurisdiction string` Jurisdiction of the R2 bucket. - `Services map[string, ProjectEditParamsDeploymentConfigsPreviewServices]` Services used for Pages Functions. - `Service string` The Service name. - `Entrypoint string` The entrypoint to bind to. - `Environment string` The Service environment. - `UsageModel ProjectEditParamsDeploymentConfigsPreviewUsageModel` The usage model for Pages Functions. - `const ProjectEditParamsDeploymentConfigsPreviewUsageModelStandard ProjectEditParamsDeploymentConfigsPreviewUsageModel = "standard"` - `const ProjectEditParamsDeploymentConfigsPreviewUsageModelBundled ProjectEditParamsDeploymentConfigsPreviewUsageModel = "bundled"` - `const ProjectEditParamsDeploymentConfigsPreviewUsageModelUnbound ProjectEditParamsDeploymentConfigsPreviewUsageModel = "unbound"` - `VectorizeBindings map[string, ProjectEditParamsDeploymentConfigsPreviewVectorizeBindings]` Vectorize bindings used for Pages Functions. - `IndexName string` - `WranglerConfigHash string` Hash of the Wrangler configuration used for the deployment. - `Production ProjectEditParamsDeploymentConfigsProduction` Configs for production deploys. - `AIBindings map[string, ProjectEditParamsDeploymentConfigsProductionAIBindings]` Constellation bindings used for Pages Functions. - `ProjectID string` - `AlwaysUseLatestCompatibilityDate bool` Whether to always use the latest compatibility date for Pages Functions. - `AnalyticsEngineDatasets map[string, ProjectEditParamsDeploymentConfigsProductionAnalyticsEngineDatasets]` Analytics Engine bindings used for Pages Functions. - `Dataset string` Name of the dataset. - `Browsers map[string, ProjectEditParamsDeploymentConfigsProductionBrowsers]` Browser bindings used for Pages Functions. - `BuildImageMajorVersion int64` The major version of the build image to use for Pages Functions. - `CompatibilityDate string` Compatibility date used for Pages Functions. - `CompatibilityFlags []string` Compatibility flags used for Pages Functions. - `D1Databases map[string, ProjectEditParamsDeploymentConfigsProductionD1Databases]` D1 databases used for Pages Functions. - `ID string` UUID of the D1 database. - `DurableObjectNamespaces map[string, ProjectEditParamsDeploymentConfigsProductionDurableObjectNamespaces]` Durable Object namespaces used for Pages Functions. - `NamespaceID string` ID of the Durable Object namespace. - `EnvVars map[string, ProjectEditParamsDeploymentConfigsProductionEnvVars]` Environment variables used for builds and Pages Functions. - `type ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVar struct{…}` A plaintext environment variable. - `Type ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVarType` - `const ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVarTypePlainText ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVarType = "plain_text"` - `Value string` Environment variable value. - `type ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVar struct{…}` An encrypted environment variable. - `Type ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVarType` - `const ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVarTypeSecretText ProjectEditParamsDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVarType = "secret_text"` - `Value string` Secret value. - `FailOpen bool` Whether to fail open when the deployment config cannot be applied. - `HyperdriveBindings map[string, ProjectEditParamsDeploymentConfigsProductionHyperdriveBindings]` Hyperdrive bindings used for Pages Functions. - `ID string` - `KVNamespaces map[string, ProjectEditParamsDeploymentConfigsProductionKVNamespaces]` KV namespaces used for Pages Functions. - `NamespaceID string` ID of the KV namespace. - `Limits ProjectEditParamsDeploymentConfigsProductionLimits` Limits for Pages Functions. - `CPUMs int64` CPU time limit in milliseconds. - `MTLSCertificates map[string, ProjectEditParamsDeploymentConfigsProductionMTLSCertificates]` mTLS bindings used for Pages Functions. - `CertificateID string` - `Placement ProjectEditParamsDeploymentConfigsProductionPlacement` Placement setting used for Pages Functions. - `Mode string` Placement mode. - `QueueProducers map[string, ProjectEditParamsDeploymentConfigsProductionQueueProducers]` Queue Producer bindings used for Pages Functions. - `Name string` Name of the Queue. - `R2Buckets map[string, ProjectEditParamsDeploymentConfigsProductionR2Buckets]` R2 buckets used for Pages Functions. - `Name string` Name of the R2 bucket. - `Jurisdiction string` Jurisdiction of the R2 bucket. - `Services map[string, ProjectEditParamsDeploymentConfigsProductionServices]` Services used for Pages Functions. - `Service string` The Service name. - `Entrypoint string` The entrypoint to bind to. - `Environment string` The Service environment. - `UsageModel ProjectEditParamsDeploymentConfigsProductionUsageModel` The usage model for Pages Functions. - `const ProjectEditParamsDeploymentConfigsProductionUsageModelStandard ProjectEditParamsDeploymentConfigsProductionUsageModel = "standard"` - `const ProjectEditParamsDeploymentConfigsProductionUsageModelBundled ProjectEditParamsDeploymentConfigsProductionUsageModel = "bundled"` - `const ProjectEditParamsDeploymentConfigsProductionUsageModelUnbound ProjectEditParamsDeploymentConfigsProductionUsageModel = "unbound"` - `VectorizeBindings map[string, ProjectEditParamsDeploymentConfigsProductionVectorizeBindings]` Vectorize bindings used for Pages Functions. - `IndexName string` - `WranglerConfigHash string` Hash of the Wrangler configuration used for the deployment. - `Name param.Field[string]` Body param: Name of the project. - `ProductionBranch param.Field[string]` Body param: Production branch of the project. Used to identify production deployments. - `Source param.Field[ProjectEditParamsSource]` Body param: Configs for the project source control. - `Config ProjectEditParamsSourceConfig` - `DeploymentsEnabled bool` Whether to enable automatic deployments when pushing to the source repository. When disabled, no deployments (production or preview) will be triggered automatically. - `Owner string` The owner of the repository. - `OwnerID string` The owner ID of the repository. - `PathExcludes []string` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `PathIncludes []string` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `PrCommentsEnabled bool` Whether to enable PR comments. - `PreviewBranchExcludes []string` A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `PreviewBranchIncludes []string` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `PreviewDeploymentSetting ProjectEditParamsSourceConfigPreviewDeploymentSetting` Controls whether commits to preview branches trigger a preview deployment. - `const ProjectEditParamsSourceConfigPreviewDeploymentSettingAll ProjectEditParamsSourceConfigPreviewDeploymentSetting = "all"` - `const ProjectEditParamsSourceConfigPreviewDeploymentSettingNone ProjectEditParamsSourceConfigPreviewDeploymentSetting = "none"` - `const ProjectEditParamsSourceConfigPreviewDeploymentSettingCustom ProjectEditParamsSourceConfigPreviewDeploymentSetting = "custom"` - `ProductionBranch string` The production branch of the repository. - `ProductionDeploymentsEnabled bool` Whether to trigger a production deployment on commits to the production branch. - `RepoID string` The ID of the repository. - `RepoName string` The name of the repository. - `Type ProjectEditParamsSourceType` The source control management provider. - `const ProjectEditParamsSourceTypeGitHub ProjectEditParamsSourceType = "github"` - `const ProjectEditParamsSourceTypeGitlab ProjectEditParamsSourceType = "gitlab"` ### Returns - `type Project struct{…}` - `ID string` ID of the project. - `CanonicalDeployment Deployment` Most recent production deployment of the project. - `ID string` Id of the deployment. - `Aliases []string` A list of alias URLs pointing to this deployment. - `BuildConfig DeploymentBuildConfig` Configs for the project build process. - `WebAnalyticsTag string` The classifying tag for analytics. - `WebAnalyticsToken string` The auth token for analytics. - `BuildCaching bool` Enable build caching for the project. - `BuildCommand string` Command used to build project. - `DestinationDir string` Assets output directory of the build. - `RootDir string` Directory to run the command. - `CreatedOn Time` When the deployment was created. - `DeploymentTrigger DeploymentDeploymentTrigger` Info about what caused the deployment. - `Metadata DeploymentDeploymentTriggerMetadata` Additional info about the trigger. - `Branch string` Where the trigger happened. - `CommitDirty bool` Whether the deployment trigger commit was dirty. - `CommitHash string` Hash of the deployment trigger commit. - `CommitMessage string` Message of the deployment trigger commit. - `Type DeploymentDeploymentTriggerType` What caused the deployment. - `const DeploymentDeploymentTriggerTypeGitHubPush DeploymentDeploymentTriggerType = "github:push"` - `const DeploymentDeploymentTriggerTypeADHoc DeploymentDeploymentTriggerType = "ad_hoc"` - `const DeploymentDeploymentTriggerTypeDeployHook DeploymentDeploymentTriggerType = "deploy_hook"` - `EnvVars map[string, DeploymentEnvVar]` Environment variables used for builds and Pages Functions. - `type DeploymentEnvVarsPagesPlainTextEnvVar struct{…}` A plaintext environment variable. - `Type DeploymentEnvVarsPagesPlainTextEnvVarType` - `const DeploymentEnvVarsPagesPlainTextEnvVarTypePlainText DeploymentEnvVarsPagesPlainTextEnvVarType = "plain_text"` - `Value string` Environment variable value. - `type DeploymentEnvVarsPagesSecretTextEnvVar struct{…}` An encrypted environment variable. - `Type DeploymentEnvVarsPagesSecretTextEnvVarType` - `const DeploymentEnvVarsPagesSecretTextEnvVarTypeSecretText DeploymentEnvVarsPagesSecretTextEnvVarType = "secret_text"` - `Value string` Secret value. - `Environment DeploymentEnvironment` Type of deploy. - `const DeploymentEnvironmentPreview DeploymentEnvironment = "preview"` - `const DeploymentEnvironmentProduction DeploymentEnvironment = "production"` - `IsSkipped bool` If the deployment has been skipped. - `LatestStage Stage` The status of the deployment. - `EndedOn Time` When the stage ended. - `Name StageName` The current build stage. - `const StageNameQueued StageName = "queued"` - `const StageNameInitialize StageName = "initialize"` - `const StageNameCloneRepo StageName = "clone_repo"` - `const StageNameBuild StageName = "build"` - `const StageNameDeploy StageName = "deploy"` - `StartedOn Time` When the stage started. - `Status StageStatus` State of the current stage. - `const StageStatusSuccess StageStatus = "success"` - `const StageStatusIdle StageStatus = "idle"` - `const StageStatusActive StageStatus = "active"` - `const StageStatusFailure StageStatus = "failure"` - `const StageStatusCanceled StageStatus = "canceled"` - `ModifiedOn Time` When the deployment was last modified. - `ProjectID string` Id of the project. - `ProjectName string` Name of the project. - `ShortID string` Short Id (8 character) of the deployment. - `Source DeploymentSource` Configs for the project source control. - `Config DeploymentSourceConfig` - `DeploymentsEnabled bool` Whether to enable automatic deployments when pushing to the source repository. When disabled, no deployments (production or preview) will be triggered automatically. - `Owner string` The owner of the repository. - `OwnerID string` The owner ID of the repository. - `PathExcludes []string` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `PathIncludes []string` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `PrCommentsEnabled bool` Whether to enable PR comments. - `PreviewBranchExcludes []string` A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `PreviewBranchIncludes []string` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `PreviewDeploymentSetting DeploymentSourceConfigPreviewDeploymentSetting` Controls whether commits to preview branches trigger a preview deployment. - `const DeploymentSourceConfigPreviewDeploymentSettingAll DeploymentSourceConfigPreviewDeploymentSetting = "all"` - `const DeploymentSourceConfigPreviewDeploymentSettingNone DeploymentSourceConfigPreviewDeploymentSetting = "none"` - `const DeploymentSourceConfigPreviewDeploymentSettingCustom DeploymentSourceConfigPreviewDeploymentSetting = "custom"` - `ProductionBranch string` The production branch of the repository. - `ProductionDeploymentsEnabled bool` Whether to trigger a production deployment on commits to the production branch. - `RepoID string` The ID of the repository. - `RepoName string` The name of the repository. - `Type DeploymentSourceType` The source control management provider. - `const DeploymentSourceTypeGitHub DeploymentSourceType = "github"` - `const DeploymentSourceTypeGitlab DeploymentSourceType = "gitlab"` - `Stages []Stage` List of past stages. - `EndedOn Time` When the stage ended. - `Name StageName` The current build stage. - `StartedOn Time` When the stage started. - `Status StageStatus` State of the current stage. - `URL string` The live URL to view this deployment. - `UsesFunctions bool` Whether the deployment uses functions. - `CreatedOn Time` When the project was created. - `DeploymentConfigs ProjectDeploymentConfigs` Configs for deployments in a project. - `Preview ProjectDeploymentConfigsPreview` Configs for preview deploys. - `AlwaysUseLatestCompatibilityDate bool` Whether to always use the latest compatibility date for Pages Functions. - `BuildImageMajorVersion int64` The major version of the build image to use for Pages Functions. - `CompatibilityDate string` Compatibility date used for Pages Functions. - `CompatibilityFlags []string` Compatibility flags used for Pages Functions. - `EnvVars map[string, ProjectDeploymentConfigsPreviewEnvVar]` Environment variables used for builds and Pages Functions. - `type ProjectDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVar struct{…}` A plaintext environment variable. - `Type ProjectDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVarType` - `const ProjectDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVarTypePlainText ProjectDeploymentConfigsPreviewEnvVarsPagesPlainTextEnvVarType = "plain_text"` - `Value string` Environment variable value. - `type ProjectDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVar struct{…}` An encrypted environment variable. - `Type ProjectDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVarType` - `const ProjectDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVarTypeSecretText ProjectDeploymentConfigsPreviewEnvVarsPagesSecretTextEnvVarType = "secret_text"` - `Value string` Secret value. - `FailOpen bool` Whether to fail open when the deployment config cannot be applied. - `UsageModel ProjectDeploymentConfigsPreviewUsageModel` The usage model for Pages Functions. - `const ProjectDeploymentConfigsPreviewUsageModelStandard ProjectDeploymentConfigsPreviewUsageModel = "standard"` - `const ProjectDeploymentConfigsPreviewUsageModelBundled ProjectDeploymentConfigsPreviewUsageModel = "bundled"` - `const ProjectDeploymentConfigsPreviewUsageModelUnbound ProjectDeploymentConfigsPreviewUsageModel = "unbound"` - `AIBindings map[string, ProjectDeploymentConfigsPreviewAIBinding]` Constellation bindings used for Pages Functions. - `ProjectID string` - `AnalyticsEngineDatasets map[string, ProjectDeploymentConfigsPreviewAnalyticsEngineDataset]` Analytics Engine bindings used for Pages Functions. - `Dataset string` Name of the dataset. - `Browsers map[string, ProjectDeploymentConfigsPreviewBrowser]` Browser bindings used for Pages Functions. - `D1Databases map[string, ProjectDeploymentConfigsPreviewD1Database]` D1 databases used for Pages Functions. - `ID string` UUID of the D1 database. - `DurableObjectNamespaces map[string, ProjectDeploymentConfigsPreviewDurableObjectNamespace]` Durable Object namespaces used for Pages Functions. - `NamespaceID string` ID of the Durable Object namespace. - `HyperdriveBindings map[string, ProjectDeploymentConfigsPreviewHyperdriveBinding]` Hyperdrive bindings used for Pages Functions. - `ID string` - `KVNamespaces map[string, ProjectDeploymentConfigsPreviewKVNamespace]` KV namespaces used for Pages Functions. - `NamespaceID string` ID of the KV namespace. - `Limits ProjectDeploymentConfigsPreviewLimits` Limits for Pages Functions. - `CPUMs int64` CPU time limit in milliseconds. - `MTLSCertificates map[string, ProjectDeploymentConfigsPreviewMTLSCertificate]` mTLS bindings used for Pages Functions. - `CertificateID string` - `Placement ProjectDeploymentConfigsPreviewPlacement` Placement setting used for Pages Functions. - `Mode string` Placement mode. - `QueueProducers map[string, ProjectDeploymentConfigsPreviewQueueProducer]` Queue Producer bindings used for Pages Functions. - `Name string` Name of the Queue. - `R2Buckets map[string, ProjectDeploymentConfigsPreviewR2Bucket]` R2 buckets used for Pages Functions. - `Name string` Name of the R2 bucket. - `Jurisdiction string` Jurisdiction of the R2 bucket. - `Services map[string, ProjectDeploymentConfigsPreviewService]` Services used for Pages Functions. - `Environment string` The Service environment. - `Service string` The Service name. - `Entrypoint string` The entrypoint to bind to. - `VectorizeBindings map[string, ProjectDeploymentConfigsPreviewVectorizeBinding]` Vectorize bindings used for Pages Functions. - `IndexName string` - `WranglerConfigHash string` Hash of the Wrangler configuration used for the deployment. - `Production ProjectDeploymentConfigsProduction` Configs for production deploys. - `AlwaysUseLatestCompatibilityDate bool` Whether to always use the latest compatibility date for Pages Functions. - `BuildImageMajorVersion int64` The major version of the build image to use for Pages Functions. - `CompatibilityDate string` Compatibility date used for Pages Functions. - `CompatibilityFlags []string` Compatibility flags used for Pages Functions. - `EnvVars map[string, ProjectDeploymentConfigsProductionEnvVar]` Environment variables used for builds and Pages Functions. - `type ProjectDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVar struct{…}` A plaintext environment variable. - `Type ProjectDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVarType` - `const ProjectDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVarTypePlainText ProjectDeploymentConfigsProductionEnvVarsPagesPlainTextEnvVarType = "plain_text"` - `Value string` Environment variable value. - `type ProjectDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVar struct{…}` An encrypted environment variable. - `Type ProjectDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVarType` - `const ProjectDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVarTypeSecretText ProjectDeploymentConfigsProductionEnvVarsPagesSecretTextEnvVarType = "secret_text"` - `Value string` Secret value. - `FailOpen bool` Whether to fail open when the deployment config cannot be applied. - `UsageModel ProjectDeploymentConfigsProductionUsageModel` The usage model for Pages Functions. - `const ProjectDeploymentConfigsProductionUsageModelStandard ProjectDeploymentConfigsProductionUsageModel = "standard"` - `const ProjectDeploymentConfigsProductionUsageModelBundled ProjectDeploymentConfigsProductionUsageModel = "bundled"` - `const ProjectDeploymentConfigsProductionUsageModelUnbound ProjectDeploymentConfigsProductionUsageModel = "unbound"` - `AIBindings map[string, ProjectDeploymentConfigsProductionAIBinding]` Constellation bindings used for Pages Functions. - `ProjectID string` - `AnalyticsEngineDatasets map[string, ProjectDeploymentConfigsProductionAnalyticsEngineDataset]` Analytics Engine bindings used for Pages Functions. - `Dataset string` Name of the dataset. - `Browsers map[string, ProjectDeploymentConfigsProductionBrowser]` Browser bindings used for Pages Functions. - `D1Databases map[string, ProjectDeploymentConfigsProductionD1Database]` D1 databases used for Pages Functions. - `ID string` UUID of the D1 database. - `DurableObjectNamespaces map[string, ProjectDeploymentConfigsProductionDurableObjectNamespace]` Durable Object namespaces used for Pages Functions. - `NamespaceID string` ID of the Durable Object namespace. - `HyperdriveBindings map[string, ProjectDeploymentConfigsProductionHyperdriveBinding]` Hyperdrive bindings used for Pages Functions. - `ID string` - `KVNamespaces map[string, ProjectDeploymentConfigsProductionKVNamespace]` KV namespaces used for Pages Functions. - `NamespaceID string` ID of the KV namespace. - `Limits ProjectDeploymentConfigsProductionLimits` Limits for Pages Functions. - `CPUMs int64` CPU time limit in milliseconds. - `MTLSCertificates map[string, ProjectDeploymentConfigsProductionMTLSCertificate]` mTLS bindings used for Pages Functions. - `CertificateID string` - `Placement ProjectDeploymentConfigsProductionPlacement` Placement setting used for Pages Functions. - `Mode string` Placement mode. - `QueueProducers map[string, ProjectDeploymentConfigsProductionQueueProducer]` Queue Producer bindings used for Pages Functions. - `Name string` Name of the Queue. - `R2Buckets map[string, ProjectDeploymentConfigsProductionR2Bucket]` R2 buckets used for Pages Functions. - `Name string` Name of the R2 bucket. - `Jurisdiction string` Jurisdiction of the R2 bucket. - `Services map[string, ProjectDeploymentConfigsProductionService]` Services used for Pages Functions. - `Environment string` The Service environment. - `Service string` The Service name. - `Entrypoint string` The entrypoint to bind to. - `VectorizeBindings map[string, ProjectDeploymentConfigsProductionVectorizeBinding]` Vectorize bindings used for Pages Functions. - `IndexName string` - `WranglerConfigHash string` Hash of the Wrangler configuration used for the deployment. - `Framework string` Framework the project is using. - `FrameworkVersion string` Version of the framework the project is using. - `LatestDeployment Deployment` Most recent deployment of the project. - `Name string` Name of the project. - `PreviewScriptName string` Name of the preview script. - `ProductionBranch string` Production branch of the project. Used to identify production deployments. - `ProductionScriptName string` Name of the production script. - `UsesFunctions bool` Whether the project uses functions. - `BuildConfig ProjectBuildConfig` Configs for the project build process. - `WebAnalyticsTag string` The classifying tag for analytics. - `WebAnalyticsToken string` The auth token for analytics. - `BuildCaching bool` Enable build caching for the project. - `BuildCommand string` Command used to build project. - `DestinationDir string` Assets output directory of the build. - `RootDir string` Directory to run the command. - `Domains []string` A list of associated custom domains for the project. - `Source ProjectSource` Configs for the project source control. - `Config ProjectSourceConfig` - `DeploymentsEnabled bool` Whether to enable automatic deployments when pushing to the source repository. When disabled, no deployments (production or preview) will be triggered automatically. - `Owner string` The owner of the repository. - `OwnerID string` The owner ID of the repository. - `PathExcludes []string` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `PathIncludes []string` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `PrCommentsEnabled bool` Whether to enable PR comments. - `PreviewBranchExcludes []string` A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `PreviewBranchIncludes []string` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `PreviewDeploymentSetting ProjectSourceConfigPreviewDeploymentSetting` Controls whether commits to preview branches trigger a preview deployment. - `const ProjectSourceConfigPreviewDeploymentSettingAll ProjectSourceConfigPreviewDeploymentSetting = "all"` - `const ProjectSourceConfigPreviewDeploymentSettingNone ProjectSourceConfigPreviewDeploymentSetting = "none"` - `const ProjectSourceConfigPreviewDeploymentSettingCustom ProjectSourceConfigPreviewDeploymentSetting = "custom"` - `ProductionBranch string` The production branch of the repository. - `ProductionDeploymentsEnabled bool` Whether to trigger a production deployment on commits to the production branch. - `RepoID string` The ID of the repository. - `RepoName string` The name of the repository. - `Type ProjectSourceType` The source control management provider. - `const ProjectSourceTypeGitHub ProjectSourceType = "github"` - `const ProjectSourceTypeGitlab ProjectSourceType = "gitlab"` - `Subdomain string` The Cloudflare subdomain associated with the project. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/pages" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) project, err := client.Pages.Projects.Edit( context.TODO(), "this-is-my-project-01", pages.ProjectEditParams{ AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"), }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", project.ID) } ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "result": { "id": "7b162ea7-7367-4d67-bcde-1160995d5", "canonical_deployment": { "id": "f64788e9-fccd-4d4a-a28a-cb84f88f6", "aliases": [ "https://branchname.projectname.pages.dev" ], "build_config": { "web_analytics_tag": "cee1c73f6e4743d0b5e6bb1a0bcaabcc", "web_analytics_token": "021e1057c18547eca7b79f2516f06o7x", "build_caching": true, "build_command": "npm run build", "destination_dir": "build", "root_dir": "/" }, "created_on": "2021-03-09T00:55:03.923456Z", "deployment_trigger": { "metadata": { "branch": "main", "commit_dirty": false, "commit_hash": "ad9ccd918a81025731e10e40267e11273a263421", "commit_message": "Update index.html" }, "type": "ad_hoc" }, "env_vars": { "foo": { "type": "plain_text", "value": "hello world" } }, "environment": "preview", "is_skipped": true, "latest_stage": { "ended_on": "2021-03-09T00:58:59.045655Z", "name": "deploy", "started_on": "2021-03-09T00:55:03.923456Z", "status": "success" }, "modified_on": "2021-03-09T00:58:59.045655Z", "project_id": "7b162ea7-7367-4d67-bcde-1160995d5", "project_name": "this-is-my-project-01", "short_id": "f64788e9", "source": { "config": { "deployments_enabled": true, "owner": "my-org", "owner_id": "12345678", "path_excludes": [ "string" ], "path_includes": [ "string" ], "pr_comments_enabled": true, "preview_branch_excludes": [ "string" ], "preview_branch_includes": [ "string" ], "preview_deployment_setting": "all", "production_branch": "main", "production_deployments_enabled": true, "repo_id": "12345678", "repo_name": "my-repo" }, "type": "github" }, "stages": [ { "ended_on": "2021-06-03T15:39:03.134378Z", "name": "queued", "started_on": "2021-06-03T15:38:15.608194Z", "status": "active" }, { "ended_on": null, "name": "initialize", "started_on": null, "status": "idle" }, { "ended_on": null, "name": "clone_repo", "started_on": null, "status": "idle" }, { "ended_on": null, "name": "build", "started_on": null, "status": "idle" }, { "ended_on": null, "name": "deploy", "started_on": null, "status": "idle" } ], "url": "https://f64788e9.ninjakittens.pages.dev", "uses_functions": true }, "created_on": "2017-01-01T00:00:00Z", "deployment_configs": { "preview": { "always_use_latest_compatibility_date": false, "build_image_major_version": 3, "compatibility_date": "2025-01-01", "compatibility_flags": [ "url_standard" ], "env_vars": { "foo": { "type": "plain_text", "value": "hello world" } }, "fail_open": true, "usage_model": "standard", "ai_bindings": { "AI_BINDING": { "project_id": "some-project-id" } }, "analytics_engine_datasets": { "ANALYTICS_ENGINE_BINDING": { "dataset": "api_analytics" } }, "browsers": { "BROWSER": {} }, "d1_databases": { "D1_BINDING": { "id": "445e2955-951a-43f8-a35b-a4d0c8138f63" } }, "durable_object_namespaces": { "DO_BINDING": { "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3" } }, "hyperdrive_bindings": { "HYPERDRIVE": { "id": "a76a99bc342644deb02c38d66082262a" } }, "kv_namespaces": { "KV_BINDING": { "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3" } }, "limits": { "cpu_ms": 100 }, "mtls_certificates": { "MTLS": { "certificate_id": "d7cdd17c-916f-4cb7-aabe-585eb382ec4e" } }, "placement": { "mode": "smart" }, "queue_producers": { "QUEUE_PRODUCER_BINDING": { "name": "some-queue" } }, "r2_buckets": { "R2_BINDING": { "name": "some-bucket", "jurisdiction": "eu" } }, "services": { "SERVICE_BINDING": { "environment": "production", "service": "example-worker", "entrypoint": "MyHandler" } }, "vectorize_bindings": { "VECTORIZE": { "index_name": "my_index" } }, "wrangler_config_hash": "abc123def456" }, "production": { "always_use_latest_compatibility_date": false, "build_image_major_version": 3, "compatibility_date": "2025-01-01", "compatibility_flags": [ "url_standard" ], "env_vars": { "foo": { "type": "plain_text", "value": "hello world" } }, "fail_open": true, "usage_model": "standard", "ai_bindings": { "AI_BINDING": { "project_id": "some-project-id" } }, "analytics_engine_datasets": { "ANALYTICS_ENGINE_BINDING": { "dataset": "api_analytics" } }, "browsers": { "BROWSER": {} }, "d1_databases": { "D1_BINDING": { "id": "445e2955-951a-43f8-a35b-a4d0c8138f63" } }, "durable_object_namespaces": { "DO_BINDING": { "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3" } }, "hyperdrive_bindings": { "HYPERDRIVE": { "id": "a76a99bc342644deb02c38d66082262a" } }, "kv_namespaces": { "KV_BINDING": { "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3" } }, "limits": { "cpu_ms": 100 }, "mtls_certificates": { "MTLS": { "certificate_id": "d7cdd17c-916f-4cb7-aabe-585eb382ec4e" } }, "placement": { "mode": "smart" }, "queue_producers": { "QUEUE_PRODUCER_BINDING": { "name": "some-queue" } }, "r2_buckets": { "R2_BINDING": { "name": "some-bucket", "jurisdiction": "eu" } }, "services": { "SERVICE_BINDING": { "environment": "production", "service": "example-worker", "entrypoint": "MyHandler" } }, "vectorize_bindings": { "VECTORIZE": { "index_name": "my_index" } }, "wrangler_config_hash": "abc123def456" } }, "framework": "framework", "framework_version": "framework_version", "latest_deployment": { "id": "f64788e9-fccd-4d4a-a28a-cb84f88f6", "aliases": [ "https://branchname.projectname.pages.dev" ], "build_config": { "web_analytics_tag": "cee1c73f6e4743d0b5e6bb1a0bcaabcc", "web_analytics_token": "021e1057c18547eca7b79f2516f06o7x", "build_caching": true, "build_command": "npm run build", "destination_dir": "build", "root_dir": "/" }, "created_on": "2021-03-09T00:55:03.923456Z", "deployment_trigger": { "metadata": { "branch": "main", "commit_dirty": false, "commit_hash": "ad9ccd918a81025731e10e40267e11273a263421", "commit_message": "Update index.html" }, "type": "ad_hoc" }, "env_vars": { "foo": { "type": "plain_text", "value": "hello world" } }, "environment": "preview", "is_skipped": true, "latest_stage": { "ended_on": "2021-03-09T00:58:59.045655Z", "name": "deploy", "started_on": "2021-03-09T00:55:03.923456Z", "status": "success" }, "modified_on": "2021-03-09T00:58:59.045655Z", "project_id": "7b162ea7-7367-4d67-bcde-1160995d5", "project_name": "this-is-my-project-01", "short_id": "f64788e9", "source": { "config": { "deployments_enabled": true, "owner": "my-org", "owner_id": "12345678", "path_excludes": [ "string" ], "path_includes": [ "string" ], "pr_comments_enabled": true, "preview_branch_excludes": [ "string" ], "preview_branch_includes": [ "string" ], "preview_deployment_setting": "all", "production_branch": "main", "production_deployments_enabled": true, "repo_id": "12345678", "repo_name": "my-repo" }, "type": "github" }, "stages": [ { "ended_on": "2021-06-03T15:39:03.134378Z", "name": "queued", "started_on": "2021-06-03T15:38:15.608194Z", "status": "active" }, { "ended_on": null, "name": "initialize", "started_on": null, "status": "idle" }, { "ended_on": null, "name": "clone_repo", "started_on": null, "status": "idle" }, { "ended_on": null, "name": "build", "started_on": null, "status": "idle" }, { "ended_on": null, "name": "deploy", "started_on": null, "status": "idle" } ], "url": "https://f64788e9.ninjakittens.pages.dev", "uses_functions": true }, "name": "this-is-my-project-01", "preview_script_name": "pages-worker--1234567-preview", "production_branch": "main", "production_script_name": "pages-worker--1234567-production", "uses_functions": true, "build_config": { "web_analytics_tag": "cee1c73f6e4743d0b5e6bb1a0bcaabcc", "web_analytics_token": "021e1057c18547eca7b79f2516f06o7x", "build_caching": true, "build_command": "npm run build", "destination_dir": "build", "root_dir": "/" }, "domains": [ "customdomain.com", "customdomain.org" ], "source": { "config": { "deployments_enabled": true, "owner": "my-org", "owner_id": "12345678", "path_excludes": [ "string" ], "path_includes": [ "string" ], "pr_comments_enabled": true, "preview_branch_excludes": [ "string" ], "preview_branch_includes": [ "string" ], "preview_deployment_setting": "all", "production_branch": "main", "production_deployments_enabled": true, "repo_id": "12345678", "repo_name": "my-repo" }, "type": "github" }, "subdomain": "helloworld.pages.dev" }, "success": true } ```