| api_token | Cloudflare API token. Pass via secrets (e.g. secrets.CLOUDFLARE_API_TOKEN). | yes | — |
| wrangler_command | Command used to invoke Wrangler (for example: wrangler, npx wrangler, pnpm dlx wrangler@4). | yes | — |
| working_directory | Working directory from which Wrangler commands will be executed (useful for monorepos). | no | — |
| config | Optional path to the Wrangler configuration file (e.g. wrangler.toml or dist/server/wrangler.json). When provided, this will be passed as --config to both versions upload and versions deploy. If omitted, Wrangler's default config resolution is used. | no | — |
| upload_args | Additional arguments passed only to wrangler versions upload (excluding --config). Example: --env production | no | — |
| deploy_args | Additional arguments passed only to wrangler versions deploy (excluding --config). Example: --env production | no | — |
| message_template | Template for a deployment message derived from CI and deployment metadata. Supports variables like: {{owner}}, {{repo}}, {{branch}}, {{ref}}, {{sha}}, {{short_sha}}, {{actor}}, {{run_id}}, {{run_number}}, {{commit_message}}, {{short_commit_message}}, {{deployment_url}}, {{version_id}}. If not provided, a sensible default based on branch, commit, and message is used. The same message is applied for both upload and deploy.
| no | — |
| tag_template | Template for a deployment tag/label derived from CI and deployment metadata. Supports the same variables as message_template. If not provided, no tag is generated by default.
| no | — |
| only_upload | If set to true, run only `wrangler versions upload` with the rendered message and provided config/args, output the parsed Worker Version ID if available, and exit without running `wrangler versions deploy`. When true, failure to parse a version ID will not cause the action to fail.
| no | false |