opsgenie.IncidentTemplate
Explore with Pulumi AI
Manages an Incident Template within Opsgenie.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as opsgenie from "@pulumi/opsgenie";
const test = new opsgenie.Team("test", {
    name: "genietest-team",
    description: "This team deals with all the things",
});
const testService = new opsgenie.Service("test", {
    name: "genietest-service",
    teamId: test.id,
});
const testIncidentTemplate = new opsgenie.IncidentTemplate("test", {
    name: "genietest-incident-template",
    message: "Incident Message",
    priority: "P2",
    stakeholderProperties: [{
        enable: true,
        message: "Stakeholder Message",
        description: "Stakeholder Description",
    }],
    tags: [
        "tag1",
        "tag2",
    ],
    description: "Incident Description",
    details: {
        key1: "value1",
        key2: "value2",
    },
    impactedServices: [testService.id],
});
import pulumi
import pulumi_opsgenie as opsgenie
test = opsgenie.Team("test",
    name="genietest-team",
    description="This team deals with all the things")
test_service = opsgenie.Service("test",
    name="genietest-service",
    team_id=test.id)
test_incident_template = opsgenie.IncidentTemplate("test",
    name="genietest-incident-template",
    message="Incident Message",
    priority="P2",
    stakeholder_properties=[{
        "enable": True,
        "message": "Stakeholder Message",
        "description": "Stakeholder Description",
    }],
    tags=[
        "tag1",
        "tag2",
    ],
    description="Incident Description",
    details={
        "key1": "value1",
        "key2": "value2",
    },
    impacted_services=[test_service.id])
package main
import (
	"github.com/pulumi/pulumi-opsgenie/sdk/go/opsgenie"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := opsgenie.NewTeam(ctx, "test", &opsgenie.TeamArgs{
			Name:        pulumi.String("genietest-team"),
			Description: pulumi.String("This team deals with all the things"),
		})
		if err != nil {
			return err
		}
		testService, err := opsgenie.NewService(ctx, "test", &opsgenie.ServiceArgs{
			Name:   pulumi.String("genietest-service"),
			TeamId: test.ID(),
		})
		if err != nil {
			return err
		}
		_, err = opsgenie.NewIncidentTemplate(ctx, "test", &opsgenie.IncidentTemplateArgs{
			Name:     pulumi.String("genietest-incident-template"),
			Message:  pulumi.String("Incident Message"),
			Priority: pulumi.String("P2"),
			StakeholderProperties: opsgenie.IncidentTemplateStakeholderPropertyArray{
				&opsgenie.IncidentTemplateStakeholderPropertyArgs{
					Enable:      pulumi.Bool(true),
					Message:     pulumi.String("Stakeholder Message"),
					Description: pulumi.String("Stakeholder Description"),
				},
			},
			Tags: pulumi.StringArray{
				pulumi.String("tag1"),
				pulumi.String("tag2"),
			},
			Description: pulumi.String("Incident Description"),
			Details: pulumi.StringMap{
				"key1": pulumi.String("value1"),
				"key2": pulumi.String("value2"),
			},
			ImpactedServices: pulumi.StringArray{
				testService.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Opsgenie = Pulumi.Opsgenie;
return await Deployment.RunAsync(() => 
{
    var test = new Opsgenie.Team("test", new()
    {
        Name = "genietest-team",
        Description = "This team deals with all the things",
    });
    var testService = new Opsgenie.Service("test", new()
    {
        Name = "genietest-service",
        TeamId = test.Id,
    });
    var testIncidentTemplate = new Opsgenie.IncidentTemplate("test", new()
    {
        Name = "genietest-incident-template",
        Message = "Incident Message",
        Priority = "P2",
        StakeholderProperties = new[]
        {
            new Opsgenie.Inputs.IncidentTemplateStakeholderPropertyArgs
            {
                Enable = true,
                Message = "Stakeholder Message",
                Description = "Stakeholder Description",
            },
        },
        Tags = new[]
        {
            "tag1",
            "tag2",
        },
        Description = "Incident Description",
        Details = 
        {
            { "key1", "value1" },
            { "key2", "value2" },
        },
        ImpactedServices = new[]
        {
            testService.Id,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.opsgenie.Team;
import com.pulumi.opsgenie.TeamArgs;
import com.pulumi.opsgenie.Service;
import com.pulumi.opsgenie.ServiceArgs;
import com.pulumi.opsgenie.IncidentTemplate;
import com.pulumi.opsgenie.IncidentTemplateArgs;
import com.pulumi.opsgenie.inputs.IncidentTemplateStakeholderPropertyArgs;
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 test = new Team("test", TeamArgs.builder()
            .name("genietest-team")
            .description("This team deals with all the things")
            .build());
        var testService = new Service("testService", ServiceArgs.builder()
            .name("genietest-service")
            .teamId(test.id())
            .build());
        var testIncidentTemplate = new IncidentTemplate("testIncidentTemplate", IncidentTemplateArgs.builder()
            .name("genietest-incident-template")
            .message("Incident Message")
            .priority("P2")
            .stakeholderProperties(IncidentTemplateStakeholderPropertyArgs.builder()
                .enable(true)
                .message("Stakeholder Message")
                .description("Stakeholder Description")
                .build())
            .tags(            
                "tag1",
                "tag2")
            .description("Incident Description")
            .details(Map.ofEntries(
                Map.entry("key1", "value1"),
                Map.entry("key2", "value2")
            ))
            .impactedServices(testService.id())
            .build());
    }
}
resources:
  test:
    type: opsgenie:Team
    properties:
      name: genietest-team
      description: This team deals with all the things
  testService:
    type: opsgenie:Service
    name: test
    properties:
      name: genietest-service
      teamId: ${test.id}
  testIncidentTemplate:
    type: opsgenie:IncidentTemplate
    name: test
    properties:
      name: genietest-incident-template
      message: Incident Message
      priority: P2
      stakeholderProperties:
        - enable: true
          message: Stakeholder Message
          description: Stakeholder Description
      tags:
        - tag1
        - tag2
      description: Incident Description
      details:
        key1: value1
        key2: value2
      impactedServices:
        - ${testService.id}
Create IncidentTemplate Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new IncidentTemplate(name: string, args: IncidentTemplateArgs, opts?: CustomResourceOptions);@overload
def IncidentTemplate(resource_name: str,
                     args: IncidentTemplateArgs,
                     opts: Optional[ResourceOptions] = None)
@overload
def IncidentTemplate(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     message: Optional[str] = None,
                     priority: Optional[str] = None,
                     stakeholder_properties: Optional[Sequence[IncidentTemplateStakeholderPropertyArgs]] = None,
                     description: Optional[str] = None,
                     details: Optional[Mapping[str, str]] = None,
                     impacted_services: Optional[Sequence[str]] = None,
                     name: Optional[str] = None,
                     tags: Optional[Sequence[str]] = None)func NewIncidentTemplate(ctx *Context, name string, args IncidentTemplateArgs, opts ...ResourceOption) (*IncidentTemplate, error)public IncidentTemplate(string name, IncidentTemplateArgs args, CustomResourceOptions? opts = null)
public IncidentTemplate(String name, IncidentTemplateArgs args)
public IncidentTemplate(String name, IncidentTemplateArgs args, CustomResourceOptions options)
type: opsgenie:IncidentTemplate
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
 - The unique name of the resource.
 - args IncidentTemplateArgs
 - 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 IncidentTemplateArgs
 - 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 IncidentTemplateArgs
 - The arguments to resource properties.
 - opts ResourceOption
 - Bag of options to control resource's behavior.
 
- name string
 - The unique name of the resource.
 - args IncidentTemplateArgs
 - The arguments to resource properties.
 - opts CustomResourceOptions
 - Bag of options to control resource's behavior.
 
- name String
 - The unique name of the resource.
 - args IncidentTemplateArgs
 - 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 incidentTemplateResource = new Opsgenie.IncidentTemplate("incidentTemplateResource", new()
{
    Message = "string",
    Priority = "string",
    StakeholderProperties = new[]
    {
        new Opsgenie.Inputs.IncidentTemplateStakeholderPropertyArgs
        {
            Message = "string",
            Description = "string",
            Enable = false,
        },
    },
    Description = "string",
    Details = 
    {
        { "string", "string" },
    },
    ImpactedServices = new[]
    {
        "string",
    },
    Name = "string",
    Tags = new[]
    {
        "string",
    },
});
example, err := opsgenie.NewIncidentTemplate(ctx, "incidentTemplateResource", &opsgenie.IncidentTemplateArgs{
	Message:  pulumi.String("string"),
	Priority: pulumi.String("string"),
	StakeholderProperties: opsgenie.IncidentTemplateStakeholderPropertyArray{
		&opsgenie.IncidentTemplateStakeholderPropertyArgs{
			Message:     pulumi.String("string"),
			Description: pulumi.String("string"),
			Enable:      pulumi.Bool(false),
		},
	},
	Description: pulumi.String("string"),
	Details: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	ImpactedServices: pulumi.StringArray{
		pulumi.String("string"),
	},
	Name: pulumi.String("string"),
	Tags: pulumi.StringArray{
		pulumi.String("string"),
	},
})
var incidentTemplateResource = new IncidentTemplate("incidentTemplateResource", IncidentTemplateArgs.builder()
    .message("string")
    .priority("string")
    .stakeholderProperties(IncidentTemplateStakeholderPropertyArgs.builder()
        .message("string")
        .description("string")
        .enable(false)
        .build())
    .description("string")
    .details(Map.of("string", "string"))
    .impactedServices("string")
    .name("string")
    .tags("string")
    .build());
incident_template_resource = opsgenie.IncidentTemplate("incidentTemplateResource",
    message="string",
    priority="string",
    stakeholder_properties=[{
        "message": "string",
        "description": "string",
        "enable": False,
    }],
    description="string",
    details={
        "string": "string",
    },
    impacted_services=["string"],
    name="string",
    tags=["string"])
const incidentTemplateResource = new opsgenie.IncidentTemplate("incidentTemplateResource", {
    message: "string",
    priority: "string",
    stakeholderProperties: [{
        message: "string",
        description: "string",
        enable: false,
    }],
    description: "string",
    details: {
        string: "string",
    },
    impactedServices: ["string"],
    name: "string",
    tags: ["string"],
});
type: opsgenie:IncidentTemplate
properties:
    description: string
    details:
        string: string
    impactedServices:
        - string
    message: string
    name: string
    priority: string
    stakeholderProperties:
        - description: string
          enable: false
          message: string
    tags:
        - string
IncidentTemplate 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 IncidentTemplate resource accepts the following input properties:
- Message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - Priority string
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- Stakeholder
Properties List<IncidentTemplate Stakeholder Property>  - Description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - Details Dictionary<string, string>
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - Impacted
Services List<string> - Name string
 - Name of the incident template.
 - List<string>
 - Tags of the incident template.
 
- Message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - Priority string
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- Stakeholder
Properties []IncidentTemplate Stakeholder Property Args  - Description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - Details map[string]string
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - Impacted
Services []string - Name string
 - Name of the incident template.
 - []string
 - Tags of the incident template.
 
- message String
 - Message of the related incident template. This field must not be longer than 130 characters.
 - priority String
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder
Properties List<IncidentTemplate Stakeholder Property>  - description String
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details Map<String,String>
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted
Services List<String> - name String
 - Name of the incident template.
 - List<String>
 - Tags of the incident template.
 
- message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - priority string
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder
Properties IncidentTemplate Stakeholder Property[]  - description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details {[key: string]: string}
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted
Services string[] - name string
 - Name of the incident template.
 - string[]
 - Tags of the incident template.
 
- message str
 - Message of the related incident template. This field must not be longer than 130 characters.
 - priority str
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder_
properties Sequence[IncidentTemplate Stakeholder Property Args]  - description str
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details Mapping[str, str]
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted_
services Sequence[str] - name str
 - Name of the incident template.
 - Sequence[str]
 - Tags of the incident template.
 
- message String
 - Message of the related incident template. This field must not be longer than 130 characters.
 - priority String
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder
Properties List<Property Map> - description String
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details Map<String>
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted
Services List<String> - name String
 - Name of the incident template.
 - List<String>
 - Tags of the incident template.
 
Outputs
All input properties are implicitly available as output properties. Additionally, the IncidentTemplate 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 str
 - The provider-assigned unique ID for this managed resource.
 
- id String
 - The provider-assigned unique ID for this managed resource.
 
Look up Existing IncidentTemplate Resource
Get an existing IncidentTemplate 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?: IncidentTemplateState, opts?: CustomResourceOptions): IncidentTemplate@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        description: Optional[str] = None,
        details: Optional[Mapping[str, str]] = None,
        impacted_services: Optional[Sequence[str]] = None,
        message: Optional[str] = None,
        name: Optional[str] = None,
        priority: Optional[str] = None,
        stakeholder_properties: Optional[Sequence[IncidentTemplateStakeholderPropertyArgs]] = None,
        tags: Optional[Sequence[str]] = None) -> IncidentTemplatefunc GetIncidentTemplate(ctx *Context, name string, id IDInput, state *IncidentTemplateState, opts ...ResourceOption) (*IncidentTemplate, error)public static IncidentTemplate Get(string name, Input<string> id, IncidentTemplateState? state, CustomResourceOptions? opts = null)public static IncidentTemplate get(String name, Output<String> id, IncidentTemplateState state, CustomResourceOptions options)resources:  _:    type: opsgenie:IncidentTemplate    get:      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 field of the incident template. This field must not be longer than 10000 characters.
 - Details Dictionary<string, string>
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - Impacted
Services List<string> - Message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - Name string
 - Name of the incident template.
 - Priority string
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- Stakeholder
Properties List<IncidentTemplate Stakeholder Property>  - List<string>
 - Tags of the incident template.
 
- Description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - Details map[string]string
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - Impacted
Services []string - Message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - Name string
 - Name of the incident template.
 - Priority string
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- Stakeholder
Properties []IncidentTemplate Stakeholder Property Args  - []string
 - Tags of the incident template.
 
- description String
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details Map<String,String>
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted
Services List<String> - message String
 - Message of the related incident template. This field must not be longer than 130 characters.
 - name String
 - Name of the incident template.
 - priority String
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder
Properties List<IncidentTemplate Stakeholder Property>  - List<String>
 - Tags of the incident template.
 
- description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details {[key: string]: string}
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted
Services string[] - message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - name string
 - Name of the incident template.
 - priority string
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder
Properties IncidentTemplate Stakeholder Property[]  - string[]
 - Tags of the incident template.
 
- description str
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details Mapping[str, str]
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted_
services Sequence[str] - message str
 - Message of the related incident template. This field must not be longer than 130 characters.
 - name str
 - Name of the incident template.
 - priority str
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder_
properties Sequence[IncidentTemplate Stakeholder Property Args]  - Sequence[str]
 - Tags of the incident template.
 
- description String
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - details Map<String>
 - Map of key-value pairs to use as custom properties of the incident template. This field must not be longer than 8000 characters.
 - impacted
Services List<String> - message String
 - Message of the related incident template. This field must not be longer than 130 characters.
 - name String
 - Name of the incident template.
 - priority String
 Priority level of the incident. Possible values are
P1,P2,P3,P4andP5.impactedServices(Optional) Impacted services of incident template. Maximum 20 services.stakeholderProperties(Required)
- stakeholder
Properties List<Property Map> - List<String>
 - Tags of the incident template.
 
Supporting Types
IncidentTemplateStakeholderProperty, IncidentTemplateStakeholderPropertyArgs        
- Message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - Description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - Enable bool
 - Option to enable stakeholder notifications.Default value is true.
 
- Message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - Description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - Enable bool
 - Option to enable stakeholder notifications.Default value is true.
 
- message String
 - Message of the related incident template. This field must not be longer than 130 characters.
 - description String
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - enable Boolean
 - Option to enable stakeholder notifications.Default value is true.
 
- message string
 - Message of the related incident template. This field must not be longer than 130 characters.
 - description string
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - enable boolean
 - Option to enable stakeholder notifications.Default value is true.
 
- message str
 - Message of the related incident template. This field must not be longer than 130 characters.
 - description str
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - enable bool
 - Option to enable stakeholder notifications.Default value is true.
 
- message String
 - Message of the related incident template. This field must not be longer than 130 characters.
 - description String
 - Description field of the incident template. This field must not be longer than 10000 characters.
 - enable Boolean
 - Option to enable stakeholder notifications.Default value is true.
 
Import
Service can be imported using the template_id, e.g.
$ pulumi import opsgenie:index/incidentTemplate:IncidentTemplate test template_id`
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
 - Opsgenie pulumi/pulumi-opsgenie
 - License
 - Apache-2.0
 - Notes
 - This Pulumi package is based on the 
opsgenieTerraform Provider.