1. Registry
  2. Packages
  3. Incident Provider
  4. API Docs
  5. getStatus
Viewing docs for incident 7.0.0
published on Friday, Sep 11, 2026 by incident-io
Viewing docs for incident 7.0.0
published on Friday, Sep 11, 2026 by incident-io

    Manage incident statuses.

    Each incident has a status, picked from one of the statuses configured in your organisations settings.

    Statuses help communicate where an incident is in its lifecycle. You can use statuses when filtering incidents in the dashboard, and in workflows and announcement rules.

    Use this data source to look up an existing incident status, either by id or by name. This is useful for referencing statuses that incident.io manages for you, such as Triage or Closed, which can’t be created as an incident.Status resource.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as incident from "@pulumi/incident";
    
    // Look up a status that incident.io manages for you, by name.
    const triage = incident.getStatus({
        name: "Triage",
    });
    // Create an additional status called "Clean-up". Only the live and learning categories
    // can be added to: incident.io manages the rest, so they can't be customised.
    const cleanUpStatus = new incident.Status("clean_up", {
        name: "Clean-up",
        description: "Not yet fully finished, but isn't a live incident anymore.",
        category: "live",
    });
    // Reference the status by its ID.
    const cleanUp = incident.getStatusOutput({
        id: cleanUpStatus.id,
    });
    
    import pulumi
    import pulumi_incident as incident
    
    # Look up a status that incident.io manages for you, by name.
    triage = incident.get_status(name="Triage")
    # Create an additional status called "Clean-up". Only the live and learning categories
    # can be added to: incident.io manages the rest, so they can't be customised.
    clean_up_status = incident.Status("clean_up",
        name="Clean-up",
        description="Not yet fully finished, but isn't a live incident anymore.",
        category="live")
    # Reference the status by its ID.
    clean_up = incident.get_status_output(id=clean_up_status.id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/incident/v7/incident"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Look up a status that incident.io manages for you, by name.
    		_, err := incident.LookupStatus(ctx, &incident.LookupStatusArgs{
    			Name: pulumi.StringRef("Triage"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		// Create an additional status called "Clean-up". Only the live and learning categories
    		// can be added to: incident.io manages the rest, so they can't be customised.
    		cleanUpStatus, err := incident.NewStatus(ctx, "clean_up", &incident.StatusArgs{
    			Name:        pulumi.String("Clean-up"),
    			Description: pulumi.String("Not yet fully finished, but isn't a live incident anymore."),
    			Category:    pulumi.String("live"),
    		})
    		if err != nil {
    			return err
    		}
    		// Reference the status by its ID.
    		_ = incident.LookupStatusOutput(ctx, incident.GetStatusOutputArgs{
    			Id: cleanUpStatus.ID(),
    		}, nil)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Incident = Pulumi.Incident;
    
    return await Deployment.RunAsync(() => 
    {
        // Look up a status that incident.io manages for you, by name.
        var triage = Incident.GetStatus.Invoke(new()
        {
            Name = "Triage",
        });
    
        // Create an additional status called "Clean-up". Only the live and learning categories
        // can be added to: incident.io manages the rest, so they can't be customised.
        var cleanUpStatus = new Incident.Status("clean_up", new()
        {
            Name = "Clean-up",
            Description = "Not yet fully finished, but isn't a live incident anymore.",
            Category = "live",
        });
    
        // Reference the status by its ID.
        var cleanUp = Incident.GetStatus.Invoke(new()
        {
            Id = cleanUpStatus.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.GetStatusArgs;
    import com.pulumi.incident.Status;
    import com.pulumi.incident.StatusArgs;
    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) {
            // Look up a status that incident.io manages for you, by name.
            final var triage = IncidentFunctions.getStatus(GetStatusArgs.builder()
                .name("Triage")
                .build());
    
            // Create an additional status called "Clean-up". Only the live and learning categories
            // can be added to: incident.io manages the rest, so they can't be customised.
            var cleanUpStatus = new Status("cleanUpStatus", StatusArgs.builder()
                .name("Clean-up")
                .description("Not yet fully finished, but isn't a live incident anymore.")
                .category("live")
                .build());
    
            // Reference the status by its ID.
            final var cleanUp = IncidentFunctions.getStatus(GetStatusArgs.builder()
                .id(cleanUpStatus.id())
                .build());
    
        }
    }
    
    resources:
      # Create an additional status called "Clean-up". Only the live and learning categories
      # can be added to: incident.io manages the rest, so they can't be customised.
      cleanUpStatus:
        type: incident:Status
        name: clean_up
        properties:
          name: Clean-up
          description: Not yet fully finished, but isn't a live incident anymore.
          category: live
    variables:
      # Look up a status that incident.io manages for you, by name.
      triage:
        fn::invoke:
          function: incident:getStatus
          arguments:
            name: Triage
      # Reference the status by its ID.
      cleanUp:
        fn::invoke:
          function: incident:getStatus
          arguments:
            id: ${cleanUpStatus.id}
    
    Example coming soon!
    

    Using getStatus

    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 getStatus(args: GetStatusArgs, opts?: InvokeOptions): Promise<GetStatusResult>
    function getStatusOutput(args: GetStatusOutputArgs, opts?: InvokeOutputOptions): Output<GetStatusResult>
    def get_status(id: Optional[str] = None,
                   name: Optional[str] = None,
                   opts: Optional[InvokeOptions] = None) -> GetStatusResult
    def get_status_output(id: pulumi.Input[Optional[str]] = None,
                   name: pulumi.Input[Optional[str]] = None,
                   opts: Optional[InvokeOutputOptions] = None) -> Output[GetStatusResult]
    func LookupStatus(ctx *Context, args *LookupStatusArgs, opts ...InvokeOption) (*LookupStatusResult, error)
    func LookupStatusOutput(ctx *Context, args *LookupStatusOutputArgs, opts ...InvokeOption) LookupStatusResultOutput

    > Note: This function is named LookupStatus in the Go SDK.

    public static class GetStatus 
    {
        public static Task<GetStatusResult> InvokeAsync(GetStatusArgs args, InvokeOptions? opts = null)
        public static Output<GetStatusResult> Invoke(GetStatusInvokeArgs args, InvokeOptions? opts = null)
        public static Output<GetStatusResult> Invoke(GetStatusInvokeArgs args, InvokeOutputOptions opts)
    }
    public static CompletableFuture<GetStatusResult> getStatus(GetStatusArgs args, InvokeOptions options)
    public static Output<GetStatusResult> getStatus(GetStatusArgs args, InvokeOptions options)
    public static Output<GetStatusResult> getStatus(GetStatusArgs args, InvokeOutputOptions options)
    
    fn::invoke:
      function: incident:index/getStatus:getStatus
      arguments:
        # arguments dictionary
    data "incident_get_status" "name" {
        # arguments
    }

    The following arguments are supported:

    Id string
    Unique ID of this incident status
    Name string
    Unique name of this status
    Id string
    Unique ID of this incident status
    Name string
    Unique name of this status
    id string
    Unique ID of this incident status
    name string
    Unique name of this status
    id String
    Unique ID of this incident status
    name String
    Unique name of this status
    id string
    Unique ID of this incident status
    name string
    Unique name of this status
    id str
    Unique ID of this incident status
    name str
    Unique name of this status
    id String
    Unique ID of this incident status
    name String
    Unique name of this status

    getStatus Result

    The following output properties are available:

    Category string
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    Description string
    Rich text description of the incident status
    Id string
    Unique ID of this incident status
    Name string
    Unique name of this status
    Rank double
    Order of this incident status
    Category string
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    Description string
    Rich text description of the incident status
    Id string
    Unique ID of this incident status
    Name string
    Unique name of this status
    Rank float64
    Order of this incident status
    category string
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    description string
    Rich text description of the incident status
    id string
    Unique ID of this incident status
    name string
    Unique name of this status
    rank number
    Order of this incident status
    category String
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    description String
    Rich text description of the incident status
    id String
    Unique ID of this incident status
    name String
    Unique name of this status
    rank Double
    Order of this incident status
    category string
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    description string
    Rich text description of the incident status
    id string
    Unique ID of this incident status
    name string
    Unique name of this status
    rank number
    Order of this incident status
    category str
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    description str
    Rich text description of the incident status
    id str
    Unique ID of this incident status
    name str
    Unique name of this status
    rank float
    Order of this incident status
    category String
    What category of status it is. All statuses apart from live (renamed in the app to Active) and learning (renamed in the app to Post-incident) are managed by incident.io and cannot be configured. Possible values are: triage, declined, merged, canceled, live, learning, closed, paused.
    description String
    Rich text description of the incident status
    id String
    Unique ID of this incident status
    name String
    Unique name of this status
    rank Number
    Order of this incident status

    Package Details

    Repository
    incident incident-io/terraform-provider-incident
    License
    Notes
    This Pulumi package is based on the incident Terraform Provider.
    Viewing docs for incident 7.0.0
    published on Friday, Sep 11, 2026 by incident-io

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial