Activating & Pausing Workflows
After deploying a workflow, you can control its operational state using the cre workflow activate and cre workflow pause commands. These commands modify the workflow's status in the Workflow Registry contract, determining whether it can respond to triggers.
Workflow states:
- Active — The workflow can respond to its configured triggers and execute
- Paused — The workflow cannot respond to triggers and will not execute
Prerequisites
Before activating or pausing workflows, ensure you have:
- A deployed workflow: You must have a workflow that has been successfully deployed to the Workflow Registry.
- Workflow ownership: You must be the owner of the workflow (the account that originally deployed it). Only the workflow owner can activate or pause it.
- Local workflow folder: You must run these commands from your project directory. The CLI reads the workflow name and configuration from your
workflow.yamlfile to identify which workflow to activate or pause. - Logged in: Authenticated with the platform by running
cre login. To check your authentication status, runcre whoami. - A funded wallet: The account you are using must be funded with ETH on Ethereum Mainnet to pay the gas fees for the onchain transaction to the Workflow Registry contract.
Activating a workflow
The cre workflow activate command changes a paused workflow's status to active, allowing its triggers to fire and the workflow to execute.
When to activate
You typically use activate in these scenarios:
- After pausing a workflow: To resume execution after maintenance or debugging
- Manual deployment: When you deployed with
--auto-start=false
Usage
Run the command from your project root:
cre workflow activate my-workflow --target production-settings
The CLI identifies which workflow to activate based on:
workflow-namefrom yourworkflow.yamlfileworkflow-owner-address(either fromworkflow.yamlor derived from your private key in.env)
What happens during activation
- The CLI fetches the workflow matching your workflow name and owner address
- It validates that the workflow is currently paused
- If valid, it sends an onchain transaction to change the status to active
Example output
> cre workflow activate my-workflow --target production-settings
Activating Workflow : my-workflow
Target : production-settings
Owner Address : <your-owner-address>
Activating workflow: Name=my-workflow, Owner=<your-owner-address>, WorkflowID=<your-workflow-id>
Transaction details:
Chain Name: ethereum-testnet-sepolia
To: 0xF3f93fc4dc177748E7557568b5354cB009e3818a
Function: ActivateWorkflow
Inputs:
[0]: <your-workflow-id>
[1]: zone-a
Data: 530979d6000000000000000000000000...
Estimated Cost:
Gas Price: 0.00100000 gwei
Total Cost: 0.00000038 ETH
? Do you want to execute this transaction?:
â–¸ Yes
No
Transaction confirmed: 0xd5b94bd...87498b
View on explorer: https://sepolia.etherscan.io/tx/0xd5b94bd...87498b
[OK] Workflow activated successfully
Contract address: 0xF3f93fc4dc177748E7557568b5354cB009e3818a
Transaction hash: 0xd5b94bd...87498b
Workflow Name: my-workflow
Workflow ID: <your-workflow-id>
Pausing a workflow
The cre workflow pause command changes an active workflow's status to paused, preventing its triggers from firing and stopping execution.
When to pause
Pause workflows when you need to:
- Perform maintenance: Temporarily stop execution while updating dependencies or configuration
- Debug issues: Halt execution to investigate errors or unexpected behavior
- Temporarily halt operations: Stop workflow execution without permanently deleting it
Usage
Run the command from your project root:
cre workflow pause my-workflow --target production-settings
What happens during pausing
- The CLI fetches the workflow matching your workflow name and owner address
- It validates that the workflow is currently active
- If valid, it sends an onchain transaction to change the status to paused
Example output
> cre workflow pause my-workflow --target production-settings
Pausing Workflow : my-workflow
Target : production-settings
Owner Address : <your-owner-address>
Fetching workflows to pause... Name=my-workflow, Owner=<your-owner-address>
Processing batch pause... count=1
Transaction details:
Chain Name: ethereum-testnet-sepolia
To: 0xF3f93fc4dc177748E7557568b5354cB009e3818a
Function: BatchPauseWorkflows
Inputs:
[0]: [<your-workflow-id>]
Data: d8b80738000000000000000000000000...
Estimated Cost:
Gas Price: 0.00100000 gwei
Total Cost: 0.00000021 ETH
? Do you want to execute this transaction?:
â–¸ Yes
No
Transaction confirmed
View on explorer: https://sepolia.etherscan.io/tx/0x2e09a66...db66e
[OK] Workflows paused successfully
Details:
Contract address: 0xF3f93fc4dc177748E7557568b5354cB009e3818a
Transaction hash: 0x2e09a66...db66e
Workflow Name: my-workflow
Workflow ID: <your-workflow-id>
Using multi-sig wallets
Both activate and pause commands support multi-sig wallets through the --unsigned flag. When using this flag, the CLI generates raw transaction data that you can submit through your multi-sig wallet interface instead of sending the transaction directly.
For complete setup instructions, configuration requirements, and step-by-step guidance, see Using Multi-sig Wallets.
Learn more
- Deploying Workflows — Learn how to deploy workflows to the registry
- Updating Deployed Workflows — Update your workflow code and configuration
- Deleting Workflows — Permanently remove workflows from the registry
- CLI Reference: Workflow Commands — Complete command reference with all flags and options