1. Packages
  2. Incapsula Provider
  3. API Docs
  4. AbpWebsites
incapsula 3.32.1 published on Monday, Apr 14, 2025 by imperva

incapsula.AbpWebsites

Explore with Pulumi AI

Provides an ABP (Advanced Bot Protection) website resource. Allows you to enable and configure ABP for given websites.

This represents the canonical configuration of the ABP website groups and websites, if there are existing website groups or website, or they have different settings those will be removed or changed and not added as additional items.

NOTE: Due to limitations in ABP, the API key/id used to deploy this resource must match the account_id used in the resource (API key/id for a parent account do not work). All Incapsula sites associated with the resource must also be defined in that account.

Example Usage

Coming soon!
Coming soon!
Coming soon!
Coming soon!
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.incapsula.AbpWebsites;
import com.pulumi.incapsula.AbpWebsitesArgs;
import com.pulumi.incapsula.inputs.AbpWebsitesWebsiteGroupArgs;
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 abpWebsitesAbpWebsites = new AbpWebsites("abpWebsitesAbpWebsites", AbpWebsitesArgs.builder()
            .accountId(data.incapsula_account_data().account_data().current_account())
            .autoPublish(true)
            .websiteGroups(            
                AbpWebsitesWebsiteGroupArgs.builder()
                    .name("sites-1")
                    .websites(AbpWebsitesWebsiteGroupWebsiteArgs.builder()
                        .siteId(incapsula_site.sites-1().id())
                        .enableMitigation(false)
                        .build())
                    .build(),
                AbpWebsitesWebsiteGroupArgs.builder()
                    .name("sites-2")
                    .websites(AbpWebsitesWebsiteGroupWebsiteArgs.builder()
                        .siteId(incapsula_site.sites-2().id())
                        .enableMitigation(true)
                        .build())
                    .build())
            .build());

        var abpWebsitesIndex_abpWebsitesAbpWebsites = new AbpWebsites("abpWebsitesIndex/abpWebsitesAbpWebsites", AbpWebsitesArgs.builder()
            .accountId(data.incapsula_account_data().account_data().current_account())
            .autoPublish(true)
            .websiteGroups(            
                AbpWebsitesWebsiteGroupArgs.builder()
                    .name("sites")
                    .websites(                    
                        AbpWebsitesWebsiteGroupWebsiteArgs.builder()
                            .siteId(incapsula_site.sites-1().id())
                            .enableMitigation(false)
                            .build(),
                        AbpWebsitesWebsiteGroupWebsiteArgs.builder()
                            .siteId(incapsula_site.sites-2().id())
                            .enableMitigation(true)
                            .build())
                    .build(),
                AbpWebsitesWebsiteGroupArgs.builder()
                    .name("sites")
                    .nameId("sites-2")
                    .websites(AbpWebsitesWebsiteGroupWebsiteArgs.builder()
                        .siteId(incapsula_site.sites-3().id())
                        .enableMitigation(true)
                        .build())
                    .build())
            .build());

    }
}
Copy
resources:
  abpWebsitesAbpWebsites:
    type: incapsula:AbpWebsites
    properties:
      accountId: ${data.incapsula_account_data.account_data.current_account}
      autoPublish: true
      websiteGroups:
        - name: sites-1
          websites:
            - siteId: ${incapsula_site"sites-1"[%!s(MISSING)].id}
              enableMitigation: false
        - name: sites-2
          websites:
            - siteId: ${incapsula_site"sites-2"[%!s(MISSING)].id}
              enableMitigation: true
  abpWebsitesIndex/abpWebsitesAbpWebsites:
    type: incapsula:AbpWebsites
    properties:
      accountId: ${data.incapsula_account_data.account_data.current_account}
      autoPublish: true
      websiteGroups:
        - name: sites
          websites:
            - siteId: ${incapsula_site"sites-1"[%!s(MISSING)].id}
              enableMitigation: false
            - siteId: ${incapsula_site"sites-2"[%!s(MISSING)].id}
              enableMitigation: true
        - name: sites
          nameId: sites-2
          websites:
            - siteId: ${incapsula_site"sites-3"[%!s(MISSING)].id}
              enableMitigation: true
Copy

Create AbpWebsites Resource

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

Constructor syntax

new AbpWebsites(name: string, args: AbpWebsitesArgs, opts?: CustomResourceOptions);
@overload
def AbpWebsites(resource_name: str,
                args: AbpWebsitesArgs,
                opts: Optional[ResourceOptions] = None)

@overload
def AbpWebsites(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                account_id: Optional[float] = None,
                abp_websites_id: Optional[str] = None,
                auto_publish: Optional[bool] = None,
                website_groups: Optional[Sequence[AbpWebsitesWebsiteGroupArgs]] = None)
func NewAbpWebsites(ctx *Context, name string, args AbpWebsitesArgs, opts ...ResourceOption) (*AbpWebsites, error)
public AbpWebsites(string name, AbpWebsitesArgs args, CustomResourceOptions? opts = null)
public AbpWebsites(String name, AbpWebsitesArgs args)
public AbpWebsites(String name, AbpWebsitesArgs args, CustomResourceOptions options)
type: incapsula:AbpWebsites
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. AbpWebsitesArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. AbpWebsitesArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. AbpWebsitesArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. AbpWebsitesArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. AbpWebsitesArgs
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 abpWebsitesResource = new Incapsula.AbpWebsites("abpWebsitesResource", new()
{
    AccountId = 0,
    AbpWebsitesId = "string",
    AutoPublish = false,
    WebsiteGroups = new[]
    {
        new Incapsula.Inputs.AbpWebsitesWebsiteGroupArgs
        {
            Name = "string",
            Id = "string",
            NameId = "string",
            Websites = new[]
            {
                new Incapsula.Inputs.AbpWebsitesWebsiteGroupWebsiteArgs
                {
                    IncapsulaSiteId = 0,
                    EnableMitigation = false,
                    Id = "string",
                },
            },
        },
    },
});
Copy
example, err := incapsula.NewAbpWebsites(ctx, "abpWebsitesResource", &incapsula.AbpWebsitesArgs{
AccountId: pulumi.Float64(0),
AbpWebsitesId: pulumi.String("string"),
AutoPublish: pulumi.Bool(false),
WebsiteGroups: .AbpWebsitesWebsiteGroupArray{
&.AbpWebsitesWebsiteGroupArgs{
Name: pulumi.String("string"),
Id: pulumi.String("string"),
NameId: pulumi.String("string"),
Websites: .AbpWebsitesWebsiteGroupWebsiteArray{
&.AbpWebsitesWebsiteGroupWebsiteArgs{
IncapsulaSiteId: pulumi.Float64(0),
EnableMitigation: pulumi.Bool(false),
Id: pulumi.String("string"),
},
},
},
},
})
Copy
var abpWebsitesResource = new AbpWebsites("abpWebsitesResource", AbpWebsitesArgs.builder()
    .accountId(0)
    .abpWebsitesId("string")
    .autoPublish(false)
    .websiteGroups(AbpWebsitesWebsiteGroupArgs.builder()
        .name("string")
        .id("string")
        .nameId("string")
        .websites(AbpWebsitesWebsiteGroupWebsiteArgs.builder()
            .incapsulaSiteId(0)
            .enableMitigation(false)
            .id("string")
            .build())
        .build())
    .build());
Copy
abp_websites_resource = incapsula.AbpWebsites("abpWebsitesResource",
    account_id=0,
    abp_websites_id="string",
    auto_publish=False,
    website_groups=[{
        "name": "string",
        "id": "string",
        "name_id": "string",
        "websites": [{
            "incapsula_site_id": 0,
            "enable_mitigation": False,
            "id": "string",
        }],
    }])
Copy
const abpWebsitesResource = new incapsula.AbpWebsites("abpWebsitesResource", {
    accountId: 0,
    abpWebsitesId: "string",
    autoPublish: false,
    websiteGroups: [{
        name: "string",
        id: "string",
        nameId: "string",
        websites: [{
            incapsulaSiteId: 0,
            enableMitigation: false,
            id: "string",
        }],
    }],
});
Copy
type: incapsula:AbpWebsites
properties:
    abpWebsitesId: string
    accountId: 0
    autoPublish: false
    websiteGroups:
        - id: string
          name: string
          nameId: string
          websites:
            - enableMitigation: false
              id: string
              incapsulaSiteId: 0
Copy

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

AccountId This property is required. double
The account these websites belongs to.
AbpWebsitesId string
The ID of this resource.
AutoPublish bool
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
WebsiteGroups List<AbpWebsitesWebsiteGroup>
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
AccountId This property is required. float64
The account these websites belongs to.
AbpWebsitesId string
The ID of this resource.
AutoPublish bool
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
WebsiteGroups []AbpWebsitesWebsiteGroupArgs
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
accountId This property is required. Double
The account these websites belongs to.
abpWebsitesId String
The ID of this resource.
autoPublish Boolean
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
websiteGroups List<AbpWebsitesWebsiteGroup>
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
accountId This property is required. number
The account these websites belongs to.
abpWebsitesId string
The ID of this resource.
autoPublish boolean
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
websiteGroups AbpWebsitesWebsiteGroup[]
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
account_id This property is required. float
The account these websites belongs to.
abp_websites_id str
The ID of this resource.
auto_publish bool
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
website_groups Sequence[AbpWebsitesWebsiteGroupArgs]
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
accountId This property is required. Number
The account these websites belongs to.
abpWebsitesId String
The ID of this resource.
autoPublish Boolean
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
websiteGroups List<Property Map>
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.

Outputs

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

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

Look up Existing AbpWebsites Resource

Get an existing AbpWebsites 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?: AbpWebsitesState, opts?: CustomResourceOptions): AbpWebsites
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        abp_websites_id: Optional[str] = None,
        account_id: Optional[float] = None,
        auto_publish: Optional[bool] = None,
        last_publish: Optional[str] = None,
        website_groups: Optional[Sequence[AbpWebsitesWebsiteGroupArgs]] = None) -> AbpWebsites
func GetAbpWebsites(ctx *Context, name string, id IDInput, state *AbpWebsitesState, opts ...ResourceOption) (*AbpWebsites, error)
public static AbpWebsites Get(string name, Input<string> id, AbpWebsitesState? state, CustomResourceOptions? opts = null)
public static AbpWebsites get(String name, Output<String> id, AbpWebsitesState state, CustomResourceOptions options)
resources:  _:    type: incapsula:AbpWebsites    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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:
AbpWebsitesId string
The ID of this resource.
AccountId double
The account these websites belongs to.
AutoPublish bool
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
LastPublish string
WebsiteGroups List<AbpWebsitesWebsiteGroup>
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
AbpWebsitesId string
The ID of this resource.
AccountId float64
The account these websites belongs to.
AutoPublish bool
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
LastPublish string
WebsiteGroups []AbpWebsitesWebsiteGroupArgs
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
abpWebsitesId String
The ID of this resource.
accountId Double
The account these websites belongs to.
autoPublish Boolean
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
lastPublish String
websiteGroups List<AbpWebsitesWebsiteGroup>
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
abpWebsitesId string
The ID of this resource.
accountId number
The account these websites belongs to.
autoPublish boolean
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
lastPublish string
websiteGroups AbpWebsitesWebsiteGroup[]
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
abp_websites_id str
The ID of this resource.
account_id float
The account these websites belongs to.
auto_publish bool
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
last_publish str
website_groups Sequence[AbpWebsitesWebsiteGroupArgs]
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.
abpWebsitesId String
The ID of this resource.
accountId Number
The account these websites belongs to.
autoPublish Boolean
Whether to publish the changes automatically. Changes don't take take effect until they have been published.
lastPublish String
websiteGroups List<Property Map>
List of website groups which are associated to ABP. Website groups are matched in a top-down fashion. If a more specific website group should take precedence over over a wild card entry then that should be higher in the list.

Supporting Types

AbpWebsitesWebsiteGroup
, AbpWebsitesWebsiteGroupArgs

Name This property is required. string
Name for the website group. Must be unique unless name_id is specified.
Id string
The ID of this resource.
NameId string
Unique user-defined identifier used to differentiate website groups whose name is identical
Websites List<AbpWebsitesWebsiteGroupWebsite>
List of websites within the website group. Websites are matched in a top-down fashion. If a more specific website should take precedence over over a wild card entry then that should be higher in the list
Name This property is required. string
Name for the website group. Must be unique unless name_id is specified.
Id string
The ID of this resource.
NameId string
Unique user-defined identifier used to differentiate website groups whose name is identical
Websites []AbpWebsitesWebsiteGroupWebsite
List of websites within the website group. Websites are matched in a top-down fashion. If a more specific website should take precedence over over a wild card entry then that should be higher in the list
name This property is required. String
Name for the website group. Must be unique unless name_id is specified.
id String
The ID of this resource.
nameId String
Unique user-defined identifier used to differentiate website groups whose name is identical
websites List<AbpWebsitesWebsiteGroupWebsite>
List of websites within the website group. Websites are matched in a top-down fashion. If a more specific website should take precedence over over a wild card entry then that should be higher in the list
name This property is required. string
Name for the website group. Must be unique unless name_id is specified.
id string
The ID of this resource.
nameId string
Unique user-defined identifier used to differentiate website groups whose name is identical
websites AbpWebsitesWebsiteGroupWebsite[]
List of websites within the website group. Websites are matched in a top-down fashion. If a more specific website should take precedence over over a wild card entry then that should be higher in the list
name This property is required. str
Name for the website group. Must be unique unless name_id is specified.
id str
The ID of this resource.
name_id str
Unique user-defined identifier used to differentiate website groups whose name is identical
websites Sequence[AbpWebsitesWebsiteGroupWebsite]
List of websites within the website group. Websites are matched in a top-down fashion. If a more specific website should take precedence over over a wild card entry then that should be higher in the list
name This property is required. String
Name for the website group. Must be unique unless name_id is specified.
id String
The ID of this resource.
nameId String
Unique user-defined identifier used to differentiate website groups whose name is identical
websites List<Property Map>
List of websites within the website group. Websites are matched in a top-down fashion. If a more specific website should take precedence over over a wild card entry then that should be higher in the list

AbpWebsitesWebsiteGroupWebsite
, AbpWebsitesWebsiteGroupWebsiteArgs

IncapsulaSiteId This property is required. double
Which incapsula.Site this website refers to
EnableMitigation bool
Enables the ABP conditions for this website. Defaults to true.
Id string
The ID of this resource.
IncapsulaSiteId This property is required. float64
Which incapsula.Site this website refers to
EnableMitigation bool
Enables the ABP conditions for this website. Defaults to true.
Id string
The ID of this resource.
incapsulaSiteId This property is required. Double
Which incapsula.Site this website refers to
enableMitigation Boolean
Enables the ABP conditions for this website. Defaults to true.
id String
The ID of this resource.
incapsulaSiteId This property is required. number
Which incapsula.Site this website refers to
enableMitigation boolean
Enables the ABP conditions for this website. Defaults to true.
id string
The ID of this resource.
incapsula_site_id This property is required. float
Which incapsula.Site this website refers to
enable_mitigation bool
Enables the ABP conditions for this website. Defaults to true.
id str
The ID of this resource.
incapsulaSiteId This property is required. Number
Which incapsula.Site this website refers to
enableMitigation Boolean
Enables the ABP conditions for this website. Defaults to true.
id String
The ID of this resource.

Import

$ pulumi import incapsula:index/abpWebsites:AbpWebsites websites 1234
Copy

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

Package Details

Repository
incapsula imperva/terraform-provider-incapsula
License
Notes
This Pulumi package is based on the incapsula Terraform Provider.