pulumi-gcp 8.40.0a1754721948__py3-none-any.whl → 8.40.0a1754951145__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +128 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +24 -4
- pulumi_gcp/accesscontextmanager/outputs.py +15 -3
- pulumi_gcp/apigee/__init__.py +2 -0
- pulumi_gcp/apigee/_inputs.py +1435 -0
- pulumi_gcp/apigee/api_product.py +1698 -0
- pulumi_gcp/apigee/outputs.py +1081 -0
- pulumi_gcp/apigee/security_action.py +1010 -0
- pulumi_gcp/artifactregistry/__init__.py +1 -0
- pulumi_gcp/artifactregistry/get_docker_images.py +164 -0
- pulumi_gcp/artifactregistry/outputs.py +109 -2
- pulumi_gcp/artifactregistry/repository.py +6 -6
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +56 -0
- pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +12 -1
- pulumi_gcp/bigquery/_inputs.py +6 -0
- pulumi_gcp/bigquery/get_table.py +23 -1
- pulumi_gcp/bigquery/outputs.py +4 -0
- pulumi_gcp/bigquery/table.py +62 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +180 -0
- pulumi_gcp/bigqueryanalyticshub/data_exchange.py +80 -0
- pulumi_gcp/bigqueryanalyticshub/listing.py +322 -2
- pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +32 -0
- pulumi_gcp/bigqueryanalyticshub/outputs.py +159 -0
- pulumi_gcp/bigtable/__init__.py +1 -0
- pulumi_gcp/bigtable/_inputs.py +33 -0
- pulumi_gcp/bigtable/outputs.py +36 -0
- pulumi_gcp/bigtable/schema_bundle.py +568 -0
- pulumi_gcp/cloudfunctions/_inputs.py +48 -0
- pulumi_gcp/cloudfunctions/function.py +94 -0
- pulumi_gcp/cloudfunctions/get_function.py +23 -1
- pulumi_gcp/cloudfunctions/outputs.py +70 -0
- pulumi_gcp/cloudrunv2/_inputs.py +20 -0
- pulumi_gcp/cloudrunv2/job.py +2 -0
- pulumi_gcp/cloudrunv2/outputs.py +25 -0
- pulumi_gcp/cloudrunv2/worker_pool.py +2 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +713 -22
- pulumi_gcp/compute/firewall_policy_with_rules.py +66 -0
- pulumi_gcp/compute/forwarding_rule.py +0 -21
- pulumi_gcp/compute/get_router.py +12 -1
- pulumi_gcp/compute/outputs.py +562 -22
- pulumi_gcp/compute/preview_feature.py +396 -0
- pulumi_gcp/compute/region_url_map.py +392 -0
- pulumi_gcp/compute/reservation.py +4 -4
- pulumi_gcp/compute/router.py +54 -0
- pulumi_gcp/compute/storage_pool.py +154 -0
- pulumi_gcp/compute/subnetwork.py +54 -0
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +278 -8
- pulumi_gcp/container/cluster.py +61 -21
- pulumi_gcp/container/get_cluster.py +12 -1
- pulumi_gcp/container/outputs.py +352 -8
- pulumi_gcp/dataproc/_inputs.py +249 -14
- pulumi_gcp/dataproc/batch.py +6 -0
- pulumi_gcp/dataproc/cluster.py +2 -0
- pulumi_gcp/dataproc/outputs.py +215 -12
- pulumi_gcp/dataproc/session_template.py +14 -2
- pulumi_gcp/developerconnect/__init__.py +1 -0
- pulumi_gcp/developerconnect/_inputs.py +583 -0
- pulumi_gcp/developerconnect/insights_config.py +895 -0
- pulumi_gcp/developerconnect/outputs.py +442 -0
- pulumi_gcp/diagflow/__init__.py +1 -0
- pulumi_gcp/diagflow/_inputs.py +1165 -58
- pulumi_gcp/diagflow/cx_generator.py +636 -0
- pulumi_gcp/diagflow/cx_tool.py +2 -2
- pulumi_gcp/diagflow/cx_webhook.py +380 -36
- pulumi_gcp/diagflow/outputs.py +848 -25
- pulumi_gcp/discoveryengine/__init__.py +2 -0
- pulumi_gcp/discoveryengine/_inputs.py +465 -0
- pulumi_gcp/discoveryengine/cmek_config.py +707 -0
- pulumi_gcp/discoveryengine/outputs.py +412 -0
- pulumi_gcp/discoveryengine/recommendation_engine.py +813 -0
- pulumi_gcp/firestore/field.py +6 -6
- pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +107 -9
- pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +2 -2
- pulumi_gcp/gkehub/membership_binding.py +6 -6
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
- pulumi_gcp/gkehub/namespace.py +4 -4
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +8 -8
- pulumi_gcp/iam/__init__.py +4 -0
- pulumi_gcp/iam/_inputs.py +98 -0
- pulumi_gcp/iam/get_workforce_pool_iam_policy.py +161 -0
- pulumi_gcp/iam/outputs.py +56 -0
- pulumi_gcp/iam/workforce_pool_iam_binding.py +761 -0
- pulumi_gcp/iam/workforce_pool_iam_member.py +761 -0
- pulumi_gcp/iam/workforce_pool_iam_policy.py +600 -0
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
- pulumi_gcp/looker/instance.py +28 -7
- pulumi_gcp/managedkafka/_inputs.py +127 -0
- pulumi_gcp/managedkafka/cluster.py +131 -1
- pulumi_gcp/managedkafka/connect_cluster.py +4 -4
- pulumi_gcp/managedkafka/connector.py +4 -4
- pulumi_gcp/managedkafka/outputs.py +128 -0
- pulumi_gcp/memorystore/instance.py +8 -12
- pulumi_gcp/modelarmor/__init__.py +1 -0
- pulumi_gcp/modelarmor/_inputs.py +683 -0
- pulumi_gcp/modelarmor/floorsetting.py +736 -0
- pulumi_gcp/modelarmor/outputs.py +618 -0
- pulumi_gcp/networkconnectivity/_inputs.py +60 -0
- pulumi_gcp/networkconnectivity/internal_range.py +136 -0
- pulumi_gcp/networkconnectivity/outputs.py +55 -0
- pulumi_gcp/networkconnectivity/spoke.py +14 -14
- pulumi_gcp/oracledatabase/__init__.py +2 -0
- pulumi_gcp/oracledatabase/autonomous_database.py +262 -38
- pulumi_gcp/oracledatabase/cloud_vm_cluster.py +314 -50
- pulumi_gcp/oracledatabase/get_autonomous_database.py +23 -1
- pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +34 -1
- pulumi_gcp/oracledatabase/odb_network.py +721 -0
- pulumi_gcp/oracledatabase/odb_subnet.py +803 -0
- pulumi_gcp/oracledatabase/outputs.py +83 -0
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/parametermanager/parameter_version.py +62 -0
- pulumi_gcp/parametermanager/regional_parameter_version.py +64 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/subscription.py +46 -6
- pulumi_gcp/pubsub/topic.py +36 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/cluster.py +70 -0
- pulumi_gcp/redis/get_cluster.py +12 -1
- pulumi_gcp/redis/instance.py +8 -12
- pulumi_gcp/secretmanager/get_regional_secret.py +12 -1
- pulumi_gcp/secretmanager/get_secret.py +12 -1
- pulumi_gcp/secretmanager/outputs.py +30 -0
- pulumi_gcp/secretmanager/regional_secret.py +61 -0
- pulumi_gcp/secretmanager/secret.py +61 -0
- pulumi_gcp/securesourcemanager/branch_rule.py +16 -8
- pulumi_gcp/securesourcemanager/instance.py +112 -4
- pulumi_gcp/securesourcemanager/repository.py +112 -8
- pulumi_gcp/serviceaccount/get_account_key.py +1 -0
- pulumi_gcp/sql/_inputs.py +6 -6
- pulumi_gcp/sql/database.py +0 -12
- pulumi_gcp/sql/outputs.py +4 -4
- pulumi_gcp/storage/__init__.py +2 -0
- pulumi_gcp/storage/_inputs.py +451 -0
- pulumi_gcp/storage/bucket.py +7 -7
- pulumi_gcp/storage/bucket_object.py +34 -0
- pulumi_gcp/storage/get_bucket_object.py +12 -1
- pulumi_gcp/storage/get_bucket_object_content.py +12 -1
- pulumi_gcp/storage/get_insights_dataset_config.py +363 -0
- pulumi_gcp/storage/insights_dataset_config.py +1280 -0
- pulumi_gcp/storage/outputs.py +619 -0
- pulumi_gcp/vertex/__init__.py +1 -0
- pulumi_gcp/vertex/_inputs.py +3646 -3
- pulumi_gcp/vertex/ai_endpoint.py +4 -4
- pulumi_gcp/vertex/ai_endpoint_with_model_garden_deployment.py +940 -0
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- pulumi_gcp/vertex/outputs.py +2609 -2
- pulumi_gcp/vmwareengine/network_peering.py +7 -7
- pulumi_gcp/workbench/_inputs.py +118 -0
- pulumi_gcp/workbench/instance.py +171 -2
- pulumi_gcp/workbench/outputs.py +91 -0
- {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/RECORD +157 -138
- {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.40.0a1754951145.dist-info}/top_level.txt +0 -0
pulumi_gcp/apigee/_inputs.py
CHANGED
@@ -29,6 +29,36 @@ __all__ = [
|
|
29
29
|
'AddonsConfigAddonsConfigMonetizationConfigArgsDict',
|
30
30
|
'ApiMetaDataArgs',
|
31
31
|
'ApiMetaDataArgsDict',
|
32
|
+
'ApiProductAttributeArgs',
|
33
|
+
'ApiProductAttributeArgsDict',
|
34
|
+
'ApiProductGraphqlOperationGroupArgs',
|
35
|
+
'ApiProductGraphqlOperationGroupArgsDict',
|
36
|
+
'ApiProductGraphqlOperationGroupOperationConfigArgs',
|
37
|
+
'ApiProductGraphqlOperationGroupOperationConfigArgsDict',
|
38
|
+
'ApiProductGraphqlOperationGroupOperationConfigAttributeArgs',
|
39
|
+
'ApiProductGraphqlOperationGroupOperationConfigAttributeArgsDict',
|
40
|
+
'ApiProductGraphqlOperationGroupOperationConfigOperationArgs',
|
41
|
+
'ApiProductGraphqlOperationGroupOperationConfigOperationArgsDict',
|
42
|
+
'ApiProductGraphqlOperationGroupOperationConfigQuotaArgs',
|
43
|
+
'ApiProductGraphqlOperationGroupOperationConfigQuotaArgsDict',
|
44
|
+
'ApiProductGrpcOperationGroupArgs',
|
45
|
+
'ApiProductGrpcOperationGroupArgsDict',
|
46
|
+
'ApiProductGrpcOperationGroupOperationConfigArgs',
|
47
|
+
'ApiProductGrpcOperationGroupOperationConfigArgsDict',
|
48
|
+
'ApiProductGrpcOperationGroupOperationConfigAttributeArgs',
|
49
|
+
'ApiProductGrpcOperationGroupOperationConfigAttributeArgsDict',
|
50
|
+
'ApiProductGrpcOperationGroupOperationConfigQuotaArgs',
|
51
|
+
'ApiProductGrpcOperationGroupOperationConfigQuotaArgsDict',
|
52
|
+
'ApiProductOperationGroupArgs',
|
53
|
+
'ApiProductOperationGroupArgsDict',
|
54
|
+
'ApiProductOperationGroupOperationConfigArgs',
|
55
|
+
'ApiProductOperationGroupOperationConfigArgsDict',
|
56
|
+
'ApiProductOperationGroupOperationConfigAttributeArgs',
|
57
|
+
'ApiProductOperationGroupOperationConfigAttributeArgsDict',
|
58
|
+
'ApiProductOperationGroupOperationConfigOperationArgs',
|
59
|
+
'ApiProductOperationGroupOperationConfigOperationArgsDict',
|
60
|
+
'ApiProductOperationGroupOperationConfigQuotaArgs',
|
61
|
+
'ApiProductOperationGroupOperationConfigQuotaArgsDict',
|
32
62
|
'AppGroupAttributeArgs',
|
33
63
|
'AppGroupAttributeArgsDict',
|
34
64
|
'DeveloperAttributeArgs',
|
@@ -71,6 +101,16 @@ __all__ = [
|
|
71
101
|
'OrganizationPropertiesArgsDict',
|
72
102
|
'OrganizationPropertiesPropertyArgs',
|
73
103
|
'OrganizationPropertiesPropertyArgsDict',
|
104
|
+
'SecurityActionAllowArgs',
|
105
|
+
'SecurityActionAllowArgsDict',
|
106
|
+
'SecurityActionConditionConfigArgs',
|
107
|
+
'SecurityActionConditionConfigArgsDict',
|
108
|
+
'SecurityActionDenyArgs',
|
109
|
+
'SecurityActionDenyArgsDict',
|
110
|
+
'SecurityActionFlagArgs',
|
111
|
+
'SecurityActionFlagArgsDict',
|
112
|
+
'SecurityActionFlagHeaderArgs',
|
113
|
+
'SecurityActionFlagHeaderArgsDict',
|
74
114
|
'SecurityMonitoringConditionIncludeAllResourcesArgs',
|
75
115
|
'SecurityMonitoringConditionIncludeAllResourcesArgsDict',
|
76
116
|
'SecurityProfileV2ProfileAssessmentConfigArgs',
|
@@ -490,6 +530,1020 @@ class ApiMetaDataArgs:
|
|
490
530
|
pulumi.set(self, "sub_type", value)
|
491
531
|
|
492
532
|
|
533
|
+
if not MYPY:
|
534
|
+
class ApiProductAttributeArgsDict(TypedDict):
|
535
|
+
name: NotRequired[pulumi.Input[_builtins.str]]
|
536
|
+
"""
|
537
|
+
Key of the attribute.
|
538
|
+
"""
|
539
|
+
value: NotRequired[pulumi.Input[_builtins.str]]
|
540
|
+
"""
|
541
|
+
Value of the attribute.
|
542
|
+
"""
|
543
|
+
elif False:
|
544
|
+
ApiProductAttributeArgsDict: TypeAlias = Mapping[str, Any]
|
545
|
+
|
546
|
+
@pulumi.input_type
|
547
|
+
class ApiProductAttributeArgs:
|
548
|
+
def __init__(__self__, *,
|
549
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
550
|
+
value: Optional[pulumi.Input[_builtins.str]] = None):
|
551
|
+
"""
|
552
|
+
:param pulumi.Input[_builtins.str] name: Key of the attribute.
|
553
|
+
:param pulumi.Input[_builtins.str] value: Value of the attribute.
|
554
|
+
"""
|
555
|
+
if name is not None:
|
556
|
+
pulumi.set(__self__, "name", name)
|
557
|
+
if value is not None:
|
558
|
+
pulumi.set(__self__, "value", value)
|
559
|
+
|
560
|
+
@_builtins.property
|
561
|
+
@pulumi.getter
|
562
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
563
|
+
"""
|
564
|
+
Key of the attribute.
|
565
|
+
"""
|
566
|
+
return pulumi.get(self, "name")
|
567
|
+
|
568
|
+
@name.setter
|
569
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
570
|
+
pulumi.set(self, "name", value)
|
571
|
+
|
572
|
+
@_builtins.property
|
573
|
+
@pulumi.getter
|
574
|
+
def value(self) -> Optional[pulumi.Input[_builtins.str]]:
|
575
|
+
"""
|
576
|
+
Value of the attribute.
|
577
|
+
"""
|
578
|
+
return pulumi.get(self, "value")
|
579
|
+
|
580
|
+
@value.setter
|
581
|
+
def value(self, value: Optional[pulumi.Input[_builtins.str]]):
|
582
|
+
pulumi.set(self, "value", value)
|
583
|
+
|
584
|
+
|
585
|
+
if not MYPY:
|
586
|
+
class ApiProductGraphqlOperationGroupArgsDict(TypedDict):
|
587
|
+
operation_config_type: NotRequired[pulumi.Input[_builtins.str]]
|
588
|
+
"""
|
589
|
+
Flag that specifes whether the configuration is for Apigee API proxy or a remote service. Valid values include proxy or remoteservice. Defaults to proxy. Set to proxy when Apigee API proxies are associated with the API product. Set to remoteservice when non-Apigee proxies like Istio-Envoy are associated with the API product.
|
590
|
+
Possible values are: `proxy`, `remoteservice`.
|
591
|
+
"""
|
592
|
+
operation_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigArgsDict']]]]
|
593
|
+
"""
|
594
|
+
List of graphQL operation configuration details associated with Apigee API proxies or remote services. Remote services are non-Apigee proxies, such as Istio-Envoy.
|
595
|
+
Structure is documented below.
|
596
|
+
"""
|
597
|
+
elif False:
|
598
|
+
ApiProductGraphqlOperationGroupArgsDict: TypeAlias = Mapping[str, Any]
|
599
|
+
|
600
|
+
@pulumi.input_type
|
601
|
+
class ApiProductGraphqlOperationGroupArgs:
|
602
|
+
def __init__(__self__, *,
|
603
|
+
operation_config_type: Optional[pulumi.Input[_builtins.str]] = None,
|
604
|
+
operation_configs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigArgs']]]] = None):
|
605
|
+
"""
|
606
|
+
:param pulumi.Input[_builtins.str] operation_config_type: Flag that specifes whether the configuration is for Apigee API proxy or a remote service. Valid values include proxy or remoteservice. Defaults to proxy. Set to proxy when Apigee API proxies are associated with the API product. Set to remoteservice when non-Apigee proxies like Istio-Envoy are associated with the API product.
|
607
|
+
Possible values are: `proxy`, `remoteservice`.
|
608
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigArgs']]] operation_configs: List of graphQL operation configuration details associated with Apigee API proxies or remote services. Remote services are non-Apigee proxies, such as Istio-Envoy.
|
609
|
+
Structure is documented below.
|
610
|
+
"""
|
611
|
+
if operation_config_type is not None:
|
612
|
+
pulumi.set(__self__, "operation_config_type", operation_config_type)
|
613
|
+
if operation_configs is not None:
|
614
|
+
pulumi.set(__self__, "operation_configs", operation_configs)
|
615
|
+
|
616
|
+
@_builtins.property
|
617
|
+
@pulumi.getter(name="operationConfigType")
|
618
|
+
def operation_config_type(self) -> Optional[pulumi.Input[_builtins.str]]:
|
619
|
+
"""
|
620
|
+
Flag that specifes whether the configuration is for Apigee API proxy or a remote service. Valid values include proxy or remoteservice. Defaults to proxy. Set to proxy when Apigee API proxies are associated with the API product. Set to remoteservice when non-Apigee proxies like Istio-Envoy are associated with the API product.
|
621
|
+
Possible values are: `proxy`, `remoteservice`.
|
622
|
+
"""
|
623
|
+
return pulumi.get(self, "operation_config_type")
|
624
|
+
|
625
|
+
@operation_config_type.setter
|
626
|
+
def operation_config_type(self, value: Optional[pulumi.Input[_builtins.str]]):
|
627
|
+
pulumi.set(self, "operation_config_type", value)
|
628
|
+
|
629
|
+
@_builtins.property
|
630
|
+
@pulumi.getter(name="operationConfigs")
|
631
|
+
def operation_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigArgs']]]]:
|
632
|
+
"""
|
633
|
+
List of graphQL operation configuration details associated with Apigee API proxies or remote services. Remote services are non-Apigee proxies, such as Istio-Envoy.
|
634
|
+
Structure is documented below.
|
635
|
+
"""
|
636
|
+
return pulumi.get(self, "operation_configs")
|
637
|
+
|
638
|
+
@operation_configs.setter
|
639
|
+
def operation_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigArgs']]]]):
|
640
|
+
pulumi.set(self, "operation_configs", value)
|
641
|
+
|
642
|
+
|
643
|
+
if not MYPY:
|
644
|
+
class ApiProductGraphqlOperationGroupOperationConfigArgsDict(TypedDict):
|
645
|
+
api_source: NotRequired[pulumi.Input[_builtins.str]]
|
646
|
+
"""
|
647
|
+
Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
648
|
+
"""
|
649
|
+
attributes: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigAttributeArgsDict']]]]
|
650
|
+
"""
|
651
|
+
Custom attributes associated with the operation.
|
652
|
+
Structure is documented below.
|
653
|
+
"""
|
654
|
+
operations: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigOperationArgsDict']]]]
|
655
|
+
"""
|
656
|
+
Required. List of GraphQL name/operation type pairs for the proxy or remote service to which quota will be applied. If only operation types are specified, the quota will be applied to all GraphQL requests irrespective of the GraphQL name.
|
657
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
658
|
+
Structure is documented below.
|
659
|
+
"""
|
660
|
+
quota: NotRequired[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigQuotaArgsDict']]
|
661
|
+
"""
|
662
|
+
Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
663
|
+
Structure is documented below.
|
664
|
+
"""
|
665
|
+
elif False:
|
666
|
+
ApiProductGraphqlOperationGroupOperationConfigArgsDict: TypeAlias = Mapping[str, Any]
|
667
|
+
|
668
|
+
@pulumi.input_type
|
669
|
+
class ApiProductGraphqlOperationGroupOperationConfigArgs:
|
670
|
+
def __init__(__self__, *,
|
671
|
+
api_source: Optional[pulumi.Input[_builtins.str]] = None,
|
672
|
+
attributes: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigAttributeArgs']]]] = None,
|
673
|
+
operations: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigOperationArgs']]]] = None,
|
674
|
+
quota: Optional[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigQuotaArgs']] = None):
|
675
|
+
"""
|
676
|
+
:param pulumi.Input[_builtins.str] api_source: Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
677
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigAttributeArgs']]] attributes: Custom attributes associated with the operation.
|
678
|
+
Structure is documented below.
|
679
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigOperationArgs']]] operations: Required. List of GraphQL name/operation type pairs for the proxy or remote service to which quota will be applied. If only operation types are specified, the quota will be applied to all GraphQL requests irrespective of the GraphQL name.
|
680
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
681
|
+
Structure is documented below.
|
682
|
+
:param pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigQuotaArgs'] quota: Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
683
|
+
Structure is documented below.
|
684
|
+
"""
|
685
|
+
if api_source is not None:
|
686
|
+
pulumi.set(__self__, "api_source", api_source)
|
687
|
+
if attributes is not None:
|
688
|
+
pulumi.set(__self__, "attributes", attributes)
|
689
|
+
if operations is not None:
|
690
|
+
pulumi.set(__self__, "operations", operations)
|
691
|
+
if quota is not None:
|
692
|
+
pulumi.set(__self__, "quota", quota)
|
693
|
+
|
694
|
+
@_builtins.property
|
695
|
+
@pulumi.getter(name="apiSource")
|
696
|
+
def api_source(self) -> Optional[pulumi.Input[_builtins.str]]:
|
697
|
+
"""
|
698
|
+
Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
699
|
+
"""
|
700
|
+
return pulumi.get(self, "api_source")
|
701
|
+
|
702
|
+
@api_source.setter
|
703
|
+
def api_source(self, value: Optional[pulumi.Input[_builtins.str]]):
|
704
|
+
pulumi.set(self, "api_source", value)
|
705
|
+
|
706
|
+
@_builtins.property
|
707
|
+
@pulumi.getter
|
708
|
+
def attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigAttributeArgs']]]]:
|
709
|
+
"""
|
710
|
+
Custom attributes associated with the operation.
|
711
|
+
Structure is documented below.
|
712
|
+
"""
|
713
|
+
return pulumi.get(self, "attributes")
|
714
|
+
|
715
|
+
@attributes.setter
|
716
|
+
def attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigAttributeArgs']]]]):
|
717
|
+
pulumi.set(self, "attributes", value)
|
718
|
+
|
719
|
+
@_builtins.property
|
720
|
+
@pulumi.getter
|
721
|
+
def operations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigOperationArgs']]]]:
|
722
|
+
"""
|
723
|
+
Required. List of GraphQL name/operation type pairs for the proxy or remote service to which quota will be applied. If only operation types are specified, the quota will be applied to all GraphQL requests irrespective of the GraphQL name.
|
724
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
725
|
+
Structure is documented below.
|
726
|
+
"""
|
727
|
+
return pulumi.get(self, "operations")
|
728
|
+
|
729
|
+
@operations.setter
|
730
|
+
def operations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigOperationArgs']]]]):
|
731
|
+
pulumi.set(self, "operations", value)
|
732
|
+
|
733
|
+
@_builtins.property
|
734
|
+
@pulumi.getter
|
735
|
+
def quota(self) -> Optional[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigQuotaArgs']]:
|
736
|
+
"""
|
737
|
+
Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
738
|
+
Structure is documented below.
|
739
|
+
"""
|
740
|
+
return pulumi.get(self, "quota")
|
741
|
+
|
742
|
+
@quota.setter
|
743
|
+
def quota(self, value: Optional[pulumi.Input['ApiProductGraphqlOperationGroupOperationConfigQuotaArgs']]):
|
744
|
+
pulumi.set(self, "quota", value)
|
745
|
+
|
746
|
+
|
747
|
+
if not MYPY:
|
748
|
+
class ApiProductGraphqlOperationGroupOperationConfigAttributeArgsDict(TypedDict):
|
749
|
+
name: NotRequired[pulumi.Input[_builtins.str]]
|
750
|
+
"""
|
751
|
+
Key of the attribute.
|
752
|
+
"""
|
753
|
+
value: NotRequired[pulumi.Input[_builtins.str]]
|
754
|
+
"""
|
755
|
+
Value of the attribute.
|
756
|
+
"""
|
757
|
+
elif False:
|
758
|
+
ApiProductGraphqlOperationGroupOperationConfigAttributeArgsDict: TypeAlias = Mapping[str, Any]
|
759
|
+
|
760
|
+
@pulumi.input_type
|
761
|
+
class ApiProductGraphqlOperationGroupOperationConfigAttributeArgs:
|
762
|
+
def __init__(__self__, *,
|
763
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
764
|
+
value: Optional[pulumi.Input[_builtins.str]] = None):
|
765
|
+
"""
|
766
|
+
:param pulumi.Input[_builtins.str] name: Key of the attribute.
|
767
|
+
:param pulumi.Input[_builtins.str] value: Value of the attribute.
|
768
|
+
"""
|
769
|
+
if name is not None:
|
770
|
+
pulumi.set(__self__, "name", name)
|
771
|
+
if value is not None:
|
772
|
+
pulumi.set(__self__, "value", value)
|
773
|
+
|
774
|
+
@_builtins.property
|
775
|
+
@pulumi.getter
|
776
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
777
|
+
"""
|
778
|
+
Key of the attribute.
|
779
|
+
"""
|
780
|
+
return pulumi.get(self, "name")
|
781
|
+
|
782
|
+
@name.setter
|
783
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
784
|
+
pulumi.set(self, "name", value)
|
785
|
+
|
786
|
+
@_builtins.property
|
787
|
+
@pulumi.getter
|
788
|
+
def value(self) -> Optional[pulumi.Input[_builtins.str]]:
|
789
|
+
"""
|
790
|
+
Value of the attribute.
|
791
|
+
"""
|
792
|
+
return pulumi.get(self, "value")
|
793
|
+
|
794
|
+
@value.setter
|
795
|
+
def value(self, value: Optional[pulumi.Input[_builtins.str]]):
|
796
|
+
pulumi.set(self, "value", value)
|
797
|
+
|
798
|
+
|
799
|
+
if not MYPY:
|
800
|
+
class ApiProductGraphqlOperationGroupOperationConfigOperationArgsDict(TypedDict):
|
801
|
+
operation: NotRequired[pulumi.Input[_builtins.str]]
|
802
|
+
"""
|
803
|
+
GraphQL operation name. The name and operation type will be used to apply quotas. If no name is specified, the quota will be applied to all GraphQL operations irrespective of their operation names in the payload.
|
804
|
+
"""
|
805
|
+
operation_types: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
806
|
+
"""
|
807
|
+
Required. GraphQL operation types. Valid values include query or mutation.
|
808
|
+
Note: Apigee does not currently support subscription types.
|
809
|
+
"""
|
810
|
+
elif False:
|
811
|
+
ApiProductGraphqlOperationGroupOperationConfigOperationArgsDict: TypeAlias = Mapping[str, Any]
|
812
|
+
|
813
|
+
@pulumi.input_type
|
814
|
+
class ApiProductGraphqlOperationGroupOperationConfigOperationArgs:
|
815
|
+
def __init__(__self__, *,
|
816
|
+
operation: Optional[pulumi.Input[_builtins.str]] = None,
|
817
|
+
operation_types: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
|
818
|
+
"""
|
819
|
+
:param pulumi.Input[_builtins.str] operation: GraphQL operation name. The name and operation type will be used to apply quotas. If no name is specified, the quota will be applied to all GraphQL operations irrespective of their operation names in the payload.
|
820
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] operation_types: Required. GraphQL operation types. Valid values include query or mutation.
|
821
|
+
Note: Apigee does not currently support subscription types.
|
822
|
+
"""
|
823
|
+
if operation is not None:
|
824
|
+
pulumi.set(__self__, "operation", operation)
|
825
|
+
if operation_types is not None:
|
826
|
+
pulumi.set(__self__, "operation_types", operation_types)
|
827
|
+
|
828
|
+
@_builtins.property
|
829
|
+
@pulumi.getter
|
830
|
+
def operation(self) -> Optional[pulumi.Input[_builtins.str]]:
|
831
|
+
"""
|
832
|
+
GraphQL operation name. The name and operation type will be used to apply quotas. If no name is specified, the quota will be applied to all GraphQL operations irrespective of their operation names in the payload.
|
833
|
+
"""
|
834
|
+
return pulumi.get(self, "operation")
|
835
|
+
|
836
|
+
@operation.setter
|
837
|
+
def operation(self, value: Optional[pulumi.Input[_builtins.str]]):
|
838
|
+
pulumi.set(self, "operation", value)
|
839
|
+
|
840
|
+
@_builtins.property
|
841
|
+
@pulumi.getter(name="operationTypes")
|
842
|
+
def operation_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
843
|
+
"""
|
844
|
+
Required. GraphQL operation types. Valid values include query or mutation.
|
845
|
+
Note: Apigee does not currently support subscription types.
|
846
|
+
"""
|
847
|
+
return pulumi.get(self, "operation_types")
|
848
|
+
|
849
|
+
@operation_types.setter
|
850
|
+
def operation_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
851
|
+
pulumi.set(self, "operation_types", value)
|
852
|
+
|
853
|
+
|
854
|
+
if not MYPY:
|
855
|
+
class ApiProductGraphqlOperationGroupOperationConfigQuotaArgsDict(TypedDict):
|
856
|
+
interval: NotRequired[pulumi.Input[_builtins.str]]
|
857
|
+
"""
|
858
|
+
Required. Time interval over which the number of request messages is calculated.
|
859
|
+
"""
|
860
|
+
limit: NotRequired[pulumi.Input[_builtins.str]]
|
861
|
+
"""
|
862
|
+
Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
863
|
+
"""
|
864
|
+
time_unit: NotRequired[pulumi.Input[_builtins.str]]
|
865
|
+
"""
|
866
|
+
Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
867
|
+
"""
|
868
|
+
elif False:
|
869
|
+
ApiProductGraphqlOperationGroupOperationConfigQuotaArgsDict: TypeAlias = Mapping[str, Any]
|
870
|
+
|
871
|
+
@pulumi.input_type
|
872
|
+
class ApiProductGraphqlOperationGroupOperationConfigQuotaArgs:
|
873
|
+
def __init__(__self__, *,
|
874
|
+
interval: Optional[pulumi.Input[_builtins.str]] = None,
|
875
|
+
limit: Optional[pulumi.Input[_builtins.str]] = None,
|
876
|
+
time_unit: Optional[pulumi.Input[_builtins.str]] = None):
|
877
|
+
"""
|
878
|
+
:param pulumi.Input[_builtins.str] interval: Required. Time interval over which the number of request messages is calculated.
|
879
|
+
:param pulumi.Input[_builtins.str] limit: Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
880
|
+
:param pulumi.Input[_builtins.str] time_unit: Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
881
|
+
"""
|
882
|
+
if interval is not None:
|
883
|
+
pulumi.set(__self__, "interval", interval)
|
884
|
+
if limit is not None:
|
885
|
+
pulumi.set(__self__, "limit", limit)
|
886
|
+
if time_unit is not None:
|
887
|
+
pulumi.set(__self__, "time_unit", time_unit)
|
888
|
+
|
889
|
+
@_builtins.property
|
890
|
+
@pulumi.getter
|
891
|
+
def interval(self) -> Optional[pulumi.Input[_builtins.str]]:
|
892
|
+
"""
|
893
|
+
Required. Time interval over which the number of request messages is calculated.
|
894
|
+
"""
|
895
|
+
return pulumi.get(self, "interval")
|
896
|
+
|
897
|
+
@interval.setter
|
898
|
+
def interval(self, value: Optional[pulumi.Input[_builtins.str]]):
|
899
|
+
pulumi.set(self, "interval", value)
|
900
|
+
|
901
|
+
@_builtins.property
|
902
|
+
@pulumi.getter
|
903
|
+
def limit(self) -> Optional[pulumi.Input[_builtins.str]]:
|
904
|
+
"""
|
905
|
+
Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
906
|
+
"""
|
907
|
+
return pulumi.get(self, "limit")
|
908
|
+
|
909
|
+
@limit.setter
|
910
|
+
def limit(self, value: Optional[pulumi.Input[_builtins.str]]):
|
911
|
+
pulumi.set(self, "limit", value)
|
912
|
+
|
913
|
+
@_builtins.property
|
914
|
+
@pulumi.getter(name="timeUnit")
|
915
|
+
def time_unit(self) -> Optional[pulumi.Input[_builtins.str]]:
|
916
|
+
"""
|
917
|
+
Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
918
|
+
"""
|
919
|
+
return pulumi.get(self, "time_unit")
|
920
|
+
|
921
|
+
@time_unit.setter
|
922
|
+
def time_unit(self, value: Optional[pulumi.Input[_builtins.str]]):
|
923
|
+
pulumi.set(self, "time_unit", value)
|
924
|
+
|
925
|
+
|
926
|
+
if not MYPY:
|
927
|
+
class ApiProductGrpcOperationGroupArgsDict(TypedDict):
|
928
|
+
operation_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigArgsDict']]]]
|
929
|
+
"""
|
930
|
+
Required. List of operation configurations for either Apigee API proxies that are associated with this API product.
|
931
|
+
Structure is documented below.
|
932
|
+
"""
|
933
|
+
elif False:
|
934
|
+
ApiProductGrpcOperationGroupArgsDict: TypeAlias = Mapping[str, Any]
|
935
|
+
|
936
|
+
@pulumi.input_type
|
937
|
+
class ApiProductGrpcOperationGroupArgs:
|
938
|
+
def __init__(__self__, *,
|
939
|
+
operation_configs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigArgs']]]] = None):
|
940
|
+
"""
|
941
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigArgs']]] operation_configs: Required. List of operation configurations for either Apigee API proxies that are associated with this API product.
|
942
|
+
Structure is documented below.
|
943
|
+
"""
|
944
|
+
if operation_configs is not None:
|
945
|
+
pulumi.set(__self__, "operation_configs", operation_configs)
|
946
|
+
|
947
|
+
@_builtins.property
|
948
|
+
@pulumi.getter(name="operationConfigs")
|
949
|
+
def operation_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigArgs']]]]:
|
950
|
+
"""
|
951
|
+
Required. List of operation configurations for either Apigee API proxies that are associated with this API product.
|
952
|
+
Structure is documented below.
|
953
|
+
"""
|
954
|
+
return pulumi.get(self, "operation_configs")
|
955
|
+
|
956
|
+
@operation_configs.setter
|
957
|
+
def operation_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigArgs']]]]):
|
958
|
+
pulumi.set(self, "operation_configs", value)
|
959
|
+
|
960
|
+
|
961
|
+
if not MYPY:
|
962
|
+
class ApiProductGrpcOperationGroupOperationConfigArgsDict(TypedDict):
|
963
|
+
api_source: NotRequired[pulumi.Input[_builtins.str]]
|
964
|
+
"""
|
965
|
+
Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
966
|
+
"""
|
967
|
+
attributes: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigAttributeArgsDict']]]]
|
968
|
+
"""
|
969
|
+
Custom attributes associated with the operation.
|
970
|
+
Structure is documented below.
|
971
|
+
"""
|
972
|
+
methods: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
973
|
+
"""
|
974
|
+
List of unqualified gRPC method names for the proxy to which quota will be applied. If this field is empty, the Quota will apply to all operations on the gRPC service defined on the proxy.
|
975
|
+
Example: Given a proxy that is configured to serve com.petstore.PetService, the methods com.petstore.PetService.ListPets and com.petstore.PetService.GetPet would be specified here as simply ["ListPets", "GetPet"].
|
976
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
977
|
+
"""
|
978
|
+
quota: NotRequired[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigQuotaArgsDict']]
|
979
|
+
"""
|
980
|
+
Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
981
|
+
Structure is documented below.
|
982
|
+
"""
|
983
|
+
service: NotRequired[pulumi.Input[_builtins.str]]
|
984
|
+
"""
|
985
|
+
Required. gRPC Service name associated to be associated with the API proxy, on which quota rules can be applied upon.
|
986
|
+
"""
|
987
|
+
elif False:
|
988
|
+
ApiProductGrpcOperationGroupOperationConfigArgsDict: TypeAlias = Mapping[str, Any]
|
989
|
+
|
990
|
+
@pulumi.input_type
|
991
|
+
class ApiProductGrpcOperationGroupOperationConfigArgs:
|
992
|
+
def __init__(__self__, *,
|
993
|
+
api_source: Optional[pulumi.Input[_builtins.str]] = None,
|
994
|
+
attributes: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigAttributeArgs']]]] = None,
|
995
|
+
methods: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
996
|
+
quota: Optional[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigQuotaArgs']] = None,
|
997
|
+
service: Optional[pulumi.Input[_builtins.str]] = None):
|
998
|
+
"""
|
999
|
+
:param pulumi.Input[_builtins.str] api_source: Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
1000
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigAttributeArgs']]] attributes: Custom attributes associated with the operation.
|
1001
|
+
Structure is documented below.
|
1002
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] methods: List of unqualified gRPC method names for the proxy to which quota will be applied. If this field is empty, the Quota will apply to all operations on the gRPC service defined on the proxy.
|
1003
|
+
Example: Given a proxy that is configured to serve com.petstore.PetService, the methods com.petstore.PetService.ListPets and com.petstore.PetService.GetPet would be specified here as simply ["ListPets", "GetPet"].
|
1004
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
1005
|
+
:param pulumi.Input['ApiProductGrpcOperationGroupOperationConfigQuotaArgs'] quota: Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
1006
|
+
Structure is documented below.
|
1007
|
+
:param pulumi.Input[_builtins.str] service: Required. gRPC Service name associated to be associated with the API proxy, on which quota rules can be applied upon.
|
1008
|
+
"""
|
1009
|
+
if api_source is not None:
|
1010
|
+
pulumi.set(__self__, "api_source", api_source)
|
1011
|
+
if attributes is not None:
|
1012
|
+
pulumi.set(__self__, "attributes", attributes)
|
1013
|
+
if methods is not None:
|
1014
|
+
pulumi.set(__self__, "methods", methods)
|
1015
|
+
if quota is not None:
|
1016
|
+
pulumi.set(__self__, "quota", quota)
|
1017
|
+
if service is not None:
|
1018
|
+
pulumi.set(__self__, "service", service)
|
1019
|
+
|
1020
|
+
@_builtins.property
|
1021
|
+
@pulumi.getter(name="apiSource")
|
1022
|
+
def api_source(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1023
|
+
"""
|
1024
|
+
Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
1025
|
+
"""
|
1026
|
+
return pulumi.get(self, "api_source")
|
1027
|
+
|
1028
|
+
@api_source.setter
|
1029
|
+
def api_source(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1030
|
+
pulumi.set(self, "api_source", value)
|
1031
|
+
|
1032
|
+
@_builtins.property
|
1033
|
+
@pulumi.getter
|
1034
|
+
def attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigAttributeArgs']]]]:
|
1035
|
+
"""
|
1036
|
+
Custom attributes associated with the operation.
|
1037
|
+
Structure is documented below.
|
1038
|
+
"""
|
1039
|
+
return pulumi.get(self, "attributes")
|
1040
|
+
|
1041
|
+
@attributes.setter
|
1042
|
+
def attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigAttributeArgs']]]]):
|
1043
|
+
pulumi.set(self, "attributes", value)
|
1044
|
+
|
1045
|
+
@_builtins.property
|
1046
|
+
@pulumi.getter
|
1047
|
+
def methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
1048
|
+
"""
|
1049
|
+
List of unqualified gRPC method names for the proxy to which quota will be applied. If this field is empty, the Quota will apply to all operations on the gRPC service defined on the proxy.
|
1050
|
+
Example: Given a proxy that is configured to serve com.petstore.PetService, the methods com.petstore.PetService.ListPets and com.petstore.PetService.GetPet would be specified here as simply ["ListPets", "GetPet"].
|
1051
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
1052
|
+
"""
|
1053
|
+
return pulumi.get(self, "methods")
|
1054
|
+
|
1055
|
+
@methods.setter
|
1056
|
+
def methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
1057
|
+
pulumi.set(self, "methods", value)
|
1058
|
+
|
1059
|
+
@_builtins.property
|
1060
|
+
@pulumi.getter
|
1061
|
+
def quota(self) -> Optional[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigQuotaArgs']]:
|
1062
|
+
"""
|
1063
|
+
Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
1064
|
+
Structure is documented below.
|
1065
|
+
"""
|
1066
|
+
return pulumi.get(self, "quota")
|
1067
|
+
|
1068
|
+
@quota.setter
|
1069
|
+
def quota(self, value: Optional[pulumi.Input['ApiProductGrpcOperationGroupOperationConfigQuotaArgs']]):
|
1070
|
+
pulumi.set(self, "quota", value)
|
1071
|
+
|
1072
|
+
@_builtins.property
|
1073
|
+
@pulumi.getter
|
1074
|
+
def service(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1075
|
+
"""
|
1076
|
+
Required. gRPC Service name associated to be associated with the API proxy, on which quota rules can be applied upon.
|
1077
|
+
"""
|
1078
|
+
return pulumi.get(self, "service")
|
1079
|
+
|
1080
|
+
@service.setter
|
1081
|
+
def service(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1082
|
+
pulumi.set(self, "service", value)
|
1083
|
+
|
1084
|
+
|
1085
|
+
if not MYPY:
|
1086
|
+
class ApiProductGrpcOperationGroupOperationConfigAttributeArgsDict(TypedDict):
|
1087
|
+
name: NotRequired[pulumi.Input[_builtins.str]]
|
1088
|
+
"""
|
1089
|
+
Key of the attribute.
|
1090
|
+
"""
|
1091
|
+
value: NotRequired[pulumi.Input[_builtins.str]]
|
1092
|
+
"""
|
1093
|
+
Value of the attribute.
|
1094
|
+
"""
|
1095
|
+
elif False:
|
1096
|
+
ApiProductGrpcOperationGroupOperationConfigAttributeArgsDict: TypeAlias = Mapping[str, Any]
|
1097
|
+
|
1098
|
+
@pulumi.input_type
|
1099
|
+
class ApiProductGrpcOperationGroupOperationConfigAttributeArgs:
|
1100
|
+
def __init__(__self__, *,
|
1101
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
1102
|
+
value: Optional[pulumi.Input[_builtins.str]] = None):
|
1103
|
+
"""
|
1104
|
+
:param pulumi.Input[_builtins.str] name: Key of the attribute.
|
1105
|
+
:param pulumi.Input[_builtins.str] value: Value of the attribute.
|
1106
|
+
"""
|
1107
|
+
if name is not None:
|
1108
|
+
pulumi.set(__self__, "name", name)
|
1109
|
+
if value is not None:
|
1110
|
+
pulumi.set(__self__, "value", value)
|
1111
|
+
|
1112
|
+
@_builtins.property
|
1113
|
+
@pulumi.getter
|
1114
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1115
|
+
"""
|
1116
|
+
Key of the attribute.
|
1117
|
+
"""
|
1118
|
+
return pulumi.get(self, "name")
|
1119
|
+
|
1120
|
+
@name.setter
|
1121
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1122
|
+
pulumi.set(self, "name", value)
|
1123
|
+
|
1124
|
+
@_builtins.property
|
1125
|
+
@pulumi.getter
|
1126
|
+
def value(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1127
|
+
"""
|
1128
|
+
Value of the attribute.
|
1129
|
+
"""
|
1130
|
+
return pulumi.get(self, "value")
|
1131
|
+
|
1132
|
+
@value.setter
|
1133
|
+
def value(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1134
|
+
pulumi.set(self, "value", value)
|
1135
|
+
|
1136
|
+
|
1137
|
+
if not MYPY:
|
1138
|
+
class ApiProductGrpcOperationGroupOperationConfigQuotaArgsDict(TypedDict):
|
1139
|
+
interval: NotRequired[pulumi.Input[_builtins.str]]
|
1140
|
+
"""
|
1141
|
+
Required. Time interval over which the number of request messages is calculated.
|
1142
|
+
"""
|
1143
|
+
limit: NotRequired[pulumi.Input[_builtins.str]]
|
1144
|
+
"""
|
1145
|
+
Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
1146
|
+
"""
|
1147
|
+
time_unit: NotRequired[pulumi.Input[_builtins.str]]
|
1148
|
+
"""
|
1149
|
+
Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
1150
|
+
"""
|
1151
|
+
elif False:
|
1152
|
+
ApiProductGrpcOperationGroupOperationConfigQuotaArgsDict: TypeAlias = Mapping[str, Any]
|
1153
|
+
|
1154
|
+
@pulumi.input_type
|
1155
|
+
class ApiProductGrpcOperationGroupOperationConfigQuotaArgs:
|
1156
|
+
def __init__(__self__, *,
|
1157
|
+
interval: Optional[pulumi.Input[_builtins.str]] = None,
|
1158
|
+
limit: Optional[pulumi.Input[_builtins.str]] = None,
|
1159
|
+
time_unit: Optional[pulumi.Input[_builtins.str]] = None):
|
1160
|
+
"""
|
1161
|
+
:param pulumi.Input[_builtins.str] interval: Required. Time interval over which the number of request messages is calculated.
|
1162
|
+
:param pulumi.Input[_builtins.str] limit: Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
1163
|
+
:param pulumi.Input[_builtins.str] time_unit: Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
1164
|
+
"""
|
1165
|
+
if interval is not None:
|
1166
|
+
pulumi.set(__self__, "interval", interval)
|
1167
|
+
if limit is not None:
|
1168
|
+
pulumi.set(__self__, "limit", limit)
|
1169
|
+
if time_unit is not None:
|
1170
|
+
pulumi.set(__self__, "time_unit", time_unit)
|
1171
|
+
|
1172
|
+
@_builtins.property
|
1173
|
+
@pulumi.getter
|
1174
|
+
def interval(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1175
|
+
"""
|
1176
|
+
Required. Time interval over which the number of request messages is calculated.
|
1177
|
+
"""
|
1178
|
+
return pulumi.get(self, "interval")
|
1179
|
+
|
1180
|
+
@interval.setter
|
1181
|
+
def interval(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1182
|
+
pulumi.set(self, "interval", value)
|
1183
|
+
|
1184
|
+
@_builtins.property
|
1185
|
+
@pulumi.getter
|
1186
|
+
def limit(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1187
|
+
"""
|
1188
|
+
Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
1189
|
+
"""
|
1190
|
+
return pulumi.get(self, "limit")
|
1191
|
+
|
1192
|
+
@limit.setter
|
1193
|
+
def limit(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1194
|
+
pulumi.set(self, "limit", value)
|
1195
|
+
|
1196
|
+
@_builtins.property
|
1197
|
+
@pulumi.getter(name="timeUnit")
|
1198
|
+
def time_unit(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1199
|
+
"""
|
1200
|
+
Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
1201
|
+
"""
|
1202
|
+
return pulumi.get(self, "time_unit")
|
1203
|
+
|
1204
|
+
@time_unit.setter
|
1205
|
+
def time_unit(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1206
|
+
pulumi.set(self, "time_unit", value)
|
1207
|
+
|
1208
|
+
|
1209
|
+
if not MYPY:
|
1210
|
+
class ApiProductOperationGroupArgsDict(TypedDict):
|
1211
|
+
operation_config_type: NotRequired[pulumi.Input[_builtins.str]]
|
1212
|
+
"""
|
1213
|
+
Flag that specifes whether the configuration is for Apigee API proxy or a remote service. Valid values include proxy or remoteservice. Defaults to proxy. Set to proxy when Apigee API proxies are associated with the API product. Set to remoteservice when non-Apigee proxies like Istio-Envoy are associated with the API product.
|
1214
|
+
Possible values are: `proxy`, `remoteservice`.
|
1215
|
+
"""
|
1216
|
+
operation_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigArgsDict']]]]
|
1217
|
+
"""
|
1218
|
+
Required. List of operation configurations for either Apigee API proxies or other remote services that are associated with this API product.
|
1219
|
+
Structure is documented below.
|
1220
|
+
"""
|
1221
|
+
elif False:
|
1222
|
+
ApiProductOperationGroupArgsDict: TypeAlias = Mapping[str, Any]
|
1223
|
+
|
1224
|
+
@pulumi.input_type
|
1225
|
+
class ApiProductOperationGroupArgs:
|
1226
|
+
def __init__(__self__, *,
|
1227
|
+
operation_config_type: Optional[pulumi.Input[_builtins.str]] = None,
|
1228
|
+
operation_configs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigArgs']]]] = None):
|
1229
|
+
"""
|
1230
|
+
:param pulumi.Input[_builtins.str] operation_config_type: Flag that specifes whether the configuration is for Apigee API proxy or a remote service. Valid values include proxy or remoteservice. Defaults to proxy. Set to proxy when Apigee API proxies are associated with the API product. Set to remoteservice when non-Apigee proxies like Istio-Envoy are associated with the API product.
|
1231
|
+
Possible values are: `proxy`, `remoteservice`.
|
1232
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigArgs']]] operation_configs: Required. List of operation configurations for either Apigee API proxies or other remote services that are associated with this API product.
|
1233
|
+
Structure is documented below.
|
1234
|
+
"""
|
1235
|
+
if operation_config_type is not None:
|
1236
|
+
pulumi.set(__self__, "operation_config_type", operation_config_type)
|
1237
|
+
if operation_configs is not None:
|
1238
|
+
pulumi.set(__self__, "operation_configs", operation_configs)
|
1239
|
+
|
1240
|
+
@_builtins.property
|
1241
|
+
@pulumi.getter(name="operationConfigType")
|
1242
|
+
def operation_config_type(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1243
|
+
"""
|
1244
|
+
Flag that specifes whether the configuration is for Apigee API proxy or a remote service. Valid values include proxy or remoteservice. Defaults to proxy. Set to proxy when Apigee API proxies are associated with the API product. Set to remoteservice when non-Apigee proxies like Istio-Envoy are associated with the API product.
|
1245
|
+
Possible values are: `proxy`, `remoteservice`.
|
1246
|
+
"""
|
1247
|
+
return pulumi.get(self, "operation_config_type")
|
1248
|
+
|
1249
|
+
@operation_config_type.setter
|
1250
|
+
def operation_config_type(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1251
|
+
pulumi.set(self, "operation_config_type", value)
|
1252
|
+
|
1253
|
+
@_builtins.property
|
1254
|
+
@pulumi.getter(name="operationConfigs")
|
1255
|
+
def operation_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigArgs']]]]:
|
1256
|
+
"""
|
1257
|
+
Required. List of operation configurations for either Apigee API proxies or other remote services that are associated with this API product.
|
1258
|
+
Structure is documented below.
|
1259
|
+
"""
|
1260
|
+
return pulumi.get(self, "operation_configs")
|
1261
|
+
|
1262
|
+
@operation_configs.setter
|
1263
|
+
def operation_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigArgs']]]]):
|
1264
|
+
pulumi.set(self, "operation_configs", value)
|
1265
|
+
|
1266
|
+
|
1267
|
+
if not MYPY:
|
1268
|
+
class ApiProductOperationGroupOperationConfigArgsDict(TypedDict):
|
1269
|
+
api_source: NotRequired[pulumi.Input[_builtins.str]]
|
1270
|
+
"""
|
1271
|
+
Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
1272
|
+
"""
|
1273
|
+
attributes: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigAttributeArgsDict']]]]
|
1274
|
+
"""
|
1275
|
+
Custom attributes associated with the operation.
|
1276
|
+
Structure is documented below.
|
1277
|
+
"""
|
1278
|
+
operations: NotRequired[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigOperationArgsDict']]]]
|
1279
|
+
"""
|
1280
|
+
Required. List of GraphQL name/operation type pairs for the proxy or remote service to which quota will be applied. If only operation types are specified, the quota will be applied to all GraphQL requests irrespective of the GraphQL name.
|
1281
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
1282
|
+
Structure is documented below.
|
1283
|
+
"""
|
1284
|
+
quota: NotRequired[pulumi.Input['ApiProductOperationGroupOperationConfigQuotaArgsDict']]
|
1285
|
+
"""
|
1286
|
+
Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
1287
|
+
Structure is documented below.
|
1288
|
+
"""
|
1289
|
+
elif False:
|
1290
|
+
ApiProductOperationGroupOperationConfigArgsDict: TypeAlias = Mapping[str, Any]
|
1291
|
+
|
1292
|
+
@pulumi.input_type
|
1293
|
+
class ApiProductOperationGroupOperationConfigArgs:
|
1294
|
+
def __init__(__self__, *,
|
1295
|
+
api_source: Optional[pulumi.Input[_builtins.str]] = None,
|
1296
|
+
attributes: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigAttributeArgs']]]] = None,
|
1297
|
+
operations: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigOperationArgs']]]] = None,
|
1298
|
+
quota: Optional[pulumi.Input['ApiProductOperationGroupOperationConfigQuotaArgs']] = None):
|
1299
|
+
"""
|
1300
|
+
:param pulumi.Input[_builtins.str] api_source: Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
1301
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigAttributeArgs']]] attributes: Custom attributes associated with the operation.
|
1302
|
+
Structure is documented below.
|
1303
|
+
:param pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigOperationArgs']]] operations: Required. List of GraphQL name/operation type pairs for the proxy or remote service to which quota will be applied. If only operation types are specified, the quota will be applied to all GraphQL requests irrespective of the GraphQL name.
|
1304
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
1305
|
+
Structure is documented below.
|
1306
|
+
:param pulumi.Input['ApiProductOperationGroupOperationConfigQuotaArgs'] quota: Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
1307
|
+
Structure is documented below.
|
1308
|
+
"""
|
1309
|
+
if api_source is not None:
|
1310
|
+
pulumi.set(__self__, "api_source", api_source)
|
1311
|
+
if attributes is not None:
|
1312
|
+
pulumi.set(__self__, "attributes", attributes)
|
1313
|
+
if operations is not None:
|
1314
|
+
pulumi.set(__self__, "operations", operations)
|
1315
|
+
if quota is not None:
|
1316
|
+
pulumi.set(__self__, "quota", quota)
|
1317
|
+
|
1318
|
+
@_builtins.property
|
1319
|
+
@pulumi.getter(name="apiSource")
|
1320
|
+
def api_source(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1321
|
+
"""
|
1322
|
+
Required. Name of the API proxy with which the gRPC operation and quota are associated.
|
1323
|
+
"""
|
1324
|
+
return pulumi.get(self, "api_source")
|
1325
|
+
|
1326
|
+
@api_source.setter
|
1327
|
+
def api_source(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1328
|
+
pulumi.set(self, "api_source", value)
|
1329
|
+
|
1330
|
+
@_builtins.property
|
1331
|
+
@pulumi.getter
|
1332
|
+
def attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigAttributeArgs']]]]:
|
1333
|
+
"""
|
1334
|
+
Custom attributes associated with the operation.
|
1335
|
+
Structure is documented below.
|
1336
|
+
"""
|
1337
|
+
return pulumi.get(self, "attributes")
|
1338
|
+
|
1339
|
+
@attributes.setter
|
1340
|
+
def attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigAttributeArgs']]]]):
|
1341
|
+
pulumi.set(self, "attributes", value)
|
1342
|
+
|
1343
|
+
@_builtins.property
|
1344
|
+
@pulumi.getter
|
1345
|
+
def operations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigOperationArgs']]]]:
|
1346
|
+
"""
|
1347
|
+
Required. List of GraphQL name/operation type pairs for the proxy or remote service to which quota will be applied. If only operation types are specified, the quota will be applied to all GraphQL requests irrespective of the GraphQL name.
|
1348
|
+
Note: Currently, you can specify only a single GraphQLOperation. Specifying more than one will cause the operation to fail.
|
1349
|
+
Structure is documented below.
|
1350
|
+
"""
|
1351
|
+
return pulumi.get(self, "operations")
|
1352
|
+
|
1353
|
+
@operations.setter
|
1354
|
+
def operations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiProductOperationGroupOperationConfigOperationArgs']]]]):
|
1355
|
+
pulumi.set(self, "operations", value)
|
1356
|
+
|
1357
|
+
@_builtins.property
|
1358
|
+
@pulumi.getter
|
1359
|
+
def quota(self) -> Optional[pulumi.Input['ApiProductOperationGroupOperationConfigQuotaArgs']]:
|
1360
|
+
"""
|
1361
|
+
Quota parameters to be enforced for the resources, methods, and API source combination. If none are specified, quota enforcement will not be done.
|
1362
|
+
Structure is documented below.
|
1363
|
+
"""
|
1364
|
+
return pulumi.get(self, "quota")
|
1365
|
+
|
1366
|
+
@quota.setter
|
1367
|
+
def quota(self, value: Optional[pulumi.Input['ApiProductOperationGroupOperationConfigQuotaArgs']]):
|
1368
|
+
pulumi.set(self, "quota", value)
|
1369
|
+
|
1370
|
+
|
1371
|
+
if not MYPY:
|
1372
|
+
class ApiProductOperationGroupOperationConfigAttributeArgsDict(TypedDict):
|
1373
|
+
name: NotRequired[pulumi.Input[_builtins.str]]
|
1374
|
+
"""
|
1375
|
+
Key of the attribute.
|
1376
|
+
"""
|
1377
|
+
value: NotRequired[pulumi.Input[_builtins.str]]
|
1378
|
+
"""
|
1379
|
+
Value of the attribute.
|
1380
|
+
"""
|
1381
|
+
elif False:
|
1382
|
+
ApiProductOperationGroupOperationConfigAttributeArgsDict: TypeAlias = Mapping[str, Any]
|
1383
|
+
|
1384
|
+
@pulumi.input_type
|
1385
|
+
class ApiProductOperationGroupOperationConfigAttributeArgs:
|
1386
|
+
def __init__(__self__, *,
|
1387
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
1388
|
+
value: Optional[pulumi.Input[_builtins.str]] = None):
|
1389
|
+
"""
|
1390
|
+
:param pulumi.Input[_builtins.str] name: Key of the attribute.
|
1391
|
+
:param pulumi.Input[_builtins.str] value: Value of the attribute.
|
1392
|
+
"""
|
1393
|
+
if name is not None:
|
1394
|
+
pulumi.set(__self__, "name", name)
|
1395
|
+
if value is not None:
|
1396
|
+
pulumi.set(__self__, "value", value)
|
1397
|
+
|
1398
|
+
@_builtins.property
|
1399
|
+
@pulumi.getter
|
1400
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1401
|
+
"""
|
1402
|
+
Key of the attribute.
|
1403
|
+
"""
|
1404
|
+
return pulumi.get(self, "name")
|
1405
|
+
|
1406
|
+
@name.setter
|
1407
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1408
|
+
pulumi.set(self, "name", value)
|
1409
|
+
|
1410
|
+
@_builtins.property
|
1411
|
+
@pulumi.getter
|
1412
|
+
def value(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1413
|
+
"""
|
1414
|
+
Value of the attribute.
|
1415
|
+
"""
|
1416
|
+
return pulumi.get(self, "value")
|
1417
|
+
|
1418
|
+
@value.setter
|
1419
|
+
def value(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1420
|
+
pulumi.set(self, "value", value)
|
1421
|
+
|
1422
|
+
|
1423
|
+
if not MYPY:
|
1424
|
+
class ApiProductOperationGroupOperationConfigOperationArgsDict(TypedDict):
|
1425
|
+
methods: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
1426
|
+
"""
|
1427
|
+
Methods refers to the REST verbs, when none specified, all verb types are allowed.
|
1428
|
+
"""
|
1429
|
+
resource: NotRequired[pulumi.Input[_builtins.str]]
|
1430
|
+
"""
|
1431
|
+
Required. REST resource path associated with the API proxy or remote service.
|
1432
|
+
"""
|
1433
|
+
elif False:
|
1434
|
+
ApiProductOperationGroupOperationConfigOperationArgsDict: TypeAlias = Mapping[str, Any]
|
1435
|
+
|
1436
|
+
@pulumi.input_type
|
1437
|
+
class ApiProductOperationGroupOperationConfigOperationArgs:
|
1438
|
+
def __init__(__self__, *,
|
1439
|
+
methods: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
1440
|
+
resource: Optional[pulumi.Input[_builtins.str]] = None):
|
1441
|
+
"""
|
1442
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] methods: Methods refers to the REST verbs, when none specified, all verb types are allowed.
|
1443
|
+
:param pulumi.Input[_builtins.str] resource: Required. REST resource path associated with the API proxy or remote service.
|
1444
|
+
"""
|
1445
|
+
if methods is not None:
|
1446
|
+
pulumi.set(__self__, "methods", methods)
|
1447
|
+
if resource is not None:
|
1448
|
+
pulumi.set(__self__, "resource", resource)
|
1449
|
+
|
1450
|
+
@_builtins.property
|
1451
|
+
@pulumi.getter
|
1452
|
+
def methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
1453
|
+
"""
|
1454
|
+
Methods refers to the REST verbs, when none specified, all verb types are allowed.
|
1455
|
+
"""
|
1456
|
+
return pulumi.get(self, "methods")
|
1457
|
+
|
1458
|
+
@methods.setter
|
1459
|
+
def methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
1460
|
+
pulumi.set(self, "methods", value)
|
1461
|
+
|
1462
|
+
@_builtins.property
|
1463
|
+
@pulumi.getter
|
1464
|
+
def resource(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1465
|
+
"""
|
1466
|
+
Required. REST resource path associated with the API proxy or remote service.
|
1467
|
+
"""
|
1468
|
+
return pulumi.get(self, "resource")
|
1469
|
+
|
1470
|
+
@resource.setter
|
1471
|
+
def resource(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1472
|
+
pulumi.set(self, "resource", value)
|
1473
|
+
|
1474
|
+
|
1475
|
+
if not MYPY:
|
1476
|
+
class ApiProductOperationGroupOperationConfigQuotaArgsDict(TypedDict):
|
1477
|
+
interval: NotRequired[pulumi.Input[_builtins.str]]
|
1478
|
+
"""
|
1479
|
+
Required. Time interval over which the number of request messages is calculated.
|
1480
|
+
"""
|
1481
|
+
limit: NotRequired[pulumi.Input[_builtins.str]]
|
1482
|
+
"""
|
1483
|
+
Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
1484
|
+
"""
|
1485
|
+
time_unit: NotRequired[pulumi.Input[_builtins.str]]
|
1486
|
+
"""
|
1487
|
+
Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
1488
|
+
"""
|
1489
|
+
elif False:
|
1490
|
+
ApiProductOperationGroupOperationConfigQuotaArgsDict: TypeAlias = Mapping[str, Any]
|
1491
|
+
|
1492
|
+
@pulumi.input_type
|
1493
|
+
class ApiProductOperationGroupOperationConfigQuotaArgs:
|
1494
|
+
def __init__(__self__, *,
|
1495
|
+
interval: Optional[pulumi.Input[_builtins.str]] = None,
|
1496
|
+
limit: Optional[pulumi.Input[_builtins.str]] = None,
|
1497
|
+
time_unit: Optional[pulumi.Input[_builtins.str]] = None):
|
1498
|
+
"""
|
1499
|
+
:param pulumi.Input[_builtins.str] interval: Required. Time interval over which the number of request messages is calculated.
|
1500
|
+
:param pulumi.Input[_builtins.str] limit: Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
1501
|
+
:param pulumi.Input[_builtins.str] time_unit: Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
1502
|
+
"""
|
1503
|
+
if interval is not None:
|
1504
|
+
pulumi.set(__self__, "interval", interval)
|
1505
|
+
if limit is not None:
|
1506
|
+
pulumi.set(__self__, "limit", limit)
|
1507
|
+
if time_unit is not None:
|
1508
|
+
pulumi.set(__self__, "time_unit", time_unit)
|
1509
|
+
|
1510
|
+
@_builtins.property
|
1511
|
+
@pulumi.getter
|
1512
|
+
def interval(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1513
|
+
"""
|
1514
|
+
Required. Time interval over which the number of request messages is calculated.
|
1515
|
+
"""
|
1516
|
+
return pulumi.get(self, "interval")
|
1517
|
+
|
1518
|
+
@interval.setter
|
1519
|
+
def interval(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1520
|
+
pulumi.set(self, "interval", value)
|
1521
|
+
|
1522
|
+
@_builtins.property
|
1523
|
+
@pulumi.getter
|
1524
|
+
def limit(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1525
|
+
"""
|
1526
|
+
Required. Upper limit allowed for the time interval and time unit specified. Requests exceeding this limit will be rejected.
|
1527
|
+
"""
|
1528
|
+
return pulumi.get(self, "limit")
|
1529
|
+
|
1530
|
+
@limit.setter
|
1531
|
+
def limit(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1532
|
+
pulumi.set(self, "limit", value)
|
1533
|
+
|
1534
|
+
@_builtins.property
|
1535
|
+
@pulumi.getter(name="timeUnit")
|
1536
|
+
def time_unit(self) -> Optional[pulumi.Input[_builtins.str]]:
|
1537
|
+
"""
|
1538
|
+
Time unit defined for the interval. Valid values include second, minute, hour, day, month or year. If limit and interval are valid, the default value is hour; otherwise, the default is null.
|
1539
|
+
"""
|
1540
|
+
return pulumi.get(self, "time_unit")
|
1541
|
+
|
1542
|
+
@time_unit.setter
|
1543
|
+
def time_unit(self, value: Optional[pulumi.Input[_builtins.str]]):
|
1544
|
+
pulumi.set(self, "time_unit", value)
|
1545
|
+
|
1546
|
+
|
493
1547
|
if not MYPY:
|
494
1548
|
class AppGroupAttributeArgsDict(TypedDict):
|
495
1549
|
name: NotRequired[pulumi.Input[_builtins.str]]
|
@@ -2249,6 +3303,387 @@ class OrganizationPropertiesPropertyArgs:
|
|
2249
3303
|
pulumi.set(self, "value", value)
|
2250
3304
|
|
2251
3305
|
|
3306
|
+
if not MYPY:
|
3307
|
+
class SecurityActionAllowArgsDict(TypedDict):
|
3308
|
+
pass
|
3309
|
+
elif False:
|
3310
|
+
SecurityActionAllowArgsDict: TypeAlias = Mapping[str, Any]
|
3311
|
+
|
3312
|
+
@pulumi.input_type
|
3313
|
+
class SecurityActionAllowArgs:
|
3314
|
+
def __init__(__self__):
|
3315
|
+
pass
|
3316
|
+
|
3317
|
+
|
3318
|
+
if not MYPY:
|
3319
|
+
class SecurityActionConditionConfigArgsDict(TypedDict):
|
3320
|
+
access_tokens: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3321
|
+
"""
|
3322
|
+
A list of accessTokens. Limit 1000 per action.
|
3323
|
+
"""
|
3324
|
+
api_keys: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3325
|
+
"""
|
3326
|
+
A list of API keys. Limit 1000 per action.
|
3327
|
+
"""
|
3328
|
+
api_products: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3329
|
+
"""
|
3330
|
+
A list of API Products. Limit 1000 per action.
|
3331
|
+
"""
|
3332
|
+
asns: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3333
|
+
"""
|
3334
|
+
A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet)
|
3335
|
+
This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
|
3336
|
+
"""
|
3337
|
+
bot_reasons: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3338
|
+
"""
|
3339
|
+
A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper,
|
3340
|
+
OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper,
|
3341
|
+
Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
|
3342
|
+
"""
|
3343
|
+
developer_apps: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3344
|
+
"""
|
3345
|
+
A list of developer apps. Limit 1000 per action.
|
3346
|
+
"""
|
3347
|
+
developers: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3348
|
+
"""
|
3349
|
+
A list of developers. Limit 1000 per action.
|
3350
|
+
"""
|
3351
|
+
http_methods: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3352
|
+
"""
|
3353
|
+
Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods.
|
3354
|
+
Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
|
3355
|
+
"""
|
3356
|
+
ip_address_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3357
|
+
"""
|
3358
|
+
A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
|
3359
|
+
"""
|
3360
|
+
region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3361
|
+
"""
|
3362
|
+
A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
|
3363
|
+
"""
|
3364
|
+
user_agents: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
|
3365
|
+
"""
|
3366
|
+
A list of user agents to deny. We look for exact matches. Limit 50 per action.
|
3367
|
+
"""
|
3368
|
+
elif False:
|
3369
|
+
SecurityActionConditionConfigArgsDict: TypeAlias = Mapping[str, Any]
|
3370
|
+
|
3371
|
+
@pulumi.input_type
|
3372
|
+
class SecurityActionConditionConfigArgs:
|
3373
|
+
def __init__(__self__, *,
|
3374
|
+
access_tokens: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3375
|
+
api_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3376
|
+
api_products: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3377
|
+
asns: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3378
|
+
bot_reasons: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3379
|
+
developer_apps: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3380
|
+
developers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3381
|
+
http_methods: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3382
|
+
ip_address_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3383
|
+
region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
3384
|
+
user_agents: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
|
3385
|
+
"""
|
3386
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] access_tokens: A list of accessTokens. Limit 1000 per action.
|
3387
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] api_keys: A list of API keys. Limit 1000 per action.
|
3388
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] api_products: A list of API Products. Limit 1000 per action.
|
3389
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] asns: A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet)
|
3390
|
+
This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
|
3391
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] bot_reasons: A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper,
|
3392
|
+
OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper,
|
3393
|
+
Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
|
3394
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] developer_apps: A list of developer apps. Limit 1000 per action.
|
3395
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] developers: A list of developers. Limit 1000 per action.
|
3396
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] http_methods: Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods.
|
3397
|
+
Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
|
3398
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ip_address_ranges: A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
|
3399
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] region_codes: A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
|
3400
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] user_agents: A list of user agents to deny. We look for exact matches. Limit 50 per action.
|
3401
|
+
"""
|
3402
|
+
if access_tokens is not None:
|
3403
|
+
pulumi.set(__self__, "access_tokens", access_tokens)
|
3404
|
+
if api_keys is not None:
|
3405
|
+
pulumi.set(__self__, "api_keys", api_keys)
|
3406
|
+
if api_products is not None:
|
3407
|
+
pulumi.set(__self__, "api_products", api_products)
|
3408
|
+
if asns is not None:
|
3409
|
+
pulumi.set(__self__, "asns", asns)
|
3410
|
+
if bot_reasons is not None:
|
3411
|
+
pulumi.set(__self__, "bot_reasons", bot_reasons)
|
3412
|
+
if developer_apps is not None:
|
3413
|
+
pulumi.set(__self__, "developer_apps", developer_apps)
|
3414
|
+
if developers is not None:
|
3415
|
+
pulumi.set(__self__, "developers", developers)
|
3416
|
+
if http_methods is not None:
|
3417
|
+
pulumi.set(__self__, "http_methods", http_methods)
|
3418
|
+
if ip_address_ranges is not None:
|
3419
|
+
pulumi.set(__self__, "ip_address_ranges", ip_address_ranges)
|
3420
|
+
if region_codes is not None:
|
3421
|
+
pulumi.set(__self__, "region_codes", region_codes)
|
3422
|
+
if user_agents is not None:
|
3423
|
+
pulumi.set(__self__, "user_agents", user_agents)
|
3424
|
+
|
3425
|
+
@_builtins.property
|
3426
|
+
@pulumi.getter(name="accessTokens")
|
3427
|
+
def access_tokens(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3428
|
+
"""
|
3429
|
+
A list of accessTokens. Limit 1000 per action.
|
3430
|
+
"""
|
3431
|
+
return pulumi.get(self, "access_tokens")
|
3432
|
+
|
3433
|
+
@access_tokens.setter
|
3434
|
+
def access_tokens(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3435
|
+
pulumi.set(self, "access_tokens", value)
|
3436
|
+
|
3437
|
+
@_builtins.property
|
3438
|
+
@pulumi.getter(name="apiKeys")
|
3439
|
+
def api_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3440
|
+
"""
|
3441
|
+
A list of API keys. Limit 1000 per action.
|
3442
|
+
"""
|
3443
|
+
return pulumi.get(self, "api_keys")
|
3444
|
+
|
3445
|
+
@api_keys.setter
|
3446
|
+
def api_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3447
|
+
pulumi.set(self, "api_keys", value)
|
3448
|
+
|
3449
|
+
@_builtins.property
|
3450
|
+
@pulumi.getter(name="apiProducts")
|
3451
|
+
def api_products(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3452
|
+
"""
|
3453
|
+
A list of API Products. Limit 1000 per action.
|
3454
|
+
"""
|
3455
|
+
return pulumi.get(self, "api_products")
|
3456
|
+
|
3457
|
+
@api_products.setter
|
3458
|
+
def api_products(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3459
|
+
pulumi.set(self, "api_products", value)
|
3460
|
+
|
3461
|
+
@_builtins.property
|
3462
|
+
@pulumi.getter
|
3463
|
+
def asns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3464
|
+
"""
|
3465
|
+
A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet)
|
3466
|
+
This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
|
3467
|
+
"""
|
3468
|
+
return pulumi.get(self, "asns")
|
3469
|
+
|
3470
|
+
@asns.setter
|
3471
|
+
def asns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3472
|
+
pulumi.set(self, "asns", value)
|
3473
|
+
|
3474
|
+
@_builtins.property
|
3475
|
+
@pulumi.getter(name="botReasons")
|
3476
|
+
def bot_reasons(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3477
|
+
"""
|
3478
|
+
A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper,
|
3479
|
+
OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper,
|
3480
|
+
Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
|
3481
|
+
"""
|
3482
|
+
return pulumi.get(self, "bot_reasons")
|
3483
|
+
|
3484
|
+
@bot_reasons.setter
|
3485
|
+
def bot_reasons(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3486
|
+
pulumi.set(self, "bot_reasons", value)
|
3487
|
+
|
3488
|
+
@_builtins.property
|
3489
|
+
@pulumi.getter(name="developerApps")
|
3490
|
+
def developer_apps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3491
|
+
"""
|
3492
|
+
A list of developer apps. Limit 1000 per action.
|
3493
|
+
"""
|
3494
|
+
return pulumi.get(self, "developer_apps")
|
3495
|
+
|
3496
|
+
@developer_apps.setter
|
3497
|
+
def developer_apps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3498
|
+
pulumi.set(self, "developer_apps", value)
|
3499
|
+
|
3500
|
+
@_builtins.property
|
3501
|
+
@pulumi.getter
|
3502
|
+
def developers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3503
|
+
"""
|
3504
|
+
A list of developers. Limit 1000 per action.
|
3505
|
+
"""
|
3506
|
+
return pulumi.get(self, "developers")
|
3507
|
+
|
3508
|
+
@developers.setter
|
3509
|
+
def developers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3510
|
+
pulumi.set(self, "developers", value)
|
3511
|
+
|
3512
|
+
@_builtins.property
|
3513
|
+
@pulumi.getter(name="httpMethods")
|
3514
|
+
def http_methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3515
|
+
"""
|
3516
|
+
Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods.
|
3517
|
+
Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
|
3518
|
+
"""
|
3519
|
+
return pulumi.get(self, "http_methods")
|
3520
|
+
|
3521
|
+
@http_methods.setter
|
3522
|
+
def http_methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3523
|
+
pulumi.set(self, "http_methods", value)
|
3524
|
+
|
3525
|
+
@_builtins.property
|
3526
|
+
@pulumi.getter(name="ipAddressRanges")
|
3527
|
+
def ip_address_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3528
|
+
"""
|
3529
|
+
A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
|
3530
|
+
"""
|
3531
|
+
return pulumi.get(self, "ip_address_ranges")
|
3532
|
+
|
3533
|
+
@ip_address_ranges.setter
|
3534
|
+
def ip_address_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3535
|
+
pulumi.set(self, "ip_address_ranges", value)
|
3536
|
+
|
3537
|
+
@_builtins.property
|
3538
|
+
@pulumi.getter(name="regionCodes")
|
3539
|
+
def region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3540
|
+
"""
|
3541
|
+
A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
|
3542
|
+
"""
|
3543
|
+
return pulumi.get(self, "region_codes")
|
3544
|
+
|
3545
|
+
@region_codes.setter
|
3546
|
+
def region_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3547
|
+
pulumi.set(self, "region_codes", value)
|
3548
|
+
|
3549
|
+
@_builtins.property
|
3550
|
+
@pulumi.getter(name="userAgents")
|
3551
|
+
def user_agents(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
3552
|
+
"""
|
3553
|
+
A list of user agents to deny. We look for exact matches. Limit 50 per action.
|
3554
|
+
"""
|
3555
|
+
return pulumi.get(self, "user_agents")
|
3556
|
+
|
3557
|
+
@user_agents.setter
|
3558
|
+
def user_agents(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
3559
|
+
pulumi.set(self, "user_agents", value)
|
3560
|
+
|
3561
|
+
|
3562
|
+
if not MYPY:
|
3563
|
+
class SecurityActionDenyArgsDict(TypedDict):
|
3564
|
+
response_code: NotRequired[pulumi.Input[_builtins.int]]
|
3565
|
+
"""
|
3566
|
+
The HTTP response code if the Action = DENY.
|
3567
|
+
"""
|
3568
|
+
elif False:
|
3569
|
+
SecurityActionDenyArgsDict: TypeAlias = Mapping[str, Any]
|
3570
|
+
|
3571
|
+
@pulumi.input_type
|
3572
|
+
class SecurityActionDenyArgs:
|
3573
|
+
def __init__(__self__, *,
|
3574
|
+
response_code: Optional[pulumi.Input[_builtins.int]] = None):
|
3575
|
+
"""
|
3576
|
+
:param pulumi.Input[_builtins.int] response_code: The HTTP response code if the Action = DENY.
|
3577
|
+
"""
|
3578
|
+
if response_code is not None:
|
3579
|
+
pulumi.set(__self__, "response_code", response_code)
|
3580
|
+
|
3581
|
+
@_builtins.property
|
3582
|
+
@pulumi.getter(name="responseCode")
|
3583
|
+
def response_code(self) -> Optional[pulumi.Input[_builtins.int]]:
|
3584
|
+
"""
|
3585
|
+
The HTTP response code if the Action = DENY.
|
3586
|
+
"""
|
3587
|
+
return pulumi.get(self, "response_code")
|
3588
|
+
|
3589
|
+
@response_code.setter
|
3590
|
+
def response_code(self, value: Optional[pulumi.Input[_builtins.int]]):
|
3591
|
+
pulumi.set(self, "response_code", value)
|
3592
|
+
|
3593
|
+
|
3594
|
+
if not MYPY:
|
3595
|
+
class SecurityActionFlagArgsDict(TypedDict):
|
3596
|
+
headers: NotRequired[pulumi.Input[Sequence[pulumi.Input['SecurityActionFlagHeaderArgsDict']]]]
|
3597
|
+
"""
|
3598
|
+
A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction.
|
3599
|
+
Limit 5 headers per SecurityAction.
|
3600
|
+
At least one is mandatory.
|
3601
|
+
Structure is documented below.
|
3602
|
+
"""
|
3603
|
+
elif False:
|
3604
|
+
SecurityActionFlagArgsDict: TypeAlias = Mapping[str, Any]
|
3605
|
+
|
3606
|
+
@pulumi.input_type
|
3607
|
+
class SecurityActionFlagArgs:
|
3608
|
+
def __init__(__self__, *,
|
3609
|
+
headers: Optional[pulumi.Input[Sequence[pulumi.Input['SecurityActionFlagHeaderArgs']]]] = None):
|
3610
|
+
"""
|
3611
|
+
:param pulumi.Input[Sequence[pulumi.Input['SecurityActionFlagHeaderArgs']]] headers: A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction.
|
3612
|
+
Limit 5 headers per SecurityAction.
|
3613
|
+
At least one is mandatory.
|
3614
|
+
Structure is documented below.
|
3615
|
+
"""
|
3616
|
+
if headers is not None:
|
3617
|
+
pulumi.set(__self__, "headers", headers)
|
3618
|
+
|
3619
|
+
@_builtins.property
|
3620
|
+
@pulumi.getter
|
3621
|
+
def headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecurityActionFlagHeaderArgs']]]]:
|
3622
|
+
"""
|
3623
|
+
A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction.
|
3624
|
+
Limit 5 headers per SecurityAction.
|
3625
|
+
At least one is mandatory.
|
3626
|
+
Structure is documented below.
|
3627
|
+
"""
|
3628
|
+
return pulumi.get(self, "headers")
|
3629
|
+
|
3630
|
+
@headers.setter
|
3631
|
+
def headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecurityActionFlagHeaderArgs']]]]):
|
3632
|
+
pulumi.set(self, "headers", value)
|
3633
|
+
|
3634
|
+
|
3635
|
+
if not MYPY:
|
3636
|
+
class SecurityActionFlagHeaderArgsDict(TypedDict):
|
3637
|
+
name: NotRequired[pulumi.Input[_builtins.str]]
|
3638
|
+
"""
|
3639
|
+
The header name to be sent to the target.
|
3640
|
+
"""
|
3641
|
+
value: NotRequired[pulumi.Input[_builtins.str]]
|
3642
|
+
"""
|
3643
|
+
The header value to be sent to the target.
|
3644
|
+
"""
|
3645
|
+
elif False:
|
3646
|
+
SecurityActionFlagHeaderArgsDict: TypeAlias = Mapping[str, Any]
|
3647
|
+
|
3648
|
+
@pulumi.input_type
|
3649
|
+
class SecurityActionFlagHeaderArgs:
|
3650
|
+
def __init__(__self__, *,
|
3651
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
3652
|
+
value: Optional[pulumi.Input[_builtins.str]] = None):
|
3653
|
+
"""
|
3654
|
+
:param pulumi.Input[_builtins.str] name: The header name to be sent to the target.
|
3655
|
+
:param pulumi.Input[_builtins.str] value: The header value to be sent to the target.
|
3656
|
+
"""
|
3657
|
+
if name is not None:
|
3658
|
+
pulumi.set(__self__, "name", name)
|
3659
|
+
if value is not None:
|
3660
|
+
pulumi.set(__self__, "value", value)
|
3661
|
+
|
3662
|
+
@_builtins.property
|
3663
|
+
@pulumi.getter
|
3664
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
3665
|
+
"""
|
3666
|
+
The header name to be sent to the target.
|
3667
|
+
"""
|
3668
|
+
return pulumi.get(self, "name")
|
3669
|
+
|
3670
|
+
@name.setter
|
3671
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
3672
|
+
pulumi.set(self, "name", value)
|
3673
|
+
|
3674
|
+
@_builtins.property
|
3675
|
+
@pulumi.getter
|
3676
|
+
def value(self) -> Optional[pulumi.Input[_builtins.str]]:
|
3677
|
+
"""
|
3678
|
+
The header value to be sent to the target.
|
3679
|
+
"""
|
3680
|
+
return pulumi.get(self, "value")
|
3681
|
+
|
3682
|
+
@value.setter
|
3683
|
+
def value(self, value: Optional[pulumi.Input[_builtins.str]]):
|
3684
|
+
pulumi.set(self, "value", value)
|
3685
|
+
|
3686
|
+
|
2252
3687
|
if not MYPY:
|
2253
3688
|
class SecurityMonitoringConditionIncludeAllResourcesArgsDict(TypedDict):
|
2254
3689
|
pass
|