newrelic.NotificationChannel
Explore with Pulumi AI
Use this resource to create and manage New Relic notification channels. Details regarding supported products and permissions can be found here.
A channel is an entity that is used to configure notifications. It is also called a message template. It is a separate entity from workflows, but a channel is required in order to create a workflow.
Additional Examples
NOTE: We support all properties. The mentioned properties are just an example.
ServiceNow
To see the properties’ keys for your account, check ServiceNow incidents table.
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "description",
value: "General description",
},
{
key: "short_description",
value: "Short description",
},
],
type: "SERVICENOW_INCIDENTS",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="description",
value="General description",
),
newrelic.NotificationChannelPropertyArgs(
key="short_description",
value="Short description",
),
],
type="SERVICENOW_INCIDENTS")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "description",
Value = "General description",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "short_description",
Value = "Short description",
},
},
Type = "SERVICENOW_INCIDENTS",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("description"),
Value: pulumi.String("General description"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("short_description"),
Value: pulumi.String("Short description"),
},
},
Type: pulumi.String("SERVICENOW_INCIDENTS"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("description")
.value("General description")
.build(),
NotificationChannelPropertyArgs.builder()
.key("short_description")
.value("Short description")
.build())
.type("SERVICENOW_INCIDENTS")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: description
value: General description
- key: short_description
value: Short description
type: SERVICENOW_INCIDENTS
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "subject",
value: "New Subject Title",
},
{
key: "customDetailsEmail",
value: "issue id - {{issueId}}",
},
],
type: "EMAIL",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="subject",
value="New Subject Title",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetailsEmail",
value="issue id - {{issueId}}",
),
],
type="EMAIL")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "subject",
Value = "New Subject Title",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetailsEmail",
Value = "issue id - {{issueId}}",
},
},
Type = "EMAIL",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("subject"),
Value: pulumi.String("New Subject Title"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetailsEmail"),
Value: pulumi.String("issue id - {{issueId}}"),
},
},
Type: pulumi.String("EMAIL"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("subject")
.value("New Subject Title")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetailsEmail")
.value("issue id - {{issueId}}")
.build())
.type("EMAIL")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: subject
value: New Subject Title
- key: customDetailsEmail
value: issue id - {{issueId}}
type: EMAIL
Jira Classic
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "ERROR_TRACKING",
properties: [
{
key: "project",
value: "10000",
},
{
key: "issuetype",
value: "10004",
},
{
key: "description",
value: "Issue ID: {{ issueId }}",
},
{
key: "summary",
value: "{{ annotations.title.[0] }}",
},
],
type: "JIRA_CLASSIC",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="ERROR_TRACKING",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="project",
value="10000",
),
newrelic.NotificationChannelPropertyArgs(
key="issuetype",
value="10004",
),
newrelic.NotificationChannelPropertyArgs(
key="description",
value="Issue ID: {{ issueId }}",
),
newrelic.NotificationChannelPropertyArgs(
key="summary",
value="{{ annotations.title.[0] }}",
),
],
type="JIRA_CLASSIC")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "ERROR_TRACKING",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "project",
Value = "10000",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "issuetype",
Value = "10004",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "description",
Value = "Issue ID: {{ issueId }}",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "summary",
Value = "{{ annotations.title.[0] }}",
},
},
Type = "JIRA_CLASSIC",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("ERROR_TRACKING"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("project"),
Value: pulumi.String("10000"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("issuetype"),
Value: pulumi.String("10004"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("description"),
Value: pulumi.String("Issue ID: {{ issueId }}"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("summary"),
Value: pulumi.String("{{ annotations.title.[0] }}"),
},
},
Type: pulumi.String("JIRA_CLASSIC"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("ERROR_TRACKING")
.properties(
NotificationChannelPropertyArgs.builder()
.key("project")
.value("10000")
.build(),
NotificationChannelPropertyArgs.builder()
.key("issuetype")
.value("10004")
.build(),
NotificationChannelPropertyArgs.builder()
.key("description")
.value("Issue ID: {{ issueId }}")
.build(),
NotificationChannelPropertyArgs.builder()
.key("summary")
.value("{{ annotations.title.[0] }}")
.build())
.type("JIRA_CLASSIC")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: ERROR_TRACKING
properties:
- key: project
value: '10000'
- key: issuetype
value: '10004'
- key: description
value: 'Issue ID: {{ issueId }}'
- key: summary
value: '{{ annotations.title.[0] }}'
type: JIRA_CLASSIC
PagerDuty with account integration
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "summary",
value: "General summary",
},
{
key: "service",
value: "PTQK3FM",
},
{
key: "email",
value: "example@email.com",
},
{
key: "customDetails",
value: ` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`,
},
],
type: "PAGERDUTY_ACCOUNT_INTEGRATION",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="summary",
value="General summary",
),
newrelic.NotificationChannelPropertyArgs(
key="service",
value="PTQK3FM",
),
newrelic.NotificationChannelPropertyArgs(
key="email",
value="example@email.com",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetails",
value=""" {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""",
),
],
type="PAGERDUTY_ACCOUNT_INTEGRATION")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "summary",
Value = "General summary",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "service",
Value = "PTQK3FM",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "email",
Value = "example@email.com",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetails",
Value = @" {
""id"":{{json issueId}},
""IssueURL"":{{json issuePageUrl}},
""NewRelic priority"":{{json priority}},
""Total Incidents"":{{json totalIncidents}},
""Impacted Entities"":""{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Runbook"":""{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Description"":""{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""isCorrelated"":{{json isCorrelated}},
""Alert Policy Names"":""{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Alert Condition Names"":""{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Workflow Name"":{{json workflowName}}
}
",
},
},
Type = "PAGERDUTY_ACCOUNT_INTEGRATION",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("summary"),
Value: pulumi.String("General summary"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("service"),
Value: pulumi.String("PTQK3FM"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("email"),
Value: pulumi.String("example@email.com"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetails"),
Value: pulumi.String(` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`),
},
},
Type: pulumi.String("PAGERDUTY_ACCOUNT_INTEGRATION"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("summary")
.value("General summary")
.build(),
NotificationChannelPropertyArgs.builder()
.key("service")
.value("PTQK3FM")
.build(),
NotificationChannelPropertyArgs.builder()
.key("email")
.value("example@email.com")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetails")
.value("""
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""")
.build())
.type("PAGERDUTY_ACCOUNT_INTEGRATION")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: summary
value: General summary
- key: service
value: PTQK3FM
- key: email
value: example@email.com
- key: customDetails
value: |2+
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
type: PAGERDUTY_ACCOUNT_INTEGRATION
PagerDuty with service integration
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "summary",
value: "General summary",
},
{
key: "customDetails",
value: ` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`,
},
],
type: "PAGERDUTY_SERVICE_INTEGRATION",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="summary",
value="General summary",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetails",
value=""" {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""",
),
],
type="PAGERDUTY_SERVICE_INTEGRATION")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "summary",
Value = "General summary",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetails",
Value = @" {
""id"":{{json issueId}},
""IssueURL"":{{json issuePageUrl}},
""NewRelic priority"":{{json priority}},
""Total Incidents"":{{json totalIncidents}},
""Impacted Entities"":""{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Runbook"":""{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Description"":""{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""isCorrelated"":{{json isCorrelated}},
""Alert Policy Names"":""{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Alert Condition Names"":""{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Workflow Name"":{{json workflowName}}
}
",
},
},
Type = "PAGERDUTY_SERVICE_INTEGRATION",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("summary"),
Value: pulumi.String("General summary"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetails"),
Value: pulumi.String(` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`),
},
},
Type: pulumi.String("PAGERDUTY_SERVICE_INTEGRATION"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("summary")
.value("General summary")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetails")
.value("""
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""")
.build())
.type("PAGERDUTY_SERVICE_INTEGRATION")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: summary
value: General summary
- key: customDetails
value: |2+
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
type: PAGERDUTY_SERVICE_INTEGRATION
Mobile Push
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
type: "MOBILE_PUSH",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
type="MOBILE_PUSH")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Type = "MOBILE_PUSH",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Type: pulumi.String("MOBILE_PUSH"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.type("MOBILE_PUSH")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
type: MOBILE_PUSH
AWS Event Bridge
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "eventSource",
value: "aws.partner/mydomain/myaccountid/name",
},
{
key: "eventContent",
value: "{ id: {{ json issueId }} }",
},
],
type: "EVENT_BRIDGE",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="eventSource",
value="aws.partner/mydomain/myaccountid/name",
),
newrelic.NotificationChannelPropertyArgs(
key="eventContent",
value="{ id: {{ json issueId }} }",
),
],
type="EVENT_BRIDGE")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "eventSource",
Value = "aws.partner/mydomain/myaccountid/name",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "eventContent",
Value = "{ id: {{ json issueId }} }",
},
},
Type = "EVENT_BRIDGE",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("eventSource"),
Value: pulumi.String("aws.partner/mydomain/myaccountid/name"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("eventContent"),
Value: pulumi.String("{ id: {{ json issueId }} }"),
},
},
Type: pulumi.String("EVENT_BRIDGE"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("eventSource")
.value("aws.partner/mydomain/myaccountid/name")
.build(),
NotificationChannelPropertyArgs.builder()
.key("eventContent")
.value("{ id: {{ json issueId }} }")
.build())
.type("EVENT_BRIDGE")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: eventSource
value: aws.partner/mydomain/myaccountid/name
- key: eventContent
value: '{ id: {{ json issueId }} }'
type: EVENT_BRIDGE
SLACK
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "channelId",
value: "123456",
},
{
key: "customDetailsSlack",
value: "issue id - {{issueId}}",
},
],
type: "SLACK",
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="channelId",
value="123456",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetailsSlack",
value="issue id - {{issueId}}",
),
],
type="SLACK")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "channelId",
Value = "123456",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetailsSlack",
Value = "issue id - {{issueId}}",
},
},
Type = "SLACK",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("channelId"),
Value: pulumi.String("123456"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetailsSlack"),
Value: pulumi.String("issue id - {{issueId}}"),
},
},
Type: pulumi.String("SLACK"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("channelId")
.value("123456")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetailsSlack")
.value("issue id - {{issueId}}")
.build())
.type("SLACK")
.build());
}
}
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: channelId
value: '123456'
- key: customDetailsSlack
value: issue id - {{issueId}}
type: SLACK
NOTE: Sensitive data such as channel API keys, service keys, etc are not returned from the underlying API for security reasons and may not be set in state when importing.
Full Scenario Example
Create a destination resource and reference that destination to the channel resource:
Create a destination
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const webhook_destination = new newrelic.NotificationDestination("webhook-destination", {
accountId: 12345678,
authBasic: {
password: "password",
user: "username",
},
properties: [{
key: "url",
value: "https://webhook.mywebhook.com",
}],
type: "WEBHOOK",
});
import pulumi
import pulumi_newrelic as newrelic
webhook_destination = newrelic.NotificationDestination("webhook-destination",
account_id=12345678,
auth_basic=newrelic.NotificationDestinationAuthBasicArgs(
password="password",
user="username",
),
properties=[newrelic.NotificationDestinationPropertyArgs(
key="url",
value="https://webhook.mywebhook.com",
)],
type="WEBHOOK")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var webhook_destination = new NewRelic.NotificationDestination("webhook-destination", new()
{
AccountId = 12345678,
AuthBasic = new NewRelic.Inputs.NotificationDestinationAuthBasicArgs
{
Password = "password",
User = "username",
},
Properties = new[]
{
new NewRelic.Inputs.NotificationDestinationPropertyArgs
{
Key = "url",
Value = "https://webhook.mywebhook.com",
},
},
Type = "WEBHOOK",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationDestination(ctx, "webhook-destination", &newrelic.NotificationDestinationArgs{
AccountId: pulumi.Int(12345678),
AuthBasic: &newrelic.NotificationDestinationAuthBasicArgs{
Password: pulumi.String("password"),
User: pulumi.String("username"),
},
Properties: newrelic.NotificationDestinationPropertyArray{
&newrelic.NotificationDestinationPropertyArgs{
Key: pulumi.String("url"),
Value: pulumi.String("https://webhook.mywebhook.com"),
},
},
Type: pulumi.String("WEBHOOK"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationDestination;
import com.pulumi.newrelic.NotificationDestinationArgs;
import com.pulumi.newrelic.inputs.NotificationDestinationAuthBasicArgs;
import com.pulumi.newrelic.inputs.NotificationDestinationPropertyArgs;
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 webhook_destination = new NotificationDestination("webhook-destination", NotificationDestinationArgs.builder()
.accountId(12345678)
.authBasic(NotificationDestinationAuthBasicArgs.builder()
.password("password")
.user("username")
.build())
.properties(NotificationDestinationPropertyArgs.builder()
.key("url")
.value("https://webhook.mywebhook.com")
.build())
.type("WEBHOOK")
.build());
}
}
resources:
webhook-destination:
type: newrelic:NotificationDestination
properties:
accountId: 1.2345678e+07
authBasic:
password: password
user: username
properties:
- key: url
value: https://webhook.mywebhook.com
type: WEBHOOK
Create a channel
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const webhook_channel = new newrelic.NotificationChannel("webhook-channel", {
accountId: 12345678,
type: "WEBHOOK",
destinationId: newrelic_notification_destination["webhook-destination"].id,
product: "IINT",
properties: [{
key: "payload",
value: "{name: foo}",
label: "Payload Template",
}],
});
import pulumi
import pulumi_newrelic as newrelic
webhook_channel = newrelic.NotificationChannel("webhook-channel",
account_id=12345678,
type="WEBHOOK",
destination_id=newrelic_notification_destination["webhook-destination"]["id"],
product="IINT",
properties=[newrelic.NotificationChannelPropertyArgs(
key="payload",
value="{name: foo}",
label="Payload Template",
)])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var webhook_channel = new NewRelic.NotificationChannel("webhook-channel", new()
{
AccountId = 12345678,
Type = "WEBHOOK",
DestinationId = newrelic_notification_destination.Webhook_destination.Id,
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "payload",
Value = "{name: foo}",
Label = "Payload Template",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "webhook-channel", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
Type: pulumi.String("WEBHOOK"),
DestinationId: pulumi.Any(newrelic_notification_destination.WebhookDestination.Id),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("payload"),
Value: pulumi.String("{name: foo}"),
Label: pulumi.String("Payload Template"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 webhook_channel = new NotificationChannel("webhook-channel", NotificationChannelArgs.builder()
.accountId(12345678)
.type("WEBHOOK")
.destinationId(newrelic_notification_destination.webhook-destination().id())
.product("IINT")
.properties(NotificationChannelPropertyArgs.builder()
.key("payload")
.value("{name: foo}")
.label("Payload Template")
.build())
.build());
}
}
resources:
webhook-channel:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
type: WEBHOOK
destinationId: ${newrelic_notification_destination"webhook-destination"[%!s(MISSING)].id}
product: IINT
properties:
- key: payload
value: '{name: foo}'
label: Payload Template
Additional Information
More details about the channels API can be found here.
NOTE:
newrelic.AlertChannel
are legacy resources.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "payload",
Label = "Payload Template",
Value = "name: {{ foo }}",
},
},
Type = "WEBHOOK",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("payload"),
Label: pulumi.String("Payload Template"),
Value: pulumi.String("name: {{ foo }}"),
},
},
Type: pulumi.String("WEBHOOK"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(NotificationChannelPropertyArgs.builder()
.key("payload")
.label("Payload Template")
.value("name: {{ foo }}")
.build())
.type("WEBHOOK")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[newrelic.NotificationChannelPropertyArgs(
key="payload",
label="Payload Template",
value="name: {{ foo }}",
)],
type="WEBHOOK")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [{
key: "payload",
label: "Payload Template",
value: "name: {{ foo }}",
}],
type: "WEBHOOK",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
# (Workflows)
# // must be valid json
properties:
- key: payload
label: Payload Template
value: 'name: {{ foo }}'
type: WEBHOOK
To see the properties’ keys for your account, check ServiceNow incidents table.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "description",
Value = "General description",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "short_description",
Value = "Short description",
},
},
Type = "SERVICENOW_INCIDENTS",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("description"),
Value: pulumi.String("General description"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("short_description"),
Value: pulumi.String("Short description"),
},
},
Type: pulumi.String("SERVICENOW_INCIDENTS"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("description")
.value("General description")
.build(),
NotificationChannelPropertyArgs.builder()
.key("short_description")
.value("Short description")
.build())
.type("SERVICENOW_INCIDENTS")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="description",
value="General description",
),
newrelic.NotificationChannelPropertyArgs(
key="short_description",
value="Short description",
),
],
type="SERVICENOW_INCIDENTS")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "description",
value: "General description",
},
{
key: "short_description",
value: "Short description",
},
],
type: "SERVICENOW_INCIDENTS",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: description
value: General description
- key: short_description
value: Short description
type: SERVICENOW_INCIDENTS
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "subject",
Value = "New Subject Title",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetailsEmail",
Value = "issue id - {{issueId}}",
},
},
Type = "EMAIL",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("subject"),
Value: pulumi.String("New Subject Title"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetailsEmail"),
Value: pulumi.String("issue id - {{issueId}}"),
},
},
Type: pulumi.String("EMAIL"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("subject")
.value("New Subject Title")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetailsEmail")
.value("issue id - {{issueId}}")
.build())
.type("EMAIL")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="subject",
value="New Subject Title",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetailsEmail",
value="issue id - {{issueId}}",
),
],
type="EMAIL")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "subject",
value: "New Subject Title",
},
{
key: "customDetailsEmail",
value: "issue id - {{issueId}}",
},
],
type: "EMAIL",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: subject
value: New Subject Title
- key: customDetailsEmail
value: issue id - {{issueId}}
type: EMAIL
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "ERROR_TRACKING",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "project",
Value = "10000",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "issuetype",
Value = "10004",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "description",
Value = "Issue ID: {{ issueId }}",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "summary",
Value = "{{ annotations.title.[0] }}",
},
},
Type = "JIRA_CLASSIC",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("ERROR_TRACKING"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("project"),
Value: pulumi.String("10000"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("issuetype"),
Value: pulumi.String("10004"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("description"),
Value: pulumi.String("Issue ID: {{ issueId }}"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("summary"),
Value: pulumi.String("{{ annotations.title.[0] }}"),
},
},
Type: pulumi.String("JIRA_CLASSIC"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("ERROR_TRACKING")
.properties(
NotificationChannelPropertyArgs.builder()
.key("project")
.value("10000")
.build(),
NotificationChannelPropertyArgs.builder()
.key("issuetype")
.value("10004")
.build(),
NotificationChannelPropertyArgs.builder()
.key("description")
.value("Issue ID: {{ issueId }}")
.build(),
NotificationChannelPropertyArgs.builder()
.key("summary")
.value("{{ annotations.title.[0] }}")
.build())
.type("JIRA_CLASSIC")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="ERROR_TRACKING",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="project",
value="10000",
),
newrelic.NotificationChannelPropertyArgs(
key="issuetype",
value="10004",
),
newrelic.NotificationChannelPropertyArgs(
key="description",
value="Issue ID: {{ issueId }}",
),
newrelic.NotificationChannelPropertyArgs(
key="summary",
value="{{ annotations.title.[0] }}",
),
],
type="JIRA_CLASSIC")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "ERROR_TRACKING",
properties: [
{
key: "project",
value: "10000",
},
{
key: "issuetype",
value: "10004",
},
{
key: "description",
value: "Issue ID: {{ issueId }}",
},
{
key: "summary",
value: "{{ annotations.title.[0] }}",
},
],
type: "JIRA_CLASSIC",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: ERROR_TRACKING
properties:
- key: project
value: '10000'
- key: issuetype
value: '10004'
- key: description
value: 'Issue ID: {{ issueId }}'
- key: summary
value: '{{ annotations.title.[0] }}'
type: JIRA_CLASSIC
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "summary",
Value = "General summary",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "service",
Value = "PTQK3FM",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "email",
Value = "example@email.com",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetails",
Value = @" {
""id"":{{json issueId}},
""IssueURL"":{{json issuePageUrl}},
""NewRelic priority"":{{json priority}},
""Total Incidents"":{{json totalIncidents}},
""Impacted Entities"":""{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Runbook"":""{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Description"":""{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""isCorrelated"":{{json isCorrelated}},
""Alert Policy Names"":""{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Alert Condition Names"":""{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Workflow Name"":{{json workflowName}}
}
",
},
},
Type = "PAGERDUTY_ACCOUNT_INTEGRATION",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("summary"),
Value: pulumi.String("General summary"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("service"),
Value: pulumi.String("PTQK3FM"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("email"),
Value: pulumi.String("example@email.com"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetails"),
Value: pulumi.String(` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`),
},
},
Type: pulumi.String("PAGERDUTY_ACCOUNT_INTEGRATION"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("summary")
.value("General summary")
.build(),
NotificationChannelPropertyArgs.builder()
.key("service")
.value("PTQK3FM")
.build(),
NotificationChannelPropertyArgs.builder()
.key("email")
.value("example@email.com")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetails")
.value("""
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""")
.build())
.type("PAGERDUTY_ACCOUNT_INTEGRATION")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="summary",
value="General summary",
),
newrelic.NotificationChannelPropertyArgs(
key="service",
value="PTQK3FM",
),
newrelic.NotificationChannelPropertyArgs(
key="email",
value="example@email.com",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetails",
value=""" {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""",
),
],
type="PAGERDUTY_ACCOUNT_INTEGRATION")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "summary",
value: "General summary",
},
{
key: "service",
value: "PTQK3FM",
},
{
key: "email",
value: "example@email.com",
},
{
key: "customDetails",
value: ` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`,
},
],
type: "PAGERDUTY_ACCOUNT_INTEGRATION",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: summary
value: General summary
- key: service
value: PTQK3FM
- key: email
value: example@email.com
- key: customDetails
value: |2+
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
type: PAGERDUTY_ACCOUNT_INTEGRATION
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "summary",
Value = "General summary",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetails",
Value = @" {
""id"":{{json issueId}},
""IssueURL"":{{json issuePageUrl}},
""NewRelic priority"":{{json priority}},
""Total Incidents"":{{json totalIncidents}},
""Impacted Entities"":""{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Runbook"":""{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Description"":""{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""isCorrelated"":{{json isCorrelated}},
""Alert Policy Names"":""{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Alert Condition Names"":""{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}"",
""Workflow Name"":{{json workflowName}}
}
",
},
},
Type = "PAGERDUTY_SERVICE_INTEGRATION",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("summary"),
Value: pulumi.String("General summary"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetails"),
Value: pulumi.String(` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`),
},
},
Type: pulumi.String("PAGERDUTY_SERVICE_INTEGRATION"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("summary")
.value("General summary")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetails")
.value("""
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""")
.build())
.type("PAGERDUTY_SERVICE_INTEGRATION")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="summary",
value="General summary",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetails",
value=""" {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
""",
),
],
type="PAGERDUTY_SERVICE_INTEGRATION")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "summary",
value: "General summary",
},
{
key: "customDetails",
value: ` {
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
`,
},
],
type: "PAGERDUTY_SERVICE_INTEGRATION",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: summary
value: General summary
- key: customDetails
value: |2+
{
"id":{{json issueId}},
"IssueURL":{{json issuePageUrl}},
"NewRelic priority":{{json priority}},
"Total Incidents":{{json totalIncidents}},
"Impacted Entities":"{{#each entitiesData.names}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Runbook":"{{#each accumulations.runbookUrl}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Description":"{{#each annotations.description}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"isCorrelated":{{json isCorrelated}},
"Alert Policy Names":"{{#each accumulations.policyName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Alert Condition Names":"{{#each accumulations.conditionName}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}",
"Workflow Name":{{json workflowName}}
}
type: PAGERDUTY_SERVICE_INTEGRATION
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Type = "MOBILE_PUSH",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Type: pulumi.String("MOBILE_PUSH"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.type("MOBILE_PUSH")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
type="MOBILE_PUSH")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
type: "MOBILE_PUSH",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
type: MOBILE_PUSH
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "eventSource",
Value = "aws.partner/mydomain/myaccountid/name",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "eventContent",
Value = "{ id: {{ json issueId }} }",
},
},
Type = "EVENT_BRIDGE",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("eventSource"),
Value: pulumi.String("aws.partner/mydomain/myaccountid/name"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("eventContent"),
Value: pulumi.String("{ id: {{ json issueId }} }"),
},
},
Type: pulumi.String("EVENT_BRIDGE"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("eventSource")
.value("aws.partner/mydomain/myaccountid/name")
.build(),
NotificationChannelPropertyArgs.builder()
.key("eventContent")
.value("{ id: {{ json issueId }} }")
.build())
.type("EVENT_BRIDGE")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="eventSource",
value="aws.partner/mydomain/myaccountid/name",
),
newrelic.NotificationChannelPropertyArgs(
key="eventContent",
value="{ id: {{ json issueId }} }",
),
],
type="EVENT_BRIDGE")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "eventSource",
value: "aws.partner/mydomain/myaccountid/name",
},
{
key: "eventContent",
value: "{ id: {{ json issueId }} }",
},
],
type: "EVENT_BRIDGE",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: eventSource
value: aws.partner/mydomain/myaccountid/name
- key: eventContent
value: '{ id: {{ json issueId }} }'
type: EVENT_BRIDGE
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var foo = new NewRelic.NotificationChannel("foo", new()
{
AccountId = 12345678,
DestinationId = "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "channelId",
Value = "123456",
},
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "customDetailsSlack",
Value = "issue id - {{issueId}}",
},
},
Type = "SLACK",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "foo", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
DestinationId: pulumi.String("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8"),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("channelId"),
Value: pulumi.String("123456"),
},
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("customDetailsSlack"),
Value: pulumi.String("issue id - {{issueId}}"),
},
},
Type: pulumi.String("SLACK"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 foo = new NotificationChannel("foo", NotificationChannelArgs.builder()
.accountId(12345678)
.destinationId("00b6bd1d-ac06-4d3d-bd72-49551e70f7a8")
.product("IINT")
.properties(
NotificationChannelPropertyArgs.builder()
.key("channelId")
.value("123456")
.build(),
NotificationChannelPropertyArgs.builder()
.key("customDetailsSlack")
.value("issue id - {{issueId}}")
.build())
.type("SLACK")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.NotificationChannel("foo",
account_id=12345678,
destination_id="00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product="IINT",
properties=[
newrelic.NotificationChannelPropertyArgs(
key="channelId",
value="123456",
),
newrelic.NotificationChannelPropertyArgs(
key="customDetailsSlack",
value="issue id - {{issueId}}",
),
],
type="SLACK")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = new newrelic.NotificationChannel("foo", {
accountId: 12345678,
destinationId: "00b6bd1d-ac06-4d3d-bd72-49551e70f7a8",
product: "IINT",
properties: [
{
key: "channelId",
value: "123456",
},
{
key: "customDetailsSlack",
value: "issue id - {{issueId}}",
},
],
type: "SLACK",
});
resources:
foo:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
destinationId: 00b6bd1d-ac06-4d3d-bd72-49551e70f7a8
product: IINT
properties:
- key: channelId
value: '123456'
- key: customDetailsSlack
value: issue id - {{issueId}}
type: SLACK
Create a destination
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var webhook_destination = new NewRelic.NotificationDestination("webhook-destination", new()
{
AccountId = 12345678,
AuthBasic = new NewRelic.Inputs.NotificationDestinationAuthBasicArgs
{
Password = "password",
User = "username",
},
Properties = new[]
{
new NewRelic.Inputs.NotificationDestinationPropertyArgs
{
Key = "url",
Value = "https://webhook.mywebhook.com",
},
},
Type = "WEBHOOK",
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationDestination(ctx, "webhook-destination", &newrelic.NotificationDestinationArgs{
AccountId: pulumi.Int(12345678),
AuthBasic: &newrelic.NotificationDestinationAuthBasicArgs{
Password: pulumi.String("password"),
User: pulumi.String("username"),
},
Properties: newrelic.NotificationDestinationPropertyArray{
&newrelic.NotificationDestinationPropertyArgs{
Key: pulumi.String("url"),
Value: pulumi.String("https://webhook.mywebhook.com"),
},
},
Type: pulumi.String("WEBHOOK"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationDestination;
import com.pulumi.newrelic.NotificationDestinationArgs;
import com.pulumi.newrelic.inputs.NotificationDestinationAuthBasicArgs;
import com.pulumi.newrelic.inputs.NotificationDestinationPropertyArgs;
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 webhook_destination = new NotificationDestination("webhook-destination", NotificationDestinationArgs.builder()
.accountId(12345678)
.authBasic(NotificationDestinationAuthBasicArgs.builder()
.password("password")
.user("username")
.build())
.properties(NotificationDestinationPropertyArgs.builder()
.key("url")
.value("https://webhook.mywebhook.com")
.build())
.type("WEBHOOK")
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
webhook_destination = newrelic.NotificationDestination("webhook-destination",
account_id=12345678,
auth_basic=newrelic.NotificationDestinationAuthBasicArgs(
password="password",
user="username",
),
properties=[newrelic.NotificationDestinationPropertyArgs(
key="url",
value="https://webhook.mywebhook.com",
)],
type="WEBHOOK")
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const webhook_destination = new newrelic.NotificationDestination("webhook-destination", {
accountId: 12345678,
authBasic: {
password: "password",
user: "username",
},
properties: [{
key: "url",
value: "https://webhook.mywebhook.com",
}],
type: "WEBHOOK",
});
resources:
webhook-destination:
type: newrelic:NotificationDestination
properties:
accountId: 1.2345678e+07
authBasic:
password: password
user: username
properties:
- key: url
value: https://webhook.mywebhook.com
type: WEBHOOK
Create a channel
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var webhook_channel = new NewRelic.NotificationChannel("webhook-channel", new()
{
AccountId = 12345678,
Type = "WEBHOOK",
DestinationId = newrelic_notification_destination.Webhook_destination.Id,
Product = "IINT",
Properties = new[]
{
new NewRelic.Inputs.NotificationChannelPropertyArgs
{
Key = "payload",
Value = "{name: foo}",
Label = "Payload Template",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewNotificationChannel(ctx, "webhook-channel", &newrelic.NotificationChannelArgs{
AccountId: pulumi.Int(12345678),
Type: pulumi.String("WEBHOOK"),
DestinationId: pulumi.Any(newrelic_notification_destination.WebhookDestination.Id),
Product: pulumi.String("IINT"),
Properties: newrelic.NotificationChannelPropertyArray{
&newrelic.NotificationChannelPropertyArgs{
Key: pulumi.String("payload"),
Value: pulumi.String("{name: foo}"),
Label: pulumi.String("Payload Template"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NotificationChannel;
import com.pulumi.newrelic.NotificationChannelArgs;
import com.pulumi.newrelic.inputs.NotificationChannelPropertyArgs;
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 webhook_channel = new NotificationChannel("webhook-channel", NotificationChannelArgs.builder()
.accountId(12345678)
.type("WEBHOOK")
.destinationId(newrelic_notification_destination.webhook-destination().id())
.product("IINT")
.properties(NotificationChannelPropertyArgs.builder()
.key("payload")
.value("{name: foo}")
.label("Payload Template")
.build())
.build());
}
}
import pulumi
import pulumi_newrelic as newrelic
webhook_channel = newrelic.NotificationChannel("webhook-channel",
account_id=12345678,
type="WEBHOOK",
destination_id=newrelic_notification_destination["webhook-destination"]["id"],
product="IINT",
properties=[newrelic.NotificationChannelPropertyArgs(
key="payload",
value="{name: foo}",
label="Payload Template",
)])
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const webhook_channel = new newrelic.NotificationChannel("webhook-channel", {
accountId: 12345678,
type: "WEBHOOK",
destinationId: newrelic_notification_destination["webhook-destination"].id,
product: "IINT",
properties: [{
key: "payload",
value: "{name: foo}",
label: "Payload Template",
}],
});
resources:
webhook-channel:
type: newrelic:NotificationChannel
properties:
accountId: 1.2345678e+07
type: WEBHOOK
destinationId: ${newrelic_notification_destination"webhook-destination"[%!s(MISSING)].id}
product: IINT
properties:
- key: payload
value: '{name: foo}'
label: Payload Template
Create NotificationChannel Resource
new NotificationChannel(name: string, args: NotificationChannelArgs, opts?: CustomResourceOptions);
@overload
def NotificationChannel(resource_name: str,
opts: Optional[ResourceOptions] = None,
account_id: Optional[int] = None,
active: Optional[bool] = None,
destination_id: Optional[str] = None,
name: Optional[str] = None,
product: Optional[str] = None,
properties: Optional[Sequence[NotificationChannelPropertyArgs]] = None,
type: Optional[str] = None)
@overload
def NotificationChannel(resource_name: str,
args: NotificationChannelArgs,
opts: Optional[ResourceOptions] = None)
func NewNotificationChannel(ctx *Context, name string, args NotificationChannelArgs, opts ...ResourceOption) (*NotificationChannel, error)
public NotificationChannel(string name, NotificationChannelArgs args, CustomResourceOptions? opts = null)
public NotificationChannel(String name, NotificationChannelArgs args)
public NotificationChannel(String name, NotificationChannelArgs args, CustomResourceOptions options)
type: newrelic:NotificationChannel
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args NotificationChannelArgs
- 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 NotificationChannelArgs
- 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 NotificationChannelArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args NotificationChannelArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args NotificationChannelArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
NotificationChannel Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The NotificationChannel resource accepts the following input properties:
- Destination
Id string The id of the destination.
- Product string
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- Properties
List<Pulumi.
New Relic. Inputs. Notification Channel Property> A nested block that describes a notification channel property. See Nested property blocks below for details.
- Type string
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.- Account
Id int Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- Active bool
Indicates whether the channel is active.
- Name string
The name of the channel.
- Destination
Id string The id of the destination.
- Product string
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- Properties
[]Notification
Channel Property Args A nested block that describes a notification channel property. See Nested property blocks below for details.
- Type string
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.- Account
Id int Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- Active bool
Indicates whether the channel is active.
- Name string
The name of the channel.
- destination
Id String The id of the destination.
- product String
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties
List<Notification
Channel Property> A nested block that describes a notification channel property. See Nested property blocks below for details.
- type String
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.- account
Id Integer Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active Boolean
Indicates whether the channel is active.
- name String
The name of the channel.
- destination
Id string The id of the destination.
- product string
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties
Notification
Channel Property[] A nested block that describes a notification channel property. See Nested property blocks below for details.
- type string
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.- account
Id number Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active boolean
Indicates whether the channel is active.
- name string
The name of the channel.
- destination_
id str The id of the destination.
- product str
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties
Sequence[Notification
Channel Property Args] A nested block that describes a notification channel property. See Nested property blocks below for details.
- type str
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.- account_
id int Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active bool
Indicates whether the channel is active.
- name str
The name of the channel.
- destination
Id String The id of the destination.
- product String
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties List<Property Map>
A nested block that describes a notification channel property. See Nested property blocks below for details.
- type String
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.- account
Id Number Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active Boolean
Indicates whether the channel is active.
- name String
The name of the channel.
Outputs
All input properties are implicitly available as output properties. Additionally, the NotificationChannel resource produces the following output properties:
Look up Existing NotificationChannel Resource
Get an existing NotificationChannel 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?: NotificationChannelState, opts?: CustomResourceOptions): NotificationChannel
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
account_id: Optional[int] = None,
active: Optional[bool] = None,
destination_id: Optional[str] = None,
name: Optional[str] = None,
product: Optional[str] = None,
properties: Optional[Sequence[NotificationChannelPropertyArgs]] = None,
status: Optional[str] = None,
type: Optional[str] = None) -> NotificationChannel
func GetNotificationChannel(ctx *Context, name string, id IDInput, state *NotificationChannelState, opts ...ResourceOption) (*NotificationChannel, error)
public static NotificationChannel Get(string name, Input<string> id, NotificationChannelState? state, CustomResourceOptions? opts = null)
public static NotificationChannel get(String name, Output<String> id, NotificationChannelState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- 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.
- Account
Id int Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- Active bool
Indicates whether the channel is active.
- Destination
Id string The id of the destination.
- Name string
The name of the channel.
- Product string
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- Properties
List<Pulumi.
New Relic. Inputs. Notification Channel Property> A nested block that describes a notification channel property. See Nested property blocks below for details.
- Status string
The status of the channel.
- Type string
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.
- Account
Id int Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- Active bool
Indicates whether the channel is active.
- Destination
Id string The id of the destination.
- Name string
The name of the channel.
- Product string
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- Properties
[]Notification
Channel Property Args A nested block that describes a notification channel property. See Nested property blocks below for details.
- Status string
The status of the channel.
- Type string
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.
- account
Id Integer Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active Boolean
Indicates whether the channel is active.
- destination
Id String The id of the destination.
- name String
The name of the channel.
- product String
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties
List<Notification
Channel Property> A nested block that describes a notification channel property. See Nested property blocks below for details.
- status String
The status of the channel.
- type String
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.
- account
Id number Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active boolean
Indicates whether the channel is active.
- destination
Id string The id of the destination.
- name string
The name of the channel.
- product string
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties
Notification
Channel Property[] A nested block that describes a notification channel property. See Nested property blocks below for details.
- status string
The status of the channel.
- type string
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.
- account_
id int Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active bool
Indicates whether the channel is active.
- destination_
id str The id of the destination.
- name str
The name of the channel.
- product str
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties
Sequence[Notification
Channel Property Args] A nested block that describes a notification channel property. See Nested property blocks below for details.
- status str
The status of the channel.
- type str
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.
- account
Id Number Determines the New Relic account where the notification channel will be created. Defaults to the account associated with the API key used.
- active Boolean
Indicates whether the channel is active.
- destination
Id String The id of the destination.
- name String
The name of the channel.
- product String
The type of product. One of:
DISCUSSIONS
,ERROR_TRACKING
orIINT
(workflows).- properties List<Property Map>
A nested block that describes a notification channel property. See Nested property blocks below for details.
- status String
The status of the channel.
- type String
The type of channel. One of:
EMAIL
,SERVICENOW_INCIDENTS
,WEBHOOK
,JIRA_CLASSIC
,MOBILE_PUSH
,EVENT_BRIDGE
,SLACK
andSLACK_COLLABORATION
,PAGERDUTY_ACCOUNT_INTEGRATION
orPAGERDUTY_SERVICE_INTEGRATION
.
Supporting Types
NotificationChannelProperty, NotificationChannelPropertyArgs
- Key string
The notification property key.
- Value string
The notification property value.
- Display
Value string The notification property display value.
Each notification channel type supports a specific set of arguments for the
property
block:- Label string
The notification property label.
- Key string
The notification property key.
- Value string
The notification property value.
- Display
Value string The notification property display value.
Each notification channel type supports a specific set of arguments for the
property
block:- Label string
The notification property label.
- key String
The notification property key.
- value String
The notification property value.
- display
Value String The notification property display value.
Each notification channel type supports a specific set of arguments for the
property
block:- label String
The notification property label.
- key string
The notification property key.
- value string
The notification property value.
- display
Value string The notification property display value.
Each notification channel type supports a specific set of arguments for the
property
block:- label string
The notification property label.
- key str
The notification property key.
- value str
The notification property value.
- display_
value str The notification property display value.
Each notification channel type supports a specific set of arguments for the
property
block:- label str
The notification property label.
- key String
The notification property key.
- value String
The notification property value.
- display
Value String The notification property display value.
Each notification channel type supports a specific set of arguments for the
property
block:- label String
The notification property label.
Package Details
- Repository
- New Relic pulumi/pulumi-newrelic
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
newrelic
Terraform Provider.