published on Saturday, Oct 17, 2026 by incident-io
published on Saturday, Oct 17, 2026 by incident-io
View incident types.
With incident types enabled, you can tailor your process to the situation you’re responding to with different custom fields and roles for each incident type.
Use this data source to look up an existing incident type, either by id or by name.
Incident types can’t be created from Terraform - they’re configured in your settings - so this is how you get hold of one’s ID, such as for an alert route or a workflow that only applies to incidents of one type.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as incident from "@incident-io/pulumi";
// Look up an incident type by name. Incident types are configured in your
// settings rather than created from Terraform, so this is how you get hold of
// one's ID.
const productionOutage = incident.getIncidentType({
name: "Production Outage",
});
// Or by ID, if you already have one.
const byId = incident.getIncidentType({
id: "01FCNDV6P870EA6S7TK1DSYDG0",
});
export const productionOutageId = productionOutage.then(productionOutage => productionOutage.id);
import pulumi
import pulumi_incident as incident
# Look up an incident type by name. Incident types are configured in your
# settings rather than created from Terraform, so this is how you get hold of
# one's ID.
production_outage = incident.get_incident_type(name="Production Outage")
# Or by ID, if you already have one.
by_id = incident.get_incident_type(id="01FCNDV6P870EA6S7TK1DSYDG0")
pulumi.export("productionOutageId", production_outage.id)
package main
import (
"github.com/incident-io/pulumi-incident/sdk/go/incident"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Look up an incident type by name. Incident types are configured in your
// settings rather than created from Terraform, so this is how you get hold of
// one's ID.
productionOutage, err := incident.GetIncidentType(ctx, &incident.GetIncidentTypeArgs{
Name: pulumi.StringRef("Production Outage"),
}, nil)
if err != nil {
return err
}
// Or by ID, if you already have one.
_, err = incident.GetIncidentType(ctx, &incident.GetIncidentTypeArgs{
Id: pulumi.StringRef("01FCNDV6P870EA6S7TK1DSYDG0"),
}, nil)
if err != nil {
return err
}
ctx.Export("productionOutageId", productionOutage.Id)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Incident = Pulumi.Incident;
return await Deployment.RunAsync(() =>
{
// Look up an incident type by name. Incident types are configured in your
// settings rather than created from Terraform, so this is how you get hold of
// one's ID.
var productionOutage = Incident.GetIncidentType.Invoke(new()
{
Name = "Production Outage",
});
// Or by ID, if you already have one.
var byId = Incident.GetIncidentType.Invoke(new()
{
Id = "01FCNDV6P870EA6S7TK1DSYDG0",
});
return new Dictionary<string, object?>
{
["productionOutageId"] = productionOutage.Apply(getIncidentTypeResult => getIncidentTypeResult.Id),
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.incident.IncidentFunctions;
import com.pulumi.incident.inputs.GetIncidentTypeArgs;
import java.util.ArrayList;
import java.util.Arrays;
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) {
// Look up an incident type by name. Incident types are configured in your
// settings rather than created from Terraform, so this is how you get hold of
// one's ID.
final var productionOutage = IncidentFunctions.getIncidentType(GetIncidentTypeArgs.builder()
.name("Production Outage")
.build());
// Or by ID, if you already have one.
final var byId = IncidentFunctions.getIncidentType(GetIncidentTypeArgs.builder()
.id("01FCNDV6P870EA6S7TK1DSYDG0")
.build());
ctx.export("productionOutageId", productionOutage.id());
}
}
variables:
# Look up an incident type by name. Incident types are configured in your
# settings rather than created from Terraform, so this is how you get hold of
# one's ID.
productionOutage:
fn::invoke:
function: incident:getIncidentType
arguments:
name: Production Outage
# Or by ID, if you already have one.
byId:
fn::invoke:
function: incident:getIncidentType
arguments:
id: 01FCNDV6P870EA6S7TK1DSYDG0
outputs:
productionOutageId: ${productionOutage.id}
pulumi {
required_providers {
incident = {
source = "pulumi/incident"
}
}
}
data "incident_getincidenttype" "productionOutage" {
name = "Production Outage"
}
data "incident_getincidenttype" "byId" {
id = "01FCNDV6P870EA6S7TK1DSYDG0"
}
# Look up an incident type by name. Incident types are configured in your
# settings rather than created from Terraform, so this is how you get hold of
# one's ID.
# Or by ID, if you already have one.
output "productionOutageId" {
value = data.incident_getincidenttype.productionOutage.id
}
Using getIncidentType
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getIncidentType(args: GetIncidentTypeArgs, opts?: InvokeOptions): Promise<GetIncidentTypeResult>
function getIncidentTypeOutput(args: GetIncidentTypeOutputArgs, opts?: InvokeOutputOptions): Output<GetIncidentTypeResult>def get_incident_type(id: Optional[str] = None,
name: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetIncidentTypeResult
def get_incident_type_output(id: pulumi.Input[Optional[str]] = None,
name: pulumi.Input[Optional[str]] = None,
opts: Optional[InvokeOutputOptions] = None) -> Output[GetIncidentTypeResult]func GetIncidentType(ctx *Context, args *GetIncidentTypeArgs, opts ...InvokeOption) (*GetIncidentTypeResult, error)
func GetIncidentTypeOutput(ctx *Context, args *GetIncidentTypeOutputArgs, opts ...InvokeOption) GetIncidentTypeResultOutput> Note: This function is named GetIncidentType in the Go SDK.
public static class GetIncidentType
{
public static Task<GetIncidentTypeResult> InvokeAsync(GetIncidentTypeArgs args, InvokeOptions? opts = null)
public static Output<GetIncidentTypeResult> Invoke(GetIncidentTypeInvokeArgs args, InvokeOptions? opts = null)
public static Output<GetIncidentTypeResult> Invoke(GetIncidentTypeInvokeArgs args, InvokeOutputOptions opts)
}public static CompletableFuture<GetIncidentTypeResult> getIncidentType(GetIncidentTypeArgs args, InvokeOptions options)
public static Output<GetIncidentTypeResult> getIncidentType(GetIncidentTypeArgs args, InvokeOptions options)
public static Output<GetIncidentTypeResult> getIncidentType(GetIncidentTypeArgs args, InvokeOutputOptions options)
fn::invoke:
function: incident:index/getIncidentType:getIncidentType
arguments:
# arguments dictionarydata "incident_get_incident_type" "name" {
# arguments
}The following arguments are supported:
getIncidentType Result
The following output properties are available:
- Create
In stringTriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - Description string
- What is this incident type for?
- Id string
- Unique identifier for this Incident Type
- Is
Default bool - The default Incident Type is used when no other type is explicitly specified
- Name string
- The name of this Incident Type
- Owning
Team List<string>Ids - IDs of the teams that own this incident type
- Private
Incidents boolOnly - Should all incidents created with this Incident Type be private?
- Create
In stringTriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - Description string
- What is this incident type for?
- Id string
- Unique identifier for this Incident Type
- Is
Default bool - The default Incident Type is used when no other type is explicitly specified
- Name string
- The name of this Incident Type
- Owning
Team []stringIds - IDs of the teams that own this incident type
- Private
Incidents boolOnly - Should all incidents created with this Incident Type be private?
- create_
in_ stringtriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - description string
- What is this incident type for?
- id string
- Unique identifier for this Incident Type
- is_
default bool - The default Incident Type is used when no other type is explicitly specified
- name string
- The name of this Incident Type
- owning_
team_ list(string)ids - IDs of the teams that own this incident type
- private_
incidents_ boolonly - Should all incidents created with this Incident Type be private?
- create
In StringTriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - description String
- What is this incident type for?
- id String
- Unique identifier for this Incident Type
- is
Default Boolean - The default Incident Type is used when no other type is explicitly specified
- name String
- The name of this Incident Type
- owning
Team List<String>Ids - IDs of the teams that own this incident type
- private
Incidents BooleanOnly - Should all incidents created with this Incident Type be private?
- create
In stringTriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - description string
- What is this incident type for?
- id string
- Unique identifier for this Incident Type
- is
Default boolean - The default Incident Type is used when no other type is explicitly specified
- name string
- The name of this Incident Type
- owning
Team string[]Ids - IDs of the teams that own this incident type
- private
Incidents booleanOnly - Should all incidents created with this Incident Type be private?
- create_
in_ strtriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - description str
- What is this incident type for?
- id str
- Unique identifier for this Incident Type
- is_
default bool - The default Incident Type is used when no other type is explicitly specified
- name str
- The name of this Incident Type
- owning_
team_ Sequence[str]ids - IDs of the teams that own this incident type
- private_
incidents_ boolonly - Should all incidents created with this Incident Type be private?
- create
In StringTriage - Whether incidents of this must always, or can optionally, be created in triage. Possible values are:
always,optional. - description String
- What is this incident type for?
- id String
- Unique identifier for this Incident Type
- is
Default Boolean - The default Incident Type is used when no other type is explicitly specified
- name String
- The name of this Incident Type
- owning
Team List<String>Ids - IDs of the teams that own this incident type
- private
Incidents BooleanOnly - Should all incidents created with this Incident Type be private?
Package Details
- Repository
- incident incident-io/pulumi-incident
- License
- MIT
- Notes
- This Pulumi package is based on the
incidentTerraform Provider.
published on Saturday, Oct 17, 2026 by incident-io