1. Packages
  2. Opsgenie
  3. API Docs
  4. ApiIntegration
Opsgenie v1.3.10 published on Friday, Aug 2, 2024 by Pulumi

opsgenie.ApiIntegration

Explore with Pulumi AI

opsgenie logo
Opsgenie v1.3.10 published on Friday, Aug 2, 2024 by Pulumi

    Manages an API Integration within Opsgenie.

    Create ApiIntegration Resource

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

    Constructor syntax

    new ApiIntegration(name: string, args?: ApiIntegrationArgs, opts?: CustomResourceOptions);
    @overload
    def ApiIntegration(resource_name: str,
                       args: Optional[ApiIntegrationArgs] = None,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def ApiIntegration(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       allow_configuration_access: Optional[bool] = None,
                       allow_write_access: Optional[bool] = None,
                       enabled: Optional[bool] = None,
                       headers: Optional[Mapping[str, str]] = None,
                       ignore_responders_from_payload: Optional[bool] = None,
                       name: Optional[str] = None,
                       owner_team_id: Optional[str] = None,
                       responders: Optional[Sequence[ApiIntegrationResponderArgs]] = None,
                       suppress_notifications: Optional[bool] = None,
                       type: Optional[str] = None,
                       webhook_url: Optional[str] = None)
    func NewApiIntegration(ctx *Context, name string, args *ApiIntegrationArgs, opts ...ResourceOption) (*ApiIntegration, error)
    public ApiIntegration(string name, ApiIntegrationArgs? args = null, CustomResourceOptions? opts = null)
    public ApiIntegration(String name, ApiIntegrationArgs args)
    public ApiIntegration(String name, ApiIntegrationArgs args, CustomResourceOptions options)
    
    type: opsgenie:ApiIntegration
    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 ApiIntegrationArgs
    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 ApiIntegrationArgs
    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 ApiIntegrationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ApiIntegrationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ApiIntegrationArgs
    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 apiIntegrationResource = new Opsgenie.ApiIntegration("apiIntegrationResource", new()
    {
        AllowConfigurationAccess = false,
        AllowWriteAccess = false,
        Enabled = false,
        Headers = 
        {
            { "string", "string" },
        },
        IgnoreRespondersFromPayload = false,
        Name = "string",
        OwnerTeamId = "string",
        Responders = new[]
        {
            new Opsgenie.Inputs.ApiIntegrationResponderArgs
            {
                Id = "string",
                Type = "string",
            },
        },
        SuppressNotifications = false,
        Type = "string",
        WebhookUrl = "string",
    });
    
    example, err := opsgenie.NewApiIntegration(ctx, "apiIntegrationResource", &opsgenie.ApiIntegrationArgs{
    	AllowConfigurationAccess: pulumi.Bool(false),
    	AllowWriteAccess:         pulumi.Bool(false),
    	Enabled:                  pulumi.Bool(false),
    	Headers: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	IgnoreRespondersFromPayload: pulumi.Bool(false),
    	Name:                        pulumi.String("string"),
    	OwnerTeamId:                 pulumi.String("string"),
    	Responders: opsgenie.ApiIntegrationResponderArray{
    		&opsgenie.ApiIntegrationResponderArgs{
    			Id:   pulumi.String("string"),
    			Type: pulumi.String("string"),
    		},
    	},
    	SuppressNotifications: pulumi.Bool(false),
    	Type:                  pulumi.String("string"),
    	WebhookUrl:            pulumi.String("string"),
    })
    
    var apiIntegrationResource = new ApiIntegration("apiIntegrationResource", ApiIntegrationArgs.builder()
        .allowConfigurationAccess(false)
        .allowWriteAccess(false)
        .enabled(false)
        .headers(Map.of("string", "string"))
        .ignoreRespondersFromPayload(false)
        .name("string")
        .ownerTeamId("string")
        .responders(ApiIntegrationResponderArgs.builder()
            .id("string")
            .type("string")
            .build())
        .suppressNotifications(false)
        .type("string")
        .webhookUrl("string")
        .build());
    
    api_integration_resource = opsgenie.ApiIntegration("apiIntegrationResource",
        allow_configuration_access=False,
        allow_write_access=False,
        enabled=False,
        headers={
            "string": "string",
        },
        ignore_responders_from_payload=False,
        name="string",
        owner_team_id="string",
        responders=[opsgenie.ApiIntegrationResponderArgs(
            id="string",
            type="string",
        )],
        suppress_notifications=False,
        type="string",
        webhook_url="string")
    
    const apiIntegrationResource = new opsgenie.ApiIntegration("apiIntegrationResource", {
        allowConfigurationAccess: false,
        allowWriteAccess: false,
        enabled: false,
        headers: {
            string: "string",
        },
        ignoreRespondersFromPayload: false,
        name: "string",
        ownerTeamId: "string",
        responders: [{
            id: "string",
            type: "string",
        }],
        suppressNotifications: false,
        type: "string",
        webhookUrl: "string",
    });
    
    type: opsgenie:ApiIntegration
    properties:
        allowConfigurationAccess: false
        allowWriteAccess: false
        enabled: false
        headers:
            string: string
        ignoreRespondersFromPayload: false
        name: string
        ownerTeamId: string
        responders:
            - id: string
              type: string
        suppressNotifications: false
        type: string
        webhookUrl: string
    

    ApiIntegration Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ApiIntegration resource accepts the following input properties:

    AllowConfigurationAccess bool
    AllowWriteAccess bool
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    Enabled bool
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    Headers Dictionary<string, string>
    IgnoreRespondersFromPayload bool
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    Name string
    Name of the integration. Name must be unique for each integration.
    OwnerTeamId string
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    Responders List<ApiIntegrationResponder>
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    SuppressNotifications bool
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    Type string
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    WebhookUrl string
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    AllowConfigurationAccess bool
    AllowWriteAccess bool
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    Enabled bool
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    Headers map[string]string
    IgnoreRespondersFromPayload bool
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    Name string
    Name of the integration. Name must be unique for each integration.
    OwnerTeamId string
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    Responders []ApiIntegrationResponderArgs
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    SuppressNotifications bool
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    Type string
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    WebhookUrl string
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allowConfigurationAccess Boolean
    allowWriteAccess Boolean
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    enabled Boolean
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers Map<String,String>
    ignoreRespondersFromPayload Boolean
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name String
    Name of the integration. Name must be unique for each integration.
    ownerTeamId String
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders List<ApiIntegrationResponder>
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppressNotifications Boolean
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type String
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhookUrl String
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allowConfigurationAccess boolean
    allowWriteAccess boolean
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    enabled boolean
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers {[key: string]: string}
    ignoreRespondersFromPayload boolean
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name string
    Name of the integration. Name must be unique for each integration.
    ownerTeamId string
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders ApiIntegrationResponder[]
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppressNotifications boolean
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type string
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhookUrl string
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allow_configuration_access bool
    allow_write_access bool
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    enabled bool
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers Mapping[str, str]
    ignore_responders_from_payload bool
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name str
    Name of the integration. Name must be unique for each integration.
    owner_team_id str
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders Sequence[ApiIntegrationResponderArgs]
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppress_notifications bool
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type str
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhook_url str
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allowConfigurationAccess Boolean
    allowWriteAccess Boolean
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    enabled Boolean
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers Map<String>
    ignoreRespondersFromPayload Boolean
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name String
    Name of the integration. Name must be unique for each integration.
    ownerTeamId String
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders List<Property Map>
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppressNotifications Boolean
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type String
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhookUrl String
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.

    Outputs

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

    ApiKey string
    (Computed) API key of the created integration
    Id string
    The provider-assigned unique ID for this managed resource.
    ApiKey string
    (Computed) API key of the created integration
    Id string
    The provider-assigned unique ID for this managed resource.
    apiKey String
    (Computed) API key of the created integration
    id String
    The provider-assigned unique ID for this managed resource.
    apiKey string
    (Computed) API key of the created integration
    id string
    The provider-assigned unique ID for this managed resource.
    api_key str
    (Computed) API key of the created integration
    id str
    The provider-assigned unique ID for this managed resource.
    apiKey String
    (Computed) API key of the created integration
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ApiIntegration Resource

    Get an existing ApiIntegration 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?: ApiIntegrationState, opts?: CustomResourceOptions): ApiIntegration
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            allow_configuration_access: Optional[bool] = None,
            allow_write_access: Optional[bool] = None,
            api_key: Optional[str] = None,
            enabled: Optional[bool] = None,
            headers: Optional[Mapping[str, str]] = None,
            ignore_responders_from_payload: Optional[bool] = None,
            name: Optional[str] = None,
            owner_team_id: Optional[str] = None,
            responders: Optional[Sequence[ApiIntegrationResponderArgs]] = None,
            suppress_notifications: Optional[bool] = None,
            type: Optional[str] = None,
            webhook_url: Optional[str] = None) -> ApiIntegration
    func GetApiIntegration(ctx *Context, name string, id IDInput, state *ApiIntegrationState, opts ...ResourceOption) (*ApiIntegration, error)
    public static ApiIntegration Get(string name, Input<string> id, ApiIntegrationState? state, CustomResourceOptions? opts = null)
    public static ApiIntegration get(String name, Output<String> id, ApiIntegrationState 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:
    AllowConfigurationAccess bool
    AllowWriteAccess bool
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    ApiKey string
    (Computed) API key of the created integration
    Enabled bool
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    Headers Dictionary<string, string>
    IgnoreRespondersFromPayload bool
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    Name string
    Name of the integration. Name must be unique for each integration.
    OwnerTeamId string
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    Responders List<ApiIntegrationResponder>
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    SuppressNotifications bool
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    Type string
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    WebhookUrl string
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    AllowConfigurationAccess bool
    AllowWriteAccess bool
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    ApiKey string
    (Computed) API key of the created integration
    Enabled bool
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    Headers map[string]string
    IgnoreRespondersFromPayload bool
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    Name string
    Name of the integration. Name must be unique for each integration.
    OwnerTeamId string
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    Responders []ApiIntegrationResponderArgs
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    SuppressNotifications bool
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    Type string
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    WebhookUrl string
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allowConfigurationAccess Boolean
    allowWriteAccess Boolean
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    apiKey String
    (Computed) API key of the created integration
    enabled Boolean
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers Map<String,String>
    ignoreRespondersFromPayload Boolean
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name String
    Name of the integration. Name must be unique for each integration.
    ownerTeamId String
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders List<ApiIntegrationResponder>
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppressNotifications Boolean
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type String
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhookUrl String
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allowConfigurationAccess boolean
    allowWriteAccess boolean
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    apiKey string
    (Computed) API key of the created integration
    enabled boolean
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers {[key: string]: string}
    ignoreRespondersFromPayload boolean
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name string
    Name of the integration. Name must be unique for each integration.
    ownerTeamId string
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders ApiIntegrationResponder[]
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppressNotifications boolean
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type string
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhookUrl string
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allow_configuration_access bool
    allow_write_access bool
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    api_key str
    (Computed) API key of the created integration
    enabled bool
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers Mapping[str, str]
    ignore_responders_from_payload bool
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name str
    Name of the integration. Name must be unique for each integration.
    owner_team_id str
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders Sequence[ApiIntegrationResponderArgs]
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppress_notifications bool
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type str
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhook_url str
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.
    allowConfigurationAccess Boolean
    allowWriteAccess Boolean
    This parameter is for configuring the write access of integration. If write access is restricted, the integration will not be authorized to write within any domain. Default: true.
    apiKey String
    (Computed) API key of the created integration
    enabled Boolean
    This parameter is for specifying whether the integration will be enabled or not. Default: true
    headers Map<String>
    ignoreRespondersFromPayload Boolean
    If enabled, the integration will ignore recipients sent in request payloads. Default: false.
    name String
    Name of the integration. Name must be unique for each integration.
    ownerTeamId String
    Owner team id of the integration. If changed, this will recreate a new API integration, which will probably have a different API key.
    responders List<Property Map>
    User, schedule, teams or escalation names to calculate which users will receive the notifications of the alert.
    suppressNotifications Boolean
    If enabled, notifications that come from alerts will be suppressed. Default: false.
    type String
    Type of the integration (API, Marid, Prometheus, etc). The full list of options can be found here.
    webhookUrl String
    It is required if type is Webhook. This is the url Opsgenie will be sending request to.

    Supporting Types

    ApiIntegrationResponder, ApiIntegrationResponderArgs

    Id string
    The id of the responder.
    Type string
    The responder type.
    Id string
    The id of the responder.
    Type string
    The responder type.
    id String
    The id of the responder.
    type String
    The responder type.
    id string
    The id of the responder.
    type string
    The responder type.
    id str
    The id of the responder.
    type str
    The responder type.
    id String
    The id of the responder.
    type String
    The responder type.

    Import

    API Integrations can be imported using the integration_id, e.g.

    $ pulumi import opsgenie:index/apiIntegration:ApiIntegration this integration_id`
    

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

    Package Details

    Repository
    Opsgenie pulumi/pulumi-opsgenie
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the opsgenie Terraform Provider.
    opsgenie logo
    Opsgenie v1.3.10 published on Friday, Aug 2, 2024 by Pulumi