@robinmordasiewicz/f5xc-terraform-mcp 3.0.0 → 3.0.2

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.
Files changed (99) hide show
  1. package/dist/docs/data-sources/addon_service.md +143 -0
  2. package/dist/docs/data-sources/addon_service_activation_status.md +144 -0
  3. package/dist/docs/data-sources/addon_subscription.md +134 -0
  4. package/dist/docs/data-sources/allowed_tenant.md +134 -0
  5. package/dist/docs/data-sources/api_credential.md +134 -0
  6. package/dist/docs/data-sources/bigip_irule.md +134 -0
  7. package/dist/docs/data-sources/child_tenant.md +134 -0
  8. package/dist/docs/data-sources/child_tenant_manager.md +134 -0
  9. package/dist/docs/data-sources/contact.md +134 -0
  10. package/dist/docs/data-sources/customer_support.md +134 -0
  11. package/dist/docs/data-sources/dns_lb_health_check.md +134 -0
  12. package/dist/docs/data-sources/dns_lb_pool.md +134 -0
  13. package/dist/docs/data-sources/dns_load_balancer.md +134 -0
  14. package/dist/docs/data-sources/dns_zone.md +145 -0
  15. package/dist/docs/data-sources/geo_location_set.md +134 -0
  16. package/dist/docs/data-sources/ike1.md +134 -0
  17. package/dist/docs/data-sources/ike2.md +134 -0
  18. package/dist/docs/data-sources/ike_phase1_profile.md +134 -0
  19. package/dist/docs/data-sources/ike_phase2_profile.md +134 -0
  20. package/dist/docs/data-sources/infraprotect_asn.md +134 -0
  21. package/dist/docs/data-sources/infraprotect_asn_prefix.md +134 -0
  22. package/dist/docs/data-sources/infraprotect_deny_list_rule.md +134 -0
  23. package/dist/docs/data-sources/infraprotect_firewall_rule.md +134 -0
  24. package/dist/docs/data-sources/infraprotect_firewall_rule_group.md +134 -0
  25. package/dist/docs/data-sources/infraprotect_internet_prefix_advertisement.md +134 -0
  26. package/dist/docs/data-sources/infraprotect_tunnel.md +134 -0
  27. package/dist/docs/data-sources/k8s_cluster.md +134 -0
  28. package/dist/docs/data-sources/k8s_cluster_role.md +134 -0
  29. package/dist/docs/data-sources/k8s_cluster_role_binding.md +134 -0
  30. package/dist/docs/data-sources/k8s_pod_security_admission.md +134 -0
  31. package/dist/docs/data-sources/k8s_pod_security_policy.md +134 -0
  32. package/dist/docs/data-sources/managed_tenant.md +134 -0
  33. package/dist/docs/data-sources/namespace.md +141 -0
  34. package/dist/docs/data-sources/oidc_provider.md +134 -0
  35. package/dist/docs/data-sources/quota.md +134 -0
  36. package/dist/docs/data-sources/registration.md +134 -0
  37. package/dist/docs/data-sources/report_config.md +134 -0
  38. package/dist/docs/data-sources/role.md +134 -0
  39. package/dist/docs/data-sources/secret_policy.md +134 -0
  40. package/dist/docs/data-sources/secret_policy_rule.md +134 -0
  41. package/dist/docs/data-sources/securemesh_site_v2.md +134 -0
  42. package/dist/docs/data-sources/srv6_network_slice.md +134 -0
  43. package/dist/docs/data-sources/tenant_profile.md +134 -0
  44. package/dist/docs/data-sources/ticket_tracking_system.md +134 -0
  45. package/dist/docs/data-sources/token.md +134 -0
  46. package/dist/docs/data-sources/tpm_api_key.md +134 -0
  47. package/dist/docs/data-sources/tpm_category.md +134 -0
  48. package/dist/docs/data-sources/tpm_manager.md +134 -0
  49. package/dist/docs/data-sources/virtual_k8s.md +134 -0
  50. package/dist/docs/data-sources/voltshare_admin_policy.md +134 -0
  51. package/dist/docs/resources/addon_subscription.md +213 -0
  52. package/dist/docs/resources/allowed_tenant.md +181 -0
  53. package/dist/docs/resources/api_credential.md +184 -0
  54. package/dist/docs/resources/bigip_irule.md +173 -0
  55. package/dist/docs/resources/child_tenant.md +237 -0
  56. package/dist/docs/resources/child_tenant_manager.md +201 -0
  57. package/dist/docs/resources/contact.md +187 -0
  58. package/dist/docs/resources/customer_support.md +253 -0
  59. package/dist/docs/resources/dns_lb_health_check.md +249 -0
  60. package/dist/docs/resources/dns_lb_pool.md +310 -0
  61. package/dist/docs/resources/dns_load_balancer.md +309 -0
  62. package/dist/docs/resources/dns_zone.md +790 -0
  63. package/dist/docs/resources/geo_location_set.md +180 -0
  64. package/dist/docs/resources/ike1.md +216 -0
  65. package/dist/docs/resources/ike2.md +210 -0
  66. package/dist/docs/resources/ike_phase1_profile.md +224 -0
  67. package/dist/docs/resources/ike_phase2_profile.md +214 -0
  68. package/dist/docs/resources/infraprotect_asn.md +183 -0
  69. package/dist/docs/resources/infraprotect_asn_prefix.md +181 -0
  70. package/dist/docs/resources/infraprotect_deny_list_rule.md +191 -0
  71. package/dist/docs/resources/infraprotect_firewall_rule.md +288 -0
  72. package/dist/docs/resources/infraprotect_firewall_rule_group.md +169 -0
  73. package/dist/docs/resources/infraprotect_internet_prefix_advertisement.md +191 -0
  74. package/dist/docs/resources/infraprotect_tunnel.md +289 -0
  75. package/dist/docs/resources/k8s_cluster.md +326 -0
  76. package/dist/docs/resources/k8s_cluster_role.md +222 -0
  77. package/dist/docs/resources/k8s_cluster_role_binding.md +207 -0
  78. package/dist/docs/resources/k8s_pod_security_admission.md +199 -0
  79. package/dist/docs/resources/k8s_pod_security_policy.md +337 -0
  80. package/dist/docs/resources/managed_tenant.md +193 -0
  81. package/dist/docs/resources/namespace.md +170 -0
  82. package/dist/docs/resources/oidc_provider.md +291 -0
  83. package/dist/docs/resources/quota.md +187 -0
  84. package/dist/docs/resources/registration.md +489 -0
  85. package/dist/docs/resources/report_config.md +237 -0
  86. package/dist/docs/resources/role.md +183 -0
  87. package/dist/docs/resources/secret_policy.md +240 -0
  88. package/dist/docs/resources/secret_policy_rule.md +198 -0
  89. package/dist/docs/resources/securemesh_site_v2.md +2027 -0
  90. package/dist/docs/resources/srv6_network_slice.md +175 -0
  91. package/dist/docs/resources/tenant_profile.md +233 -0
  92. package/dist/docs/resources/ticket_tracking_system.md +195 -0
  93. package/dist/docs/resources/token.md +170 -0
  94. package/dist/docs/resources/tpm_api_key.md +191 -0
  95. package/dist/docs/resources/tpm_category.md +191 -0
  96. package/dist/docs/resources/tpm_manager.md +167 -0
  97. package/dist/docs/resources/virtual_k8s.md +209 -0
  98. package/dist/docs/resources/voltshare_admin_policy.md +271 -0
  99. package/package.json +1 -1
@@ -0,0 +1,213 @@
1
+ ---
2
+ page_title: "f5xc_addon_subscription Resource - terraform-provider-f5xc"
3
+ subcategory: "Subscriptions"
4
+ description: |-
5
+ Manages new Addon Subscription with Addon Subscription State in F5 Distributed Cloud.
6
+ ---
7
+
8
+ # f5xc_addon_subscription (Resource)
9
+
10
+ Manages new Addon Subscription with Addon Subscription State in F5 Distributed Cloud.
11
+
12
+ ~> **Note** For more information about this resource, please refer to the [F5 XC API Documentation](https://docs.cloud.f5.com/docs/api/).
13
+
14
+ ## Example Usage
15
+
16
+ ```terraform
17
+ # Addon Subscription Resource Example
18
+ # Manages new Addon Subscription with Addon Subscription State in F5 Distributed Cloud.
19
+
20
+ # Basic Addon Subscription configuration
21
+ resource "f5xc_addon_subscription" "example" {
22
+ name = "example-addon-subscription"
23
+ namespace = "staging"
24
+
25
+ labels = {
26
+ environment = "production"
27
+ managed_by = "terraform"
28
+ }
29
+
30
+ annotations = {
31
+ "owner" = "platform-team"
32
+ }
33
+
34
+ # Resource-specific configuration
35
+ # Object reference. This type establishes a direct referenc...
36
+ addon_service {
37
+ # Configure addon_service settings
38
+ }
39
+ # Notification Preference. NotificationPreference preferenc...
40
+ notification_preference {
41
+ # Configure notification_preference settings
42
+ }
43
+ # Addon Subscription Associated Emails. Addon Subscription ...
44
+ emails {
45
+ # Configure emails settings
46
+ }
47
+ }
48
+ ```
49
+
50
+ <!-- schema generated by tfplugindocs -->
51
+ ## Argument Reference
52
+
53
+ ### Metadata Argument Reference
54
+
55
+ <a id="name"></a>&#x2022; [`name`](#name) - Required String<br>Name of the Addon Subscription. Must be unique within the namespace
56
+
57
+ <a id="namespace"></a>&#x2022; [`namespace`](#namespace) - Required String<br>Namespace where the Addon Subscription will be created
58
+
59
+ <a id="annotations"></a>&#x2022; [`annotations`](#annotations) - Optional Map<br>Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata
60
+
61
+ <a id="description"></a>&#x2022; [`description`](#description) - Optional String<br>Human readable description for the object
62
+
63
+ <a id="disable"></a>&#x2022; [`disable`](#disable) - Optional Bool<br>A value of true will administratively disable the object
64
+
65
+ <a id="labels"></a>&#x2022; [`labels`](#labels) - Optional Map<br>Labels is a user defined key value map that can be attached to resources for organization and filtering
66
+
67
+ ### Spec Argument Reference
68
+
69
+ <a id="addon-service"></a>&#x2022; [`addon_service`](#addon-service) - Optional Block<br>Object reference. This type establishes a direct reference from one object(the referrer) to another(the referred). Such a reference is in form of tenant/namespace/name<br>See [Addon Service](#addon-service) below for details.
70
+
71
+ <a id="notification-preference"></a>&#x2022; [`notification_preference`](#notification-preference) - Optional Block<br>Notification Preference. NotificationPreference preference for receiving addon subscription notifications<br>See [Notification Preference](#notification-preference) below for details.
72
+
73
+ <a id="status"></a>&#x2022; [`status`](#status) - Optional String Defaults to `SUBSCRIPTION_PENDING`<br>Possible values are `SUBSCRIPTION_PENDING`, `SUBSCRIPTION_ENABLED`, `SUBSCRIPTION_DISABLE_PENDING`, `SUBSCRIPTION_DISABLED`<br>[Enum: SUBSCRIPTION_PENDING|SUBSCRIPTION_ENABLED|SUBSCRIPTION_DISABLE_PENDING|SUBSCRIPTION_DISABLED] Addon Subscription Type. Represents the different states of an addon subscription. - SUBSCRIPTION_PENDING: Subscription Pending Indicates that the subscription is pending enablement. - SUBSCRIPTION_ENABLED: Subscription Enabled Indicates that the subscription is currently enabled and active. - SUBSCRIPTION_DISABLE_PENDING: Subscription Disable Pending Indicates that the addon disable process is pending. - SUBSCRIPTION_DISABLED: Subscription Disabled Indicates that the addon has been disabled
74
+
75
+ <a id="timeouts"></a>&#x2022; [`timeouts`](#timeouts) - Optional Block<br>See [Timeouts](#timeouts) below for details.
76
+
77
+ ### Attributes Reference
78
+
79
+ In addition to all arguments above, the following attributes are exported:
80
+
81
+ <a id="id"></a>&#x2022; [`id`](#id) - Optional String<br>Unique identifier for the resource
82
+
83
+ ---
84
+
85
+ #### Addon Service
86
+
87
+ <a id="objref-40d406"></a>Uses standard [Object Reference](#common-object-reference) fields (name, namespace, tenant).
88
+
89
+ #### Notification Preference
90
+
91
+ A [`notification_preference`](#notification-preference) block supports the following:
92
+
93
+ <a id="notification-preference-emails"></a>&#x2022; [`emails`](#notification-preference-emails) - Optional Block<br>Addon Subscription Associated Emails. Addon Subscription Emails associated with the Addon Subscription<br>See [Emails](#notification-preference-emails) below.
94
+
95
+ <a id="ticket-id-f447b3"></a>&#x2022; [`support_ticket_id`](#ticket-id-f447b3) - Optional Block<br>Support Ticket ID. SupportTicketId gives the information about ticket created for managed addon subscription<br>See [Support Ticket ID](#ticket-id-f447b3) below.
96
+
97
+ #### Notification Preference Emails
98
+
99
+ An [`emails`](#notification-preference-emails) block (within [`notification_preference`](#notification-preference)) supports the following:
100
+
101
+ <a id="ids-319c7d"></a>&#x2022; [`email_ids`](#ids-319c7d) - Optional List<br>Emails. Email ids associated with the Addon Subscription
102
+
103
+ #### Notification Preference Support Ticket ID
104
+
105
+ A [`support_ticket_id`](#ticket-id-f447b3) block (within [`notification_preference`](#notification-preference)) supports the following:
106
+
107
+ <a id="ticket-id-a60719"></a>&#x2022; [`subscription_ticket_id`](#ticket-id-a60719) - Optional String<br>Subscription Ticket ID. subscription_ticket_id associated with the Addon Subscription subscription
108
+
109
+ <a id="ticket-id-a3f70e"></a>&#x2022; [`unsubscription_ticket_id`](#ticket-id-a3f70e) - Optional String<br>Unsubscription Ticket ID. unsubscription_ticket_id associated with the Addon Subscription unsubscription
110
+
111
+ #### Timeouts
112
+
113
+ A [`timeouts`](#timeouts) block supports the following:
114
+
115
+ <a id="timeouts-create"></a>&#x2022; [`create`](#timeouts-create) - Optional String (Defaults to `10 minutes`)<br>Used when creating the resource
116
+
117
+ <a id="timeouts-delete"></a>&#x2022; [`delete`](#timeouts-delete) - Optional String (Defaults to `10 minutes`)<br>Used when deleting the resource
118
+
119
+ <a id="timeouts-read"></a>&#x2022; [`read`](#timeouts-read) - Optional String (Defaults to `5 minutes`)<br>Used when retrieving the resource
120
+
121
+ <a id="timeouts-update"></a>&#x2022; [`update`](#timeouts-update) - Optional String (Defaults to `10 minutes`)<br>Used when updating the resource
122
+
123
+ ---
124
+
125
+ ## Common Types
126
+
127
+ The following type definitions are used throughout this resource. See the full definition here rather than repeated inline.
128
+
129
+ ### Object Reference {#common-object-reference}
130
+
131
+ Object references establish a direct reference from one configuration object to another in F5 Distributed Cloud. References use the format `tenant/namespace/name`.
132
+
133
+ | Field | Type | Description |
134
+ | ----- | ---- | ----------- |
135
+ | `name` | String | Name of the referenced object |
136
+ | `namespace` | String | Namespace containing the referenced object |
137
+ | `tenant` | String | Tenant of the referenced object (system-managed) |
138
+
139
+ ### Transformers {#common-transformers}
140
+
141
+ Transformers apply transformations to input values before matching. Multiple transformers can be applied in order.
142
+
143
+ | Value | Description |
144
+ | ----- | ----------- |
145
+ | `LOWER_CASE` | Convert to lowercase |
146
+ | `UPPER_CASE` | Convert to uppercase |
147
+ | `BASE64_DECODE` | Decode base64 content |
148
+ | `NORMALIZE_PATH` | Normalize URL path |
149
+ | `REMOVE_WHITESPACE` | Remove whitespace characters |
150
+ | `URL_DECODE` | Decode URL-encoded characters |
151
+ | `TRIM_LEFT` | Trim leading whitespace |
152
+ | `TRIM_RIGHT` | Trim trailing whitespace |
153
+ | `TRIM` | Trim both leading and trailing whitespace |
154
+
155
+ ### HTTP Methods {#common-http-methods}
156
+
157
+ HTTP methods used for request matching.
158
+
159
+ | Value | Description |
160
+ | ----- | ----------- |
161
+ | `ANY` | Match any HTTP method |
162
+ | `GET` | HTTP GET request |
163
+ | `HEAD` | HTTP HEAD request |
164
+ | `POST` | HTTP POST request |
165
+ | `PUT` | HTTP PUT request |
166
+ | `DELETE` | HTTP DELETE request |
167
+ | `CONNECT` | HTTP CONNECT request |
168
+ | `OPTIONS` | HTTP OPTIONS request |
169
+ | `TRACE` | HTTP TRACE request |
170
+ | `PATCH` | HTTP PATCH request |
171
+ | `COPY` | HTTP COPY request (WebDAV) |
172
+
173
+ ### TLS Fingerprints {#common-tls-fingerprints}
174
+
175
+ TLS fingerprint categories for malicious client detection.
176
+
177
+ | Value | Description |
178
+ | ----- | ----------- |
179
+ | `TLS_FINGERPRINT_NONE` | No fingerprint matching |
180
+ | `ANY_MALICIOUS_FINGERPRINT` | Match any known malicious fingerprint |
181
+ | `ADWARE` | Adware-associated fingerprints |
182
+ | `DRIDEX` | Dridex malware fingerprints |
183
+ | `GOOTKIT` | Gootkit malware fingerprints |
184
+ | `RANSOMWARE` | Ransomware-associated fingerprints |
185
+ | `TRICKBOT` | Trickbot malware fingerprints |
186
+
187
+ ### IP Threat Categories {#common-ip-threat-categories}
188
+
189
+ IP address threat categories for security filtering.
190
+
191
+ | Value | Description |
192
+ | ----- | ----------- |
193
+ | `SPAM_SOURCES` | Known spam sources |
194
+ | `WINDOWS_EXPLOITS` | Windows exploit sources |
195
+ | `WEB_ATTACKS` | Web attack sources |
196
+ | `BOTNETS` | Known botnet IPs |
197
+ | `SCANNERS` | Network scanner IPs |
198
+ | `REPUTATION` | Poor reputation IPs |
199
+ | `PHISHING` | Phishing-related IPs |
200
+ | `PROXY` | Anonymous proxy IPs |
201
+ | `MOBILE_THREATS` | Mobile threat sources |
202
+ | `TOR_PROXY` | Tor exit nodes |
203
+ | `DENIAL_OF_SERVICE` | DoS attack sources |
204
+ | `NETWORK` | Known bad network ranges |
205
+
206
+ ## Import
207
+
208
+ Import is supported using the following syntax:
209
+
210
+ ```shell
211
+ # Import using namespace/name format
212
+ terraform import f5xc_addon_subscription.example system/example
213
+ ```
@@ -0,0 +1,181 @@
1
+ ---
2
+ page_title: "f5xc_allowed_tenant Resource - terraform-provider-f5xc"
3
+ subcategory: "Organization"
4
+ description: |-
5
+ Manages allowed_tenant config instance. Name of the object is name of the tenant that is allowed to manage. in F5 Distributed Cloud.
6
+ ---
7
+
8
+ # f5xc_allowed_tenant (Resource)
9
+
10
+ Manages allowed_tenant config instance. Name of the object is name of the tenant that is allowed to manage. in F5 Distributed Cloud.
11
+
12
+ ~> **Note** For more information about this resource, please refer to the [F5 XC API Documentation](https://docs.cloud.f5.com/docs/api/).
13
+
14
+ ## Example Usage
15
+
16
+ ```terraform
17
+ # Allowed Tenant Resource Example
18
+ # Manages allowed_tenant config instance. Name of the object is name of the tenant that is allowed to manage. in F5 Distributed Cloud.
19
+
20
+ # Basic Allowed Tenant configuration
21
+ resource "f5xc_allowed_tenant" "example" {
22
+ name = "example-allowed-tenant"
23
+ namespace = "staging"
24
+
25
+ labels = {
26
+ environment = "production"
27
+ managed_by = "terraform"
28
+ }
29
+
30
+ annotations = {
31
+ "owner" = "platform-team"
32
+ }
33
+
34
+ # Resource-specific configuration
35
+ # Allowed Groups. List of references to allowed user_group ...
36
+ allowed_groups {
37
+ # Configure allowed_groups settings
38
+ }
39
+ }
40
+ ```
41
+
42
+ <!-- schema generated by tfplugindocs -->
43
+ ## Argument Reference
44
+
45
+ ### Metadata Argument Reference
46
+
47
+ <a id="name"></a>&#x2022; [`name`](#name) - Required String<br>Name of the Allowed Tenant. Must be unique within the namespace
48
+
49
+ <a id="namespace"></a>&#x2022; [`namespace`](#namespace) - Required String<br>Namespace where the Allowed Tenant will be created
50
+
51
+ <a id="annotations"></a>&#x2022; [`annotations`](#annotations) - Optional Map<br>Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata
52
+
53
+ <a id="description"></a>&#x2022; [`description`](#description) - Optional String<br>Human readable description for the object
54
+
55
+ <a id="disable"></a>&#x2022; [`disable`](#disable) - Optional Bool<br>A value of true will administratively disable the object
56
+
57
+ <a id="labels"></a>&#x2022; [`labels`](#labels) - Optional Map<br>Labels is a user defined key value map that can be attached to resources for organization and filtering
58
+
59
+ ### Spec Argument Reference
60
+
61
+ <a id="allowed-groups"></a>&#x2022; [`allowed_groups`](#allowed-groups) - Optional Block<br>Allowed Groups. List of references to allowed user_group objects for access in to tenant. Admin can use this to control API access by users from from original tenant into an allowed tenant. User access from original tenant into an allowed tenant will be associated to underlying roles in this user_group<br>See [Allowed Groups](#allowed-groups) below for details.
62
+
63
+ <a id="tenant-id"></a>&#x2022; [`tenant_id`](#tenant-id) - Optional String<br>Allowed Tenant ID. Specify the Tenant ID of the Original Tenant which is allowed to manage. NOTE: this is the name of the tenant configuration obj. not UID
64
+
65
+ <a id="timeouts"></a>&#x2022; [`timeouts`](#timeouts) - Optional Block<br>See [Timeouts](#timeouts) below for details.
66
+
67
+ ### Attributes Reference
68
+
69
+ In addition to all arguments above, the following attributes are exported:
70
+
71
+ <a id="id"></a>&#x2022; [`id`](#id) - Optional String<br>Unique identifier for the resource
72
+
73
+ ---
74
+
75
+ #### Allowed Groups
76
+
77
+ <a id="objref-2e1133"></a>Uses standard [Object Reference](#common-object-reference) fields (name, namespace, tenant).
78
+
79
+ #### Timeouts
80
+
81
+ A [`timeouts`](#timeouts) block supports the following:
82
+
83
+ <a id="timeouts-create"></a>&#x2022; [`create`](#timeouts-create) - Optional String (Defaults to `10 minutes`)<br>Used when creating the resource
84
+
85
+ <a id="timeouts-delete"></a>&#x2022; [`delete`](#timeouts-delete) - Optional String (Defaults to `10 minutes`)<br>Used when deleting the resource
86
+
87
+ <a id="timeouts-read"></a>&#x2022; [`read`](#timeouts-read) - Optional String (Defaults to `5 minutes`)<br>Used when retrieving the resource
88
+
89
+ <a id="timeouts-update"></a>&#x2022; [`update`](#timeouts-update) - Optional String (Defaults to `10 minutes`)<br>Used when updating the resource
90
+
91
+ ---
92
+
93
+ ## Common Types
94
+
95
+ The following type definitions are used throughout this resource. See the full definition here rather than repeated inline.
96
+
97
+ ### Object Reference {#common-object-reference}
98
+
99
+ Object references establish a direct reference from one configuration object to another in F5 Distributed Cloud. References use the format `tenant/namespace/name`.
100
+
101
+ | Field | Type | Description |
102
+ | ----- | ---- | ----------- |
103
+ | `name` | String | Name of the referenced object |
104
+ | `namespace` | String | Namespace containing the referenced object |
105
+ | `tenant` | String | Tenant of the referenced object (system-managed) |
106
+
107
+ ### Transformers {#common-transformers}
108
+
109
+ Transformers apply transformations to input values before matching. Multiple transformers can be applied in order.
110
+
111
+ | Value | Description |
112
+ | ----- | ----------- |
113
+ | `LOWER_CASE` | Convert to lowercase |
114
+ | `UPPER_CASE` | Convert to uppercase |
115
+ | `BASE64_DECODE` | Decode base64 content |
116
+ | `NORMALIZE_PATH` | Normalize URL path |
117
+ | `REMOVE_WHITESPACE` | Remove whitespace characters |
118
+ | `URL_DECODE` | Decode URL-encoded characters |
119
+ | `TRIM_LEFT` | Trim leading whitespace |
120
+ | `TRIM_RIGHT` | Trim trailing whitespace |
121
+ | `TRIM` | Trim both leading and trailing whitespace |
122
+
123
+ ### HTTP Methods {#common-http-methods}
124
+
125
+ HTTP methods used for request matching.
126
+
127
+ | Value | Description |
128
+ | ----- | ----------- |
129
+ | `ANY` | Match any HTTP method |
130
+ | `GET` | HTTP GET request |
131
+ | `HEAD` | HTTP HEAD request |
132
+ | `POST` | HTTP POST request |
133
+ | `PUT` | HTTP PUT request |
134
+ | `DELETE` | HTTP DELETE request |
135
+ | `CONNECT` | HTTP CONNECT request |
136
+ | `OPTIONS` | HTTP OPTIONS request |
137
+ | `TRACE` | HTTP TRACE request |
138
+ | `PATCH` | HTTP PATCH request |
139
+ | `COPY` | HTTP COPY request (WebDAV) |
140
+
141
+ ### TLS Fingerprints {#common-tls-fingerprints}
142
+
143
+ TLS fingerprint categories for malicious client detection.
144
+
145
+ | Value | Description |
146
+ | ----- | ----------- |
147
+ | `TLS_FINGERPRINT_NONE` | No fingerprint matching |
148
+ | `ANY_MALICIOUS_FINGERPRINT` | Match any known malicious fingerprint |
149
+ | `ADWARE` | Adware-associated fingerprints |
150
+ | `DRIDEX` | Dridex malware fingerprints |
151
+ | `GOOTKIT` | Gootkit malware fingerprints |
152
+ | `RANSOMWARE` | Ransomware-associated fingerprints |
153
+ | `TRICKBOT` | Trickbot malware fingerprints |
154
+
155
+ ### IP Threat Categories {#common-ip-threat-categories}
156
+
157
+ IP address threat categories for security filtering.
158
+
159
+ | Value | Description |
160
+ | ----- | ----------- |
161
+ | `SPAM_SOURCES` | Known spam sources |
162
+ | `WINDOWS_EXPLOITS` | Windows exploit sources |
163
+ | `WEB_ATTACKS` | Web attack sources |
164
+ | `BOTNETS` | Known botnet IPs |
165
+ | `SCANNERS` | Network scanner IPs |
166
+ | `REPUTATION` | Poor reputation IPs |
167
+ | `PHISHING` | Phishing-related IPs |
168
+ | `PROXY` | Anonymous proxy IPs |
169
+ | `MOBILE_THREATS` | Mobile threat sources |
170
+ | `TOR_PROXY` | Tor exit nodes |
171
+ | `DENIAL_OF_SERVICE` | DoS attack sources |
172
+ | `NETWORK` | Known bad network ranges |
173
+
174
+ ## Import
175
+
176
+ Import is supported using the following syntax:
177
+
178
+ ```shell
179
+ # Import using namespace/name format
180
+ terraform import f5xc_allowed_tenant.example system/example
181
+ ```
@@ -0,0 +1,184 @@
1
+ ---
2
+ page_title: "f5xc_api_credential Resource - terraform-provider-f5xc"
3
+ subcategory: "Authentication"
4
+ description: |-
5
+ Manages request specification. in F5 Distributed Cloud.
6
+ ---
7
+
8
+ # f5xc_api_credential (Resource)
9
+
10
+ Manages request specification. in F5 Distributed Cloud.
11
+
12
+ ~> **Note** For more information about this resource, please refer to the [F5 XC API Documentation](https://docs.cloud.f5.com/docs/api/).
13
+
14
+ ## Example Usage
15
+
16
+ ```terraform
17
+ # API Credential Resource Example
18
+ # Manages request specification. in F5 Distributed Cloud.
19
+
20
+ # Basic API Credential configuration
21
+ resource "f5xc_api_credential" "example" {
22
+ name = "example-api-credential"
23
+ namespace = "system"
24
+
25
+ labels = {
26
+ environment = "production"
27
+ managed_by = "terraform"
28
+ }
29
+
30
+ annotations = {
31
+ "owner" = "platform-team"
32
+ }
33
+
34
+ # API Credential configuration
35
+ api_credential_type = "API_CERTIFICATE"
36
+
37
+ # Expiration settings
38
+ expiration_timestamp = "2025-12-31T23:59:59Z"
39
+
40
+ # Active state
41
+ active = true
42
+ }
43
+ ```
44
+
45
+ <!-- schema generated by tfplugindocs -->
46
+ ## Argument Reference
47
+
48
+ ### Metadata Argument Reference
49
+
50
+ <a id="name"></a>&#x2022; [`name`](#name) - Required String<br>Name of the API Credential. Must be unique within the namespace
51
+
52
+ <a id="namespace"></a>&#x2022; [`namespace`](#namespace) - Required String<br>Namespace where the API Credential will be created
53
+
54
+ <a id="annotations"></a>&#x2022; [`annotations`](#annotations) - Optional Map<br>Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata
55
+
56
+ <a id="description"></a>&#x2022; [`description`](#description) - Optional String<br>Human readable description for the object
57
+
58
+ <a id="disable"></a>&#x2022; [`disable`](#disable) - Optional Bool<br>A value of true will administratively disable the object
59
+
60
+ <a id="labels"></a>&#x2022; [`labels`](#labels) - Optional Map<br>Labels is a user defined key value map that can be attached to resources for organization and filtering
61
+
62
+ ### Spec Argument Reference
63
+
64
+ <a id="password"></a>&#x2022; [`password`](#password) - Optional String<br>Password. Password is used for generating an API certificate P12 bundle user can use to protect access to it. this password will not be saved/persisted anywhere in the system. Applicable for credential type API_CERTIFICATE Users have to use this password when they use the certificate, e.g. in curl or while adding to key chain
65
+
66
+ <a id="timeouts"></a>&#x2022; [`timeouts`](#timeouts) - Optional Block<br>See [Timeouts](#timeouts) below for details.
67
+
68
+ <a id="type"></a>&#x2022; [`type`](#type) - Optional String Defaults to `API_CERTIFICATE`<br>Possible values are `API_CERTIFICATE`, `KUBE_CONFIG`, `API_TOKEN`, `SERVICE_API_TOKEN`, `SERVICE_API_CERTIFICATE`, `SERVICE_KUBE_CONFIG`, `SITE_GLOBAL_KUBE_CONFIG`, `SCIM_API_TOKEN`, `SERVICE_SITE_GLOBAL_KUBE_CONFIG`<br>[Enum: API_CERTIFICATE|KUBE_CONFIG|API_TOKEN|SERVICE_API_TOKEN|SERVICE_API_CERTIFICATE|SERVICE_KUBE_CONFIG|SITE_GLOBAL_KUBE_CONFIG|SCIM_API_TOKEN|SERVICE_SITE_GLOBAL_KUBE_CONFIG] Credential Type. Types of API credential given when requesting credentials from volterra F5XC user certificate to access F5XC public API using mTLS using self credential (my credential) Kubernetes config file to access Virtual Kubernetes API in Volterra using self credential (my credential) API token to access F5XC public API using self credential (my credential) API token for service credentials using service user credential (service credential) API certificate for service credentials using service user credential (service credential) Service Credential kubeconfig using service user credential (service credential) Kubeconfig for accessing Site via Global Controller using self credential (my credential) Token for the SCIM public APIs used to sync users and groups with the F5XC platform. External identity provider's SCIM client can use this token as Bearer token with Authorization header Service Credential Kubeconfig for accessing Site via Global Controller using service user credential (service credential)
69
+
70
+ <a id="virtual-k8s-name"></a>&#x2022; [`virtual_k8s_name`](#virtual-k8s-name) - Optional String<br>vK8s Cluster. Name of virtual K8S cluster. Applicable for KUBE_CONFIG
71
+
72
+ <a id="virtual-k8s-namespace"></a>&#x2022; [`virtual_k8s_namespace`](#virtual-k8s-namespace) - Optional String<br>vK8s Namespace. Namespace of virtual K8S cluster. Applicable for KUBE_CONFIG
73
+
74
+ ### Attributes Reference
75
+
76
+ In addition to all arguments above, the following attributes are exported:
77
+
78
+ <a id="id"></a>&#x2022; [`id`](#id) - Optional String<br>Unique identifier for the resource
79
+
80
+ ---
81
+
82
+ #### Timeouts
83
+
84
+ A [`timeouts`](#timeouts) block supports the following:
85
+
86
+ <a id="timeouts-create"></a>&#x2022; [`create`](#timeouts-create) - Optional String (Defaults to `10 minutes`)<br>Used when creating the resource
87
+
88
+ <a id="timeouts-delete"></a>&#x2022; [`delete`](#timeouts-delete) - Optional String (Defaults to `10 minutes`)<br>Used when deleting the resource
89
+
90
+ <a id="timeouts-read"></a>&#x2022; [`read`](#timeouts-read) - Optional String (Defaults to `5 minutes`)<br>Used when retrieving the resource
91
+
92
+ <a id="timeouts-update"></a>&#x2022; [`update`](#timeouts-update) - Optional String (Defaults to `10 minutes`)<br>Used when updating the resource
93
+
94
+ ---
95
+
96
+ ## Common Types
97
+
98
+ The following type definitions are used throughout this resource. See the full definition here rather than repeated inline.
99
+
100
+ ### Object Reference {#common-object-reference}
101
+
102
+ Object references establish a direct reference from one configuration object to another in F5 Distributed Cloud. References use the format `tenant/namespace/name`.
103
+
104
+ | Field | Type | Description |
105
+ | ----- | ---- | ----------- |
106
+ | `name` | String | Name of the referenced object |
107
+ | `namespace` | String | Namespace containing the referenced object |
108
+ | `tenant` | String | Tenant of the referenced object (system-managed) |
109
+
110
+ ### Transformers {#common-transformers}
111
+
112
+ Transformers apply transformations to input values before matching. Multiple transformers can be applied in order.
113
+
114
+ | Value | Description |
115
+ | ----- | ----------- |
116
+ | `LOWER_CASE` | Convert to lowercase |
117
+ | `UPPER_CASE` | Convert to uppercase |
118
+ | `BASE64_DECODE` | Decode base64 content |
119
+ | `NORMALIZE_PATH` | Normalize URL path |
120
+ | `REMOVE_WHITESPACE` | Remove whitespace characters |
121
+ | `URL_DECODE` | Decode URL-encoded characters |
122
+ | `TRIM_LEFT` | Trim leading whitespace |
123
+ | `TRIM_RIGHT` | Trim trailing whitespace |
124
+ | `TRIM` | Trim both leading and trailing whitespace |
125
+
126
+ ### HTTP Methods {#common-http-methods}
127
+
128
+ HTTP methods used for request matching.
129
+
130
+ | Value | Description |
131
+ | ----- | ----------- |
132
+ | `ANY` | Match any HTTP method |
133
+ | `GET` | HTTP GET request |
134
+ | `HEAD` | HTTP HEAD request |
135
+ | `POST` | HTTP POST request |
136
+ | `PUT` | HTTP PUT request |
137
+ | `DELETE` | HTTP DELETE request |
138
+ | `CONNECT` | HTTP CONNECT request |
139
+ | `OPTIONS` | HTTP OPTIONS request |
140
+ | `TRACE` | HTTP TRACE request |
141
+ | `PATCH` | HTTP PATCH request |
142
+ | `COPY` | HTTP COPY request (WebDAV) |
143
+
144
+ ### TLS Fingerprints {#common-tls-fingerprints}
145
+
146
+ TLS fingerprint categories for malicious client detection.
147
+
148
+ | Value | Description |
149
+ | ----- | ----------- |
150
+ | `TLS_FINGERPRINT_NONE` | No fingerprint matching |
151
+ | `ANY_MALICIOUS_FINGERPRINT` | Match any known malicious fingerprint |
152
+ | `ADWARE` | Adware-associated fingerprints |
153
+ | `DRIDEX` | Dridex malware fingerprints |
154
+ | `GOOTKIT` | Gootkit malware fingerprints |
155
+ | `RANSOMWARE` | Ransomware-associated fingerprints |
156
+ | `TRICKBOT` | Trickbot malware fingerprints |
157
+
158
+ ### IP Threat Categories {#common-ip-threat-categories}
159
+
160
+ IP address threat categories for security filtering.
161
+
162
+ | Value | Description |
163
+ | ----- | ----------- |
164
+ | `SPAM_SOURCES` | Known spam sources |
165
+ | `WINDOWS_EXPLOITS` | Windows exploit sources |
166
+ | `WEB_ATTACKS` | Web attack sources |
167
+ | `BOTNETS` | Known botnet IPs |
168
+ | `SCANNERS` | Network scanner IPs |
169
+ | `REPUTATION` | Poor reputation IPs |
170
+ | `PHISHING` | Phishing-related IPs |
171
+ | `PROXY` | Anonymous proxy IPs |
172
+ | `MOBILE_THREATS` | Mobile threat sources |
173
+ | `TOR_PROXY` | Tor exit nodes |
174
+ | `DENIAL_OF_SERVICE` | DoS attack sources |
175
+ | `NETWORK` | Known bad network ranges |
176
+
177
+ ## Import
178
+
179
+ Import is supported using the following syntax:
180
+
181
+ ```shell
182
+ # Import using namespace/name format
183
+ terraform import f5xc_api_credential.example system/example
184
+ ```