1. Packages
  2. Scaleway
  3. API Docs
  4. TemWebhook
Scaleway v1.20.0 published on Monday, Nov 4, 2024 by pulumiverse

scaleway.TemWebhook

Explore with Pulumi AI

scaleway logo
Scaleway v1.20.0 published on Monday, Nov 4, 2024 by pulumiverse

    Creates and manages Scaleway Transactional Email Webhooks. For more information, refer to the API documentation.

    Example Usage

    Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    
    const main = new scaleway.TemWebhook("main", {
        domainId: "your-domain-id",
        eventTypes: [
            "email_delivered",
            "email_bounced",
        ],
        snsArn: "arn:scw:sns:fr-par:project-xxxx:your-sns-topic",
        name: "example-webhook",
    });
    
    import pulumi
    import pulumiverse_scaleway as scaleway
    
    main = scaleway.TemWebhook("main",
        domain_id="your-domain-id",
        event_types=[
            "email_delivered",
            "email_bounced",
        ],
        sns_arn="arn:scw:sns:fr-par:project-xxxx:your-sns-topic",
        name="example-webhook")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := scaleway.NewTemWebhook(ctx, "main", &scaleway.TemWebhookArgs{
    			DomainId: pulumi.String("your-domain-id"),
    			EventTypes: pulumi.StringArray{
    				pulumi.String("email_delivered"),
    				pulumi.String("email_bounced"),
    			},
    			SnsArn: pulumi.String("arn:scw:sns:fr-par:project-xxxx:your-sns-topic"),
    			Name:   pulumi.String("example-webhook"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Pulumiverse.Scaleway;
    
    return await Deployment.RunAsync(() => 
    {
        var main = new Scaleway.TemWebhook("main", new()
        {
            DomainId = "your-domain-id",
            EventTypes = new[]
            {
                "email_delivered",
                "email_bounced",
            },
            SnsArn = "arn:scw:sns:fr-par:project-xxxx:your-sns-topic",
            Name = "example-webhook",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.TemWebhook;
    import com.pulumi.scaleway.TemWebhookArgs;
    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 main = new TemWebhook("main", TemWebhookArgs.builder()
                .domainId("your-domain-id")
                .eventTypes(            
                    "email_delivered",
                    "email_bounced")
                .snsArn("arn:scw:sns:fr-par:project-xxxx:your-sns-topic")
                .name("example-webhook")
                .build());
    
        }
    }
    
    resources:
      main:
        type: scaleway:TemWebhook
        properties:
          domainId: your-domain-id
          eventTypes:
            - email_delivered
            - email_bounced
          snsArn: arn:scw:sns:fr-par:project-xxxx:your-sns-topic
          name: example-webhook
    

    Complete Example with Dependencies

    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    
    const config = new pulumi.Config();
    const domainName = config.require("domainName");
    const sns = new scaleway.MnqSns("sns", {});
    const snsCredentials = new scaleway.MnqSnsCredentials("sns_credentials", {permissions: {
        canManage: true,
    }});
    const snsTopic = new scaleway.MnqSnsTopic("sns_topic", {
        name: "test-mnq-sns-topic-basic",
        accessKey: snsCredentials.accessKey,
        secretKey: snsCredentials.secretKey,
    });
    const cr01 = new scaleway.TemDomain("cr01", {
        name: domainName,
        acceptTos: true,
    });
    const spf = new scaleway.DomainRecord("spf", {
        dnsZone: domainName,
        type: "TXT",
        data: pulumi.interpolate`v=spf1 ${cr01.spfConfig} -all`,
    });
    const dkim = new scaleway.DomainRecord("dkim", {
        dnsZone: domainName,
        name: pulumi.interpolate`${cr01.projectId}._domainkey`,
        type: "TXT",
        data: cr01.dkimConfig,
    });
    const mx = new scaleway.DomainRecord("mx", {
        dnsZone: domainName,
        type: "MX",
        data: ".",
    });
    const dmarc = new scaleway.DomainRecord("dmarc", {
        dnsZone: domainName,
        name: cr01.dmarcName,
        type: "TXT",
        data: cr01.dmarcConfig,
    });
    const valid = new scaleway.TemDomainValidation("valid", {
        domainId: cr01.id,
        region: cr01.region,
        timeout: 3600,
    });
    const webhook = new scaleway.TemWebhook("webhook", {
        name: "example-webhook",
        domainId: cr01.id,
        eventTypes: [
            "email_delivered",
            "email_bounced",
        ],
        snsArn: snsTopic.arn,
    }, {
        dependsOn: [
            valid,
            snsTopic,
        ],
    });
    
    import pulumi
    import pulumiverse_scaleway as scaleway
    
    config = pulumi.Config()
    domain_name = config.require("domainName")
    sns = scaleway.MnqSns("sns")
    sns_credentials = scaleway.MnqSnsCredentials("sns_credentials", permissions={
        "can_manage": True,
    })
    sns_topic = scaleway.MnqSnsTopic("sns_topic",
        name="test-mnq-sns-topic-basic",
        access_key=sns_credentials.access_key,
        secret_key=sns_credentials.secret_key)
    cr01 = scaleway.TemDomain("cr01",
        name=domain_name,
        accept_tos=True)
    spf = scaleway.DomainRecord("spf",
        dns_zone=domain_name,
        type="TXT",
        data=cr01.spf_config.apply(lambda spf_config: f"v=spf1 {spf_config} -all"))
    dkim = scaleway.DomainRecord("dkim",
        dns_zone=domain_name,
        name=cr01.project_id.apply(lambda project_id: f"{project_id}._domainkey"),
        type="TXT",
        data=cr01.dkim_config)
    mx = scaleway.DomainRecord("mx",
        dns_zone=domain_name,
        type="MX",
        data=".")
    dmarc = scaleway.DomainRecord("dmarc",
        dns_zone=domain_name,
        name=cr01.dmarc_name,
        type="TXT",
        data=cr01.dmarc_config)
    valid = scaleway.TemDomainValidation("valid",
        domain_id=cr01.id,
        region=cr01.region,
        timeout=3600)
    webhook = scaleway.TemWebhook("webhook",
        name="example-webhook",
        domain_id=cr01.id,
        event_types=[
            "email_delivered",
            "email_bounced",
        ],
        sns_arn=sns_topic.arn,
        opts = pulumi.ResourceOptions(depends_on=[
                valid,
                sns_topic,
            ]))
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		domainName := cfg.Require("domainName")
    		_, err := scaleway.NewMnqSns(ctx, "sns", nil)
    		if err != nil {
    			return err
    		}
    		snsCredentials, err := scaleway.NewMnqSnsCredentials(ctx, "sns_credentials", &scaleway.MnqSnsCredentialsArgs{
    			Permissions: &scaleway.MnqSnsCredentialsPermissionsArgs{
    				CanManage: pulumi.Bool(true),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		snsTopic, err := scaleway.NewMnqSnsTopic(ctx, "sns_topic", &scaleway.MnqSnsTopicArgs{
    			Name:      pulumi.String("test-mnq-sns-topic-basic"),
    			AccessKey: snsCredentials.AccessKey,
    			SecretKey: snsCredentials.SecretKey,
    		})
    		if err != nil {
    			return err
    		}
    		cr01, err := scaleway.NewTemDomain(ctx, "cr01", &scaleway.TemDomainArgs{
    			Name:      pulumi.String(domainName),
    			AcceptTos: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = scaleway.NewDomainRecord(ctx, "spf", &scaleway.DomainRecordArgs{
    			DnsZone: pulumi.String(domainName),
    			Type:    pulumi.String("TXT"),
    			Data: cr01.SpfConfig.ApplyT(func(spfConfig string) (string, error) {
    				return fmt.Sprintf("v=spf1 %v -all", spfConfig), nil
    			}).(pulumi.StringOutput),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = scaleway.NewDomainRecord(ctx, "dkim", &scaleway.DomainRecordArgs{
    			DnsZone: pulumi.String(domainName),
    			Name: cr01.ProjectId.ApplyT(func(projectId string) (string, error) {
    				return fmt.Sprintf("%v._domainkey", projectId), nil
    			}).(pulumi.StringOutput),
    			Type: pulumi.String("TXT"),
    			Data: cr01.DkimConfig,
    		})
    		if err != nil {
    			return err
    		}
    		_, err = scaleway.NewDomainRecord(ctx, "mx", &scaleway.DomainRecordArgs{
    			DnsZone: pulumi.String(domainName),
    			Type:    pulumi.String("MX"),
    			Data:    pulumi.String("."),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = scaleway.NewDomainRecord(ctx, "dmarc", &scaleway.DomainRecordArgs{
    			DnsZone: pulumi.String(domainName),
    			Name:    cr01.DmarcName,
    			Type:    pulumi.String("TXT"),
    			Data:    cr01.DmarcConfig,
    		})
    		if err != nil {
    			return err
    		}
    		valid, err := scaleway.NewTemDomainValidation(ctx, "valid", &scaleway.TemDomainValidationArgs{
    			DomainId: cr01.ID(),
    			Region:   cr01.Region,
    			Timeout:  pulumi.Int(3600),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = scaleway.NewTemWebhook(ctx, "webhook", &scaleway.TemWebhookArgs{
    			Name:     pulumi.String("example-webhook"),
    			DomainId: cr01.ID(),
    			EventTypes: pulumi.StringArray{
    				pulumi.String("email_delivered"),
    				pulumi.String("email_bounced"),
    			},
    			SnsArn: snsTopic.Arn,
    		}, pulumi.DependsOn([]pulumi.Resource{
    			valid,
    			snsTopic,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Pulumiverse.Scaleway;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var domainName = config.Require("domainName");
        var sns = new Scaleway.MnqSns("sns");
    
        var snsCredentials = new Scaleway.MnqSnsCredentials("sns_credentials", new()
        {
            Permissions = new Scaleway.Inputs.MnqSnsCredentialsPermissionsArgs
            {
                CanManage = true,
            },
        });
    
        var snsTopic = new Scaleway.MnqSnsTopic("sns_topic", new()
        {
            Name = "test-mnq-sns-topic-basic",
            AccessKey = snsCredentials.AccessKey,
            SecretKey = snsCredentials.SecretKey,
        });
    
        var cr01 = new Scaleway.TemDomain("cr01", new()
        {
            Name = domainName,
            AcceptTos = true,
        });
    
        var spf = new Scaleway.DomainRecord("spf", new()
        {
            DnsZone = domainName,
            Type = "TXT",
            Data = cr01.SpfConfig.Apply(spfConfig => $"v=spf1 {spfConfig} -all"),
        });
    
        var dkim = new Scaleway.DomainRecord("dkim", new()
        {
            DnsZone = domainName,
            Name = cr01.ProjectId.Apply(projectId => $"{projectId}._domainkey"),
            Type = "TXT",
            Data = cr01.DkimConfig,
        });
    
        var mx = new Scaleway.DomainRecord("mx", new()
        {
            DnsZone = domainName,
            Type = "MX",
            Data = ".",
        });
    
        var dmarc = new Scaleway.DomainRecord("dmarc", new()
        {
            DnsZone = domainName,
            Name = cr01.DmarcName,
            Type = "TXT",
            Data = cr01.DmarcConfig,
        });
    
        var valid = new Scaleway.TemDomainValidation("valid", new()
        {
            DomainId = cr01.Id,
            Region = cr01.Region,
            Timeout = 3600,
        });
    
        var webhook = new Scaleway.TemWebhook("webhook", new()
        {
            Name = "example-webhook",
            DomainId = cr01.Id,
            EventTypes = new[]
            {
                "email_delivered",
                "email_bounced",
            },
            SnsArn = snsTopic.Arn,
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                valid,
                snsTopic,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.MnqSns;
    import com.pulumi.scaleway.MnqSnsCredentials;
    import com.pulumi.scaleway.MnqSnsCredentialsArgs;
    import com.pulumi.scaleway.inputs.MnqSnsCredentialsPermissionsArgs;
    import com.pulumi.scaleway.MnqSnsTopic;
    import com.pulumi.scaleway.MnqSnsTopicArgs;
    import com.pulumi.scaleway.TemDomain;
    import com.pulumi.scaleway.TemDomainArgs;
    import com.pulumi.scaleway.DomainRecord;
    import com.pulumi.scaleway.DomainRecordArgs;
    import com.pulumi.scaleway.TemDomainValidation;
    import com.pulumi.scaleway.TemDomainValidationArgs;
    import com.pulumi.scaleway.TemWebhook;
    import com.pulumi.scaleway.TemWebhookArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            final var config = ctx.config();
            final var domainName = config.get("domainName");
            var sns = new MnqSns("sns");
    
            var snsCredentials = new MnqSnsCredentials("snsCredentials", MnqSnsCredentialsArgs.builder()
                .permissions(MnqSnsCredentialsPermissionsArgs.builder()
                    .canManage(true)
                    .build())
                .build());
    
            var snsTopic = new MnqSnsTopic("snsTopic", MnqSnsTopicArgs.builder()
                .name("test-mnq-sns-topic-basic")
                .accessKey(snsCredentials.accessKey())
                .secretKey(snsCredentials.secretKey())
                .build());
    
            var cr01 = new TemDomain("cr01", TemDomainArgs.builder()
                .name(domainName)
                .acceptTos(true)
                .build());
    
            var spf = new DomainRecord("spf", DomainRecordArgs.builder()
                .dnsZone(domainName)
                .type("TXT")
                .data(cr01.spfConfig().applyValue(spfConfig -> String.format("v=spf1 %s -all", spfConfig)))
                .build());
    
            var dkim = new DomainRecord("dkim", DomainRecordArgs.builder()
                .dnsZone(domainName)
                .name(cr01.projectId().applyValue(projectId -> String.format("%s._domainkey", projectId)))
                .type("TXT")
                .data(cr01.dkimConfig())
                .build());
    
            var mx = new DomainRecord("mx", DomainRecordArgs.builder()
                .dnsZone(domainName)
                .type("MX")
                .data(".")
                .build());
    
            var dmarc = new DomainRecord("dmarc", DomainRecordArgs.builder()
                .dnsZone(domainName)
                .name(cr01.dmarcName())
                .type("TXT")
                .data(cr01.dmarcConfig())
                .build());
    
            var valid = new TemDomainValidation("valid", TemDomainValidationArgs.builder()
                .domainId(cr01.id())
                .region(cr01.region())
                .timeout(3600)
                .build());
    
            var webhook = new TemWebhook("webhook", TemWebhookArgs.builder()
                .name("example-webhook")
                .domainId(cr01.id())
                .eventTypes(            
                    "email_delivered",
                    "email_bounced")
                .snsArn(snsTopic.arn())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        valid,
                        snsTopic)
                    .build());
    
        }
    }
    
    configuration:
      domainName:
        type: string
    resources:
      sns:
        type: scaleway:MnqSns
      snsCredentials:
        type: scaleway:MnqSnsCredentials
        name: sns_credentials
        properties:
          permissions:
            canManage: true
      snsTopic:
        type: scaleway:MnqSnsTopic
        name: sns_topic
        properties:
          name: test-mnq-sns-topic-basic
          accessKey: ${snsCredentials.accessKey}
          secretKey: ${snsCredentials.secretKey}
      cr01:
        type: scaleway:TemDomain
        properties:
          name: ${domainName}
          acceptTos: true
      spf:
        type: scaleway:DomainRecord
        properties:
          dnsZone: ${domainName}
          type: TXT
          data: v=spf1 ${cr01.spfConfig} -all
      dkim:
        type: scaleway:DomainRecord
        properties:
          dnsZone: ${domainName}
          name: ${cr01.projectId}._domainkey
          type: TXT
          data: ${cr01.dkimConfig}
      mx:
        type: scaleway:DomainRecord
        properties:
          dnsZone: ${domainName}
          type: MX
          data: .
      dmarc:
        type: scaleway:DomainRecord
        properties:
          dnsZone: ${domainName}
          name: ${cr01.dmarcName}
          type: TXT
          data: ${cr01.dmarcConfig}
      valid:
        type: scaleway:TemDomainValidation
        properties:
          domainId: ${cr01.id}
          region: ${cr01.region}
          timeout: 3600
      webhook:
        type: scaleway:TemWebhook
        properties:
          name: example-webhook
          domainId: ${cr01.id}
          eventTypes:
            - email_delivered
            - email_bounced
          snsArn: ${snsTopic.arn}
        options:
          dependson:
            - ${valid}
            - ${snsTopic}
    

    Create TemWebhook Resource

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

    Constructor syntax

    new TemWebhook(name: string, args: TemWebhookArgs, opts?: CustomResourceOptions);
    @overload
    def TemWebhook(resource_name: str,
                   args: TemWebhookArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def TemWebhook(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   domain_id: Optional[str] = None,
                   event_types: Optional[Sequence[str]] = None,
                   sns_arn: Optional[str] = None,
                   name: Optional[str] = None,
                   project_id: Optional[str] = None,
                   region: Optional[str] = None)
    func NewTemWebhook(ctx *Context, name string, args TemWebhookArgs, opts ...ResourceOption) (*TemWebhook, error)
    public TemWebhook(string name, TemWebhookArgs args, CustomResourceOptions? opts = null)
    public TemWebhook(String name, TemWebhookArgs args)
    public TemWebhook(String name, TemWebhookArgs args, CustomResourceOptions options)
    
    type: scaleway:TemWebhook
    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 TemWebhookArgs
    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 TemWebhookArgs
    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 TemWebhookArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args TemWebhookArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args TemWebhookArgs
    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 temWebhookResource = new Scaleway.TemWebhook("temWebhookResource", new()
    {
        DomainId = "string",
        EventTypes = new[]
        {
            "string",
        },
        SnsArn = "string",
        Name = "string",
        ProjectId = "string",
        Region = "string",
    });
    
    example, err := scaleway.NewTemWebhook(ctx, "temWebhookResource", &scaleway.TemWebhookArgs{
    	DomainId: pulumi.String("string"),
    	EventTypes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	SnsArn:    pulumi.String("string"),
    	Name:      pulumi.String("string"),
    	ProjectId: pulumi.String("string"),
    	Region:    pulumi.String("string"),
    })
    
    var temWebhookResource = new TemWebhook("temWebhookResource", TemWebhookArgs.builder()
        .domainId("string")
        .eventTypes("string")
        .snsArn("string")
        .name("string")
        .projectId("string")
        .region("string")
        .build());
    
    tem_webhook_resource = scaleway.TemWebhook("temWebhookResource",
        domain_id="string",
        event_types=["string"],
        sns_arn="string",
        name="string",
        project_id="string",
        region="string")
    
    const temWebhookResource = new scaleway.TemWebhook("temWebhookResource", {
        domainId: "string",
        eventTypes: ["string"],
        snsArn: "string",
        name: "string",
        projectId: "string",
        region: "string",
    });
    
    type: scaleway:TemWebhook
    properties:
        domainId: string
        eventTypes:
            - string
        name: string
        projectId: string
        region: string
        snsArn: string
    

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

    DomainId string
    The ID of the domain the webhook is associated with.
    EventTypes List<string>
    A list of event types that trigger the webhook.
    SnsArn string
    The Amazon Resource Name (ARN) of the SNS topic.
    Name string
    The name of the webhook. Defaults to an autogenerated name if not provided.
    ProjectId string
    The ID of the project the webhook is associated with.
    Region string
    . The region in which the webhook should be created.
    DomainId string
    The ID of the domain the webhook is associated with.
    EventTypes []string
    A list of event types that trigger the webhook.
    SnsArn string
    The Amazon Resource Name (ARN) of the SNS topic.
    Name string
    The name of the webhook. Defaults to an autogenerated name if not provided.
    ProjectId string
    The ID of the project the webhook is associated with.
    Region string
    . The region in which the webhook should be created.
    domainId String
    The ID of the domain the webhook is associated with.
    eventTypes List<String>
    A list of event types that trigger the webhook.
    snsArn String
    The Amazon Resource Name (ARN) of the SNS topic.
    name String
    The name of the webhook. Defaults to an autogenerated name if not provided.
    projectId String
    The ID of the project the webhook is associated with.
    region String
    . The region in which the webhook should be created.
    domainId string
    The ID of the domain the webhook is associated with.
    eventTypes string[]
    A list of event types that trigger the webhook.
    snsArn string
    The Amazon Resource Name (ARN) of the SNS topic.
    name string
    The name of the webhook. Defaults to an autogenerated name if not provided.
    projectId string
    The ID of the project the webhook is associated with.
    region string
    . The region in which the webhook should be created.
    domain_id str
    The ID of the domain the webhook is associated with.
    event_types Sequence[str]
    A list of event types that trigger the webhook.
    sns_arn str
    The Amazon Resource Name (ARN) of the SNS topic.
    name str
    The name of the webhook. Defaults to an autogenerated name if not provided.
    project_id str
    The ID of the project the webhook is associated with.
    region str
    . The region in which the webhook should be created.
    domainId String
    The ID of the domain the webhook is associated with.
    eventTypes List<String>
    A list of event types that trigger the webhook.
    snsArn String
    The Amazon Resource Name (ARN) of the SNS topic.
    name String
    The name of the webhook. Defaults to an autogenerated name if not provided.
    projectId String
    The ID of the project the webhook is associated with.
    region String
    . The region in which the webhook should be created.

    Outputs

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

    CreatedAt string
    The date and time of the webhook's creation (RFC 3339 format).
    Id string
    The provider-assigned unique ID for this managed resource.
    OrganizationId string
    The ID of the organization the webhook belongs to.
    UpdatedAt string
    The date and time of the webhook's last update (RFC 3339 format).
    CreatedAt string
    The date and time of the webhook's creation (RFC 3339 format).
    Id string
    The provider-assigned unique ID for this managed resource.
    OrganizationId string
    The ID of the organization the webhook belongs to.
    UpdatedAt string
    The date and time of the webhook's last update (RFC 3339 format).
    createdAt String
    The date and time of the webhook's creation (RFC 3339 format).
    id String
    The provider-assigned unique ID for this managed resource.
    organizationId String
    The ID of the organization the webhook belongs to.
    updatedAt String
    The date and time of the webhook's last update (RFC 3339 format).
    createdAt string
    The date and time of the webhook's creation (RFC 3339 format).
    id string
    The provider-assigned unique ID for this managed resource.
    organizationId string
    The ID of the organization the webhook belongs to.
    updatedAt string
    The date and time of the webhook's last update (RFC 3339 format).
    created_at str
    The date and time of the webhook's creation (RFC 3339 format).
    id str
    The provider-assigned unique ID for this managed resource.
    organization_id str
    The ID of the organization the webhook belongs to.
    updated_at str
    The date and time of the webhook's last update (RFC 3339 format).
    createdAt String
    The date and time of the webhook's creation (RFC 3339 format).
    id String
    The provider-assigned unique ID for this managed resource.
    organizationId String
    The ID of the organization the webhook belongs to.
    updatedAt String
    The date and time of the webhook's last update (RFC 3339 format).

    Look up Existing TemWebhook Resource

    Get an existing TemWebhook 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?: TemWebhookState, opts?: CustomResourceOptions): TemWebhook
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            created_at: Optional[str] = None,
            domain_id: Optional[str] = None,
            event_types: Optional[Sequence[str]] = None,
            name: Optional[str] = None,
            organization_id: Optional[str] = None,
            project_id: Optional[str] = None,
            region: Optional[str] = None,
            sns_arn: Optional[str] = None,
            updated_at: Optional[str] = None) -> TemWebhook
    func GetTemWebhook(ctx *Context, name string, id IDInput, state *TemWebhookState, opts ...ResourceOption) (*TemWebhook, error)
    public static TemWebhook Get(string name, Input<string> id, TemWebhookState? state, CustomResourceOptions? opts = null)
    public static TemWebhook get(String name, Output<String> id, TemWebhookState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    CreatedAt string
    The date and time of the webhook's creation (RFC 3339 format).
    DomainId string
    The ID of the domain the webhook is associated with.
    EventTypes List<string>
    A list of event types that trigger the webhook.
    Name string
    The name of the webhook. Defaults to an autogenerated name if not provided.
    OrganizationId string
    The ID of the organization the webhook belongs to.
    ProjectId string
    The ID of the project the webhook is associated with.
    Region string
    . The region in which the webhook should be created.
    SnsArn string
    The Amazon Resource Name (ARN) of the SNS topic.
    UpdatedAt string
    The date and time of the webhook's last update (RFC 3339 format).
    CreatedAt string
    The date and time of the webhook's creation (RFC 3339 format).
    DomainId string
    The ID of the domain the webhook is associated with.
    EventTypes []string
    A list of event types that trigger the webhook.
    Name string
    The name of the webhook. Defaults to an autogenerated name if not provided.
    OrganizationId string
    The ID of the organization the webhook belongs to.
    ProjectId string
    The ID of the project the webhook is associated with.
    Region string
    . The region in which the webhook should be created.
    SnsArn string
    The Amazon Resource Name (ARN) of the SNS topic.
    UpdatedAt string
    The date and time of the webhook's last update (RFC 3339 format).
    createdAt String
    The date and time of the webhook's creation (RFC 3339 format).
    domainId String
    The ID of the domain the webhook is associated with.
    eventTypes List<String>
    A list of event types that trigger the webhook.
    name String
    The name of the webhook. Defaults to an autogenerated name if not provided.
    organizationId String
    The ID of the organization the webhook belongs to.
    projectId String
    The ID of the project the webhook is associated with.
    region String
    . The region in which the webhook should be created.
    snsArn String
    The Amazon Resource Name (ARN) of the SNS topic.
    updatedAt String
    The date and time of the webhook's last update (RFC 3339 format).
    createdAt string
    The date and time of the webhook's creation (RFC 3339 format).
    domainId string
    The ID of the domain the webhook is associated with.
    eventTypes string[]
    A list of event types that trigger the webhook.
    name string
    The name of the webhook. Defaults to an autogenerated name if not provided.
    organizationId string
    The ID of the organization the webhook belongs to.
    projectId string
    The ID of the project the webhook is associated with.
    region string
    . The region in which the webhook should be created.
    snsArn string
    The Amazon Resource Name (ARN) of the SNS topic.
    updatedAt string
    The date and time of the webhook's last update (RFC 3339 format).
    created_at str
    The date and time of the webhook's creation (RFC 3339 format).
    domain_id str
    The ID of the domain the webhook is associated with.
    event_types Sequence[str]
    A list of event types that trigger the webhook.
    name str
    The name of the webhook. Defaults to an autogenerated name if not provided.
    organization_id str
    The ID of the organization the webhook belongs to.
    project_id str
    The ID of the project the webhook is associated with.
    region str
    . The region in which the webhook should be created.
    sns_arn str
    The Amazon Resource Name (ARN) of the SNS topic.
    updated_at str
    The date and time of the webhook's last update (RFC 3339 format).
    createdAt String
    The date and time of the webhook's creation (RFC 3339 format).
    domainId String
    The ID of the domain the webhook is associated with.
    eventTypes List<String>
    A list of event types that trigger the webhook.
    name String
    The name of the webhook. Defaults to an autogenerated name if not provided.
    organizationId String
    The ID of the organization the webhook belongs to.
    projectId String
    The ID of the project the webhook is associated with.
    region String
    . The region in which the webhook should be created.
    snsArn String
    The Amazon Resource Name (ARN) of the SNS topic.
    updatedAt String
    The date and time of the webhook's last update (RFC 3339 format).

    Import

    Webhooks can be imported using the {region}/{id}, e.g.

    bash

    $ pulumi import scaleway:index/temWebhook:TemWebhook main fr-par/11111111-1111-1111-1111-111111111111
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    scaleway pulumiverse/pulumi-scaleway
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the scaleway Terraform Provider.
    scaleway logo
    Scaleway v1.20.0 published on Monday, Nov 4, 2024 by pulumiverse