# Scripts ## List Workers `client.workers.scripts.list(ScriptListParamsparams, RequestOptionsoptions?): SinglePage` **get** `/accounts/{account_id}/workers/scripts` Fetch a list of uploaded workers. ### Parameters - `params: ScriptListParams` - `account_id: string` Path param: Identifier. - `tags?: string` Query param: Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'. ### Returns - `ScriptListResponse` - `id?: string` The name used to identify the script. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `created_on?: string` When the script was created. - `etag?: string` Hashed script content, can be used in a If-None-Match header when updating. - `handlers?: Array` The names of handlers exported as part of the default export. - `has_assets?: boolean` Whether a Worker contains assets. - `has_modules?: boolean` Whether a Worker contains modules. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `modified_on?: string` When the script was last modified. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the export. - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `placement_mode?: "smart" | "targeted"` - `"smart"` - `"targeted"` - `placement_status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `routes?: Array | null` Routes associated with the Worker. - `id: string` Identifier. - `pattern: string` Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior). - `script?: string` Name of the script to run if the route matches. - `tag?: string` The immutable ID of the script. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### 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 scriptListResponse of client.workers.scripts.list({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(scriptListResponse.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": "my-workers-script", "compatibility_date": "2021-01-01", "compatibility_flags": [ "nodejs_compat" ], "created_on": "2017-01-01T00:00:00Z", "etag": "ea95132c15732412d22c1476fa83f27a", "handlers": [ "fetch", "scheduled" ], "has_assets": false, "has_modules": false, "last_deployed_from": "wrangler", "logpush": false, "migration_tag": "v1", "modified_on": "2017-01-01T00:00:00Z", "named_handlers": [ { "handlers": [ "class" ], "name": "MyDurableObject" } ], "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "placement": { "mode": "smart", "last_analyzed_at": "2025-01-01T00:00:00Z", "status": "SUCCESS" }, "placement_mode": "smart", "placement_status": "SUCCESS", "routes": [ { "id": "023e105f4ecef8ad9ca31a8372d0c353", "pattern": "example.com/*", "script": "my-workers-script" } ], "tag": "e8f70fdbc8b1fb0b8ddb1af166186758", "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ], "usage_model": "standard" } ], "success": true } ``` ## Search Workers `client.workers.scripts.search(ScriptSearchParamsparams, RequestOptionsoptions?): ScriptSearchResponse` **get** `/accounts/{account_id}/workers/scripts-search` Search for Workers in an account. ### Parameters - `params: ScriptSearchParams` - `account_id: string` Path param: Identifier. - `id?: string` Query param: Worker ID (also called tag) to search for. Only exact matches are returned. - `name?: string` Query param: Worker name to search for. Both exact and partial matches are returned. - `order_by?: "created_on" | "modified_on" | "name"` Query param: Property to sort results by. Results are sorted in ascending order. - `"created_on"` - `"modified_on"` - `"name"` - `page?: number` Query param: Current page. - `per_page?: number` Query param: Items per page. ### Returns - `ScriptSearchResponse = Array` - `id: string` Identifier. - `created_on: string` When the script was created. - `modified_on: string` When the script was last modified. - `script_name: string` Name of the script, used in URLs and route configuration. - `environment_is_default?: boolean` Whether the environment is the default environment. - `environment_name?: string` Name of the environment. - `service_name?: string` Name of the service. ### 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.workers.scripts.search({ 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": [ { "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2017-01-01T00:00:00Z", "modified_on": "2017-01-01T00:00:00Z", "script_name": "this-is_my_script-01", "environment_is_default": true, "environment_name": "production", "service_name": "my-service" } ], "success": true, "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Download Worker `client.workers.scripts.get(stringscriptName, ScriptGetParamsparams, RequestOptionsoptions?): ScriptGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}` Fetch raw script content for your worker. Note this is the original script content, not JSON encoded. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScriptGetParams` - `account_id: string` Identifier. ### Returns - `ScriptGetResponse = 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 script = await client.workers.scripts.get('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(script); ``` ## Upload Worker Module `client.workers.scripts.update(stringscriptName, ScriptUpdateParamsparams, RequestOptionsoptions?): ScriptUpdateResponse` **put** `/accounts/{account_id}/workers/scripts/{script_name}` Upload a worker module. You can find more about the multipart metadata on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScriptUpdateParams` - `account_id: string` Path param: Identifier. - `metadata: Metadata` Body param: JSON-encoded metadata about the uploaded parts and Worker configuration. - `annotations?: Annotations` Annotations for the version created by this upload. - `"workers/message"?: string` Human-readable message about the version. - `"workers/tag"?: string` User-provided identifier for the version. - `assets?: Assets` Configuration for assets within a Worker. - `config?: Config` Configuration for assets within a Worker. - `_headers?: string` The contents of a _headers file (used to attach custom headers on asset responses). - `_redirects?: string` The contents of a _redirects file (used to apply redirects or proxy paths ahead of asset serving). - `html_handling?: "auto-trailing-slash" | "force-trailing-slash" | "drop-trailing-slash" | "none"` Determines the redirects and rewrites of requests for HTML content. - `"auto-trailing-slash"` - `"force-trailing-slash"` - `"drop-trailing-slash"` - `"none"` - `not_found_handling?: "none" | "404-page" | "single-page-application"` Determines the response when a request does not match a static asset, and there is no Worker script. - `"none"` - `"404-page"` - `"single-page-application"` - `run_worker_first?: Array | boolean` Contains a list path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules. - `Array` - `boolean` - `serve_directly?: boolean` When true and the incoming request matches an asset, that will be served instead of invoking the Worker script. When false, requests will always invoke the Worker script. - `jwt?: string` Token provided upon successful upload of all files from a registered manifest. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `body_part?: string` Name of the uploaded file that contains the script (e.g. the file adding a listener to the `fetch` event). Indicates a `service worker syntax` Worker. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `keep_assets?: boolean` Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token. - `keep_bindings?: Array` List of binding types to keep from previous_upload. - `limits?: Limits` Limits to apply for this Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `main_module?: string` Name of the uploaded file that contains the main module (e.g. the file exporting a `fetch` handler). Indicates a `module syntax` Worker. - `migrations?: SingleStepMigration | WorkersMultipleStepMigrations` Migrations to apply for Durable Objects associated with this Worker. - `SingleStepMigration` A single set of migrations to apply. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `WorkersMultipleStepMigrations` - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `steps?: Array` Migrations to apply in order. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `tags?: Array` List of strings to use as tags for this Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` - `bindings_inherit?: "strict"` Query param: When set to "strict", the upload will fail if any `inherit` type bindings cannot be resolved against the previous version of the Worker. Without this, unresolvable inherit bindings are silently dropped. - `"strict"` - `files?: Array` Body param: An array of modules (often JavaScript files) comprising a Worker script. At least one module must be present and referenced in the metadata as `main_module` or `body_part` by filename.
Possible Content-Type(s) are: `application/javascript+module`, `text/javascript+module`, `application/javascript`, `text/javascript`, `text/x-python`, `text/x-python-requirement`, `application/wasm`, `text/plain`, `application/octet-stream`, `application/source-map`. ### Returns - `ScriptUpdateResponse` - `startup_time_ms: number` - `id?: string` The name used to identify the script. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `created_on?: string` When the script was created. - `entry_point?: string` The entry point for the script. - `etag?: string` Hashed script content, can be used in a If-None-Match header when updating. - `handlers?: Array` The names of handlers exported as part of the default export. - `has_assets?: boolean` Whether a Worker contains assets. - `has_modules?: boolean` Whether a Worker contains modules. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `modified_on?: string` When the script was last modified. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the export. - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `placement_mode?: "smart" | "targeted"` - `"smart"` - `"targeted"` - `placement_status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `tag?: string` The immutable ID of the script. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### 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 script = await client.workers.scripts.update('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', metadata: {}, }); console.log(script.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": { "startup_time_ms": 10, "id": "this-is_my_script-01", "compatibility_date": "2021-01-01", "compatibility_flags": [ "nodejs_compat" ], "created_on": "2022-05-05T05:15:11.602148Z", "entry_point": "index.js", "etag": "777f24a43bef5f69174aa69ceaf1dea67968d510a31d1vw3e49d34a0187c06d1", "handlers": [ "fetch" ], "has_assets": false, "has_modules": false, "last_deployed_from": "wrangler", "logpush": false, "migration_tag": "v1", "modified_on": "2022-05-20T19:02:56.446492Z", "named_handlers": [ { "handlers": [ "class" ], "name": "MyDurableObject" } ], "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "placement": { "mode": "smart", "last_analyzed_at": "2025-01-01T00:00:00Z", "status": "SUCCESS" }, "placement_mode": "smart", "placement_status": "SUCCESS", "tag": "e8f70fdbc8b1fb0b8ddb1af166186758", "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ], "usage_model": "standard" }, "success": true } ``` ## Delete Worker `client.workers.scripts.delete(stringscriptName, ScriptDeleteParamsparams, RequestOptionsoptions?): ScriptDeleteResponse | null` **delete** `/accounts/{account_id}/workers/scripts/{script_name}` Delete your worker. This call has no response body on a successful delete. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScriptDeleteParams` - `account_id: string` Path param: Identifier. - `force?: boolean` Query param: If set to true, delete will not be stopped by associated service binding, durable object, or other binding. Any of these associated bindings/durable objects will be deleted along with the script. ### Returns - `ScriptDeleteResponse = 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 script = await client.workers.scripts.delete('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(script); ``` #### 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" } } ], "success": true, "result": {} } ``` ## Domain Types ### Script - `Script` - `id?: string` The name used to identify the script. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `created_on?: string` When the script was created. - `etag?: string` Hashed script content, can be used in a If-None-Match header when updating. - `handlers?: Array` The names of handlers exported as part of the default export. - `has_assets?: boolean` Whether a Worker contains assets. - `has_modules?: boolean` Whether a Worker contains modules. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `modified_on?: string` When the script was last modified. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the export. - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `placement_mode?: "smart" | "targeted"` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `"smart"` - `"targeted"` - `placement_status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `tag?: string` The immutable ID of the script. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### Script Setting - `ScriptSetting` - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `observability?: Observability | null` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. ### Script List Response - `ScriptListResponse` - `id?: string` The name used to identify the script. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `created_on?: string` When the script was created. - `etag?: string` Hashed script content, can be used in a If-None-Match header when updating. - `handlers?: Array` The names of handlers exported as part of the default export. - `has_assets?: boolean` Whether a Worker contains assets. - `has_modules?: boolean` Whether a Worker contains modules. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `modified_on?: string` When the script was last modified. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the export. - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `placement_mode?: "smart" | "targeted"` - `"smart"` - `"targeted"` - `placement_status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `routes?: Array | null` Routes associated with the Worker. - `id: string` Identifier. - `pattern: string` Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior). - `script?: string` Name of the script to run if the route matches. - `tag?: string` The immutable ID of the script. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### Script Search Response - `ScriptSearchResponse = Array` - `id: string` Identifier. - `created_on: string` When the script was created. - `modified_on: string` When the script was last modified. - `script_name: string` Name of the script, used in URLs and route configuration. - `environment_is_default?: boolean` Whether the environment is the default environment. - `environment_name?: string` Name of the environment. - `service_name?: string` Name of the service. ### Script Get Response - `ScriptGetResponse = string` ### Script Update Response - `ScriptUpdateResponse` - `startup_time_ms: number` - `id?: string` The name used to identify the script. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `created_on?: string` When the script was created. - `entry_point?: string` The entry point for the script. - `etag?: string` Hashed script content, can be used in a If-None-Match header when updating. - `handlers?: Array` The names of handlers exported as part of the default export. - `has_assets?: boolean` Whether a Worker contains assets. - `has_modules?: boolean` Whether a Worker contains modules. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `modified_on?: string` When the script was last modified. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the export. - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `placement_mode?: "smart" | "targeted"` - `"smart"` - `"targeted"` - `placement_status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `tag?: string` The immutable ID of the script. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### Script Delete Response - `ScriptDeleteResponse = unknown` # Assets # Upload ## Create Assets Upload Session `client.workers.scripts.assets.upload.create(stringscriptName, UploadCreateParamsparams, RequestOptionsoptions?): UploadCreateResponse` **post** `/accounts/{account_id}/workers/scripts/{script_name}/assets-upload-session` Start uploading a collection of assets for use in a Worker version. To learn more about the direct uploads of assets, see https://developers.cloudflare.com/workers/static-assets/direct-upload/. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: UploadCreateParams` - `account_id: string` Path param: Identifier. - `manifest: Record` Body param: A manifest ([path]: {hash, size}) map of files to upload. As an example, `/blog/hello-world.html` would be a valid path key. - `hash: string` The hash of the file. - `size: number` The size of the file in bytes. ### Returns - `UploadCreateResponse` - `buckets?: Array>` The requests to make to upload assets. - `jwt?: string` A JWT to use as authentication for uploading assets. ### 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 upload = await client.workers.scripts.assets.upload.create('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', manifest: { foo: { hash: 'hash', size: 0 } }, }); console.log(upload.buckets); ``` #### 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" } } ], "success": true, "result": { "buckets": [ [ "string" ] ], "jwt": "jwt" } } ``` ## Domain Types ### Upload Create Response - `UploadCreateResponse` - `buckets?: Array>` The requests to make to upload assets. - `jwt?: string` A JWT to use as authentication for uploading assets. # Subdomain ## Get Worker subdomain `client.workers.scripts.subdomain.get(stringscriptName, SubdomainGetParamsparams, RequestOptionsoptions?): SubdomainGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/subdomain` Get if the Worker is available on the workers.dev subdomain. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: SubdomainGetParams` - `account_id: string` Identifier. ### Returns - `SubdomainGetResponse` - `enabled: boolean` Whether the Worker is available on the workers.dev subdomain. - `previews_enabled: boolean` Whether the Worker's Preview URLs are available on the workers.dev subdomain. ### 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 subdomain = await client.workers.scripts.subdomain.get('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(subdomain.enabled); ``` #### 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": { "enabled": false, "previews_enabled": false }, "success": true } ``` ## Post Worker subdomain `client.workers.scripts.subdomain.create(stringscriptName, SubdomainCreateParamsparams, RequestOptionsoptions?): SubdomainCreateResponse` **post** `/accounts/{account_id}/workers/scripts/{script_name}/subdomain` Enable or disable the Worker on the workers.dev subdomain. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: SubdomainCreateParams` - `account_id: string` Path param: Identifier. - `enabled: boolean` Body param: Whether the Worker should be available on the workers.dev subdomain. - `previews_enabled?: boolean` Body param: Whether the Worker's Preview URLs should be available on the workers.dev subdomain. ### Returns - `SubdomainCreateResponse` - `enabled: boolean` Whether the Worker is available on the workers.dev subdomain. - `previews_enabled: boolean` Whether the Worker's Preview URLs are available on the workers.dev subdomain. ### 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 subdomain = await client.workers.scripts.subdomain.create('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', enabled: true, }); console.log(subdomain.enabled); ``` #### 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": { "enabled": false, "previews_enabled": false }, "success": true } ``` ## Delete Worker subdomain `client.workers.scripts.subdomain.delete(stringscriptName, SubdomainDeleteParamsparams, RequestOptionsoptions?): SubdomainDeleteResponse` **delete** `/accounts/{account_id}/workers/scripts/{script_name}/subdomain` Disable all workers.dev subdomains for a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: SubdomainDeleteParams` - `account_id: string` Identifier. ### Returns - `SubdomainDeleteResponse` - `enabled: boolean` Whether the Worker is available on the workers.dev subdomain. - `previews_enabled: boolean` Whether the Worker's Preview URLs are available on the workers.dev subdomain. ### 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 subdomain = await client.workers.scripts.subdomain.delete('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(subdomain.enabled); ``` #### 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": { "enabled": false, "previews_enabled": false }, "success": true } ``` ## Domain Types ### Subdomain Get Response - `SubdomainGetResponse` - `enabled: boolean` Whether the Worker is available on the workers.dev subdomain. - `previews_enabled: boolean` Whether the Worker's Preview URLs are available on the workers.dev subdomain. ### Subdomain Create Response - `SubdomainCreateResponse` - `enabled: boolean` Whether the Worker is available on the workers.dev subdomain. - `previews_enabled: boolean` Whether the Worker's Preview URLs are available on the workers.dev subdomain. ### Subdomain Delete Response - `SubdomainDeleteResponse` - `enabled: boolean` Whether the Worker is available on the workers.dev subdomain. - `previews_enabled: boolean` Whether the Worker's Preview URLs are available on the workers.dev subdomain. # Schedules ## Get Cron Triggers `client.workers.scripts.schedules.get(stringscriptName, ScheduleGetParamsparams, RequestOptionsoptions?): ScheduleGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/schedules` Fetches Cron Triggers for a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScheduleGetParams` - `account_id: string` Identifier. ### Returns - `ScheduleGetResponse` - `schedules: Array` - `cron: string` - `created_on?: string` - `modified_on?: 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 schedule = await client.workers.scripts.schedules.get('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(schedule.schedules); ``` #### 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": { "schedules": [ { "cron": "*/30 * * * *", "created_on": "created_on", "modified_on": "modified_on" } ] }, "success": true } ``` ## Update Cron Triggers `client.workers.scripts.schedules.update(stringscriptName, ScheduleUpdateParamsparams, RequestOptionsoptions?): ScheduleUpdateResponse` **put** `/accounts/{account_id}/workers/scripts/{script_name}/schedules` Updates Cron Triggers for a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScheduleUpdateParams` - `account_id: string` Path param: Identifier. - `body: Array` Body param - `cron: string` - `created_on?: string` - `modified_on?: string` ### Returns - `ScheduleUpdateResponse` - `schedules: Array` - `cron: string` - `created_on?: string` - `modified_on?: 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 schedule = await client.workers.scripts.schedules.update('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', body: [{ cron: '*/30 * * * *' }], }); console.log(schedule.schedules); ``` #### 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": { "schedules": [ { "cron": "*/30 * * * *", "created_on": "created_on", "modified_on": "modified_on" } ] }, "success": true } ``` ## Domain Types ### Schedule Get Response - `ScheduleGetResponse` - `schedules: Array` - `cron: string` - `created_on?: string` - `modified_on?: string` ### Schedule Update Response - `ScheduleUpdateResponse` - `schedules: Array` - `cron: string` - `created_on?: string` - `modified_on?: string` # Tail ## List Tails `client.workers.scripts.tail.get(stringscriptName, TailGetParamsparams, RequestOptionsoptions?): TailGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/tails` Get list of tails currently deployed on a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: TailGetParams` - `account_id: string` Identifier. ### Returns - `TailGetResponse` - `id: string` Identifier. - `expires_at: string` - `url: 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 tail = await client.workers.scripts.tail.get('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(tail.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": "023e105f4ecef8ad9ca31a8372d0c353", "expires_at": "expires_at", "url": "url" }, "success": true } ``` ## Start Tail `client.workers.scripts.tail.create(stringscriptName, TailCreateParamsparams, RequestOptionsoptions?): TailCreateResponse` **post** `/accounts/{account_id}/workers/scripts/{script_name}/tails` Starts a tail that receives logs and exception from a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: TailCreateParams` - `account_id: string` Path param: Identifier. - `body: unknown` Body param ### Returns - `TailCreateResponse` - `id: string` Identifier. - `expires_at: string` - `url: 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 tail = await client.workers.scripts.tail.create('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', body: {}, }); console.log(tail.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": "023e105f4ecef8ad9ca31a8372d0c353", "expires_at": "expires_at", "url": "url" }, "success": true } ``` ## Delete Tail `client.workers.scripts.tail.delete(stringscriptName, stringid, TailDeleteParamsparams, RequestOptionsoptions?): TailDeleteResponse` **delete** `/accounts/{account_id}/workers/scripts/{script_name}/tails/{id}` Deletes a tail from a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `id: string` Identifier. - `params: TailDeleteParams` - `account_id: string` Identifier. ### Returns - `TailDeleteResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` ### 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 tail = await client.workers.scripts.tail.delete( 'this-is_my_script-01', '023e105f4ecef8ad9ca31a8372d0c353', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(tail.errors); ``` #### 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" } } ], "success": true } ``` ## Domain Types ### Consumer Script - `ConsumerScript` A reference to a script that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. ### Tail Get Response - `TailGetResponse` - `id: string` Identifier. - `expires_at: string` - `url: string` ### Tail Create Response - `TailCreateResponse` - `id: string` Identifier. - `expires_at: string` - `url: string` ### Tail Delete Response - `TailDeleteResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` # Content ## Get script content `client.workers.scripts.content.get(stringscriptName, ContentGetParamsparams, RequestOptionsoptions?): Response` **get** `/accounts/{account_id}/workers/scripts/{script_name}/content/v2` Fetch script content only. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ContentGetParams` - `account_id: string` Identifier. ### Returns - `unnamed_schema_0 = Response` ### 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 content = await client.workers.scripts.content.get('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(content); const data = await content.blob(); console.log(data); ``` ## Put script content `client.workers.scripts.content.update(stringscriptName, ContentUpdateParamsparams, RequestOptionsoptions?): Script` **put** `/accounts/{account_id}/workers/scripts/{script_name}/content` Put script content without touching config or metadata. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ContentUpdateParams` - `account_id: string` Path param: Identifier. - `metadata: Metadata` Body param: JSON-encoded metadata about the uploaded parts and Worker configuration. - `body_part?: string` Name of the uploaded file that contains the Worker script (e.g. the file adding a listener to the `fetch` event). Indicates a `service worker syntax` Worker. - `main_module?: string` Name of the uploaded file that contains the main module (e.g. the file exporting a `fetch` handler). Indicates a `module syntax` Worker. - `files?: Array` Body param: An array of modules (often JavaScript files) comprising a Worker script. At least one module must be present and referenced in the metadata as `main_module` or `body_part` by filename.
Possible Content-Type(s) are: `application/javascript+module`, `text/javascript+module`, `application/javascript`, `text/javascript`, `text/x-python`, `text/x-python-requirement`, `application/wasm`, `text/plain`, `application/octet-stream`, `application/source-map`. - `cfWorkerBodyPart?: string` Header param: The multipart name of a script upload part containing script content in service worker format. Alternative to including in a metadata part. - `cfWorkerMainModulePart?: string` Header param: The multipart name of a script upload part containing script content in es module format. Alternative to including in a metadata part. ### Returns - `Script` - `id?: string` The name used to identify the script. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `created_on?: string` When the script was created. - `etag?: string` Hashed script content, can be used in a If-None-Match header when updating. - `handlers?: Array` The names of handlers exported as part of the default export. - `has_assets?: boolean` Whether a Worker contains assets. - `has_modules?: boolean` Whether a Worker contains modules. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `modified_on?: string` When the script was last modified. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the export. - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: UnionMember0 | UnionMember1 | UnionMember2 | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `UnionMember0` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember1` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember2` - `hostname: string` HTTP hostname for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember3` - `host: string` TCP host and port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `last_analyzed_at?: string` The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `placement_mode?: "smart" | "targeted"` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `"smart"` - `"targeted"` - `placement_status?: "SUCCESS" | "UNSUPPORTED_APPLICATION" | "INSUFFICIENT_INVOCATIONS"` Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"SUCCESS"` - `"UNSUPPORTED_APPLICATION"` - `"INSUFFICIENT_INVOCATIONS"` - `tag?: string` The immutable ID of the script. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### 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 script = await client.workers.scripts.content.update('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', metadata: {}, }); console.log(script.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": "my-workers-script", "compatibility_date": "2021-01-01", "compatibility_flags": [ "nodejs_compat" ], "created_on": "2017-01-01T00:00:00Z", "etag": "ea95132c15732412d22c1476fa83f27a", "handlers": [ "fetch", "scheduled" ], "has_assets": false, "has_modules": false, "last_deployed_from": "wrangler", "logpush": false, "migration_tag": "v1", "modified_on": "2017-01-01T00:00:00Z", "named_handlers": [ { "handlers": [ "class" ], "name": "MyDurableObject" } ], "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "placement": { "mode": "smart", "last_analyzed_at": "2025-01-01T00:00:00Z", "status": "SUCCESS" }, "placement_mode": "smart", "placement_status": "SUCCESS", "tag": "e8f70fdbc8b1fb0b8ddb1af166186758", "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ], "usage_model": "standard" }, "success": true } ``` # Settings ## Get Script Settings `client.workers.scripts.settings.get(stringscriptName, SettingGetParamsparams, RequestOptionsoptions?): ScriptSetting` **get** `/accounts/{account_id}/workers/scripts/{script_name}/script-settings` Get script-level settings when using [Worker Versions](https://developers.cloudflare.com/api/operations/worker-versions-list-versions). Includes Logpush and Tail Consumers. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: SettingGetParams` - `account_id: string` Identifier. ### Returns - `ScriptSetting` - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `observability?: Observability | null` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. ### 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 scriptSetting = await client.workers.scripts.settings.get('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(scriptSetting.logpush); ``` #### 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": { "logpush": false, "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ] }, "success": true } ``` ## Patch Script Settings `client.workers.scripts.settings.edit(stringscriptName, SettingEditParamsparams, RequestOptionsoptions?): ScriptSetting` **patch** `/accounts/{account_id}/workers/scripts/{script_name}/script-settings` Patch script-level settings when using [Worker Versions](https://developers.cloudflare.com/api/operations/worker-versions-list-versions). Including but not limited to Logpush and Tail Consumers. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: SettingEditParams` - `account_id: string` Path param: Identifier. - `logpush?: boolean` Body param: Whether Logpush is turned on for the Worker. - `observability?: Observability | null` Body param: Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `tags?: Array | null` Body param: Tags associated with the Worker. - `tail_consumers?: Array | null` Body param: List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. ### Returns - `ScriptSetting` - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `observability?: Observability | null` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. ### 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 scriptSetting = await client.workers.scripts.settings.edit('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(scriptSetting.logpush); ``` #### 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": { "logpush": false, "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ] }, "success": true } ``` # Deployments ## List Deployments `client.workers.scripts.deployments.list(stringscriptName, DeploymentListParamsparams, RequestOptionsoptions?): DeploymentListResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/deployments` List of Worker Deployments. The first deployment in the list is the latest deployment actively serving traffic. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: DeploymentListParams` - `account_id: string` Identifier. ### Returns - `DeploymentListResponse` - `deployments: Array` - `id: string` - `created_on: string` - `source: string` - `strategy: "percentage"` - `"percentage"` - `versions: Array` - `percentage: number` - `version_id: string` - `annotations?: Annotations` - `"workers/message"?: string` Human-readable message about the deployment. Truncated to 100 bytes. - `"workers/triggered_by"?: string` Operation that triggered the creation of the deployment. - `author_email?: 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 deployments = await client.workers.scripts.deployments.list('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(deployments.deployments); ``` #### 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": { "deployments": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_on": "2019-12-27T18:11:19.117Z", "source": "api", "strategy": "percentage", "versions": [ { "percentage": 100, "version_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e" } ], "annotations": { "workers/message": "Deploy bug fix.", "workers/triggered_by": "deployment" }, "author_email": "dev@stainless.com" } ] }, "success": true } ``` ## Create Deployment `client.workers.scripts.deployments.create(stringscriptName, DeploymentCreateParamsparams, RequestOptionsoptions?): Deployment` **post** `/accounts/{account_id}/workers/scripts/{script_name}/deployments` Deployments configure how [Worker Versions](https://developers.cloudflare.com/api/operations/worker-versions-list-versions) are deployed to traffic. A deployment can consist of one or two versions of a Worker. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: DeploymentCreateParams` - `account_id: string` Path param: Identifier. - `strategy: "percentage"` Body param - `"percentage"` - `versions: Array` Body param - `percentage: number` - `version_id: string` - `force?: boolean` Query param: If set to true, the deployment will be created even if normally blocked by something such rolling back to an older version when a secret has changed. - `annotations?: Annotations` Body param - `"workers/message"?: string` Human-readable message about the deployment. Truncated to 100 bytes. - `"workers/triggered_by"?: string` Operation that triggered the creation of the deployment. ### Returns - `Deployment` - `id: string` - `created_on: string` - `source: string` - `strategy: "percentage"` - `"percentage"` - `versions: Array` - `percentage: number` - `version_id: string` - `annotations?: Annotations` - `"workers/message"?: string` Human-readable message about the deployment. Truncated to 100 bytes. - `"workers/triggered_by"?: string` Operation that triggered the creation of the deployment. - `author_email?: 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 deployment = await client.workers.scripts.deployments.create('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', strategy: 'percentage', versions: [{ percentage: 100, version_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e' }], }); 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": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_on": "2019-12-27T18:11:19.117Z", "source": "api", "strategy": "percentage", "versions": [ { "percentage": 100, "version_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e" } ], "annotations": { "workers/message": "Deploy bug fix.", "workers/triggered_by": "deployment" }, "author_email": "dev@stainless.com" }, "success": true } ``` ## Get Deployment `client.workers.scripts.deployments.get(stringscriptName, stringdeploymentId, DeploymentGetParamsparams, RequestOptionsoptions?): Deployment` **get** `/accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id}` Get information about a Worker Deployment. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `deploymentId: string` - `params: DeploymentGetParams` - `account_id: string` Identifier. ### Returns - `Deployment` - `id: string` - `created_on: string` - `source: string` - `strategy: "percentage"` - `"percentage"` - `versions: Array` - `percentage: number` - `version_id: string` - `annotations?: Annotations` - `"workers/message"?: string` Human-readable message about the deployment. Truncated to 100 bytes. - `"workers/triggered_by"?: string` Operation that triggered the creation of the deployment. - `author_email?: 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 deployment = await client.workers.scripts.deployments.get( 'this-is_my_script-01', '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', { 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": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_on": "2019-12-27T18:11:19.117Z", "source": "api", "strategy": "percentage", "versions": [ { "percentage": 100, "version_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e" } ], "annotations": { "workers/message": "Deploy bug fix.", "workers/triggered_by": "deployment" }, "author_email": "dev@stainless.com" }, "success": true } ``` ## Delete Deployment `client.workers.scripts.deployments.delete(stringscriptName, stringdeploymentId, DeploymentDeleteParamsparams, RequestOptionsoptions?): DeploymentDeleteResponse` **delete** `/accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id}` Delete a Worker Deployment. The latest deployment, which is actively serving traffic, cannot be deleted. All other deployments can be deleted. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `deploymentId: string` - `params: DeploymentDeleteParams` - `account_id: string` Identifier. ### Returns - `DeploymentDeleteResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` ### 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.workers.scripts.deployments.delete( 'this-is_my_script-01', '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(deployment.errors); ``` #### 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" } } ], "success": true } ``` ## Domain Types ### Deployment - `Deployment` - `id: string` - `created_on: string` - `source: string` - `strategy: "percentage"` - `"percentage"` - `versions: Array` - `percentage: number` - `version_id: string` - `annotations?: Annotations` - `"workers/message"?: string` Human-readable message about the deployment. Truncated to 100 bytes. - `"workers/triggered_by"?: string` Operation that triggered the creation of the deployment. - `author_email?: string` ### Deployment List Response - `DeploymentListResponse` - `deployments: Array` - `id: string` - `created_on: string` - `source: string` - `strategy: "percentage"` - `"percentage"` - `versions: Array` - `percentage: number` - `version_id: string` - `annotations?: Annotations` - `"workers/message"?: string` Human-readable message about the deployment. Truncated to 100 bytes. - `"workers/triggered_by"?: string` Operation that triggered the creation of the deployment. - `author_email?: string` ### Deployment Delete Response - `DeploymentDeleteResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` # Versions ## List Versions `client.workers.scripts.versions.list(stringscriptName, VersionListParamsparams, RequestOptionsoptions?): V4PagePagination` **get** `/accounts/{account_id}/workers/scripts/{script_name}/versions` List of Worker Versions. The first version in the list is the latest version. ### Parameters - `scriptName: string` Name of the script. - `params: VersionListParams` - `account_id: string` Path param: Identifier. - `deployable?: boolean` Query param: Only return versions that can be used in a deployment. Ignores pagination. - `page?: number` Query param: Current page. - `per_page?: number` Query param: Items per-page. ### Returns - `VersionListResponse` - `id?: string` Unique identifier for the version. - `metadata?: Metadata` - `author_email?: string` Email of the user who created the version. - `author_id?: string` Identifier of the user who created the version. - `created_on?: string` When the version was created. - `hasPreview?: boolean` Whether the version can be previewed. - `modified_on?: string` When the version was last modified. - `source?: "unknown" | "api" | "wrangler" | 7 more` The source of the version upload. - `"unknown"` - `"api"` - `"wrangler"` - `"terraform"` - `"dash"` - `"dash_template"` - `"integration"` - `"quick_editor"` - `"playground"` - `"workersci"` - `number?: number` Sequential version 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 }); // Automatically fetches more pages as needed. for await (const versionListResponse of client.workers.scripts.versions.list( 'this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, )) { console.log(versionListResponse.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": { "items": [ { "id": "18f97339-c287-4872-9bdd-e2135c07ec12", "metadata": { "author_email": "user@example.com", "author_id": "408cbcdfd4dda4617efef40b04d168a1", "created_on": "2022-11-08T17:19:29.176266Z", "hasPreview": true, "modified_on": "2022-11-08T17:19:29.176266Z", "source": "api" }, "number": 1 } ] }, "success": true } ``` ## Get Version Detail `client.workers.scripts.versions.get(stringscriptName, stringversionId, VersionGetParamsparams, RequestOptionsoptions?): VersionGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/versions/{version_id}` Retrieves detailed information about a specific version of a Workers script. ### Parameters - `scriptName: string` Name of the script. - `versionId: string` - `params: VersionGetParams` - `account_id: string` Identifier. ### Returns - `VersionGetResponse` - `resources: Resources` - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `script?: Script` - `etag?: string` Hashed script content - `handlers?: Array` The names of handlers exported as part of the default export. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the exported class or entrypoint. - `script_runtime?: ScriptRuntime` Runtime configuration for the Worker. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. - `limits?: Limits` Resource limits for the Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `usage_model?: "bundled" | "unbound" | "standard"` Usage model for the Worker invocations. - `"bundled"` - `"unbound"` - `"standard"` - `id?: string` Unique identifier for the version. - `metadata?: Metadata` - `author_email?: string` Email of the user who created the version. - `author_id?: string` Identifier of the user who created the version. - `created_on?: string` When the version was created. - `hasPreview?: boolean` Whether the version can be previewed. - `modified_on?: string` When the version was last modified. - `source?: "unknown" | "api" | "wrangler" | 7 more` The source of the version upload. - `"unknown"` - `"api"` - `"wrangler"` - `"terraform"` - `"dash"` - `"dash_template"` - `"integration"` - `"quick_editor"` - `"playground"` - `"workersci"` - `number?: number` Sequential version 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 version = await client.workers.scripts.versions.get( 'this-is_my_script-01', 'bcf48806-b317-4351-9ee7-36e7d557d4de', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(version.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": { "resources": { "bindings": [ { "name": "MY_ENV_VAR", "text": "my_data", "type": "plain_text" } ], "script": { "etag": "13a3240e8fb414561b0366813b0b8f42b3e6cfa0d9e70e99835dae83d0d8a794", "handlers": [ "fetch" ], "last_deployed_from": "api", "named_handlers": [ { "handlers": [ "fetch" ], "name": "MyClass" } ] }, "script_runtime": { "compatibility_date": "2022-11-08", "compatibility_flags": [ "x" ], "limits": { "cpu_ms": 50 }, "migration_tag": "v1", "usage_model": "standard" } }, "id": "18f97339-c287-4872-9bdd-e2135c07ec12", "metadata": { "author_email": "user@example.com", "author_id": "408cbcdfd4dda4617efef40b04d168a1", "created_on": "2022-11-08T17:19:29.176266Z", "hasPreview": true, "modified_on": "2022-11-08T17:19:29.176266Z", "source": "api" }, "number": 1 }, "success": true } ``` ## Upload Version `client.workers.scripts.versions.create(stringscriptName, VersionCreateParamsparams, RequestOptionsoptions?): VersionCreateResponse` **post** `/accounts/{account_id}/workers/scripts/{script_name}/versions` Upload a Worker Version without deploying to Cloudflare's network. You can find more about the multipart metadata on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/. ### Parameters - `scriptName: string` Name of the script. - `params: VersionCreateParams` - `account_id: string` Path param: Identifier. - `metadata: Metadata` Body param: JSON-encoded metadata about the uploaded parts and Worker configuration. - `main_module: string` Name of the uploaded file that contains the main module (e.g. the file exporting a `fetch` handler). Indicates a `module syntax` Worker, which is required for Version Upload. - `annotations?: Annotations` - `"workers/alias"?: string` Associated alias for a version. - `"workers/message"?: string` Human-readable message about the version. Truncated to 100 bytes. - `"workers/tag"?: string` User-provided identifier for the version. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `keep_bindings?: Array` List of binding types to keep from previous_upload. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` - `bindings_inherit?: "strict"` Query param: When set to "strict", the upload will fail if any `inherit` type bindings cannot be resolved against the previous version of the Worker. Without this, unresolvable inherit bindings are silently dropped. - `"strict"` - `files?: Array` Body param: An array of modules (often JavaScript files) comprising a Worker script. At least one module must be present and referenced in the metadata as `main_module` or `body_part` by filename.
Possible Content-Type(s) are: `application/javascript+module`, `text/javascript+module`, `application/javascript`, `text/javascript`, `text/x-python`, `text/x-python-requirement`, `application/wasm`, `text/plain`, `application/octet-stream`, `application/source-map`. ### Returns - `VersionCreateResponse` - `resources: Resources` - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `script?: Script` - `etag?: string` Hashed script content - `handlers?: Array` The names of handlers exported as part of the default export. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the exported class or entrypoint. - `script_runtime?: ScriptRuntime` Runtime configuration for the Worker. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. - `limits?: Limits` Resource limits for the Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `usage_model?: "bundled" | "unbound" | "standard"` Usage model for the Worker invocations. - `"bundled"` - `"unbound"` - `"standard"` - `id?: string` Unique identifier for the version. - `metadata?: Metadata` - `author_email?: string` Email of the user who created the version. - `author_id?: string` Identifier of the user who created the version. - `created_on?: string` When the version was created. - `hasPreview?: boolean` Whether the version can be previewed. - `modified_on?: string` When the version was last modified. - `source?: "unknown" | "api" | "wrangler" | 7 more` The source of the version upload. - `"unknown"` - `"api"` - `"wrangler"` - `"terraform"` - `"dash"` - `"dash_template"` - `"integration"` - `"quick_editor"` - `"playground"` - `"workersci"` - `number?: number` Sequential version number. - `startup_time_ms?: number` Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time). ### 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 version = await client.workers.scripts.versions.create('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', metadata: { main_module: 'worker.js' }, }); console.log(version.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": { "resources": { "bindings": [ { "name": "MY_ENV_VAR", "text": "my_data", "type": "plain_text" } ], "script": { "etag": "13a3240e8fb414561b0366813b0b8f42b3e6cfa0d9e70e99835dae83d0d8a794", "handlers": [ "fetch" ], "last_deployed_from": "api", "named_handlers": [ { "handlers": [ "fetch" ], "name": "MyClass" } ] }, "script_runtime": { "compatibility_date": "2022-11-08", "compatibility_flags": [ "x" ], "limits": { "cpu_ms": 50 }, "migration_tag": "v1", "usage_model": "standard" } }, "id": "18f97339-c287-4872-9bdd-e2135c07ec12", "metadata": { "author_email": "user@example.com", "author_id": "408cbcdfd4dda4617efef40b04d168a1", "created_on": "2022-11-08T17:19:29.176266Z", "hasPreview": true, "modified_on": "2022-11-08T17:19:29.176266Z", "source": "api" }, "number": 1, "startup_time_ms": 10 }, "success": true } ``` ## Domain Types ### Version List Response - `VersionListResponse` - `id?: string` Unique identifier for the version. - `metadata?: Metadata` - `author_email?: string` Email of the user who created the version. - `author_id?: string` Identifier of the user who created the version. - `created_on?: string` When the version was created. - `hasPreview?: boolean` Whether the version can be previewed. - `modified_on?: string` When the version was last modified. - `source?: "unknown" | "api" | "wrangler" | 7 more` The source of the version upload. - `"unknown"` - `"api"` - `"wrangler"` - `"terraform"` - `"dash"` - `"dash_template"` - `"integration"` - `"quick_editor"` - `"playground"` - `"workersci"` - `number?: number` Sequential version number. ### Version Get Response - `VersionGetResponse` - `resources: Resources` - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `script?: Script` - `etag?: string` Hashed script content - `handlers?: Array` The names of handlers exported as part of the default export. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the exported class or entrypoint. - `script_runtime?: ScriptRuntime` Runtime configuration for the Worker. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. - `limits?: Limits` Resource limits for the Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `usage_model?: "bundled" | "unbound" | "standard"` Usage model for the Worker invocations. - `"bundled"` - `"unbound"` - `"standard"` - `id?: string` Unique identifier for the version. - `metadata?: Metadata` - `author_email?: string` Email of the user who created the version. - `author_id?: string` Identifier of the user who created the version. - `created_on?: string` When the version was created. - `hasPreview?: boolean` Whether the version can be previewed. - `modified_on?: string` When the version was last modified. - `source?: "unknown" | "api" | "wrangler" | 7 more` The source of the version upload. - `"unknown"` - `"api"` - `"wrangler"` - `"terraform"` - `"dash"` - `"dash_template"` - `"integration"` - `"quick_editor"` - `"playground"` - `"workersci"` - `number?: number` Sequential version number. ### Version Create Response - `VersionCreateResponse` - `resources: Resources` - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `script?: Script` - `etag?: string` Hashed script content - `handlers?: Array` The names of handlers exported as part of the default export. - `last_deployed_from?: string` The client most recently used to deploy this Worker. - `named_handlers?: Array` Named exports, such as Durable Object class implementations and named entrypoints. - `handlers?: Array` The names of handlers exported as part of the named export. - `name?: string` The name of the exported class or entrypoint. - `script_runtime?: ScriptRuntime` Runtime configuration for the Worker. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. - `limits?: Limits` Resource limits for the Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `migration_tag?: string` The tag of the Durable Object migration that was most recently applied for this Worker. - `usage_model?: "bundled" | "unbound" | "standard"` Usage model for the Worker invocations. - `"bundled"` - `"unbound"` - `"standard"` - `id?: string` Unique identifier for the version. - `metadata?: Metadata` - `author_email?: string` Email of the user who created the version. - `author_id?: string` Identifier of the user who created the version. - `created_on?: string` When the version was created. - `hasPreview?: boolean` Whether the version can be previewed. - `modified_on?: string` When the version was last modified. - `source?: "unknown" | "api" | "wrangler" | 7 more` The source of the version upload. - `"unknown"` - `"api"` - `"wrangler"` - `"terraform"` - `"dash"` - `"dash_template"` - `"integration"` - `"quick_editor"` - `"playground"` - `"workersci"` - `number?: number` Sequential version number. - `startup_time_ms?: number` Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time). # Secrets ## List script secrets `client.workers.scripts.secrets.list(stringscriptName, SecretListParamsparams, RequestOptionsoptions?): SinglePage` **get** `/accounts/{account_id}/workers/scripts/{script_name}/secrets` List secrets bound to a script. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: SecretListParams` - `account_id: string` Identifier. ### Returns - `SecretListResponse = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` A secret value accessible through a binding. - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". ### 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 secretListResponse of client.workers.scripts.secrets.list('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(secretListResponse); } ``` #### 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" } } ], "success": true, "result": [ { "name": "myBinding", "type": "secret_text" } ] } ``` ## Get secret binding `client.workers.scripts.secrets.get(stringscriptName, stringsecretName, SecretGetParamsparams, RequestOptionsoptions?): SecretGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name}` Get a given secret binding (value omitted) on a script. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `secretName: string` A JavaScript variable name for the secret binding. - `params: SecretGetParams` - `account_id: string` Path param: Identifier. - `url_encoded?: boolean` Query param: Flag that indicates whether the secret name is URL encoded. ### Returns - `SecretGetResponse = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` A secret value accessible through a binding. - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". ### 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 secret = await client.workers.scripts.secrets.get('this-is_my_script-01', 'mySecret', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(secret); ``` #### 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" } } ], "success": true, "result": { "name": "myBinding", "type": "secret_text" } } ``` ## Add script secret `client.workers.scripts.secrets.update(stringscriptName, SecretUpdateParamsparams, RequestOptionsoptions?): SecretUpdateResponse` **put** `/accounts/{account_id}/workers/scripts/{script_name}/secrets` Add a secret to a script. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `SecretUpdateParams = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` - `SecretUpdateParamsBase` - `WorkersBindingKindSecretText extends SecretUpdateParamsBase` - `WorkersBindingKindSecretKey extends SecretUpdateParamsBase` ### Returns - `SecretUpdateResponse = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` A secret value accessible through a binding. - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". ### 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 secret = await client.workers.scripts.secrets.update('this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', name: 'myBinding', text: 'My secret.', type: 'secret_text', }); console.log(secret); ``` #### 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" } } ], "success": true, "result": { "name": "myBinding", "type": "secret_text" } } ``` ## Delete script secret `client.workers.scripts.secrets.delete(stringscriptName, stringsecretName, SecretDeleteParamsparams, RequestOptionsoptions?): SecretDeleteResponse | null` **delete** `/accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name}` Remove a secret from a script. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `secretName: string` A JavaScript variable name for the secret binding. - `params: SecretDeleteParams` - `account_id: string` Path param: Identifier. - `url_encoded?: boolean` Query param: Flag that indicates whether the secret name is URL encoded. ### Returns - `SecretDeleteResponse = 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 secret = await client.workers.scripts.secrets.delete('this-is_my_script-01', 'mySecret', { account_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(secret); ``` #### 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" } } ], "success": true, "result": {} } ``` ## Domain Types ### Secret List Response - `SecretListResponse = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` A secret value accessible through a binding. - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". ### Secret Get Response - `SecretGetResponse = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` A secret value accessible through a binding. - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". ### Secret Update Response - `SecretUpdateResponse = WorkersBindingKindSecretText | WorkersBindingKindSecretKey` A secret value accessible through a binding. - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". ### Secret Delete Response - `SecretDeleteResponse = unknown` # Script And Version Settings ## Get Settings `client.workers.scripts.scriptAndVersionSettings.get(stringscriptName, ScriptAndVersionSettingGetParamsparams, RequestOptionsoptions?): ScriptAndVersionSettingGetResponse` **get** `/accounts/{account_id}/workers/scripts/{script_name}/settings` Get metadata and config, such as bindings or usage model. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScriptAndVersionSettingGetParams` - `account_id: string` Identifier. ### Returns - `ScriptAndVersionSettingGetResponse` - `annotations?: Annotations` Annotations for the Worker version. Annotations are not inherited across settings updates; omitting this field means the new version will have no annotations. - `"workers/message"?: string` Human-readable message about the version. - `"workers/tag"?: string` User-provided identifier for the version. - `"workers/triggered_by"?: string` Operation that triggered the creation of the version. This is read-only and set by the server. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `limits?: Limits` Limits to apply for this Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migrations?: SingleStepMigration | WorkersMultipleStepMigrations` Migrations to apply for Durable Objects associated with this Worker. - `SingleStepMigration` A single set of migrations to apply. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `WorkersMultipleStepMigrations` - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `steps?: Array` Migrations to apply in order. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: Mode | Region | Hostname | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `Mode` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `Region` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host and port for targeted placement. - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### 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 scriptAndVersionSetting = await client.workers.scripts.scriptAndVersionSettings.get( 'this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(scriptAndVersionSetting.annotations); ``` #### 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": { "annotations": { "workers/message": "Fixed bug.", "workers/tag": "v1.0.1", "workers/triggered_by": "upload" }, "bindings": [ { "name": "MY_ENV_VAR", "text": "my_data", "type": "plain_text" } ], "compatibility_date": "2021-01-01", "compatibility_flags": [ "nodejs_compat" ], "limits": { "cpu_ms": 50 }, "logpush": false, "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "placement": { "mode": "smart" }, "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ], "usage_model": "standard" }, "success": true } ``` ## Patch Settings `client.workers.scripts.scriptAndVersionSettings.edit(stringscriptName, ScriptAndVersionSettingEditParamsparams, RequestOptionsoptions?): ScriptAndVersionSettingEditResponse` **patch** `/accounts/{account_id}/workers/scripts/{script_name}/settings` Patch metadata or config, such as bindings or usage model. ### Parameters - `scriptName: string` Name of the script, used in URLs and route configuration. - `params: ScriptAndVersionSettingEditParams` - `account_id: string` Path param: Identifier. - `settings?: Settings` Body param - `annotations?: Annotations` Annotations for the Worker version. Annotations are not inherited across settings updates; omitting this field means the new version will have no annotations. - `"workers/message"?: string` Human-readable message about the version. - `"workers/tag"?: string` User-provided identifier for the version. - `"workers/triggered_by"?: string` Operation that triggered the creation of the version. This is read-only and set by the server. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `limits?: Limits` Limits to apply for this Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migrations?: SingleStepMigration | WorkersMultipleStepMigrations` Migrations to apply for Durable Objects associated with this Worker. - `SingleStepMigration` A single set of migrations to apply. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `WorkersMultipleStepMigrations` - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `steps?: Array` Migrations to apply in order. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: Mode | Region | Hostname | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `Mode` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `Region` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host and port for targeted placement. - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### Returns - `ScriptAndVersionSettingEditResponse` - `annotations?: Annotations` Annotations for the Worker version. Annotations are not inherited across settings updates; omitting this field means the new version will have no annotations. - `"workers/message"?: string` Human-readable message about the version. - `"workers/tag"?: string` User-provided identifier for the version. - `"workers/triggered_by"?: string` Operation that triggered the creation of the version. This is read-only and set by the server. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `limits?: Limits` Limits to apply for this Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migrations?: SingleStepMigration | WorkersMultipleStepMigrations` Migrations to apply for Durable Objects associated with this Worker. - `SingleStepMigration` A single set of migrations to apply. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `WorkersMultipleStepMigrations` - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `steps?: Array` Migrations to apply in order. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: Mode | Region | Hostname | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `Mode` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `Region` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host and port for targeted placement. - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### 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.workers.scripts.scriptAndVersionSettings.edit( 'this-is_my_script-01', { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, ); console.log(response.annotations); ``` #### 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": { "annotations": { "workers/message": "Fixed bug.", "workers/tag": "v1.0.1", "workers/triggered_by": "upload" }, "bindings": [ { "name": "MY_ENV_VAR", "text": "my_data", "type": "plain_text" } ], "compatibility_date": "2021-01-01", "compatibility_flags": [ "nodejs_compat" ], "limits": { "cpu_ms": 50 }, "logpush": false, "observability": { "enabled": true, "head_sampling_rate": 0.1, "logs": { "enabled": true, "invocation_logs": true, "destinations": [ "cloudflare" ], "head_sampling_rate": 0.1, "persist": true }, "traces": { "destinations": [ "cloudflare" ], "enabled": true, "head_sampling_rate": 0.1, "persist": true } }, "placement": { "mode": "smart" }, "tags": [ "my-team", "my-public-api" ], "tail_consumers": [ { "service": "my-log-consumer", "environment": "production", "namespace": "my-namespace" } ], "usage_model": "standard" }, "success": true } ``` ## Domain Types ### Script And Version Setting Get Response - `ScriptAndVersionSettingGetResponse` - `annotations?: Annotations` Annotations for the Worker version. Annotations are not inherited across settings updates; omitting this field means the new version will have no annotations. - `"workers/message"?: string` Human-readable message about the version. - `"workers/tag"?: string` User-provided identifier for the version. - `"workers/triggered_by"?: string` Operation that triggered the creation of the version. This is read-only and set by the server. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `limits?: Limits` Limits to apply for this Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migrations?: SingleStepMigration | WorkersMultipleStepMigrations` Migrations to apply for Durable Objects associated with this Worker. - `SingleStepMigration` A single set of migrations to apply. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `WorkersMultipleStepMigrations` - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `steps?: Array` Migrations to apply in order. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: Mode | Region | Hostname | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `Mode` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `Region` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host and port for targeted placement. - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"` ### Script And Version Setting Edit Response - `ScriptAndVersionSettingEditResponse` - `annotations?: Annotations` Annotations for the Worker version. Annotations are not inherited across settings updates; omitting this field means the new version will have no annotations. - `"workers/message"?: string` Human-readable message about the version. - `"workers/tag"?: string` User-provided identifier for the version. - `"workers/triggered_by"?: string` Operation that triggered the creation of the version. This is read-only and set by the server. - `bindings?: Array` List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings. - `WorkersBindingKindAI` - `name: string` A JavaScript variable name for the binding. - `type: "ai"` The kind of resource that the binding provides. - `"ai"` - `WorkersBindingKindAISearch` - `instance_name: string` The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance. - `name: string` A JavaScript variable name for the binding. - `type: "ai_search"` The kind of resource that the binding provides. - `"ai_search"` - `namespace?: string` The namespace the instance belongs to. Defaults to "default" if omitted. Customers who don't use namespaces can simply omit this field. - `WorkersBindingKindAISearchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The "default" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace. - `type: "ai_search_namespace"` The kind of resource that the binding provides. - `"ai_search_namespace"` - `WorkersBindingKindAnalyticsEngine` - `dataset: string` The name of the dataset to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "analytics_engine"` The kind of resource that the binding provides. - `"analytics_engine"` - `WorkersBindingKindAssets` - `name: string` A JavaScript variable name for the binding. - `type: "assets"` The kind of resource that the binding provides. - `"assets"` - `WorkersBindingKindBrowser` - `name: string` A JavaScript variable name for the binding. - `type: "browser"` The kind of resource that the binding provides. - `"browser"` - `WorkersBindingKindD1` - `id: string` Identifier of the D1 database to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "d1"` The kind of resource that the binding provides. - `"d1"` - `WorkersBindingKindDataBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the data content. Only accepted for `service worker syntax` Workers. - `type: "data_blob"` The kind of resource that the binding provides. - `"data_blob"` - `WorkersBindingKindDispatchNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace: string` The name of the dispatch namespace. - `type: "dispatch_namespace"` The kind of resource that the binding provides. - `"dispatch_namespace"` - `outbound?: Outbound` Outbound worker. - `params?: Array` Pass information from the Dispatch Worker to the Outbound Worker through the parameters. - `name: string` Name of the parameter. - `worker?: Worker` Outbound worker. - `entrypoint?: string` Entrypoint to invoke on the outbound worker. - `environment?: string` Environment of the outbound worker. - `service?: string` Name of the outbound worker. - `WorkersBindingKindDurableObjectNamespace` - `name: string` A JavaScript variable name for the binding. - `type: "durable_object_namespace"` The kind of resource that the binding provides. - `"durable_object_namespace"` - `class_name?: string` The exported class name of the Durable Object. - `dispatch_namespace?: string` The dispatch namespace the Durable Object script belongs to. - `environment?: string` The environment of the script_name to bind to. - `namespace_id?: string` Namespace identifier tag. - `script_name?: string` The script where the Durable Object is defined, if it is external to this Worker. - `WorkersBindingKindHyperdrive` - `id: string` Identifier of the Hyperdrive connection to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "hyperdrive"` The kind of resource that the binding provides. - `"hyperdrive"` - `WorkersBindingKindInherit` - `name: string` The name of the inherited binding. - `type: "inherit"` The kind of resource that the binding provides. - `"inherit"` - `old_name?: string` The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions. - `version_id?: string` Identifier for the version to inherit the binding from, which can be the version ID or the literal "latest" to inherit from the latest version. Defaults to inheriting the binding from the latest version. - `WorkersBindingKindImages` - `name: string` A JavaScript variable name for the binding. - `type: "images"` The kind of resource that the binding provides. - `"images"` - `WorkersBindingKindJson` - `json: unknown` JSON data to use. - `name: string` A JavaScript variable name for the binding. - `type: "json"` The kind of resource that the binding provides. - `"json"` - `WorkersBindingKindKVNamespace` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Namespace identifier tag. - `type: "kv_namespace"` The kind of resource that the binding provides. - `"kv_namespace"` - `WorkersBindingKindMedia` - `name: string` A JavaScript variable name for the binding. - `type: "media"` The kind of resource that the binding provides. - `"media"` - `WorkersBindingKindMTLSCertificate` - `certificate_id: string` Identifier of the certificate to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "mtls_certificate"` The kind of resource that the binding provides. - `"mtls_certificate"` - `WorkersBindingKindPlainText` - `name: string` A JavaScript variable name for the binding. - `text: string` The text value to use. - `type: "plain_text"` The kind of resource that the binding provides. - `"plain_text"` - `WorkersBindingKindPipelines` - `name: string` A JavaScript variable name for the binding. - `pipeline: string` Name of the Pipeline to bind to. - `type: "pipelines"` The kind of resource that the binding provides. - `"pipelines"` - `WorkersBindingKindQueue` - `name: string` A JavaScript variable name for the binding. - `queue_name: string` Name of the Queue to bind to. - `type: "queue"` The kind of resource that the binding provides. - `"queue"` - `WorkersBindingKindRatelimit` - `name: string` A JavaScript variable name for the binding. - `namespace_id: string` Identifier of the rate limit namespace to bind to. - `simple: Simple` The rate limit configuration. - `limit: number` The limit (requests per period). - `period: number` The period in seconds. - `type: "ratelimit"` The kind of resource that the binding provides. - `"ratelimit"` - `WorkersBindingKindR2Bucket` - `bucket_name: string` R2 bucket to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "r2_bucket"` The kind of resource that the binding provides. - `"r2_bucket"` - `jurisdiction?: "eu" | "fedramp" | "fedramp-high"` The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket. - `"eu"` - `"fedramp"` - `"fedramp-high"` - `WorkersBindingKindSecretText` - `name: string` A JavaScript variable name for the binding. - `text: string` The secret value to use. - `type: "secret_text"` The kind of resource that the binding provides. - `"secret_text"` - `WorkersBindingKindSendEmail` - `name: string` A JavaScript variable name for the binding. - `type: "send_email"` The kind of resource that the binding provides. - `"send_email"` - `allowed_destination_addresses?: Array` List of allowed destination addresses. - `allowed_sender_addresses?: Array` List of allowed sender addresses. - `destination_address?: string` Destination address for the email. - `WorkersBindingKindService` - `name: string` A JavaScript variable name for the binding. - `service: string` Name of Worker to bind to. - `type: "service"` The kind of resource that the binding provides. - `"service"` - `entrypoint?: string` Entrypoint to invoke on the target Worker. - `environment?: string` Optional environment if the Worker utilizes one. - `WorkersBindingKindTextBlob` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the text content. Only accepted for `service worker syntax` Workers. - `type: "text_blob"` The kind of resource that the binding provides. - `"text_blob"` - `WorkersBindingKindVectorize` - `index_name: string` Name of the Vectorize index to bind to. - `name: string` A JavaScript variable name for the binding. - `type: "vectorize"` The kind of resource that the binding provides. - `"vectorize"` - `WorkersBindingKindVersionMetadata` - `name: string` A JavaScript variable name for the binding. - `type: "version_metadata"` The kind of resource that the binding provides. - `"version_metadata"` - `WorkersBindingKindSecretsStoreSecret` - `name: string` A JavaScript variable name for the binding. - `secret_name: string` Name of the secret in the store. - `store_id: string` ID of the store containing the secret. - `type: "secrets_store_secret"` The kind of resource that the binding provides. - `"secrets_store_secret"` - `WorkersBindingKindSecretKey` - `algorithm: unknown` Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm). - `format: "raw" | "pkcs8" | "spki" | "jwk"` Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format). - `"raw"` - `"pkcs8"` - `"spki"` - `"jwk"` - `name: string` A JavaScript variable name for the binding. - `type: "secret_key"` The kind of resource that the binding provides. - `"secret_key"` - `usages: Array<"encrypt" | "decrypt" | "sign" | 5 more>` Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages). - `"encrypt"` - `"decrypt"` - `"sign"` - `"verify"` - `"deriveKey"` - `"deriveBits"` - `"wrapKey"` - `"unwrapKey"` - `key_base64?: string` Base64-encoded key data. Required if `format` is "raw", "pkcs8", or "spki". - `key_jwk?: unknown` Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is "jwk". - `WorkersBindingKindWorkflow` - `name: string` A JavaScript variable name for the binding. - `type: "workflow"` The kind of resource that the binding provides. - `"workflow"` - `workflow_name: string` Name of the Workflow to bind to. - `class_name?: string` Class name of the Workflow. Should only be provided if the Workflow belongs to this script. - `script_name?: string` Script name that contains the Workflow. If not provided, defaults to this script name. - `WorkersBindingKindWasmModule` - `name: string` A JavaScript variable name for the binding. - `part: string` The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers. - `type: "wasm_module"` The kind of resource that the binding provides. - `"wasm_module"` - `WorkersBindingKindVPCService` - `name: string` A JavaScript variable name for the binding. - `service_id: string` Identifier of the VPC service to bind to. - `type: "vpc_service"` The kind of resource that the binding provides. - `"vpc_service"` - `WorkersBindingKindVPCNetwork` - `name: string` A JavaScript variable name for the binding. - `type: "vpc_network"` The kind of resource that the binding provides. - `"vpc_network"` - `network_id?: string` Identifier of the network to bind to. Only "cf1:network" is currently supported. Mutually exclusive with tunnel_id. - `tunnel_id?: string` UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id. - `compatibility_date?: string` Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker. - `compatibility_flags?: Array` Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`. - `limits?: Limits` Limits to apply for this Worker. - `cpu_ms?: number` The amount of CPU time this Worker can use in milliseconds. - `logpush?: boolean` Whether Logpush is turned on for the Worker. - `migrations?: SingleStepMigration | WorkersMultipleStepMigrations` Migrations to apply for Durable Objects associated with this Worker. - `SingleStepMigration` A single set of migrations to apply. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `WorkersMultipleStepMigrations` - `new_tag?: string` Tag to set as the latest migration tag. - `old_tag?: string` Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected. - `steps?: Array` Migrations to apply in order. - `deleted_classes?: Array` A list of classes to delete Durable Object namespaces from. - `new_classes?: Array` A list of classes to create Durable Object namespaces from. - `new_sqlite_classes?: Array` A list of classes to create Durable Object namespaces with SQLite from. - `renamed_classes?: Array` A list of classes with Durable Object namespaces that were renamed. - `from?: string` - `to?: string` - `transferred_classes?: Array` A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker. - `from?: string` - `from_script?: string` - `to?: string` - `observability?: Observability` Observability settings for the Worker. - `enabled: boolean` Whether observability is enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `logs?: Logs | null` Log settings for the Worker. - `enabled: boolean` Whether logs are enabled for the Worker. - `invocation_logs: boolean` Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker. - `destinations?: Array` A list of destinations where logs will be exported to. - `head_sampling_rate?: number | null` The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether log persistence is enabled for the Worker. - `traces?: Traces | null` Trace settings for the Worker. - `destinations?: Array` A list of destinations where traces will be exported to. - `enabled?: boolean` Whether traces are enabled for the Worker. - `head_sampling_rate?: number | null` The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1. - `persist?: boolean` Whether trace persistence is enabled for the Worker. - `placement?: Mode | Region | Hostname | 5 more` Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host. - `Mode` - `mode: "smart"` Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). - `"smart"` - `Region` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host and port for targeted placement. - `UnionMember4` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `region: string` Cloud region for targeted placement in format 'provider:region'. - `UnionMember5` - `hostname: string` HTTP hostname for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember6` - `host: string` TCP host and port for targeted placement. - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `UnionMember7` - `mode: "targeted"` Targeted placement mode. - `"targeted"` - `target: Array` Array of placement targets (currently limited to single target). - `Region` - `region: string` Cloud region in format 'provider:region'. - `Hostname` - `hostname: string` HTTP hostname for targeted placement. - `Host` - `host: string` TCP host:port for targeted placement. - `tags?: Array | null` Tags associated with the Worker. - `tail_consumers?: Array | null` List of Workers that will consume logs from the attached Worker. - `service: string` Name of Worker that is to be the consumer. - `environment?: string` Optional environment if the Worker utilizes one. - `namespace?: string` Optional dispatch namespace the script belongs to. - `usage_model?: "standard" | "bundled" | "unbound"` Usage model for the Worker invocations. - `"standard"` - `"bundled"` - `"unbound"`