1. Packages
  2. Packages
  3. Newrelic Provider
  4. API Docs
  5. NotificationChannel
Viewing docs for New Relic v4.20.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
newrelic logo
Viewing docs for New Relic v4.20.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi

    Use this resource to create and manage New Relic notification channels.

    Additional Examples

    ServiceNow
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "PD",
        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",
        destination_id="1234",
        product="PD",
        properties=[
            newrelic.NotificationChannelPropertyArgs(
                key="description",
                value="General description",
            ),
            newrelic.NotificationChannelPropertyArgs(
                key="short_description",
                value="Short description",
            ),
        ],
        type="SERVICENOW_INCIDENTS")
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "PD",
            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/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("PD"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("description"),
    					Value: pulumi.String("General description"),
    				},
    				&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()        
                .destinationId("1234")
                .product("PD")
                .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:
          destinationId: 1234
          product: PD
          properties:
            - key: description
              value: General description
            - key: short_description
              value: Short description
          type: SERVICENOW_INCIDENTS
    
    Email
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "ERROR_TRACKING",
        type: "EMAIL",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="ERROR_TRACKING",
        type="EMAIL")
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "ERROR_TRACKING",
            Type = "EMAIL",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("ERROR_TRACKING"),
    			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 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()        
                .destinationId("1234")
                .product("ERROR_TRACKING")
                .type("EMAIL")
                .build());
    
        }
    }
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: ERROR_TRACKING
          type: EMAIL
    
    PagerDuty with account integration
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "IINT",
        properties: [
            {
                key: "summary",
                value: "General summary",
            },
            {
                key: "service",
                value: "1234",
            },
            {
                key: "email",
                value: "test@test.com",
            },
        ],
        type: "PAGERDUTY_ACCOUNT_INTEGRATION",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="IINT",
        properties=[
            newrelic.NotificationChannelPropertyArgs(
                key="summary",
                value="General summary",
            ),
            newrelic.NotificationChannelPropertyArgs(
                key="service",
                value="1234",
            ),
            newrelic.NotificationChannelPropertyArgs(
                key="email",
                value="test@test.com",
            ),
        ],
        type="PAGERDUTY_ACCOUNT_INTEGRATION")
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "IINT",
            Properties = new[]
            {
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "summary",
                    Value = "General summary",
                },
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "service",
                    Value = "1234",
                },
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "email",
                    Value = "test@test.com",
                },
            },
            Type = "PAGERDUTY_ACCOUNT_INTEGRATION",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("IINT"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("summary"),
    					Value: pulumi.String("General summary"),
    				},
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("service"),
    					Value: pulumi.String("1234"),
    				},
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("email"),
    					Value: pulumi.String("test@test.com"),
    				},
    			},
    			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()        
                .destinationId("1234")
                .product("IINT")
                .properties(            
                    NotificationChannelPropertyArgs.builder()
                        .key("summary")
                        .value("General summary")
                        .build(),
                    NotificationChannelPropertyArgs.builder()
                        .key("service")
                        .value("1234")
                        .build(),
                    NotificationChannelPropertyArgs.builder()
                        .key("email")
                        .value("test@test.com")
                        .build())
                .type("PAGERDUTY_ACCOUNT_INTEGRATION")
                .build());
    
        }
    }
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: IINT
          properties:
            - key: summary
              value: General summary
            - key: service
              value: 1234
            - key: email
              value: test@test.com
          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", {
        destinationId: "1234",
        product: "IINT",
        properties: [{
            key: "summary",
            value: "General summary",
        }],
        type: "PAGERDUTY_SERVICE_INTEGRATION",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="IINT",
        properties=[newrelic.NotificationChannelPropertyArgs(
            key="summary",
            value="General summary",
        )],
        type="PAGERDUTY_SERVICE_INTEGRATION")
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "IINT",
            Properties = new[]
            {
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "summary",
                    Value = "General summary",
                },
            },
            Type = "PAGERDUTY_SERVICE_INTEGRATION",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("IINT"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("summary"),
    					Value: pulumi.String("General summary"),
    				},
    			},
    			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()        
                .destinationId("1234")
                .product("IINT")
                .properties(NotificationChannelPropertyArgs.builder()
                    .key("summary")
                    .value("General summary")
                    .build())
                .type("PAGERDUTY_SERVICE_INTEGRATION")
                .build());
    
        }
    }
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: IINT
          properties:
            - key: summary
              value: General summary
          type: PAGERDUTY_SERVICE_INTEGRATION
    

    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.

    Example Usage

    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "IINT",
            Properties = new[]
            {
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "payload",
                    Label = "Payload Template",
                    Value = @"{
    	""name"": ""foo""
    }
    ",
                },
            },
            Type = "WEBHOOK",
        });
    
    });
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("IINT"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("payload"),
    					Label: pulumi.String("Payload Template"),
    					Value: pulumi.String(fmt.Sprintf("{\n	\"name\": \"foo\"\n}\n")),
    				},
    			},
    			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()        
                .destinationId("1234")
                .product("IINT")
                .properties(NotificationChannelPropertyArgs.builder()
                    .key("payload")
                    .label("Payload Template")
                    .value("""
    {
    	"name": "foo"
    }
                    """)
                    .build())
                .type("WEBHOOK")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "IINT",
        properties: [{
            key: "payload",
            label: "Payload Template",
            value: `{
    	"name": "foo"
    }`,
        }],
        type: "WEBHOOK",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="IINT",
        properties=[newrelic.NotificationChannelPropertyArgs(
            key="payload",
            label="Payload Template",
            value="""{
    	"name": "foo"
    }
    """,
        )],
        type="WEBHOOK")
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: IINT
          properties:
            - key: payload
              label: Payload Template
              value: |
                {
                	"name": "foo"
                }
          type: WEBHOOK
    

    See additional examples.

    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "PD",
            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/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("PD"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("description"),
    					Value: pulumi.String("General description"),
    				},
    				&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()        
                .destinationId("1234")
                .product("PD")
                .properties(            
                    NotificationChannelPropertyArgs.builder()
                        .key("description")
                        .value("General description")
                        .build(),
                    NotificationChannelPropertyArgs.builder()
                        .key("short_description")
                        .value("Short description")
                        .build())
                .type("SERVICENOW_INCIDENTS")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "PD",
        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",
        destination_id="1234",
        product="PD",
        properties=[
            newrelic.NotificationChannelPropertyArgs(
                key="description",
                value="General description",
            ),
            newrelic.NotificationChannelPropertyArgs(
                key="short_description",
                value="Short description",
            ),
        ],
        type="SERVICENOW_INCIDENTS")
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: PD
          properties:
            - key: description
              value: General description
            - key: short_description
              value: Short description
          type: SERVICENOW_INCIDENTS
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "ERROR_TRACKING",
            Type = "EMAIL",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("ERROR_TRACKING"),
    			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 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()        
                .destinationId("1234")
                .product("ERROR_TRACKING")
                .type("EMAIL")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "ERROR_TRACKING",
        type: "EMAIL",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="ERROR_TRACKING",
        type="EMAIL")
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: ERROR_TRACKING
          type: EMAIL
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "IINT",
            Properties = new[]
            {
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "summary",
                    Value = "General summary",
                },
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "service",
                    Value = "1234",
                },
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "email",
                    Value = "test@test.com",
                },
            },
            Type = "PAGERDUTY_ACCOUNT_INTEGRATION",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("IINT"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("summary"),
    					Value: pulumi.String("General summary"),
    				},
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("service"),
    					Value: pulumi.String("1234"),
    				},
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("email"),
    					Value: pulumi.String("test@test.com"),
    				},
    			},
    			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()        
                .destinationId("1234")
                .product("IINT")
                .properties(            
                    NotificationChannelPropertyArgs.builder()
                        .key("summary")
                        .value("General summary")
                        .build(),
                    NotificationChannelPropertyArgs.builder()
                        .key("service")
                        .value("1234")
                        .build(),
                    NotificationChannelPropertyArgs.builder()
                        .key("email")
                        .value("test@test.com")
                        .build())
                .type("PAGERDUTY_ACCOUNT_INTEGRATION")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "IINT",
        properties: [
            {
                key: "summary",
                value: "General summary",
            },
            {
                key: "service",
                value: "1234",
            },
            {
                key: "email",
                value: "test@test.com",
            },
        ],
        type: "PAGERDUTY_ACCOUNT_INTEGRATION",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="IINT",
        properties=[
            newrelic.NotificationChannelPropertyArgs(
                key="summary",
                value="General summary",
            ),
            newrelic.NotificationChannelPropertyArgs(
                key="service",
                value="1234",
            ),
            newrelic.NotificationChannelPropertyArgs(
                key="email",
                value="test@test.com",
            ),
        ],
        type="PAGERDUTY_ACCOUNT_INTEGRATION")
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: IINT
          properties:
            - key: summary
              value: General summary
            - key: service
              value: 1234
            - key: email
              value: test@test.com
          type: PAGERDUTY_ACCOUNT_INTEGRATION
    
    using System.Collections.Generic;
    using Pulumi;
    using NewRelic = Pulumi.NewRelic;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new NewRelic.NotificationChannel("foo", new()
        {
            DestinationId = "1234",
            Product = "IINT",
            Properties = new[]
            {
                new NewRelic.Inputs.NotificationChannelPropertyArgs
                {
                    Key = "summary",
                    Value = "General summary",
                },
            },
            Type = "PAGERDUTY_SERVICE_INTEGRATION",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-newrelic/sdk/v4/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{
    			DestinationId: pulumi.String("1234"),
    			Product:       pulumi.String("IINT"),
    			Properties: NotificationChannelPropertyArray{
    				&NotificationChannelPropertyArgs{
    					Key:   pulumi.String("summary"),
    					Value: pulumi.String("General summary"),
    				},
    			},
    			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()        
                .destinationId("1234")
                .product("IINT")
                .properties(NotificationChannelPropertyArgs.builder()
                    .key("summary")
                    .value("General summary")
                    .build())
                .type("PAGERDUTY_SERVICE_INTEGRATION")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as newrelic from "@pulumi/newrelic";
    
    const foo = new newrelic.NotificationChannel("foo", {
        destinationId: "1234",
        product: "IINT",
        properties: [{
            key: "summary",
            value: "General summary",
        }],
        type: "PAGERDUTY_SERVICE_INTEGRATION",
    });
    
    import pulumi
    import pulumi_newrelic as newrelic
    
    foo = newrelic.NotificationChannel("foo",
        destination_id="1234",
        product="IINT",
        properties=[newrelic.NotificationChannelPropertyArgs(
            key="summary",
            value="General summary",
        )],
        type="PAGERDUTY_SERVICE_INTEGRATION")
    
    resources:
      foo:
        type: newrelic:NotificationChannel
        properties:
          destinationId: 1234
          product: IINT
          properties:
            - key: summary
              value: General summary
          type: PAGERDUTY_SERVICE_INTEGRATION
    

    Create NotificationChannel Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new NotificationChannel(name: string, args: NotificationChannelArgs, opts?: CustomResourceOptions);
    @overload
    def NotificationChannel(resource_name: str,
                            args: NotificationChannelArgs,
                            opts: Optional[ResourceOptions] = None)
    
    @overload
    def NotificationChannel(resource_name: str,
                            opts: Optional[ResourceOptions] = None,
                            destination_id: Optional[str] = None,
                            product: Optional[str] = None,
                            type: Optional[str] = None,
                            name: Optional[str] = None,
                            properties: Optional[Sequence[NotificationChannelPropertyArgs]] = 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.
    
    

    Parameters

    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.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var notificationChannelResource = new NewRelic.NotificationChannel("notificationChannelResource", new()
    {
        DestinationId = "string",
        Product = "string",
        Type = "string",
        Name = "string",
        Properties = new[]
        {
            new NewRelic.Inputs.NotificationChannelPropertyArgs
            {
                Key = "string",
                Value = "string",
                DisplayValue = "string",
                Label = "string",
            },
        },
    });
    
    example, err := newrelic.NewNotificationChannel(ctx, "notificationChannelResource", &newrelic.NotificationChannelArgs{
    	DestinationId: pulumi.String("string"),
    	Product:       pulumi.String("string"),
    	Type:          pulumi.String("string"),
    	Name:          pulumi.String("string"),
    	Properties: newrelic.NotificationChannelPropertyArray{
    		&newrelic.NotificationChannelPropertyArgs{
    			Key:          pulumi.String("string"),
    			Value:        pulumi.String("string"),
    			DisplayValue: pulumi.String("string"),
    			Label:        pulumi.String("string"),
    		},
    	},
    })
    
    var notificationChannelResource = new NotificationChannel("notificationChannelResource", NotificationChannelArgs.builder()
        .destinationId("string")
        .product("string")
        .type("string")
        .name("string")
        .properties(NotificationChannelPropertyArgs.builder()
            .key("string")
            .value("string")
            .displayValue("string")
            .label("string")
            .build())
        .build());
    
    notification_channel_resource = newrelic.NotificationChannel("notificationChannelResource",
        destination_id="string",
        product="string",
        type="string",
        name="string",
        properties=[{
            "key": "string",
            "value": "string",
            "display_value": "string",
            "label": "string",
        }])
    
    const notificationChannelResource = new newrelic.NotificationChannel("notificationChannelResource", {
        destinationId: "string",
        product: "string",
        type: "string",
        name: "string",
        properties: [{
            key: "string",
            value: "string",
            displayValue: "string",
            label: "string",
        }],
    });
    
    type: newrelic:NotificationChannel
    properties:
        destinationId: string
        name: string
        product: string
        properties:
            - displayValue: string
              key: string
              label: string
              value: string
        type: string
    

    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

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The NotificationChannel resource accepts the following input properties:

    DestinationId string
    The id of the destination.
    Product string
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    Type string
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    Name string
    The name of the channel.
    Properties List<Pulumi.NewRelic.Inputs.NotificationChannelProperty>
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    DestinationId string
    The id of the destination.
    Product string
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    Type string
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    Name string
    The name of the channel.
    Properties []NotificationChannelPropertyArgs
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    destinationId String
    The id of the destination.
    product String
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    type String
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    name String
    The name of the channel.
    properties List<NotificationChannelProperty>
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    destinationId string
    The id of the destination.
    product string
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    type string
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    name string
    The name of the channel.
    properties NotificationChannelProperty[]
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    destination_id str
    The id of the destination.
    product str
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    type str
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    name str
    The name of the channel.
    properties Sequence[NotificationChannelPropertyArgs]
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    destinationId String
    The id of the destination.
    product String
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    type String
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    name String
    The name of the channel.
    properties List<Property Map>
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the NotificationChannel resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing 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,
            destination_id: Optional[str] = None,
            name: Optional[str] = None,
            product: Optional[str] = None,
            properties: Optional[Sequence[NotificationChannelPropertyArgs]] = 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)
    resources:  _:    type: newrelic:NotificationChannel    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    DestinationId string
    The id of the destination.
    Name string
    The name of the channel.
    Product string
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    Properties List<Pulumi.NewRelic.Inputs.NotificationChannelProperty>
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    Type string
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    DestinationId string
    The id of the destination.
    Name string
    The name of the channel.
    Product string
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    Properties []NotificationChannelPropertyArgs
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    Type string
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    destinationId String
    The id of the destination.
    name String
    The name of the channel.
    product String
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    properties List<NotificationChannelProperty>
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    type String
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    destinationId string
    The id of the destination.
    name string
    The name of the channel.
    product string
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    properties NotificationChannelProperty[]
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    type string
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    destination_id str
    The id of the destination.
    name str
    The name of the channel.
    product str
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    properties Sequence[NotificationChannelPropertyArgs]
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    type str
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.
    destinationId String
    The id of the destination.
    name String
    The name of the channel.
    product String
    The type of product. One of: ALERTS, DISCUSSIONS, ERROR_TRACKING, IINT, NTFC, PD or SHARING.
    properties List<Property Map>
    A nested block that describes a notification channel properties. Only one properties block is permitted per notification channel definition. See Nested properties blocks below for details.
    type String
    The type of channel. One of: EMAIL, SERVICENOW_INCIDENTS, WEBHOOK, PAGERDUTY_ACCOUNT_INTEGRATION or PAGERDUTY_SERVICE_INTEGRATION.

    Supporting Types

    NotificationChannelProperty, NotificationChannelPropertyArgs

    Key string
    Value string
    DisplayValue string
    Label string
    Key string
    Value string
    DisplayValue string
    Label string
    key String
    value String
    displayValue String
    label String
    key string
    value string
    displayValue string
    label string
    key String
    value String
    displayValue String
    label String

    Package Details

    Repository
    New Relic pulumi/pulumi-newrelic
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the newrelic Terraform Provider.
    newrelic logo
    Viewing docs for New Relic v4.20.0 (Older version)
    published on Monday, Mar 9, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.