1. Packages
  2. Coralogix Provider
  3. API Docs
  4. Connector
coralogix 2.0.19 published on Monday, May 12, 2025 by coralogix

coralogix.Connector

Explore with Pulumi AI

coralogix logo
coralogix 2.0.19 published on Monday, May 12, 2025 by coralogix

    Coralogix Connector. Note: This resource is in alpha stage.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as coralogix from "@pulumi/coralogix";
    
    const genericHttpsExample = new coralogix.Connector("genericHttpsExample", {
        connectorId: "generic_https_example",
        type: "generic_https",
        description: "generic-https connector example",
        connectorConfig: {
            fields: [
                {
                    fieldName: "url",
                    value: "https://api.opsgenie.com/v2/alerts",
                },
                {
                    fieldName: "method",
                    value: "POST",
                },
                {
                    fieldName: "additionalHeaders",
                    value: JSON.stringify({
                        Authorization: "GenieKey <key>",
                        "Content-Type": "application/json",
                    }),
                },
                {
                    fieldName: "additionalBodyFields",
                    value: JSON.stringify({
                        alias: "{{alert.groupingKey}}",
                    }),
                },
            ],
        },
        configOverrides: [{
            entityType: "alerts",
            fields: [
                {
                    fieldName: "url",
                    template: `            {% if alert.status == 'Triggered' %}
                https://api.opsgenie.com/v2/alerts
                {% else %}
                https://api.opsgenie.com/v2/alerts/{{alert.groupingKey}}/close?identifierType=alias
                {% endif %}
    `,
                },
                {
                    fieldName: "additionalHeaders",
                    template: `                {
                     "Authorization": "GenieKey some-key",
                     "Content-Type": "application/json"
                  }
    `,
                },
                {
                    fieldName: "additionalBodyFields",
                    template: `          {
                "alias": "{{alert.groupingKey}}"
              }
    `,
                },
            ],
        }],
    });
    const slackExample = new coralogix.Connector("slackExample", {
        type: "slack",
        description: "slack connector example",
        connectorConfig: {
            fields: [
                {
                    fieldName: "integrationId",
                    value: "iac-internal",
                },
                {
                    fieldName: "fallbackChannel",
                    value: "iac-internal",
                },
                {
                    fieldName: "channel",
                    value: "iac-internal",
                },
            ],
        },
        configOverrides: [{
            entityType: "alerts",
            fields: [{
                fieldName: "channel",
                template: `            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-channel
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-channel
                {% else %}
                generic-channel
                {% endif %}
    `,
            }],
        }],
    });
    const pagerdutyExample = new coralogix.Connector("pagerdutyExample", {
        type: "pagerduty",
        description: "pagerduty connector example",
        connectorConfig: {
            fields: [{
                fieldName: "integrationKey",
                value: "integrationKey-example",
            }],
        },
        configOverrides: [{
            entityType: "alerts",
            fields: [{
                fieldName: "integrationKey",
                template: `            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-integration-key
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-integrations-key
                {% else %}
                generic-integration-key
                {% endif %}
    `,
            }],
        }],
    });
    
    import pulumi
    import json
    import pulumi_coralogix as coralogix
    
    generic_https_example = coralogix.Connector("genericHttpsExample",
        connector_id="generic_https_example",
        type="generic_https",
        description="generic-https connector example",
        connector_config={
            "fields": [
                {
                    "field_name": "url",
                    "value": "https://api.opsgenie.com/v2/alerts",
                },
                {
                    "field_name": "method",
                    "value": "POST",
                },
                {
                    "field_name": "additionalHeaders",
                    "value": json.dumps({
                        "Authorization": "GenieKey <key>",
                        "Content-Type": "application/json",
                    }),
                },
                {
                    "field_name": "additionalBodyFields",
                    "value": json.dumps({
                        "alias": "{{alert.groupingKey}}",
                    }),
                },
            ],
        },
        config_overrides=[{
            "entity_type": "alerts",
            "fields": [
                {
                    "field_name": "url",
                    "template": """            {% if alert.status == 'Triggered' %}
                https://api.opsgenie.com/v2/alerts
                {% else %}
                https://api.opsgenie.com/v2/alerts/{{alert.groupingKey}}/close?identifierType=alias
                {% endif %}
    """,
                },
                {
                    "field_name": "additionalHeaders",
                    "template": """                {
                     "Authorization": "GenieKey some-key",
                     "Content-Type": "application/json"
                  }
    """,
                },
                {
                    "field_name": "additionalBodyFields",
                    "template": """          {
                "alias": "{{alert.groupingKey}}"
              }
    """,
                },
            ],
        }])
    slack_example = coralogix.Connector("slackExample",
        type="slack",
        description="slack connector example",
        connector_config={
            "fields": [
                {
                    "field_name": "integrationId",
                    "value": "iac-internal",
                },
                {
                    "field_name": "fallbackChannel",
                    "value": "iac-internal",
                },
                {
                    "field_name": "channel",
                    "value": "iac-internal",
                },
            ],
        },
        config_overrides=[{
            "entity_type": "alerts",
            "fields": [{
                "field_name": "channel",
                "template": """            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-channel
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-channel
                {% else %}
                generic-channel
                {% endif %}
    """,
            }],
        }])
    pagerduty_example = coralogix.Connector("pagerdutyExample",
        type="pagerduty",
        description="pagerduty connector example",
        connector_config={
            "fields": [{
                "field_name": "integrationKey",
                "value": "integrationKey-example",
            }],
        },
        config_overrides=[{
            "entity_type": "alerts",
            "fields": [{
                "field_name": "integrationKey",
                "template": """            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-integration-key
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-integrations-key
                {% else %}
                generic-integration-key
                {% endif %}
    """,
            }],
        }])
    
    package main
    
    import (
    	"encoding/json"
    
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/coralogix/v2/coralogix"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		tmpJSON0, err := json.Marshal(map[string]interface{}{
    			"Authorization": "GenieKey <key>",
    			"Content-Type":  "application/json",
    		})
    		if err != nil {
    			return err
    		}
    		json0 := string(tmpJSON0)
    		tmpJSON1, err := json.Marshal(map[string]interface{}{
    			"alias": "{{alert.groupingKey}}",
    		})
    		if err != nil {
    			return err
    		}
    		json1 := string(tmpJSON1)
    		_, err = coralogix.NewConnector(ctx, "genericHttpsExample", &coralogix.ConnectorArgs{
    			ConnectorId: pulumi.String("generic_https_example"),
    			Type:        pulumi.String("generic_https"),
    			Description: pulumi.String("generic-https connector example"),
    			ConnectorConfig: &coralogix.ConnectorConnectorConfigArgs{
    				Fields: coralogix.ConnectorConnectorConfigFieldArray{
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("url"),
    						Value:     pulumi.String("https://api.opsgenie.com/v2/alerts"),
    					},
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("method"),
    						Value:     pulumi.String("POST"),
    					},
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("additionalHeaders"),
    						Value:     pulumi.String(json0),
    					},
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("additionalBodyFields"),
    						Value:     pulumi.String(json1),
    					},
    				},
    			},
    			ConfigOverrides: coralogix.ConnectorConfigOverrideArray{
    				&coralogix.ConnectorConfigOverrideArgs{
    					EntityType: pulumi.String("alerts"),
    					Fields: coralogix.ConnectorConfigOverrideFieldArray{
    						&coralogix.ConnectorConfigOverrideFieldArgs{
    							FieldName: pulumi.String("url"),
    							Template: pulumi.String(`            {% if alert.status == 'Triggered' %}
                https://api.opsgenie.com/v2/alerts
                {% else %}
                https://api.opsgenie.com/v2/alerts/{{alert.groupingKey}}/close?identifierType=alias
                {% endif %}
    `),
    						},
    						&coralogix.ConnectorConfigOverrideFieldArgs{
    							FieldName: pulumi.String("additionalHeaders"),
    							Template:  pulumi.String("                {\n                 \"Authorization\": \"GenieKey some-key\",\n                 \"Content-Type\": \"application/json\"\n              }\n"),
    						},
    						&coralogix.ConnectorConfigOverrideFieldArgs{
    							FieldName: pulumi.String("additionalBodyFields"),
    							Template:  pulumi.String("          {\n            \"alias\": \"{{alert.groupingKey}}\"\n          }\n"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = coralogix.NewConnector(ctx, "slackExample", &coralogix.ConnectorArgs{
    			Type:        pulumi.String("slack"),
    			Description: pulumi.String("slack connector example"),
    			ConnectorConfig: &coralogix.ConnectorConnectorConfigArgs{
    				Fields: coralogix.ConnectorConnectorConfigFieldArray{
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("integrationId"),
    						Value:     pulumi.String("iac-internal"),
    					},
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("fallbackChannel"),
    						Value:     pulumi.String("iac-internal"),
    					},
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("channel"),
    						Value:     pulumi.String("iac-internal"),
    					},
    				},
    			},
    			ConfigOverrides: coralogix.ConnectorConfigOverrideArray{
    				&coralogix.ConnectorConfigOverrideArgs{
    					EntityType: pulumi.String("alerts"),
    					Fields: coralogix.ConnectorConfigOverrideFieldArray{
    						&coralogix.ConnectorConfigOverrideFieldArgs{
    							FieldName: pulumi.String("channel"),
    							Template: pulumi.String(`            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-channel
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-channel
                {% else %}
                generic-channel
                {% endif %}
    `),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = coralogix.NewConnector(ctx, "pagerdutyExample", &coralogix.ConnectorArgs{
    			Type:        pulumi.String("pagerduty"),
    			Description: pulumi.String("pagerduty connector example"),
    			ConnectorConfig: &coralogix.ConnectorConnectorConfigArgs{
    				Fields: coralogix.ConnectorConnectorConfigFieldArray{
    					&coralogix.ConnectorConnectorConfigFieldArgs{
    						FieldName: pulumi.String("integrationKey"),
    						Value:     pulumi.String("integrationKey-example"),
    					},
    				},
    			},
    			ConfigOverrides: coralogix.ConnectorConfigOverrideArray{
    				&coralogix.ConnectorConfigOverrideArgs{
    					EntityType: pulumi.String("alerts"),
    					Fields: coralogix.ConnectorConfigOverrideFieldArray{
    						&coralogix.ConnectorConfigOverrideFieldArgs{
    							FieldName: pulumi.String("integrationKey"),
    							Template: pulumi.String(`            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-integration-key
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-integrations-key
                {% else %}
                generic-integration-key
                {% endif %}
    `),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.Json;
    using Pulumi;
    using Coralogix = Pulumi.Coralogix;
    
    return await Deployment.RunAsync(() => 
    {
        var genericHttpsExample = new Coralogix.Connector("genericHttpsExample", new()
        {
            ConnectorId = "generic_https_example",
            Type = "generic_https",
            Description = "generic-https connector example",
            ConnectorConfig = new Coralogix.Inputs.ConnectorConnectorConfigArgs
            {
                Fields = new[]
                {
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "url",
                        Value = "https://api.opsgenie.com/v2/alerts",
                    },
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "method",
                        Value = "POST",
                    },
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "additionalHeaders",
                        Value = JsonSerializer.Serialize(new Dictionary<string, object?>
                        {
                            ["Authorization"] = "GenieKey <key>",
                            ["Content-Type"] = "application/json",
                        }),
                    },
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "additionalBodyFields",
                        Value = JsonSerializer.Serialize(new Dictionary<string, object?>
                        {
                            ["alias"] = "{{alert.groupingKey}}",
                        }),
                    },
                },
            },
            ConfigOverrides = new[]
            {
                new Coralogix.Inputs.ConnectorConfigOverrideArgs
                {
                    EntityType = "alerts",
                    Fields = new[]
                    {
                        new Coralogix.Inputs.ConnectorConfigOverrideFieldArgs
                        {
                            FieldName = "url",
                            Template = @"            {% if alert.status == 'Triggered' %}
                https://api.opsgenie.com/v2/alerts
                {% else %}
                https://api.opsgenie.com/v2/alerts/{{alert.groupingKey}}/close?identifierType=alias
                {% endif %}
    ",
                        },
                        new Coralogix.Inputs.ConnectorConfigOverrideFieldArgs
                        {
                            FieldName = "additionalHeaders",
                            Template = @"                {
                     ""Authorization"": ""GenieKey some-key"",
                     ""Content-Type"": ""application/json""
                  }
    ",
                        },
                        new Coralogix.Inputs.ConnectorConfigOverrideFieldArgs
                        {
                            FieldName = "additionalBodyFields",
                            Template = @"          {
                ""alias"": ""{{alert.groupingKey}}""
              }
    ",
                        },
                    },
                },
            },
        });
    
        var slackExample = new Coralogix.Connector("slackExample", new()
        {
            Type = "slack",
            Description = "slack connector example",
            ConnectorConfig = new Coralogix.Inputs.ConnectorConnectorConfigArgs
            {
                Fields = new[]
                {
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "integrationId",
                        Value = "iac-internal",
                    },
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "fallbackChannel",
                        Value = "iac-internal",
                    },
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "channel",
                        Value = "iac-internal",
                    },
                },
            },
            ConfigOverrides = new[]
            {
                new Coralogix.Inputs.ConnectorConfigOverrideArgs
                {
                    EntityType = "alerts",
                    Fields = new[]
                    {
                        new Coralogix.Inputs.ConnectorConfigOverrideFieldArgs
                        {
                            FieldName = "channel",
                            Template = @"            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == ""sample"" %}
                sample-channel
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == ""another"" %}
                another-channel
                {% else %}
                generic-channel
                {% endif %}
    ",
                        },
                    },
                },
            },
        });
    
        var pagerdutyExample = new Coralogix.Connector("pagerdutyExample", new()
        {
            Type = "pagerduty",
            Description = "pagerduty connector example",
            ConnectorConfig = new Coralogix.Inputs.ConnectorConnectorConfigArgs
            {
                Fields = new[]
                {
                    new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                    {
                        FieldName = "integrationKey",
                        Value = "integrationKey-example",
                    },
                },
            },
            ConfigOverrides = new[]
            {
                new Coralogix.Inputs.ConnectorConfigOverrideArgs
                {
                    EntityType = "alerts",
                    Fields = new[]
                    {
                        new Coralogix.Inputs.ConnectorConfigOverrideFieldArgs
                        {
                            FieldName = "integrationKey",
                            Template = @"            {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == ""sample"" %}
                sample-integration-key
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == ""another"" %}
                another-integrations-key
                {% else %}
                generic-integration-key
                {% endif %}
    ",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.coralogix.Connector;
    import com.pulumi.coralogix.ConnectorArgs;
    import com.pulumi.coralogix.inputs.ConnectorConnectorConfigArgs;
    import com.pulumi.coralogix.inputs.ConnectorConfigOverrideArgs;
    import static com.pulumi.codegen.internal.Serialization.*;
    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 genericHttpsExample = new Connector("genericHttpsExample", ConnectorArgs.builder()
                .connectorId("generic_https_example")
                .type("generic_https")
                .description("generic-https connector example")
                .connectorConfig(ConnectorConnectorConfigArgs.builder()
                    .fields(                
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("url")
                            .value("https://api.opsgenie.com/v2/alerts")
                            .build(),
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("method")
                            .value("POST")
                            .build(),
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("additionalHeaders")
                            .value(serializeJson(
                                jsonObject(
                                    jsonProperty("Authorization", "GenieKey <key>"),
                                    jsonProperty("Content-Type", "application/json")
                                )))
                            .build(),
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("additionalBodyFields")
                            .value(serializeJson(
                                jsonObject(
                                    jsonProperty("alias", "{{alert.groupingKey}}")
                                )))
                            .build())
                    .build())
                .configOverrides(ConnectorConfigOverrideArgs.builder()
                    .entityType("alerts")
                    .fields(                
                        ConnectorConfigOverrideFieldArgs.builder()
                            .fieldName("url")
                            .template("""
                {% if alert.status == 'Triggered' %}
                https://api.opsgenie.com/v2/alerts
                {% else %}
                https://api.opsgenie.com/v2/alerts/{{alert.groupingKey}}/close?identifierType=alias
                {% endif %}
                            """)
                            .build(),
                        ConnectorConfigOverrideFieldArgs.builder()
                            .fieldName("additionalHeaders")
                            .template("""
                    {
                     "Authorization": "GenieKey some-key",
                     "Content-Type": "application/json"
                  }
                            """)
                            .build(),
                        ConnectorConfigOverrideFieldArgs.builder()
                            .fieldName("additionalBodyFields")
                            .template("""
              {
                "alias": "{{alert.groupingKey}}"
              }
                            """)
                            .build())
                    .build())
                .build());
    
            var slackExample = new Connector("slackExample", ConnectorArgs.builder()
                .type("slack")
                .description("slack connector example")
                .connectorConfig(ConnectorConnectorConfigArgs.builder()
                    .fields(                
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("integrationId")
                            .value("iac-internal")
                            .build(),
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("fallbackChannel")
                            .value("iac-internal")
                            .build(),
                        ConnectorConnectorConfigFieldArgs.builder()
                            .fieldName("channel")
                            .value("iac-internal")
                            .build())
                    .build())
                .configOverrides(ConnectorConfigOverrideArgs.builder()
                    .entityType("alerts")
                    .fields(ConnectorConfigOverrideFieldArgs.builder()
                        .fieldName("channel")
                        .template("""
                {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-channel
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-channel
                {% else %}
                generic-channel
                {% endif %}
                        """)
                        .build())
                    .build())
                .build());
    
            var pagerdutyExample = new Connector("pagerdutyExample", ConnectorArgs.builder()
                .type("pagerduty")
                .description("pagerduty connector example")
                .connectorConfig(ConnectorConnectorConfigArgs.builder()
                    .fields(ConnectorConnectorConfigFieldArgs.builder()
                        .fieldName("integrationKey")
                        .value("integrationKey-example")
                        .build())
                    .build())
                .configOverrides(ConnectorConfigOverrideArgs.builder()
                    .entityType("alerts")
                    .fields(ConnectorConfigOverrideFieldArgs.builder()
                        .fieldName("integrationKey")
                        .template("""
                {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                sample-integration-key
                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                another-integrations-key
                {% else %}
                generic-integration-key
                {% endif %}
                        """)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      genericHttpsExample:
        type: coralogix:Connector
        properties:
          connectorId: generic_https_example
          # This field is optional, if not provided a random id will be generated
          type: generic_https
          description: generic-https connector example
          connectorConfig:
            fields:
              - fieldName: url
                value: https://api.opsgenie.com/v2/alerts
              - fieldName: method
                value: POST
              - fieldName: additionalHeaders
                value:
                  fn::toJSON:
                    Authorization: GenieKey <key>
                    Content-Type: application/json
              - fieldName: additionalBodyFields
                value:
                  fn::toJSON:
                    alias: '{{alert.groupingKey}}'
          configOverrides:
            - entityType: alerts
              fields:
                - fieldName: url
                  template: |2
                                {% if alert.status == 'Triggered' %}
                                https://api.opsgenie.com/v2/alerts
                                {% else %}
                                https://api.opsgenie.com/v2/alerts/{{alert.groupingKey}}/close?identifierType=alias
                                {% endif %}
                - fieldName: additionalHeaders
                  template: |2
                                    {
                                     "Authorization": "GenieKey some-key",
                                     "Content-Type": "application/json"
                                  }
                - fieldName: additionalBodyFields
                  template: |2
                              {
                                "alias": "{{alert.groupingKey}}"
                              }
      slackExample:
        type: coralogix:Connector
        properties:
          type: slack
          description: slack connector example
          connectorConfig:
            fields:
              - fieldName: integrationId
                value: iac-internal
              - fieldName: fallbackChannel
                value: iac-internal
              - fieldName: channel
                value: iac-internal
          configOverrides:
            - entityType: alerts
              fields:
                - fieldName: channel
                  template: |2
                                {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                                sample-channel
                                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                                another-channel
                                {% else %}
                                generic-channel
                                {% endif %}
      pagerdutyExample:
        type: coralogix:Connector
        properties:
          type: pagerduty
          description: pagerduty connector example
          connectorConfig:
            fields:
              - fieldName: integrationKey
                value: integrationKey-example
          configOverrides:
            - entityType: alerts
              fields:
                - fieldName: integrationKey
                  template: |2
                                {% if alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "sample" %}
                                sample-integration-key
                                {% elif alert.groups[0].keyValues[alertDef.groupByKeys[1]]|lower == "another" %}
                                another-integrations-key
                                {% else %}
                                generic-integration-key
                                {% endif %}
    

    Create Connector Resource

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

    Constructor syntax

    new Connector(name: string, args: ConnectorArgs, opts?: CustomResourceOptions);
    @overload
    def Connector(resource_name: str,
                  args: ConnectorArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Connector(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  type: Optional[str] = None,
                  config_overrides: Optional[Sequence[ConnectorConfigOverrideArgs]] = None,
                  connector_config: Optional[ConnectorConnectorConfigArgs] = None,
                  connector_id: Optional[str] = None,
                  description: Optional[str] = None,
                  name: Optional[str] = None)
    func NewConnector(ctx *Context, name string, args ConnectorArgs, opts ...ResourceOption) (*Connector, error)
    public Connector(string name, ConnectorArgs args, CustomResourceOptions? opts = null)
    public Connector(String name, ConnectorArgs args)
    public Connector(String name, ConnectorArgs args, CustomResourceOptions options)
    
    type: coralogix:Connector
    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 ConnectorArgs
    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 ConnectorArgs
    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 ConnectorArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ConnectorArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ConnectorArgs
    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 connectorResource = new Coralogix.Connector("connectorResource", new()
    {
        Type = "string",
        ConfigOverrides = new[]
        {
            new Coralogix.Inputs.ConnectorConfigOverrideArgs
            {
                EntityType = "string",
                Fields = new[]
                {
                    new Coralogix.Inputs.ConnectorConfigOverrideFieldArgs
                    {
                        FieldName = "string",
                        Template = "string",
                    },
                },
            },
        },
        ConnectorConfig = new Coralogix.Inputs.ConnectorConnectorConfigArgs
        {
            Fields = new[]
            {
                new Coralogix.Inputs.ConnectorConnectorConfigFieldArgs
                {
                    FieldName = "string",
                    Value = "string",
                },
            },
        },
        ConnectorId = "string",
        Description = "string",
        Name = "string",
    });
    
    example, err := coralogix.NewConnector(ctx, "connectorResource", &coralogix.ConnectorArgs{
    	Type: pulumi.String("string"),
    	ConfigOverrides: coralogix.ConnectorConfigOverrideArray{
    		&coralogix.ConnectorConfigOverrideArgs{
    			EntityType: pulumi.String("string"),
    			Fields: coralogix.ConnectorConfigOverrideFieldArray{
    				&coralogix.ConnectorConfigOverrideFieldArgs{
    					FieldName: pulumi.String("string"),
    					Template:  pulumi.String("string"),
    				},
    			},
    		},
    	},
    	ConnectorConfig: &coralogix.ConnectorConnectorConfigArgs{
    		Fields: coralogix.ConnectorConnectorConfigFieldArray{
    			&coralogix.ConnectorConnectorConfigFieldArgs{
    				FieldName: pulumi.String("string"),
    				Value:     pulumi.String("string"),
    			},
    		},
    	},
    	ConnectorId: pulumi.String("string"),
    	Description: pulumi.String("string"),
    	Name:        pulumi.String("string"),
    })
    
    var connectorResource = new Connector("connectorResource", ConnectorArgs.builder()
        .type("string")
        .configOverrides(ConnectorConfigOverrideArgs.builder()
            .entityType("string")
            .fields(ConnectorConfigOverrideFieldArgs.builder()
                .fieldName("string")
                .template("string")
                .build())
            .build())
        .connectorConfig(ConnectorConnectorConfigArgs.builder()
            .fields(ConnectorConnectorConfigFieldArgs.builder()
                .fieldName("string")
                .value("string")
                .build())
            .build())
        .connectorId("string")
        .description("string")
        .name("string")
        .build());
    
    connector_resource = coralogix.Connector("connectorResource",
        type="string",
        config_overrides=[{
            "entity_type": "string",
            "fields": [{
                "field_name": "string",
                "template": "string",
            }],
        }],
        connector_config={
            "fields": [{
                "field_name": "string",
                "value": "string",
            }],
        },
        connector_id="string",
        description="string",
        name="string")
    
    const connectorResource = new coralogix.Connector("connectorResource", {
        type: "string",
        configOverrides: [{
            entityType: "string",
            fields: [{
                fieldName: "string",
                template: "string",
            }],
        }],
        connectorConfig: {
            fields: [{
                fieldName: "string",
                value: "string",
            }],
        },
        connectorId: "string",
        description: "string",
        name: "string",
    });
    
    type: coralogix:Connector
    properties:
        configOverrides:
            - entityType: string
              fields:
                - fieldName: string
                  template: string
        connectorConfig:
            fields:
                - fieldName: string
                  value: string
        connectorId: string
        description: string
        name: string
        type: string
    

    Connector 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 Connector resource accepts the following input properties:

    Type string
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    ConfigOverrides List<ConnectorConfigOverride>
    ConnectorConfig ConnectorConnectorConfig
    ConnectorId string
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    Description string
    Name string
    Connector name.
    Type string
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    ConfigOverrides []ConnectorConfigOverrideArgs
    ConnectorConfig ConnectorConnectorConfigArgs
    ConnectorId string
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    Description string
    Name string
    Connector name.
    type String
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    configOverrides List<ConnectorConfigOverride>
    connectorConfig ConnectorConnectorConfig
    connectorId String
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description String
    name String
    Connector name.
    type string
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    configOverrides ConnectorConfigOverride[]
    connectorConfig ConnectorConnectorConfig
    connectorId string
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description string
    name string
    Connector name.
    type str
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    config_overrides Sequence[ConnectorConfigOverrideArgs]
    connector_config ConnectorConnectorConfigArgs
    connector_id str
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description str
    name str
    Connector name.
    type String
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    configOverrides List<Property Map>
    connectorConfig Property Map
    connectorId String
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description String
    name String
    Connector name.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Connector 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 Connector Resource

    Get an existing Connector 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?: ConnectorState, opts?: CustomResourceOptions): Connector
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            config_overrides: Optional[Sequence[ConnectorConfigOverrideArgs]] = None,
            connector_config: Optional[ConnectorConnectorConfigArgs] = None,
            connector_id: Optional[str] = None,
            description: Optional[str] = None,
            name: Optional[str] = None,
            type: Optional[str] = None) -> Connector
    func GetConnector(ctx *Context, name string, id IDInput, state *ConnectorState, opts ...ResourceOption) (*Connector, error)
    public static Connector Get(string name, Input<string> id, ConnectorState? state, CustomResourceOptions? opts = null)
    public static Connector get(String name, Output<String> id, ConnectorState state, CustomResourceOptions options)
    resources:  _:    type: coralogix:Connector    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:
    ConfigOverrides List<ConnectorConfigOverride>
    ConnectorConfig ConnectorConnectorConfig
    ConnectorId string
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    Description string
    Name string
    Connector name.
    Type string
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    ConfigOverrides []ConnectorConfigOverrideArgs
    ConnectorConfig ConnectorConnectorConfigArgs
    ConnectorId string
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    Description string
    Name string
    Connector name.
    Type string
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    configOverrides List<ConnectorConfigOverride>
    connectorConfig ConnectorConnectorConfig
    connectorId String
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description String
    name String
    Connector name.
    type String
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    configOverrides ConnectorConfigOverride[]
    connectorConfig ConnectorConnectorConfig
    connectorId string
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description string
    name string
    Connector name.
    type string
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    config_overrides Sequence[ConnectorConfigOverrideArgs]
    connector_config ConnectorConnectorConfigArgs
    connector_id str
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description str
    name str
    Connector name.
    type str
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]
    configOverrides List<Property Map>
    connectorConfig Property Map
    connectorId String
    Connector ID. Can be set by the user or generated by Coralogix. Requires recreation in case of change.
    description String
    name String
    Connector name.
    type String
    Connector type. Valid values are: [generic_https pagerduty slack unspecified]

    Supporting Types

    ConnectorConfigOverride, ConnectorConfigOverrideArgs

    EntityType string
    Entity type for the connector. Valid values are: [alerts unspecified]
    Fields List<ConnectorConfigOverrideField>
    EntityType string
    Entity type for the connector. Valid values are: [alerts unspecified]
    Fields []ConnectorConfigOverrideField
    entityType String
    Entity type for the connector. Valid values are: [alerts unspecified]
    fields List<ConnectorConfigOverrideField>
    entityType string
    Entity type for the connector. Valid values are: [alerts unspecified]
    fields ConnectorConfigOverrideField[]
    entity_type str
    Entity type for the connector. Valid values are: [alerts unspecified]
    fields Sequence[ConnectorConfigOverrideField]
    entityType String
    Entity type for the connector. Valid values are: [alerts unspecified]
    fields List<Property Map>

    ConnectorConfigOverrideField, ConnectorConfigOverrideFieldArgs

    FieldName string
    Template string
    FieldName string
    Template string
    fieldName String
    template String
    fieldName string
    template string
    fieldName String
    template String

    ConnectorConnectorConfig, ConnectorConnectorConfigArgs

    ConnectorConnectorConfigField, ConnectorConnectorConfigFieldArgs

    FieldName string
    Value string
    FieldName string
    Value string
    fieldName String
    value String
    fieldName string
    value string
    fieldName String
    value String

    Package Details

    Repository
    coralogix coralogix/terraform-provider-coralogix
    License
    Notes
    This Pulumi package is based on the coralogix Terraform Provider.
    coralogix logo
    coralogix 2.0.19 published on Monday, May 12, 2025 by coralogix