published on Friday, Oct 30, 2026 by zenduty
published on Friday, Oct 30, 2026 by zenduty
zenduty.Workflow manages an incident workflow: a graph of a trigger node followed by action, condition and delay nodes, scoped to one or more teams.
API access The workflow endpoints currently accept browser-session authentication only, not the API token the provider uses. Until the backend grants token access to
/api/workflows/, every operation of this resource fails with an authentication error.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as zenduty from "@pulumi/zenduty";
const noteOnCreate = new zenduty.Workflow("note_on_create", {
name: "Note on create",
description: "Adds a note to every new incident",
isDraft: false,
isEnabled: true,
jsonSchema: JSON.stringify({
nodes: [
{
id: "trigger-1",
type: "trigger",
data: {
name: "Incident Created",
action_name: "incident_create",
group: "Incident",
},
},
{
id: "action-1",
type: "action",
data: {
name: "Add Note",
action_name: "add_note",
group: "Incident",
input: {
note: "Triage checklist: https://runbooks.example.com/triage",
},
},
},
],
edges: [{
id: "trigger-1->action-1",
source: "trigger-1",
target: "action-1",
}],
}),
teams: [
{
teamId: ops.id,
serviceIds: [api.id],
},
{
teamId: platform.id,
},
],
});
import pulumi
import json
import pulumi_zenduty as zenduty
note_on_create = zenduty.Workflow("note_on_create",
name="Note on create",
description="Adds a note to every new incident",
is_draft=False,
is_enabled=True,
json_schema=json.dumps({
"nodes": [
{
"id": "trigger-1",
"type": "trigger",
"data": {
"name": "Incident Created",
"action_name": "incident_create",
"group": "Incident",
},
},
{
"id": "action-1",
"type": "action",
"data": {
"name": "Add Note",
"action_name": "add_note",
"group": "Incident",
"input": {
"note": "Triage checklist: https://runbooks.example.com/triage",
},
},
},
],
"edges": [{
"id": "trigger-1->action-1",
"source": "trigger-1",
"target": "action-1",
}],
}),
teams=[
{
"team_id": ops["id"],
"service_ids": [api["id"]],
},
{
"team_id": platform["id"],
},
])
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-terraform-provider/sdks/go/zenduty/v2/zenduty"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
tmpJSON0, err := json.Marshal(map[string]interface{}{
"nodes": []map[string]interface{}{
map[string]interface{}{
"id": "trigger-1",
"type": "trigger",
"data": map[string]interface{}{
"name": "Incident Created",
"action_name": "incident_create",
"group": "Incident",
},
},
map[string]interface{}{
"id": "action-1",
"type": "action",
"data": map[string]interface{}{
"name": "Add Note",
"action_name": "add_note",
"group": "Incident",
"input": map[string]interface{}{
"note": "Triage checklist: https://runbooks.example.com/triage",
},
},
},
},
"edges": []map[string]interface{}{
map[string]interface{}{
"id": "trigger-1->action-1",
"source": "trigger-1",
"target": "action-1",
},
},
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
_, err = zenduty.NewWorkflow(ctx, "note_on_create", &zenduty.WorkflowArgs{
Name: pulumi.String("Note on create"),
Description: pulumi.String("Adds a note to every new incident"),
IsDraft: pulumi.Bool(false),
IsEnabled: pulumi.Bool(true),
JsonSchema: pulumi.String(json0),
Teams: zenduty.WorkflowTeamArray{
&zenduty.WorkflowTeamArgs{
TeamId: pulumi.Any(ops.Id),
ServiceIds: pulumi.StringArray{
api.Id,
},
},
&zenduty.WorkflowTeamArgs{
TeamId: pulumi.Any(platform.Id),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Zenduty = Pulumi.Zenduty;
return await Deployment.RunAsync(() =>
{
var noteOnCreate = new Zenduty.Workflow("note_on_create", new()
{
Name = "Note on create",
Description = "Adds a note to every new incident",
IsDraft = false,
IsEnabled = true,
JsonSchema = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["nodes"] = new[]
{
new Dictionary<string, object?>
{
["id"] = "trigger-1",
["type"] = "trigger",
["data"] = new Dictionary<string, object?>
{
["name"] = "Incident Created",
["action_name"] = "incident_create",
["group"] = "Incident",
},
},
new Dictionary<string, object?>
{
["id"] = "action-1",
["type"] = "action",
["data"] = new Dictionary<string, object?>
{
["name"] = "Add Note",
["action_name"] = "add_note",
["group"] = "Incident",
["input"] = new Dictionary<string, object?>
{
["note"] = "Triage checklist: https://runbooks.example.com/triage",
},
},
},
},
["edges"] = new[]
{
new Dictionary<string, object?>
{
["id"] = "trigger-1->action-1",
["source"] = "trigger-1",
["target"] = "action-1",
},
},
}),
Teams = new[]
{
new Zenduty.Inputs.WorkflowTeamArgs
{
TeamId = ops.Id,
ServiceIds = new[]
{
api.Id,
},
},
new Zenduty.Inputs.WorkflowTeamArgs
{
TeamId = platform.Id,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.zenduty.Workflow;
import com.pulumi.zenduty.WorkflowArgs;
import com.pulumi.zenduty.inputs.WorkflowTeamArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var noteOnCreate = new Workflow("noteOnCreate", WorkflowArgs.builder()
.name("Note on create")
.description("Adds a note to every new incident")
.isDraft(false)
.isEnabled(true)
.jsonSchema(serializeJson(
jsonObject(
jsonProperty("nodes", jsonArray(
jsonObject(
jsonProperty("id", "trigger-1"),
jsonProperty("type", "trigger"),
jsonProperty("data", jsonObject(
jsonProperty("name", "Incident Created"),
jsonProperty("action_name", "incident_create"),
jsonProperty("group", "Incident")
))
),
jsonObject(
jsonProperty("id", "action-1"),
jsonProperty("type", "action"),
jsonProperty("data", jsonObject(
jsonProperty("name", "Add Note"),
jsonProperty("action_name", "add_note"),
jsonProperty("group", "Incident"),
jsonProperty("input", jsonObject(
jsonProperty("note", "Triage checklist: https://runbooks.example.com/triage")
))
))
)
)),
jsonProperty("edges", jsonArray(jsonObject(
jsonProperty("id", "trigger-1->action-1"),
jsonProperty("source", "trigger-1"),
jsonProperty("target", "action-1")
)))
)))
.teams(
WorkflowTeamArgs.builder()
.teamId(ops.id())
.serviceIds(api.id())
.build(),
WorkflowTeamArgs.builder()
.teamId(platform.id())
.build())
.build());
}
}
resources:
noteOnCreate:
type: zenduty:Workflow
name: note_on_create
properties:
name: Note on create
description: Adds a note to every new incident
isDraft: false
isEnabled: true
jsonSchema:
fn::toJSON:
nodes:
- id: trigger-1
type: trigger
data:
name: Incident Created
action_name: incident_create
group: Incident
- id: action-1
type: action
data:
name: Add Note
action_name: add_note
group: Incident
input:
note: 'Triage checklist: https://runbooks.example.com/triage'
edges:
- id: trigger-1->action-1
source: trigger-1
target: action-1
teams:
- teamId: ${ops.id}
serviceIds:
- ${api.id}
- teamId: ${platform.id}
Example coming soon!
Create Workflow Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Workflow(name: string, args: WorkflowArgs, opts?: CustomResourceOptions);@overload
def Workflow(resource_name: str,
args: WorkflowArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Workflow(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
json_schema: Optional[str] = None,
is_draft: Optional[bool] = None,
is_enabled: Optional[bool] = None,
name: Optional[str] = None,
teams: Optional[Sequence[WorkflowTeamArgs]] = None,
workflow_id: Optional[str] = None)func NewWorkflow(ctx *Context, name string, args WorkflowArgs, opts ...ResourceOption) (*Workflow, error)public Workflow(string name, WorkflowArgs args, CustomResourceOptions? opts = null)
public Workflow(String name, WorkflowArgs args)
public Workflow(String name, WorkflowArgs args, CustomResourceOptions options)
type: zenduty:Workflow
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "zenduty_workflow" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args WorkflowArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args WorkflowArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args WorkflowArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args WorkflowArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args WorkflowArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var workflowResource = new Zenduty.Workflow("workflowResource", new()
{
Description = "string",
JsonSchema = "string",
IsDraft = false,
IsEnabled = false,
Name = "string",
Teams = new[]
{
new Zenduty.Inputs.WorkflowTeamArgs
{
TeamId = "string",
ServiceIds = new[]
{
"string",
},
},
},
WorkflowId = "string",
});
example, err := zenduty.NewWorkflow(ctx, "workflowResource", &zenduty.WorkflowArgs{
Description: pulumi.String("string"),
JsonSchema: pulumi.String("string"),
IsDraft: pulumi.Bool(false),
IsEnabled: pulumi.Bool(false),
Name: pulumi.String("string"),
Teams: zenduty.WorkflowTeamArray{
&zenduty.WorkflowTeamArgs{
TeamId: pulumi.String("string"),
ServiceIds: pulumi.StringArray{
pulumi.String("string"),
},
},
},
WorkflowId: pulumi.String("string"),
})
resource "zenduty_workflow" "workflowResource" {
lifecycle {
create_before_destroy = true
}
description = "string"
json_schema = "string"
is_draft = false
is_enabled = false
name = "string"
teams {
team_id = "string"
service_ids = ["string"]
}
workflow_id = "string"
}
var workflowResource = new Workflow("workflowResource", WorkflowArgs.builder()
.description("string")
.jsonSchema("string")
.isDraft(false)
.isEnabled(false)
.name("string")
.teams(WorkflowTeamArgs.builder()
.teamId("string")
.serviceIds("string")
.build())
.workflowId("string")
.build());
workflow_resource = zenduty.Workflow("workflowResource",
description="string",
json_schema="string",
is_draft=False,
is_enabled=False,
name="string",
teams=[{
"team_id": "string",
"service_ids": ["string"],
}],
workflow_id="string")
const workflowResource = new zenduty.Workflow("workflowResource", {
description: "string",
jsonSchema: "string",
isDraft: false,
isEnabled: false,
name: "string",
teams: [{
teamId: "string",
serviceIds: ["string"],
}],
workflowId: "string",
});
type: zenduty:Workflow
properties:
description: string
isDraft: false
isEnabled: false
jsonSchema: string
name: string
teams:
- serviceIds:
- string
teamId: string
workflowId: string
Workflow Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Workflow resource accepts the following input properties:
- Description string
- Description of the workflow.
- Json
Schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - Is
Draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - Is
Enabled bool - Whether the workflow runs. Defaults to
true. - Name string
- Name of the workflow.
- Teams
List<Workflow
Team> - Teams the workflow runs for; without a block it runs for no team.
- Workflow
Id string - The unique_id of the workflow.
- Description string
- Description of the workflow.
- Json
Schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - Is
Draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - Is
Enabled bool - Whether the workflow runs. Defaults to
true. - Name string
- Name of the workflow.
- Teams
[]Workflow
Team Args - Teams the workflow runs for; without a block it runs for no team.
- Workflow
Id string - The unique_id of the workflow.
- description string
- Description of the workflow.
- json_
schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - is_
draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is_
enabled bool - Whether the workflow runs. Defaults to
true. - name string
- Name of the workflow.
- teams list(object)
- Teams the workflow runs for; without a block it runs for no team.
- workflow_
id string - The unique_id of the workflow.
- description String
- Description of the workflow.
- json
Schema String - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - is
Draft Boolean - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is
Enabled Boolean - Whether the workflow runs. Defaults to
true. - name String
- Name of the workflow.
- teams
List<Workflow
Team> - Teams the workflow runs for; without a block it runs for no team.
- workflow
Id String - The unique_id of the workflow.
- description string
- Description of the workflow.
- json
Schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - is
Draft boolean - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is
Enabled boolean - Whether the workflow runs. Defaults to
true. - name string
- Name of the workflow.
- teams
Workflow
Team[] - Teams the workflow runs for; without a block it runs for no team.
- workflow
Id string - The unique_id of the workflow.
- description str
- Description of the workflow.
- json_
schema str - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - is_
draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is_
enabled bool - Whether the workflow runs. Defaults to
true. - name str
- Name of the workflow.
- teams
Sequence[Workflow
Team Args] - Teams the workflow runs for; without a block it runs for no team.
- workflow_
id str - The unique_id of the workflow.
- description String
- Description of the workflow.
- json
Schema String - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - is
Draft Boolean - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is
Enabled Boolean - Whether the workflow runs. Defaults to
true. - name String
- Name of the workflow.
- teams List<Property Map>
- Teams the workflow runs for; without a block it runs for no team.
- workflow
Id String - The unique_id of the workflow.
Outputs
All input properties are implicitly available as output properties. Additionally, the Workflow resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Workflow Resource
Get an existing Workflow resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: WorkflowState, opts?: CustomResourceOptions): Workflow@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
is_draft: Optional[bool] = None,
is_enabled: Optional[bool] = None,
json_schema: Optional[str] = None,
name: Optional[str] = None,
teams: Optional[Sequence[WorkflowTeamArgs]] = None,
workflow_id: Optional[str] = None) -> Workflowfunc GetWorkflow(ctx *Context, name string, id IDInput, state *WorkflowState, opts ...ResourceOption) (*Workflow, error)public static Workflow Get(string name, Input<string> id, WorkflowState? state, CustomResourceOptions? opts = null)public static Workflow get(String name, Output<String> id, WorkflowState state, CustomResourceOptions options)resources: _: type: zenduty:Workflow get: id: ${id}import {
to = zenduty_workflow.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Description string
- Description of the workflow.
- Is
Draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - Is
Enabled bool - Whether the workflow runs. Defaults to
true. - Json
Schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - Name string
- Name of the workflow.
- Teams
List<Workflow
Team> - Teams the workflow runs for; without a block it runs for no team.
- Workflow
Id string - The unique_id of the workflow.
- Description string
- Description of the workflow.
- Is
Draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - Is
Enabled bool - Whether the workflow runs. Defaults to
true. - Json
Schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - Name string
- Name of the workflow.
- Teams
[]Workflow
Team Args - Teams the workflow runs for; without a block it runs for no team.
- Workflow
Id string - The unique_id of the workflow.
- description string
- Description of the workflow.
- is_
draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is_
enabled bool - Whether the workflow runs. Defaults to
true. - json_
schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - name string
- Name of the workflow.
- teams list(object)
- Teams the workflow runs for; without a block it runs for no team.
- workflow_
id string - The unique_id of the workflow.
- description String
- Description of the workflow.
- is
Draft Boolean - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is
Enabled Boolean - Whether the workflow runs. Defaults to
true. - json
Schema String - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - name String
- Name of the workflow.
- teams
List<Workflow
Team> - Teams the workflow runs for; without a block it runs for no team.
- workflow
Id String - The unique_id of the workflow.
- description string
- Description of the workflow.
- is
Draft boolean - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is
Enabled boolean - Whether the workflow runs. Defaults to
true. - json
Schema string - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - name string
- Name of the workflow.
- teams
Workflow
Team[] - Teams the workflow runs for; without a block it runs for no team.
- workflow
Id string - The unique_id of the workflow.
- description str
- Description of the workflow.
- is_
draft bool - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is_
enabled bool - Whether the workflow runs. Defaults to
true. - json_
schema str - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - name str
- Name of the workflow.
- teams
Sequence[Workflow
Team Args] - Teams the workflow runs for; without a block it runs for no team.
- workflow_
id str - The unique_id of the workflow.
- description String
- Description of the workflow.
- is
Draft Boolean - Whether the workflow is a draft. Defaults to
true, like the API; setfalseto publish it. - is
Enabled Boolean - Whether the workflow runs. Defaults to
true. - json
Schema String - The workflow graph as JSON with
nodesandedges, in the format the web console's workflow editor produces. The graph must start with exactly onetriggernode, have no cycles and no node with several successors other than condition nodes. The trigger count is checked at plan time, the rest by the API. - name String
- Name of the workflow.
- teams List<Property Map>
- Teams the workflow runs for; without a block it runs for no team.
- workflow
Id String - The unique_id of the workflow.
Supporting Types
WorkflowTeam, WorkflowTeamArgs
- Team
Id string - The unique_id of the team.
- Service
Ids List<string> - Restrict the workflow to these services of the team. Empty means every service.
- Team
Id string - The unique_id of the team.
- Service
Ids []string - Restrict the workflow to these services of the team. Empty means every service.
- team_
id string - The unique_id of the team.
- service_
ids list(string) - Restrict the workflow to these services of the team. Empty means every service.
- team
Id String - The unique_id of the team.
- service
Ids List<String> - Restrict the workflow to these services of the team. Empty means every service.
- team
Id string - The unique_id of the team.
- service
Ids string[] - Restrict the workflow to these services of the team. Empty means every service.
- team_
id str - The unique_id of the team.
- service_
ids Sequence[str] - Restrict the workflow to these services of the team. Empty means every service.
- team
Id String - The unique_id of the team.
- service
Ids List<String> - Restrict the workflow to these services of the team. Empty means every service.
Import
hcl
resource “zenduty_workflow” “note_on_create” {
}
$ pulumi import zenduty:index/workflow:Workflow note_on_create workflow_id`
$ terraform state show zenduty_workflow.note_on_create
* copy the output data and paste inside zenduty_workflow.note_on_create resource block and remove the id attribute
$ pulumi preview to verify the import
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- zenduty zenduty/terraform-provider-zenduty
- License
- Notes
- This Pulumi package is based on the
zendutyTerraform Provider.
published on Friday, Oct 30, 2026 by zenduty