# Pages # Projects ## Get projects `client.pages.projects.list(ProjectListParamsparams, RequestOptionsoptions?): V4PagePaginationArray` **get** `/accounts/{account_id}/pages/projects` Fetch a list of all user projects. ### Parameters - `params: ProjectListParams` - `account_id: string` Path param: Identifier. - `page?: number` Query param: Which page of projects to fetch. - `per_page?: number` Query param: How many projects to return per page. ### Returns - `Project` - `id: string` ID of the project. - `canonical_deployment: Deployment | null` Most recent production deployment of the project. - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. - `created_on: string` When the project was created. - `deployment_configs: DeploymentConfigs` Configs for deployments in a project. - `preview: Preview` Configs for preview deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production: Production` Configs for production deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `framework: string` Framework the project is using. - `framework_version: string` Version of the framework the project is using. - `latest_deployment: Deployment | null` Most recent deployment of the project. - `name: string` Name of the project. - `preview_script_name: string` Name of the preview script. - `production_branch: string` Production branch of the project. Used to identify production deployments. - `production_script_name: string` Name of the production script. - `uses_functions: boolean | null` Whether the project uses functions. - `build_config?: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `domains?: Array` A list of associated custom domains for the project. - `source?: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `subdomain?: string` The Cloudflare subdomain associated with the project. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const project of client.pages.projects.list({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(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, "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Get project `client.pages.projects.get(stringprojectName, ProjectGetParamsparams, RequestOptionsoptions?): Project` **get** `/accounts/{account_id}/pages/projects/{project_name}` Fetch a project by name. ### Parameters - `projectName: string` Name of the project. - `params: ProjectGetParams` - `account_id: string` Identifier. ### Returns - `Project` - `id: string` ID of the project. - `canonical_deployment: Deployment | null` Most recent production deployment of the project. - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. - `created_on: string` When the project was created. - `deployment_configs: DeploymentConfigs` Configs for deployments in a project. - `preview: Preview` Configs for preview deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production: Production` Configs for production deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `framework: string` Framework the project is using. - `framework_version: string` Version of the framework the project is using. - `latest_deployment: Deployment | null` Most recent deployment of the project. - `name: string` Name of the project. - `preview_script_name: string` Name of the preview script. - `production_branch: string` Production branch of the project. Used to identify production deployments. - `production_script_name: string` Name of the production script. - `uses_functions: boolean | null` Whether the project uses functions. - `build_config?: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `domains?: Array` A list of associated custom domains for the project. - `source?: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `subdomain?: string` The Cloudflare subdomain associated with the project. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const project = await client.pages.projects.get('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(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 } ``` ## Create project `client.pages.projects.create(ProjectCreateParamsparams, RequestOptionsoptions?): Project` **post** `/accounts/{account_id}/pages/projects` Create a new project. ### Parameters - `params: ProjectCreateParams` - `account_id: string` Path param: Identifier. - `name: string` Body param: Name of the project. - `production_branch: string` Body param: Production branch of the project. Used to identify production deployments. - `build_config?: BuildConfig` Body param: Configs for the project build process. - `build_caching?: boolean` Enable build caching for the project. - `build_command?: string` Command used to build project. - `destination_dir?: string` Output directory of the build. - `root_dir?: string` Directory to run the command. - `web_analytics_tag?: string | null` The classifying tag for analytics. - `web_analytics_token?: string | null` The auth token for analytics. - `deployment_configs?: DeploymentConfigs` Body param: Configs for deployments in a project. - `preview?: Preview` Configs for preview deploys. - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `always_use_latest_compatibility_date?: boolean` Whether to always use the latest compatibility date for Pages Functions. - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `build_image_major_version?: number` The major version of the build image to use for Pages Functions. - `compatibility_date?: string` Compatibility date used for Pages Functions. - `compatibility_flags?: Array` Compatibility flags used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `env_vars?: Record` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open?: boolean` Whether to fail open when the deployment config cannot be applied. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `environment?: string` The Service environment. - `usage_model?: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production?: Production` Configs for production deploys. - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `always_use_latest_compatibility_date?: boolean` Whether to always use the latest compatibility date for Pages Functions. - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `build_image_major_version?: number` The major version of the build image to use for Pages Functions. - `compatibility_date?: string` Compatibility date used for Pages Functions. - `compatibility_flags?: Array` Compatibility flags used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `env_vars?: Record` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open?: boolean` Whether to fail open when the deployment config cannot be applied. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `environment?: string` The Service environment. - `usage_model?: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `source?: Source` Body param: Configs for the project source control. - `config: Config` - `deployments_enabled?: boolean` 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. - `owner_id?: string` The owner ID of the repository. - `path_excludes?: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes?: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled?: boolean` Whether to enable PR comments. - `preview_branch_excludes?: Array` 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`. - `preview_branch_includes?: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting?: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch?: string` The production branch of the repository. - `production_deployments_enabled?: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id?: string` The ID of the repository. - `repo_name?: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` ### Returns - `Project` - `id: string` ID of the project. - `canonical_deployment: Deployment | null` Most recent production deployment of the project. - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. - `created_on: string` When the project was created. - `deployment_configs: DeploymentConfigs` Configs for deployments in a project. - `preview: Preview` Configs for preview deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production: Production` Configs for production deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `framework: string` Framework the project is using. - `framework_version: string` Version of the framework the project is using. - `latest_deployment: Deployment | null` Most recent deployment of the project. - `name: string` Name of the project. - `preview_script_name: string` Name of the preview script. - `production_branch: string` Production branch of the project. Used to identify production deployments. - `production_script_name: string` Name of the production script. - `uses_functions: boolean | null` Whether the project uses functions. - `build_config?: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `domains?: Array` A list of associated custom domains for the project. - `source?: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `subdomain?: string` The Cloudflare subdomain associated with the project. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const project = await client.pages.projects.create({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', name: 'my-pages-app', production_branch: 'main', }); console.log(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 } ``` ## Update project `client.pages.projects.edit(stringprojectName, ProjectEditParamsparams, RequestOptionsoptions?): Project` **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` - `account_id: string` Path param: Identifier. - `build_config?: BuildConfig` Body param: Configs for the project build process. - `build_caching?: boolean` Enable build caching for the project. - `build_command?: string` Command used to build project. - `destination_dir?: string` Output directory of the build. - `root_dir?: string` Directory to run the command. - `web_analytics_tag?: string | null` The classifying tag for analytics. - `web_analytics_token?: string | null` The auth token for analytics. - `deployment_configs?: DeploymentConfigs` Body param: Configs for deployments in a project. - `preview?: Preview` Configs for preview deploys. - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `always_use_latest_compatibility_date?: boolean` Whether to always use the latest compatibility date for Pages Functions. - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `build_image_major_version?: number` The major version of the build image to use for Pages Functions. - `compatibility_date?: string` Compatibility date used for Pages Functions. - `compatibility_flags?: Array` Compatibility flags used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `env_vars?: Record` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open?: boolean` Whether to fail open when the deployment config cannot be applied. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `environment?: string` The Service environment. - `usage_model?: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production?: Production` Configs for production deploys. - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `always_use_latest_compatibility_date?: boolean` Whether to always use the latest compatibility date for Pages Functions. - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `build_image_major_version?: number` The major version of the build image to use for Pages Functions. - `compatibility_date?: string` Compatibility date used for Pages Functions. - `compatibility_flags?: Array` Compatibility flags used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `env_vars?: Record` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open?: boolean` Whether to fail open when the deployment config cannot be applied. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `environment?: string` The Service environment. - `usage_model?: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `name?: string` Body param: Name of the project. - `production_branch?: string` Body param: Production branch of the project. Used to identify production deployments. - `source?: Source` Body param: Configs for the project source control. - `config: Config` - `deployments_enabled?: boolean` 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. - `owner_id?: string` The owner ID of the repository. - `path_excludes?: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes?: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled?: boolean` Whether to enable PR comments. - `preview_branch_excludes?: Array` 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`. - `preview_branch_includes?: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting?: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch?: string` The production branch of the repository. - `production_deployments_enabled?: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id?: string` The ID of the repository. - `repo_name?: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` ### Returns - `Project` - `id: string` ID of the project. - `canonical_deployment: Deployment | null` Most recent production deployment of the project. - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. - `created_on: string` When the project was created. - `deployment_configs: DeploymentConfigs` Configs for deployments in a project. - `preview: Preview` Configs for preview deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production: Production` Configs for production deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `framework: string` Framework the project is using. - `framework_version: string` Version of the framework the project is using. - `latest_deployment: Deployment | null` Most recent deployment of the project. - `name: string` Name of the project. - `preview_script_name: string` Name of the preview script. - `production_branch: string` Production branch of the project. Used to identify production deployments. - `production_script_name: string` Name of the production script. - `uses_functions: boolean | null` Whether the project uses functions. - `build_config?: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `domains?: Array` A list of associated custom domains for the project. - `source?: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `subdomain?: string` The Cloudflare subdomain associated with the project. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const project = await client.pages.projects.edit('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(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 } ``` ## Delete project `client.pages.projects.delete(stringprojectName, ProjectDeleteParamsparams, RequestOptionsoptions?): ProjectDeleteResponse | null` **delete** `/accounts/{account_id}/pages/projects/{project_name}` Delete a project by name. ### Parameters - `projectName: string` Name of the project. - `params: ProjectDeleteParams` - `account_id: string` Identifier. ### Returns - `ProjectDeleteResponse = unknown` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const project = await client.pages.projects.delete('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(project); ``` #### 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": {}, "success": true } ``` ## Purge build cache `client.pages.projects.purgeBuildCache(stringprojectName, ProjectPurgeBuildCacheParamsparams, RequestOptionsoptions?): ProjectPurgeBuildCacheResponse | null` **post** `/accounts/{account_id}/pages/projects/{project_name}/purge_build_cache` Purge all cached build artifacts for a Pages project ### Parameters - `projectName: string` Name of the project. - `params: ProjectPurgeBuildCacheParams` - `account_id: string` Identifier. ### Returns - `ProjectPurgeBuildCacheResponse = unknown` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.pages.projects.purgeBuildCache('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(response); ``` #### 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": {}, "success": true } ``` ## Domain Types ### Deployment - `Deployment` - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. ### Project - `Project` - `id: string` ID of the project. - `canonical_deployment: Deployment | null` Most recent production deployment of the project. - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. - `created_on: string` When the project was created. - `deployment_configs: DeploymentConfigs` Configs for deployments in a project. - `preview: Preview` Configs for preview deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `production: Production` Configs for production deploys. - `always_use_latest_compatibility_date: boolean` Whether to always use the latest compatibility date for Pages Functions. - `build_image_major_version: number` The major version of the build image to use for Pages Functions. - `compatibility_date: string` Compatibility date used for Pages Functions. - `compatibility_flags: Array` Compatibility flags used for Pages Functions. - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `fail_open: boolean` Whether to fail open when the deployment config cannot be applied. - `usage_model: "standard" | "bundled" | "unbound"` The usage model for Pages Functions. - `"standard"` - `"bundled"` - `"unbound"` - `ai_bindings?: Record` Constellation bindings used for Pages Functions. - `project_id: string` - `analytics_engine_datasets?: Record` Analytics Engine bindings used for Pages Functions. - `dataset: string` Name of the dataset. - `browsers?: Record` Browser bindings used for Pages Functions. - `d1_databases?: Record` D1 databases used for Pages Functions. - `id: string` UUID of the D1 database. - `durable_object_namespaces?: Record` Durable Object namespaces used for Pages Functions. - `namespace_id: string` ID of the Durable Object namespace. - `hyperdrive_bindings?: Record` Hyperdrive bindings used for Pages Functions. - `id: string` - `kv_namespaces?: Record` KV namespaces used for Pages Functions. - `namespace_id: string` ID of the KV namespace. - `limits?: Limits` Limits for Pages Functions. - `cpu_ms: number` CPU time limit in milliseconds. - `mtls_certificates?: Record` mTLS bindings used for Pages Functions. - `certificate_id: string` - `placement?: Placement` Placement setting used for Pages Functions. - `mode: string` Placement mode. - `queue_producers?: Record` Queue Producer bindings used for Pages Functions. - `name: string` Name of the Queue. - `r2_buckets?: Record` R2 buckets used for Pages Functions. - `name: string` Name of the R2 bucket. - `jurisdiction?: string | null` Jurisdiction of the R2 bucket. - `services?: Record` Services used for Pages Functions. - `environment: string` The Service environment. - `service: string` The Service name. - `entrypoint?: string | null` The entrypoint to bind to. - `vectorize_bindings?: Record` Vectorize bindings used for Pages Functions. - `index_name: string` - `wrangler_config_hash?: string` Hash of the Wrangler configuration used for the deployment. - `framework: string` Framework the project is using. - `framework_version: string` Version of the framework the project is using. - `latest_deployment: Deployment | null` Most recent deployment of the project. - `name: string` Name of the project. - `preview_script_name: string` Name of the preview script. - `production_branch: string` Production branch of the project. Used to identify production deployments. - `production_script_name: string` Name of the production script. - `uses_functions: boolean | null` Whether the project uses functions. - `build_config?: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `domains?: Array` A list of associated custom domains for the project. - `source?: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `subdomain?: string` The Cloudflare subdomain associated with the project. ### Stage - `Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` ### Project Delete Response - `ProjectDeleteResponse = unknown` ### Project Purge Build Cache Response - `ProjectPurgeBuildCacheResponse = unknown` # Deployments ## Get deployments `client.pages.projects.deployments.list(stringprojectName, DeploymentListParamsparams, RequestOptionsoptions?): V4PagePaginationArray` **get** `/accounts/{account_id}/pages/projects/{project_name}/deployments` Fetch a list of project deployments. ### Parameters - `projectName: string` Name of the project. - `params: DeploymentListParams` - `account_id: string` Path param: Identifier. - `env?: "production" | "preview"` Query param: What type of deployments to fetch. - `"production"` - `"preview"` - `page?: number` Query param: Which page of deployments to fetch. - `per_page?: number` Query param: How many deployments to return per page. ### Returns - `Deployment` - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const deployment of client.pages.projects.deployments.list('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(deployment.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": "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 } ], "success": true, "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Get deployment info `client.pages.projects.deployments.get(stringprojectName, stringdeploymentId, DeploymentGetParamsparams, RequestOptionsoptions?): Deployment` **get** `/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}` Fetch information about a deployment. ### Parameters - `projectName: string` Name of the project. - `deploymentId: string` Identifier. - `params: DeploymentGetParams` - `account_id: string` Identifier. ### Returns - `Deployment` - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deployment = await client.pages.projects.deployments.get( 'this-is-my-project-01', '023e105f4ecef8ad9ca31a8372d0c353', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(deployment.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": "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 }, "success": true } ``` ## Create deployment `client.pages.projects.deployments.create(stringprojectName, DeploymentCreateParamsparams, RequestOptionsoptions?): Deployment` **post** `/accounts/{account_id}/pages/projects/{project_name}/deployments` Start a new deployment from production. The repository and account must have already been authorized on the Cloudflare Pages dashboard. ### Parameters - `projectName: string` Name of the project. - `params: DeploymentCreateParams` - `account_id: string` Path param: Identifier. - `_headers?: Uploadable` Body param: Headers configuration file for the deployment. - `_redirects?: Uploadable` Body param: Redirects configuration file for the deployment. - `_routesJson?: Uploadable` Body param: Routes configuration file defining routing rules. - `_workerBundle?: Uploadable` Body param: Worker bundle file in multipart/form-data format. Mutually exclusive with `_worker.js`. Cannot specify both `_worker.js` and `_worker.bundle` in the same request. Maximum size: 25 MiB. - `_workerJS?: Uploadable` Body param: Worker JavaScript file. Mutually exclusive with `_worker.bundle`. Cannot specify both `_worker.js` and `_worker.bundle` in the same request. - `branch?: string` Body param: The branch to build the new deployment from. The `HEAD` of the branch will be used. If omitted, the production branch will be used by default. - `commit_dirty?: "true" | "false"` Body param: Boolean string indicating if the working directory has uncommitted changes. - `"true"` - `"false"` - `commit_hash?: string` Body param: Git commit SHA associated with this deployment. - `commit_message?: string` Body param: Git commit message associated with this deployment. - `functionsFilepathRoutingConfigJson?: Uploadable` Body param: Functions routing configuration file. - `manifest?: string` Body param: JSON string containing a manifest of files to deploy. Maps file paths to their content hashes. Required for direct upload deployments. Maximum 20,000 entries. - `pages_build_output_dir?: string` Body param: The build output directory path. - `wrangler_config_hash?: string` Body param: Hash of the Wrangler configuration file used for this deployment. ### Returns - `Deployment` - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deployment = await client.pages.projects.deployments.create('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(deployment.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": "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 }, "success": true } ``` ## Delete deployment `client.pages.projects.deployments.delete(stringprojectName, stringdeploymentId, DeploymentDeleteParamsparams, RequestOptionsoptions?): DeploymentDeleteResponse | null` **delete** `/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}` Delete a deployment. ### Parameters - `projectName: string` Name of the project. - `deploymentId: string` Identifier. - `params: DeploymentDeleteParams` - `account_id: string` Identifier. ### Returns - `DeploymentDeleteResponse = unknown` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deployment = await client.pages.projects.deployments.delete( 'this-is-my-project-01', '023e105f4ecef8ad9ca31a8372d0c353', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(deployment); ``` #### 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": {}, "success": true } ``` ## Retry deployment `client.pages.projects.deployments.retry(stringprojectName, stringdeploymentId, DeploymentRetryParamsparams, RequestOptionsoptions?): Deployment` **post** `/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/retry` Retry a previous deployment. ### Parameters - `projectName: string` Name of the project. - `deploymentId: string` Identifier. - `params: DeploymentRetryParams` - `account_id: string` Identifier. ### Returns - `Deployment` - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deployment = await client.pages.projects.deployments.retry( 'this-is-my-project-01', '023e105f4ecef8ad9ca31a8372d0c353', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(deployment.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": "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 }, "success": true } ``` ## Rollback deployment `client.pages.projects.deployments.rollback(stringprojectName, stringdeploymentId, DeploymentRollbackParamsparams, RequestOptionsoptions?): Deployment` **post** `/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/rollback` Rollback the production deployment to a previous deployment. You can only rollback to succesful builds on production. ### Parameters - `projectName: string` Name of the project. - `deploymentId: string` Identifier. - `params: DeploymentRollbackParams` - `account_id: string` Identifier. ### Returns - `Deployment` - `id: string` Id of the deployment. - `aliases: Array | null` A list of alias URLs pointing to this deployment. - `build_config: BuildConfig` Configs for the project build process. - `web_analytics_tag: string | null` The classifying tag for analytics. - `web_analytics_token: string | null` The auth token for analytics. - `build_caching?: boolean | null` Enable build caching for the project. - `build_command?: string | null` Command used to build project. - `destination_dir?: string | null` Assets output directory of the build. - `root_dir?: string | null` Directory to run the command. - `created_on: string` When the deployment was created. - `deployment_trigger: DeploymentTrigger` Info about what caused the deployment. - `metadata: Metadata` Additional info about the trigger. - `branch: string` Where the trigger happened. - `commit_dirty: boolean` Whether the deployment trigger commit was dirty. - `commit_hash: string` Hash of the deployment trigger commit. - `commit_message: string` Message of the deployment trigger commit. - `type: "github:push" | "ad_hoc" | "deploy_hook"` What caused the deployment. - `"github:push"` - `"ad_hoc"` - `"deploy_hook"` - `env_vars: Record | null` Environment variables used for builds and Pages Functions. - `PagesPlainTextEnvVar` A plaintext environment variable. - `type: "plain_text"` - `"plain_text"` - `value: string` Environment variable value. - `PagesSecretTextEnvVar` An encrypted environment variable. - `type: "secret_text"` - `"secret_text"` - `value: string` Secret value. - `environment: "preview" | "production"` Type of deploy. - `"preview"` - `"production"` - `is_skipped: boolean` If the deployment has been skipped. - `latest_stage: Stage` The status of the deployment. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `"queued"` - `"initialize"` - `"clone_repo"` - `"build"` - `"deploy"` - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `"success"` - `"idle"` - `"active"` - `"failure"` - `"canceled"` - `modified_on: string` When the deployment was last modified. - `project_id: string` Id of the project. - `project_name: string` Name of the project. - `short_id: string` Short Id (8 character) of the deployment. - `source: Source` Configs for the project source control. - `config: Config` - `deployments_enabled: boolean` 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. - `owner_id: string` The owner ID of the repository. - `path_excludes: Array` A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported. - `path_includes: Array` A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported. - `pr_comments_enabled: boolean` Whether to enable PR comments. - `preview_branch_excludes: Array` 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`. - `preview_branch_includes: Array` A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`. - `preview_deployment_setting: "all" | "none" | "custom"` Controls whether commits to preview branches trigger a preview deployment. - `"all"` - `"none"` - `"custom"` - `production_branch: string` The production branch of the repository. - `production_deployments_enabled: boolean` Whether to trigger a production deployment on commits to the production branch. - `repo_id: string` The ID of the repository. - `repo_name: string` The name of the repository. - `type: "github" | "gitlab"` The source control management provider. - `"github"` - `"gitlab"` - `stages: Array` List of past stages. - `ended_on: string | null` When the stage ended. - `name: "queued" | "initialize" | "clone_repo" | 2 more` The current build stage. - `started_on: string | null` When the stage started. - `status: "success" | "idle" | "active" | 2 more` State of the current stage. - `url: string` The live URL to view this deployment. - `uses_functions?: boolean | null` Whether the deployment uses functions. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deployment = await client.pages.projects.deployments.rollback( 'this-is-my-project-01', '023e105f4ecef8ad9ca31a8372d0c353', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(deployment.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": "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 }, "success": true } ``` ## Domain Types ### Deployment Delete Response - `DeploymentDeleteResponse = unknown` # History # Logs ## Get deployment logs `client.pages.projects.deployments.history.logs.get(stringprojectName, stringdeploymentId, LogGetParamsparams, RequestOptionsoptions?): LogGetResponse` **get** `/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/history/logs` Fetch deployment logs for a project. ### Parameters - `projectName: string` Name of the project. - `deploymentId: string` Identifier. - `params: LogGetParams` - `account_id: string` Identifier. ### Returns - `LogGetResponse` - `data: Array` - `line: string` - `ts: string` - `includes_container_logs: boolean` - `total: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const log = await client.pages.projects.deployments.history.logs.get( 'this-is-my-project-01', '023e105f4ecef8ad9ca31a8372d0c353', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(log.data); ``` #### 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": { "data": [ { "line": "Cloning repository...", "ts": "2021-04-20T19:35:29.0749819Z" }, { "line": "From https://github.com/cloudflare/example", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": " * branch 209c5bb11d89533f426b2f8469bcae12fdccf71b -> FETCH_HEAD", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": "", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": "HEAD is now at 209c5bb Update index.html", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": "", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": "", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": "Success: Finished cloning repository files", "ts": "2021-04-20T19:35:30.0749819Z" }, { "line": "Installing dependencies", "ts": "2021-04-20T19:35:59.0749819Z" }, { "line": "Python version set to 2.7", "ts": "2021-04-20T19:35:59.0931208Z" }, { "line": "v12.18.0 is already installed.", "ts": "2021-04-20T19:36:02.2369501Z" }, { "line": "Now using node v12.18.0 (npm v6.14.4)", "ts": "2021-04-20T19:36:02.6028886Z" }, { "line": "Started restoring cached build plugins", "ts": "2021-04-20T19:36:02.624555Z" }, { "line": "Finished restoring cached build plugins", "ts": "2021-04-20T19:36:02.6340688Z" }, { "line": "Attempting ruby version 2.7.1, read from environment", "ts": "2021-04-20T19:36:02.963095Z" }, { "line": "Using ruby version 2.7.1", "ts": "2021-04-20T19:36:04.2236084Z" }, { "line": "Using PHP version 5.6", "ts": "2021-04-20T19:36:04.5450152Z" }, { "line": "5.2 is already installed.", "ts": "2021-04-20T19:36:04.5740509Z" }, { "line": "Using Swift version 5.2", "ts": "2021-04-20T19:36:04.577035Z" }, { "line": "Installing Hugo 0.54.0", "ts": "2021-04-20T19:36:04.5771615Z" }, { "line": "Hugo Static Site Generator v0.54.0-B1A82C61A/extended linux/amd64 BuildDate: 2019-02-01T10:04:38Z", "ts": "2021-04-20T19:36:05.4786868Z" }, { "line": "Started restoring cached go cache", "ts": "2021-04-20T19:36:05.4794366Z" }, { "line": "Finished restoring cached go cache", "ts": "2021-04-20T19:36:05.481977Z" }, { "line": "go version go1.14.4 linux/amd64", "ts": "2021-04-20T19:36:05.9049776Z" }, { "line": "go version go1.14.4 linux/amd64", "ts": "2021-04-20T19:36:05.9086053Z" }, { "line": "Installing missing commands", "ts": "2021-04-20T19:36:05.9163568Z" }, { "line": "Verify run directory", "ts": "2021-04-20T19:36:05.9163934Z" }, { "line": "Executing user command: echo \"skipping build step: no build command specified\"", "ts": "2021-04-20T19:36:05.9164636Z" }, { "line": "skipping build step: no build command specified", "ts": "2021-04-20T19:36:05.9165087Z" }, { "line": "Finished", "ts": "2021-04-20T19:36:05.917412Z" } ], "includes_container_logs": true, "total": 30 }, "success": true } ``` ## Domain Types ### Log Get Response - `LogGetResponse` - `data: Array` - `line: string` - `ts: string` - `includes_container_logs: boolean` - `total: number` # Domains ## Get domains `client.pages.projects.domains.list(stringprojectName, DomainListParamsparams, RequestOptionsoptions?): SinglePage` **get** `/accounts/{account_id}/pages/projects/{project_name}/domains` Fetch a list of all domains associated with a Pages project. ### Parameters - `projectName: string` Name of the project. - `params: DomainListParams` - `account_id: string` Identifier. ### Returns - `DomainListResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const domainListResponse of client.pages.projects.domains.list('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(domainListResponse.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": "id", "certificate_authority": "lets_encrypt", "created_on": "created_on", "domain_id": "domain_id", "name": "this-is-my-domain-01.com", "status": "initializing", "validation_data": { "method": "http", "status": "initializing", "error_message": "error_message", "txt_name": "txt_name", "txt_value": "txt_value" }, "verification_data": { "status": "pending", "error_message": "error_message" }, "zone_tag": "zone_tag" } ], "success": true, "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Get domain `client.pages.projects.domains.get(stringprojectName, stringdomainName, DomainGetParamsparams, RequestOptionsoptions?): DomainGetResponse` **get** `/accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}` Fetch a single domain. ### Parameters - `projectName: string` Name of the project. - `domainName: string` The domain name. - `params: DomainGetParams` - `account_id: string` Identifier. ### Returns - `DomainGetResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const domain = await client.pages.projects.domains.get( 'this-is-my-project-01', 'this-is-my-domain-01.com', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(domain.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": "id", "certificate_authority": "lets_encrypt", "created_on": "created_on", "domain_id": "domain_id", "name": "this-is-my-domain-01.com", "status": "initializing", "validation_data": { "method": "http", "status": "initializing", "error_message": "error_message", "txt_name": "txt_name", "txt_value": "txt_value" }, "verification_data": { "status": "pending", "error_message": "error_message" }, "zone_tag": "zone_tag" }, "success": true } ``` ## Add domain `client.pages.projects.domains.create(stringprojectName, DomainCreateParamsparams, RequestOptionsoptions?): DomainCreateResponse` **post** `/accounts/{account_id}/pages/projects/{project_name}/domains` Add a new domain for the Pages project. ### Parameters - `projectName: string` Name of the project. - `params: DomainCreateParams` - `account_id: string` Path param: Identifier. - `name: string` Body param: The domain name. ### Returns - `DomainCreateResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const domain = await client.pages.projects.domains.create('this-is-my-project-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', name: 'this-is-my-domain-01.com', }); console.log(domain.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": "id", "certificate_authority": "lets_encrypt", "created_on": "created_on", "domain_id": "domain_id", "name": "this-is-my-domain-01.com", "status": "initializing", "validation_data": { "method": "http", "status": "initializing", "error_message": "error_message", "txt_name": "txt_name", "txt_value": "txt_value" }, "verification_data": { "status": "pending", "error_message": "error_message" }, "zone_tag": "zone_tag" }, "success": true } ``` ## Patch domain `client.pages.projects.domains.edit(stringprojectName, stringdomainName, DomainEditParamsparams, RequestOptionsoptions?): DomainEditResponse` **patch** `/accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}` Retry the validation status of a single domain. ### Parameters - `projectName: string` Name of the project. - `domainName: string` The domain name. - `params: DomainEditParams` - `account_id: string` Identifier. ### Returns - `DomainEditResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.pages.projects.domains.edit( 'this-is-my-project-01', 'this-is-my-domain-01.com', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(response.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": "id", "certificate_authority": "lets_encrypt", "created_on": "created_on", "domain_id": "domain_id", "name": "this-is-my-domain-01.com", "status": "initializing", "validation_data": { "method": "http", "status": "initializing", "error_message": "error_message", "txt_name": "txt_name", "txt_value": "txt_value" }, "verification_data": { "status": "pending", "error_message": "error_message" }, "zone_tag": "zone_tag" }, "success": true } ``` ## Delete domain `client.pages.projects.domains.delete(stringprojectName, stringdomainName, DomainDeleteParamsparams, RequestOptionsoptions?): DomainDeleteResponse | null` **delete** `/accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}` Delete a Pages project's domain. ### Parameters - `projectName: string` Name of the project. - `domainName: string` The domain name. - `params: DomainDeleteParams` - `account_id: string` Identifier. ### Returns - `DomainDeleteResponse = unknown` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const domain = await client.pages.projects.domains.delete( 'this-is-my-project-01', 'this-is-my-domain-01.com', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(domain); ``` #### 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": {}, "success": true } ``` ## Domain Types ### Domain List Response - `DomainListResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Domain Get Response - `DomainGetResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Domain Create Response - `DomainCreateResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Domain Edit Response - `DomainEditResponse` - `id: string` - `certificate_authority: "google" | "lets_encrypt"` - `"google"` - `"lets_encrypt"` - `created_on: string` - `domain_id: string` - `name: string` The domain name. - `status: "initializing" | "pending" | "active" | 3 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `validation_data: ValidationData` - `method: "http" | "txt"` - `"http"` - `"txt"` - `status: "initializing" | "pending" | "active" | 2 more` - `"initializing"` - `"pending"` - `"active"` - `"deactivated"` - `"error"` - `error_message?: string` - `txt_name?: string` - `txt_value?: string` - `verification_data: VerificationData` - `status: "pending" | "active" | "deactivated" | 2 more` - `"pending"` - `"active"` - `"deactivated"` - `"blocked"` - `"error"` - `error_message?: string` - `zone_tag: string` ### Domain Delete Response - `DomainDeleteResponse = unknown`