Skip to main content

scripts

Creates, updates, deletes, gets or lists a scripts resource.

Overview

Namescripts
TypeResource
Idcloudflare.workers.scripts

Fields

The following fields are returned by SELECT queries:

List scripts in namespace response.

NameDatatypeDescription
created_onstring (date-time)When the script was created. (example: 2017-01-01T00:00:00Z)
dispatch_namespacestringName of the Workers for Platforms dispatch namespace. (example: my-dispatch-namespace)
modified_onstring (date-time)When the script was last modified. (example: 2017-01-01T00:00:00Z)
scriptobject

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
listselectaccount_id, dispatch_namespacetagsFetch a list of scripts uploaded to a Workers for Platforms namespace.
getselectaccount_id, script_nameFetch raw script content for your worker. Note this is the original script content, not JSON encoded.
updatereplaceaccount_id, script_namebindings_inheritUpload a worker module. You can find more about the multipart metadata on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/.
namespace_worker_delete_scriptsdeleteaccount_id, dispatch_namespacetags, limitDelete multiple scripts from a Workers for Platforms namespace based on optional tag filters.
deletedeleteaccount_id, script_nameforceDelete your worker. This call has no response body on a successful delete.
create_assets_upload_sessionexecaccount_id, script_name, manifestStart 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

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
account_idstringThe Cloudflare account ID.
dispatch_namespacestringThe Workers-for-Platforms dispatch namespace.
script_namestringThe Worker script name.
bindings_inheritstringWhen 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.
forcebooleanIf 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.
limitintegerLimit the number of scripts to delete.
tagsstringFilter scripts by tags before deletion. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.

SELECT examples

Fetch a list of scripts uploaded to a Workers for Platforms namespace.

SELECT
created_on,
dispatch_namespace,
modified_on,
script
FROM cloudflare.workers.scripts
WHERE account_id = '{{ account_id }}' -- required
AND dispatch_namespace = '{{ dispatch_namespace }}' -- required
AND tags = '{{ tags }}'
;

REPLACE examples

Upload a worker module. You can find more about the multipart metadata on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/.

REPLACE cloudflare.workers.scripts
SET
-- No updatable properties
WHERE
account_id = '{{ account_id }}' --required
AND script_name = '{{ script_name }}' --required
AND bindings_inherit = '{{ bindings_inherit}}'
RETURNING
errors,
messages,
result,
success;

DELETE examples

Delete multiple scripts from a Workers for Platforms namespace based on optional tag filters.

DELETE FROM cloudflare.workers.scripts
WHERE account_id = '{{ account_id }}' --required
AND dispatch_namespace = '{{ dispatch_namespace }}' --required
AND tags = '{{ tags }}'
AND limit = '{{ limit }}'
;

Lifecycle Methods

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/.

EXEC cloudflare.workers.scripts.create_assets_upload_session
@account_id='{{ account_id }}' --required,
@script_name='{{ script_name }}' --required
@@json=
'{
"manifest": "{{ manifest }}"
}'
;