pulumiverse-scaleway 1.35.0a1761031391__py3-none-any.whl → 1.39.0a1764841480__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.
Files changed (109) hide show
  1. pulumiverse_scaleway/__init__.py +38 -0
  2. pulumiverse_scaleway/_inputs.py +271 -166
  3. pulumiverse_scaleway/audittrail/__init__.py +10 -0
  4. pulumiverse_scaleway/audittrail/get_event.py +410 -0
  5. pulumiverse_scaleway/audittrail/outputs.py +234 -0
  6. pulumiverse_scaleway/baremetal_server.py +159 -0
  7. pulumiverse_scaleway/billing/get_consumptions.py +4 -0
  8. pulumiverse_scaleway/block/snapshot.py +78 -0
  9. pulumiverse_scaleway/block_snapshot.py +78 -0
  10. pulumiverse_scaleway/cockpit_grafana_user.py +0 -42
  11. pulumiverse_scaleway/database_instance.py +105 -55
  12. pulumiverse_scaleway/database_user.py +6 -6
  13. pulumiverse_scaleway/databases/_inputs.py +97 -3
  14. pulumiverse_scaleway/databases/get_instance.py +12 -1
  15. pulumiverse_scaleway/databases/instance.py +105 -55
  16. pulumiverse_scaleway/databases/outputs.py +127 -2
  17. pulumiverse_scaleway/databases/user.py +6 -6
  18. pulumiverse_scaleway/datawarehouse/__init__.py +13 -0
  19. pulumiverse_scaleway/datawarehouse/_inputs.py +149 -0
  20. pulumiverse_scaleway/datawarehouse/database.py +338 -0
  21. pulumiverse_scaleway/datawarehouse/deployment.py +821 -0
  22. pulumiverse_scaleway/datawarehouse/outputs.py +113 -0
  23. pulumiverse_scaleway/datawarehouse/user.py +451 -0
  24. pulumiverse_scaleway/domain/record.py +4 -4
  25. pulumiverse_scaleway/domain_record.py +4 -4
  26. pulumiverse_scaleway/edge_services_cache_stage.py +30 -0
  27. pulumiverse_scaleway/edge_services_dns_stage.py +28 -0
  28. pulumiverse_scaleway/elasticmetal/get_offer.py +2 -0
  29. pulumiverse_scaleway/elasticmetal/get_server.py +12 -1
  30. pulumiverse_scaleway/elasticmetal/server.py +159 -0
  31. pulumiverse_scaleway/file_filesystem.py +39 -35
  32. pulumiverse_scaleway/get_baremetal_offer.py +2 -0
  33. pulumiverse_scaleway/get_baremetal_server.py +12 -1
  34. pulumiverse_scaleway/get_billing_consumptions.py +4 -0
  35. pulumiverse_scaleway/get_database_instance.py +12 -1
  36. pulumiverse_scaleway/get_instance_ip.py +14 -2
  37. pulumiverse_scaleway/get_instance_server.py +13 -83
  38. pulumiverse_scaleway/get_k8s_version.py +12 -1
  39. pulumiverse_scaleway/get_kubernetes_cluster.py +34 -1
  40. pulumiverse_scaleway/get_loadbalancer.py +12 -1
  41. pulumiverse_scaleway/get_loadbalancer_certificate.py +60 -0
  42. pulumiverse_scaleway/iam/__init__.py +1 -0
  43. pulumiverse_scaleway/iam/get_policy.py +293 -0
  44. pulumiverse_scaleway/iam/outputs.py +52 -0
  45. pulumiverse_scaleway/inference/deployment.py +36 -0
  46. pulumiverse_scaleway/inference/model.py +7 -7
  47. pulumiverse_scaleway/inference_deployment.py +36 -0
  48. pulumiverse_scaleway/instance/_inputs.py +155 -144
  49. pulumiverse_scaleway/instance/get_ip.py +14 -2
  50. pulumiverse_scaleway/instance/get_server.py +13 -83
  51. pulumiverse_scaleway/instance/image.py +94 -40
  52. pulumiverse_scaleway/instance/outputs.py +164 -167
  53. pulumiverse_scaleway/instance/server.py +116 -244
  54. pulumiverse_scaleway/instance/user_data.py +4 -4
  55. pulumiverse_scaleway/instance/volume.py +14 -0
  56. pulumiverse_scaleway/instance_image.py +94 -40
  57. pulumiverse_scaleway/instance_server.py +116 -244
  58. pulumiverse_scaleway/instance_user_data.py +4 -4
  59. pulumiverse_scaleway/instance_volume.py +14 -0
  60. pulumiverse_scaleway/iot/device.py +0 -38
  61. pulumiverse_scaleway/iot/hub.py +11 -11
  62. pulumiverse_scaleway/iot/route.py +20 -20
  63. pulumiverse_scaleway/iot_device.py +0 -38
  64. pulumiverse_scaleway/iot_hub.py +11 -11
  65. pulumiverse_scaleway/iot_route.py +20 -20
  66. pulumiverse_scaleway/ipam/_inputs.py +6 -6
  67. pulumiverse_scaleway/ipam/ip.py +35 -7
  68. pulumiverse_scaleway/ipam/ip_reverse_dns.py +70 -0
  69. pulumiverse_scaleway/ipam/outputs.py +4 -4
  70. pulumiverse_scaleway/ipam_ip.py +35 -7
  71. pulumiverse_scaleway/ipam_ip_reverse_dns.py +70 -0
  72. pulumiverse_scaleway/key_manager_key.py +134 -25
  73. pulumiverse_scaleway/kubernetes/cluster.py +290 -4
  74. pulumiverse_scaleway/kubernetes/get_cluster.py +34 -1
  75. pulumiverse_scaleway/kubernetes/get_version.py +12 -1
  76. pulumiverse_scaleway/kubernetes/pool.py +7 -7
  77. pulumiverse_scaleway/kubernetes_cluster.py +290 -4
  78. pulumiverse_scaleway/kubernetes_node_pool.py +7 -7
  79. pulumiverse_scaleway/loadbalancer.py +55 -1
  80. pulumiverse_scaleway/loadbalancers/__init__.py +1 -0
  81. pulumiverse_scaleway/loadbalancers/_inputs.py +13 -13
  82. pulumiverse_scaleway/loadbalancers/get_certificate.py +60 -0
  83. pulumiverse_scaleway/loadbalancers/get_load_balancer.py +12 -1
  84. pulumiverse_scaleway/loadbalancers/load_balancer.py +55 -1
  85. pulumiverse_scaleway/loadbalancers/outputs.py +9 -9
  86. pulumiverse_scaleway/loadbalancers/private_network.py +505 -0
  87. pulumiverse_scaleway/mongo_db_instance.py +14 -14
  88. pulumiverse_scaleway/mongodb/instance.py +14 -14
  89. pulumiverse_scaleway/network/gateway_network.py +7 -7
  90. pulumiverse_scaleway/object/__init__.py +1 -0
  91. pulumiverse_scaleway/object/bucket_policy.py +0 -64
  92. pulumiverse_scaleway/object/get.py +290 -0
  93. pulumiverse_scaleway/object/item.py +37 -7
  94. pulumiverse_scaleway/object_bucket_policy.py +0 -64
  95. pulumiverse_scaleway/object_item.py +37 -7
  96. pulumiverse_scaleway/observability/__init__.py +1 -0
  97. pulumiverse_scaleway/observability/get_grafana.py +103 -0
  98. pulumiverse_scaleway/observability/get_sources.py +6 -6
  99. pulumiverse_scaleway/observability/grafana_user.py +0 -42
  100. pulumiverse_scaleway/observability/outputs.py +2 -2
  101. pulumiverse_scaleway/outputs.py +304 -182
  102. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  103. pulumiverse_scaleway/tem/domain.py +42 -0
  104. pulumiverse_scaleway/tem_domain.py +42 -0
  105. pulumiverse_scaleway/vpc_gateway_network.py +7 -7
  106. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/METADATA +1 -1
  107. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/RECORD +109 -96
  108. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/WHEEL +0 -0
  109. {pulumiverse_scaleway-1.35.0a1761031391.dist-info → pulumiverse_scaleway-1.39.0a1764841480.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,10 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ from .. import _utilities
7
+ import typing
8
+ # Export this package's modules as members:
9
+ from .get_event import *
10
+ from . import outputs
@@ -0,0 +1,410 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetEventResult',
20
+ 'AwaitableGetEventResult',
21
+ 'get_event',
22
+ 'get_event_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetEventResult:
27
+ """
28
+ A collection of values returned by getEvent.
29
+ """
30
+ def __init__(__self__, events=None, id=None, method_name=None, order_by=None, organization_id=None, principal_id=None, product_name=None, project_id=None, recorded_after=None, recorded_before=None, region=None, resource_id=None, resource_type=None, service_name=None, source_ip=None, status=None):
31
+ if events and not isinstance(events, list):
32
+ raise TypeError("Expected argument 'events' to be a list")
33
+ pulumi.set(__self__, "events", events)
34
+ if id and not isinstance(id, str):
35
+ raise TypeError("Expected argument 'id' to be a str")
36
+ pulumi.set(__self__, "id", id)
37
+ if method_name and not isinstance(method_name, str):
38
+ raise TypeError("Expected argument 'method_name' to be a str")
39
+ pulumi.set(__self__, "method_name", method_name)
40
+ if order_by and not isinstance(order_by, str):
41
+ raise TypeError("Expected argument 'order_by' to be a str")
42
+ pulumi.set(__self__, "order_by", order_by)
43
+ if organization_id and not isinstance(organization_id, str):
44
+ raise TypeError("Expected argument 'organization_id' to be a str")
45
+ pulumi.set(__self__, "organization_id", organization_id)
46
+ if principal_id and not isinstance(principal_id, str):
47
+ raise TypeError("Expected argument 'principal_id' to be a str")
48
+ pulumi.set(__self__, "principal_id", principal_id)
49
+ if product_name and not isinstance(product_name, str):
50
+ raise TypeError("Expected argument 'product_name' to be a str")
51
+ pulumi.set(__self__, "product_name", product_name)
52
+ if project_id and not isinstance(project_id, str):
53
+ raise TypeError("Expected argument 'project_id' to be a str")
54
+ pulumi.set(__self__, "project_id", project_id)
55
+ if recorded_after and not isinstance(recorded_after, str):
56
+ raise TypeError("Expected argument 'recorded_after' to be a str")
57
+ pulumi.set(__self__, "recorded_after", recorded_after)
58
+ if recorded_before and not isinstance(recorded_before, str):
59
+ raise TypeError("Expected argument 'recorded_before' to be a str")
60
+ pulumi.set(__self__, "recorded_before", recorded_before)
61
+ if region and not isinstance(region, str):
62
+ raise TypeError("Expected argument 'region' to be a str")
63
+ pulumi.set(__self__, "region", region)
64
+ if resource_id and not isinstance(resource_id, str):
65
+ raise TypeError("Expected argument 'resource_id' to be a str")
66
+ pulumi.set(__self__, "resource_id", resource_id)
67
+ if resource_type and not isinstance(resource_type, str):
68
+ raise TypeError("Expected argument 'resource_type' to be a str")
69
+ pulumi.set(__self__, "resource_type", resource_type)
70
+ if service_name and not isinstance(service_name, str):
71
+ raise TypeError("Expected argument 'service_name' to be a str")
72
+ pulumi.set(__self__, "service_name", service_name)
73
+ if source_ip and not isinstance(source_ip, str):
74
+ raise TypeError("Expected argument 'source_ip' to be a str")
75
+ pulumi.set(__self__, "source_ip", source_ip)
76
+ if status and not isinstance(status, int):
77
+ raise TypeError("Expected argument 'status' to be a int")
78
+ pulumi.set(__self__, "status", status)
79
+
80
+ @_builtins.property
81
+ @pulumi.getter
82
+ def events(self) -> Sequence['outputs.GetEventEventResult']:
83
+ """
84
+ List of Audit Trail events matching the requested criteria.
85
+ """
86
+ return pulumi.get(self, "events")
87
+
88
+ @_builtins.property
89
+ @pulumi.getter
90
+ def id(self) -> _builtins.str:
91
+ """
92
+ The provider-assigned unique ID for this managed resource.
93
+ """
94
+ return pulumi.get(self, "id")
95
+
96
+ @_builtins.property
97
+ @pulumi.getter(name="methodName")
98
+ def method_name(self) -> Optional[_builtins.str]:
99
+ """
100
+ API method called to trigger the event.
101
+ """
102
+ return pulumi.get(self, "method_name")
103
+
104
+ @_builtins.property
105
+ @pulumi.getter(name="orderBy")
106
+ def order_by(self) -> Optional[_builtins.str]:
107
+ return pulumi.get(self, "order_by")
108
+
109
+ @_builtins.property
110
+ @pulumi.getter(name="organizationId")
111
+ def organization_id(self) -> _builtins.str:
112
+ """
113
+ ID of the Organization containing the Audit Trail events. (UUID format)
114
+ """
115
+ return pulumi.get(self, "organization_id")
116
+
117
+ @_builtins.property
118
+ @pulumi.getter(name="principalId")
119
+ def principal_id(self) -> Optional[_builtins.str]:
120
+ """
121
+ ID of the user or IAM application at the origin of the event.
122
+ """
123
+ return pulumi.get(self, "principal_id")
124
+
125
+ @_builtins.property
126
+ @pulumi.getter(name="productName")
127
+ def product_name(self) -> Optional[_builtins.str]:
128
+ """
129
+ Scaleway product associated with the listed events in a hyphenated format. Possible values are: `secret-manager`, `key-manager`, `iam`, `kubernetes`, `account`, `apple-silicon`, `instance`, `baremetal`, `load-balancer`, or `edge-services`.
130
+ """
131
+ return pulumi.get(self, "product_name")
132
+
133
+ @_builtins.property
134
+ @pulumi.getter(name="projectId")
135
+ def project_id(self) -> Optional[_builtins.str]:
136
+ """
137
+ Project of the resource attached to the event. (UUID format)
138
+ """
139
+ return pulumi.get(self, "project_id")
140
+
141
+ @_builtins.property
142
+ @pulumi.getter(name="recordedAfter")
143
+ def recorded_after(self) -> Optional[_builtins.str]:
144
+ return pulumi.get(self, "recorded_after")
145
+
146
+ @_builtins.property
147
+ @pulumi.getter(name="recordedBefore")
148
+ def recorded_before(self) -> Optional[_builtins.str]:
149
+ return pulumi.get(self, "recorded_before")
150
+
151
+ @_builtins.property
152
+ @pulumi.getter
153
+ def region(self) -> Optional[_builtins.str]:
154
+ return pulumi.get(self, "region")
155
+
156
+ @_builtins.property
157
+ @pulumi.getter(name="resourceId")
158
+ def resource_id(self) -> Optional[_builtins.str]:
159
+ return pulumi.get(self, "resource_id")
160
+
161
+ @_builtins.property
162
+ @pulumi.getter(name="resourceType")
163
+ def resource_type(self) -> Optional[_builtins.str]:
164
+ return pulumi.get(self, "resource_type")
165
+
166
+ @_builtins.property
167
+ @pulumi.getter(name="serviceName")
168
+ def service_name(self) -> Optional[_builtins.str]:
169
+ """
170
+ API name called to trigger the event. Possible values are: `scaleway.secret_manager.v1beta1.Api`, `scaleway.key_manager.v1alpha1.Api`, `scaleway.iam.v1alpha1.Api`, `scaleway.iam.v1alpha1.UnauthenticatedApi`, `scaleway.k8s.v1.Api`, `scaleway.account.v3.UserApi`, `scaleway.account.v3.OrganizationApi`, `scaleway.account.v2.GDPRApi`, `scaleway.apple_silicon.v1alpha1.Api`, `scaleway.instance.v1.Api`, `scaleway.baremetal.v1.Api`, or `scaleway.lb.v1.ZonedApi`.
171
+ """
172
+ return pulumi.get(self, "service_name")
173
+
174
+ @_builtins.property
175
+ @pulumi.getter(name="sourceIp")
176
+ def source_ip(self) -> Optional[_builtins.str]:
177
+ """
178
+ IP address at the origin of the event. (IP address)
179
+ """
180
+ return pulumi.get(self, "source_ip")
181
+
182
+ @_builtins.property
183
+ @pulumi.getter
184
+ def status(self) -> Optional[_builtins.int]:
185
+ return pulumi.get(self, "status")
186
+
187
+
188
+ class AwaitableGetEventResult(GetEventResult):
189
+ # pylint: disable=using-constant-test
190
+ def __await__(self):
191
+ if False:
192
+ yield self
193
+ return GetEventResult(
194
+ events=self.events,
195
+ id=self.id,
196
+ method_name=self.method_name,
197
+ order_by=self.order_by,
198
+ organization_id=self.organization_id,
199
+ principal_id=self.principal_id,
200
+ product_name=self.product_name,
201
+ project_id=self.project_id,
202
+ recorded_after=self.recorded_after,
203
+ recorded_before=self.recorded_before,
204
+ region=self.region,
205
+ resource_id=self.resource_id,
206
+ resource_type=self.resource_type,
207
+ service_name=self.service_name,
208
+ source_ip=self.source_ip,
209
+ status=self.status)
210
+
211
+
212
+ def get_event(method_name: Optional[_builtins.str] = None,
213
+ order_by: Optional[_builtins.str] = None,
214
+ organization_id: Optional[_builtins.str] = None,
215
+ principal_id: Optional[_builtins.str] = None,
216
+ product_name: Optional[_builtins.str] = None,
217
+ project_id: Optional[_builtins.str] = None,
218
+ recorded_after: Optional[_builtins.str] = None,
219
+ recorded_before: Optional[_builtins.str] = None,
220
+ region: Optional[_builtins.str] = None,
221
+ resource_id: Optional[_builtins.str] = None,
222
+ resource_type: Optional[_builtins.str] = None,
223
+ service_name: Optional[_builtins.str] = None,
224
+ source_ip: Optional[_builtins.str] = None,
225
+ status: Optional[_builtins.int] = None,
226
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetEventResult:
227
+ """
228
+ Use this data source to get a list of existing Audit Trail events.
229
+ For more information refer to the [Audit Trail API documentation](https://www.scaleway.com/en/developers/api/audit-trail/).
230
+
231
+ ## Example Usage
232
+
233
+ ```python
234
+ import pulumi
235
+ import pulumi_scaleway as scaleway
236
+
237
+ # Retrieve all audit trail events on the default organization
238
+ find_all = scaleway.audittrail.get_event()
239
+ # Retrieve audit trail events on a specific organization
240
+ find_by_org = scaleway.audittrail.get_event(organization_id="11111111-1111-1111-1111-111111111111")
241
+ # Retrieve audit trail events on a specific project
242
+ find_by_project = scaleway.audittrail.get_event(project_id="11111111-1111-1111-1111-111111111111")
243
+ # Retrieve audit trail events for a specific type of resource
244
+ find_by_resource_type = scaleway.audittrail.get_event(resource_type="instance_server")
245
+ # Retrieve audit trail for a specific resource
246
+ find_by_resource_id = scaleway.audittrail.get_event(resource_id="11111111-1111-1111-1111-111111111111")
247
+ # Retrieve audit trail for a specific Scaleway product
248
+ find_by_product_name = scaleway.audittrail.get_event(product_name="secret-manager")
249
+ # Retrieve audit trail events with various filtering
250
+ find_with_filters = scaleway.audittrail.get_event(region="fr-par",
251
+ service_name="instance",
252
+ method_name="CreateServer",
253
+ principal_id="11111111-1111-1111-1111-111111111111",
254
+ source_ip="192.0.2.1",
255
+ status=200,
256
+ recorded_after="2025-10-01T00:00:00Z",
257
+ recorded_before="2025-12-31T23:59:59Z",
258
+ order_by="recorded_at_desc")
259
+ ```
260
+
261
+
262
+ :param _builtins.str method_name: Name of the method of the API call performed.
263
+ :param _builtins.str order_by: Defines the order in which events are returned. Possible values are `recorded_at_asc` and `recorded_at_desc`. Default value: `recorded_at_desc`.
264
+ :param _builtins.str organization_id: `organization_id`) ID of the Organization containing the Audit Trail events.
265
+ :param _builtins.str principal_id: ID of the User or IAM application at the origin of the event.
266
+ :param _builtins.str product_name: Name of the Scaleway product in a hyphenated format.
267
+ :param _builtins.str project_id: ID of the Project containing the Audit Trail events.
268
+ :param _builtins.str recorded_after: The `recorded_after` parameter defines the earliest timestamp from which Audit Trail events are retrieved. Returns `one hour ago` by default (Format ISO 8601).
269
+ :param _builtins.str recorded_before: The `recorded_before` parameter defines the latest timestamp up to which Audit Trail events are retrieved. Must be later than recorded_after. Returns `now` by default (Format ISO 8601).
270
+ :param _builtins.str region: The region you want to target. Defaults to the region specified in the provider configuration.
271
+ :param _builtins.str resource_id: ID of the Scaleway resource associated with the listed events.
272
+ :param _builtins.str resource_type: Type of the scaleway resources associated with the listed events. Possible values are: `secm_secret`, `secm_secret_version`, `kube_cluster`, `kube_pool`, `kube_node`, `kube_acl`, `keym_key`, `iam_user`, `iam_application`, `iam_group`, `iam_policy`, `iam_api_key`, `iam_ssh_key`, `iam_rule`, `iam_saml`, `iam_saml_certificate`, `secret_manager_secret`, `secret_manager_version`, `key_manager_key`, `account_user`, `account_organization`, `account_project`, `instance_server`, `instance_placement_group`, `instance_security_group`, `instance_volume`, `instance_snapshot`, `instance_image`, `apple_silicon_server`, `baremetal_server`, `baremetal_setting`, `ipam_ip`, `sbs_volume`, `sbs_snapshot`, `load_balancer_lb`, `load_balancer_ip`, `load_balancer_frontend`, `load_balancer_backend`, `load_balancer_route`, `load_balancer_acl`, `load_balancer_certificate`, `sfs_filesystem`, or `vpc_private_network`.
273
+ :param _builtins.str service_name: Name of the service of the API call performed.
274
+ :param _builtins.str source_ip: IP address at the origin of the event.
275
+ :param _builtins.int status: HTTP status code of the request.
276
+ """
277
+ __args__ = dict()
278
+ __args__['methodName'] = method_name
279
+ __args__['orderBy'] = order_by
280
+ __args__['organizationId'] = organization_id
281
+ __args__['principalId'] = principal_id
282
+ __args__['productName'] = product_name
283
+ __args__['projectId'] = project_id
284
+ __args__['recordedAfter'] = recorded_after
285
+ __args__['recordedBefore'] = recorded_before
286
+ __args__['region'] = region
287
+ __args__['resourceId'] = resource_id
288
+ __args__['resourceType'] = resource_type
289
+ __args__['serviceName'] = service_name
290
+ __args__['sourceIp'] = source_ip
291
+ __args__['status'] = status
292
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
293
+ __ret__ = pulumi.runtime.invoke('scaleway:audittrail/getEvent:getEvent', __args__, opts=opts, typ=GetEventResult).value
294
+
295
+ return AwaitableGetEventResult(
296
+ events=pulumi.get(__ret__, 'events'),
297
+ id=pulumi.get(__ret__, 'id'),
298
+ method_name=pulumi.get(__ret__, 'method_name'),
299
+ order_by=pulumi.get(__ret__, 'order_by'),
300
+ organization_id=pulumi.get(__ret__, 'organization_id'),
301
+ principal_id=pulumi.get(__ret__, 'principal_id'),
302
+ product_name=pulumi.get(__ret__, 'product_name'),
303
+ project_id=pulumi.get(__ret__, 'project_id'),
304
+ recorded_after=pulumi.get(__ret__, 'recorded_after'),
305
+ recorded_before=pulumi.get(__ret__, 'recorded_before'),
306
+ region=pulumi.get(__ret__, 'region'),
307
+ resource_id=pulumi.get(__ret__, 'resource_id'),
308
+ resource_type=pulumi.get(__ret__, 'resource_type'),
309
+ service_name=pulumi.get(__ret__, 'service_name'),
310
+ source_ip=pulumi.get(__ret__, 'source_ip'),
311
+ status=pulumi.get(__ret__, 'status'))
312
+ def get_event_output(method_name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
313
+ order_by: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
314
+ organization_id: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
315
+ principal_id: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
316
+ product_name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
317
+ project_id: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
318
+ recorded_after: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
319
+ recorded_before: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
320
+ region: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
321
+ resource_id: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
322
+ resource_type: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
323
+ service_name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
324
+ source_ip: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
325
+ status: Optional[pulumi.Input[Optional[_builtins.int]]] = None,
326
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetEventResult]:
327
+ """
328
+ Use this data source to get a list of existing Audit Trail events.
329
+ For more information refer to the [Audit Trail API documentation](https://www.scaleway.com/en/developers/api/audit-trail/).
330
+
331
+ ## Example Usage
332
+
333
+ ```python
334
+ import pulumi
335
+ import pulumi_scaleway as scaleway
336
+
337
+ # Retrieve all audit trail events on the default organization
338
+ find_all = scaleway.audittrail.get_event()
339
+ # Retrieve audit trail events on a specific organization
340
+ find_by_org = scaleway.audittrail.get_event(organization_id="11111111-1111-1111-1111-111111111111")
341
+ # Retrieve audit trail events on a specific project
342
+ find_by_project = scaleway.audittrail.get_event(project_id="11111111-1111-1111-1111-111111111111")
343
+ # Retrieve audit trail events for a specific type of resource
344
+ find_by_resource_type = scaleway.audittrail.get_event(resource_type="instance_server")
345
+ # Retrieve audit trail for a specific resource
346
+ find_by_resource_id = scaleway.audittrail.get_event(resource_id="11111111-1111-1111-1111-111111111111")
347
+ # Retrieve audit trail for a specific Scaleway product
348
+ find_by_product_name = scaleway.audittrail.get_event(product_name="secret-manager")
349
+ # Retrieve audit trail events with various filtering
350
+ find_with_filters = scaleway.audittrail.get_event(region="fr-par",
351
+ service_name="instance",
352
+ method_name="CreateServer",
353
+ principal_id="11111111-1111-1111-1111-111111111111",
354
+ source_ip="192.0.2.1",
355
+ status=200,
356
+ recorded_after="2025-10-01T00:00:00Z",
357
+ recorded_before="2025-12-31T23:59:59Z",
358
+ order_by="recorded_at_desc")
359
+ ```
360
+
361
+
362
+ :param _builtins.str method_name: Name of the method of the API call performed.
363
+ :param _builtins.str order_by: Defines the order in which events are returned. Possible values are `recorded_at_asc` and `recorded_at_desc`. Default value: `recorded_at_desc`.
364
+ :param _builtins.str organization_id: `organization_id`) ID of the Organization containing the Audit Trail events.
365
+ :param _builtins.str principal_id: ID of the User or IAM application at the origin of the event.
366
+ :param _builtins.str product_name: Name of the Scaleway product in a hyphenated format.
367
+ :param _builtins.str project_id: ID of the Project containing the Audit Trail events.
368
+ :param _builtins.str recorded_after: The `recorded_after` parameter defines the earliest timestamp from which Audit Trail events are retrieved. Returns `one hour ago` by default (Format ISO 8601).
369
+ :param _builtins.str recorded_before: The `recorded_before` parameter defines the latest timestamp up to which Audit Trail events are retrieved. Must be later than recorded_after. Returns `now` by default (Format ISO 8601).
370
+ :param _builtins.str region: The region you want to target. Defaults to the region specified in the provider configuration.
371
+ :param _builtins.str resource_id: ID of the Scaleway resource associated with the listed events.
372
+ :param _builtins.str resource_type: Type of the scaleway resources associated with the listed events. Possible values are: `secm_secret`, `secm_secret_version`, `kube_cluster`, `kube_pool`, `kube_node`, `kube_acl`, `keym_key`, `iam_user`, `iam_application`, `iam_group`, `iam_policy`, `iam_api_key`, `iam_ssh_key`, `iam_rule`, `iam_saml`, `iam_saml_certificate`, `secret_manager_secret`, `secret_manager_version`, `key_manager_key`, `account_user`, `account_organization`, `account_project`, `instance_server`, `instance_placement_group`, `instance_security_group`, `instance_volume`, `instance_snapshot`, `instance_image`, `apple_silicon_server`, `baremetal_server`, `baremetal_setting`, `ipam_ip`, `sbs_volume`, `sbs_snapshot`, `load_balancer_lb`, `load_balancer_ip`, `load_balancer_frontend`, `load_balancer_backend`, `load_balancer_route`, `load_balancer_acl`, `load_balancer_certificate`, `sfs_filesystem`, or `vpc_private_network`.
373
+ :param _builtins.str service_name: Name of the service of the API call performed.
374
+ :param _builtins.str source_ip: IP address at the origin of the event.
375
+ :param _builtins.int status: HTTP status code of the request.
376
+ """
377
+ __args__ = dict()
378
+ __args__['methodName'] = method_name
379
+ __args__['orderBy'] = order_by
380
+ __args__['organizationId'] = organization_id
381
+ __args__['principalId'] = principal_id
382
+ __args__['productName'] = product_name
383
+ __args__['projectId'] = project_id
384
+ __args__['recordedAfter'] = recorded_after
385
+ __args__['recordedBefore'] = recorded_before
386
+ __args__['region'] = region
387
+ __args__['resourceId'] = resource_id
388
+ __args__['resourceType'] = resource_type
389
+ __args__['serviceName'] = service_name
390
+ __args__['sourceIp'] = source_ip
391
+ __args__['status'] = status
392
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
393
+ __ret__ = pulumi.runtime.invoke_output('scaleway:audittrail/getEvent:getEvent', __args__, opts=opts, typ=GetEventResult)
394
+ return __ret__.apply(lambda __response__: GetEventResult(
395
+ events=pulumi.get(__response__, 'events'),
396
+ id=pulumi.get(__response__, 'id'),
397
+ method_name=pulumi.get(__response__, 'method_name'),
398
+ order_by=pulumi.get(__response__, 'order_by'),
399
+ organization_id=pulumi.get(__response__, 'organization_id'),
400
+ principal_id=pulumi.get(__response__, 'principal_id'),
401
+ product_name=pulumi.get(__response__, 'product_name'),
402
+ project_id=pulumi.get(__response__, 'project_id'),
403
+ recorded_after=pulumi.get(__response__, 'recorded_after'),
404
+ recorded_before=pulumi.get(__response__, 'recorded_before'),
405
+ region=pulumi.get(__response__, 'region'),
406
+ resource_id=pulumi.get(__response__, 'resource_id'),
407
+ resource_type=pulumi.get(__response__, 'resource_type'),
408
+ service_name=pulumi.get(__response__, 'service_name'),
409
+ source_ip=pulumi.get(__response__, 'source_ip'),
410
+ status=pulumi.get(__response__, 'status')))
@@ -0,0 +1,234 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetEventEventResult',
20
+ 'GetEventEventResourceResult',
21
+ ]
22
+
23
+ @pulumi.output_type
24
+ class GetEventEventResult(dict):
25
+ def __init__(__self__, *,
26
+ id: _builtins.str,
27
+ locality: _builtins.str,
28
+ method_name: _builtins.str,
29
+ organization_id: _builtins.str,
30
+ principal_id: _builtins.str,
31
+ product_name: _builtins.str,
32
+ project_id: _builtins.str,
33
+ recorded_at: _builtins.str,
34
+ request_body: _builtins.str,
35
+ request_id: _builtins.str,
36
+ resources: Sequence['outputs.GetEventEventResourceResult'],
37
+ service_name: _builtins.str,
38
+ source_ip: _builtins.str,
39
+ status_code: _builtins.int,
40
+ user_agent: _builtins.str):
41
+ """
42
+ :param _builtins.str id: ID of the resource attached to the event. (UUID format)
43
+ :param _builtins.str locality: Locality of the resource attached to the event.
44
+ :param _builtins.str method_name: Name of the method of the API call performed.
45
+ :param _builtins.str organization_id: `organization_id`) ID of the Organization containing the Audit Trail events.
46
+ :param _builtins.str principal_id: ID of the User or IAM application at the origin of the event.
47
+ :param _builtins.str product_name: Name of the Scaleway product in a hyphenated format.
48
+ :param _builtins.str project_id: ID of the Project containing the Audit Trail events.
49
+ :param _builtins.str recorded_at: Timestamp of the event. (RFC 3339 format)
50
+ :param _builtins.str request_body: Request at the origin of the event.
51
+ :param _builtins.str request_id: Unique identifier of the request at the origin of the event. (UUID format)
52
+ :param Sequence['GetEventEventResourceArgs'] resources: List of resources attached to the event.
53
+ :param _builtins.str service_name: Name of the service of the API call performed.
54
+ :param _builtins.str source_ip: IP address at the origin of the event.
55
+ :param _builtins.int status_code: HTTP status code resulting of the API call.
56
+ :param _builtins.str user_agent: User Agent at the origin of the event.
57
+ """
58
+ pulumi.set(__self__, "id", id)
59
+ pulumi.set(__self__, "locality", locality)
60
+ pulumi.set(__self__, "method_name", method_name)
61
+ pulumi.set(__self__, "organization_id", organization_id)
62
+ pulumi.set(__self__, "principal_id", principal_id)
63
+ pulumi.set(__self__, "product_name", product_name)
64
+ pulumi.set(__self__, "project_id", project_id)
65
+ pulumi.set(__self__, "recorded_at", recorded_at)
66
+ pulumi.set(__self__, "request_body", request_body)
67
+ pulumi.set(__self__, "request_id", request_id)
68
+ pulumi.set(__self__, "resources", resources)
69
+ pulumi.set(__self__, "service_name", service_name)
70
+ pulumi.set(__self__, "source_ip", source_ip)
71
+ pulumi.set(__self__, "status_code", status_code)
72
+ pulumi.set(__self__, "user_agent", user_agent)
73
+
74
+ @_builtins.property
75
+ @pulumi.getter
76
+ def id(self) -> _builtins.str:
77
+ """
78
+ ID of the resource attached to the event. (UUID format)
79
+ """
80
+ return pulumi.get(self, "id")
81
+
82
+ @_builtins.property
83
+ @pulumi.getter
84
+ def locality(self) -> _builtins.str:
85
+ """
86
+ Locality of the resource attached to the event.
87
+ """
88
+ return pulumi.get(self, "locality")
89
+
90
+ @_builtins.property
91
+ @pulumi.getter(name="methodName")
92
+ def method_name(self) -> _builtins.str:
93
+ """
94
+ Name of the method of the API call performed.
95
+ """
96
+ return pulumi.get(self, "method_name")
97
+
98
+ @_builtins.property
99
+ @pulumi.getter(name="organizationId")
100
+ def organization_id(self) -> _builtins.str:
101
+ """
102
+ `organization_id`) ID of the Organization containing the Audit Trail events.
103
+ """
104
+ return pulumi.get(self, "organization_id")
105
+
106
+ @_builtins.property
107
+ @pulumi.getter(name="principalId")
108
+ def principal_id(self) -> _builtins.str:
109
+ """
110
+ ID of the User or IAM application at the origin of the event.
111
+ """
112
+ return pulumi.get(self, "principal_id")
113
+
114
+ @_builtins.property
115
+ @pulumi.getter(name="productName")
116
+ def product_name(self) -> _builtins.str:
117
+ """
118
+ Name of the Scaleway product in a hyphenated format.
119
+ """
120
+ return pulumi.get(self, "product_name")
121
+
122
+ @_builtins.property
123
+ @pulumi.getter(name="projectId")
124
+ def project_id(self) -> _builtins.str:
125
+ """
126
+ ID of the Project containing the Audit Trail events.
127
+ """
128
+ return pulumi.get(self, "project_id")
129
+
130
+ @_builtins.property
131
+ @pulumi.getter(name="recordedAt")
132
+ def recorded_at(self) -> _builtins.str:
133
+ """
134
+ Timestamp of the event. (RFC 3339 format)
135
+ """
136
+ return pulumi.get(self, "recorded_at")
137
+
138
+ @_builtins.property
139
+ @pulumi.getter(name="requestBody")
140
+ def request_body(self) -> _builtins.str:
141
+ """
142
+ Request at the origin of the event.
143
+ """
144
+ return pulumi.get(self, "request_body")
145
+
146
+ @_builtins.property
147
+ @pulumi.getter(name="requestId")
148
+ def request_id(self) -> _builtins.str:
149
+ """
150
+ Unique identifier of the request at the origin of the event. (UUID format)
151
+ """
152
+ return pulumi.get(self, "request_id")
153
+
154
+ @_builtins.property
155
+ @pulumi.getter
156
+ def resources(self) -> Sequence['outputs.GetEventEventResourceResult']:
157
+ """
158
+ List of resources attached to the event.
159
+ """
160
+ return pulumi.get(self, "resources")
161
+
162
+ @_builtins.property
163
+ @pulumi.getter(name="serviceName")
164
+ def service_name(self) -> _builtins.str:
165
+ """
166
+ Name of the service of the API call performed.
167
+ """
168
+ return pulumi.get(self, "service_name")
169
+
170
+ @_builtins.property
171
+ @pulumi.getter(name="sourceIp")
172
+ def source_ip(self) -> _builtins.str:
173
+ """
174
+ IP address at the origin of the event.
175
+ """
176
+ return pulumi.get(self, "source_ip")
177
+
178
+ @_builtins.property
179
+ @pulumi.getter(name="statusCode")
180
+ def status_code(self) -> _builtins.int:
181
+ """
182
+ HTTP status code resulting of the API call.
183
+ """
184
+ return pulumi.get(self, "status_code")
185
+
186
+ @_builtins.property
187
+ @pulumi.getter(name="userAgent")
188
+ def user_agent(self) -> _builtins.str:
189
+ """
190
+ User Agent at the origin of the event.
191
+ """
192
+ return pulumi.get(self, "user_agent")
193
+
194
+
195
+ @pulumi.output_type
196
+ class GetEventEventResourceResult(dict):
197
+ def __init__(__self__, *,
198
+ id: _builtins.str,
199
+ name: _builtins.str,
200
+ type: _builtins.str):
201
+ """
202
+ :param _builtins.str id: ID of the resource attached to the event. (UUID format)
203
+ :param _builtins.str name: Name of the Scaleway resource.
204
+ :param _builtins.str type: Type of the Scaleway resource.
205
+ """
206
+ pulumi.set(__self__, "id", id)
207
+ pulumi.set(__self__, "name", name)
208
+ pulumi.set(__self__, "type", type)
209
+
210
+ @_builtins.property
211
+ @pulumi.getter
212
+ def id(self) -> _builtins.str:
213
+ """
214
+ ID of the resource attached to the event. (UUID format)
215
+ """
216
+ return pulumi.get(self, "id")
217
+
218
+ @_builtins.property
219
+ @pulumi.getter
220
+ def name(self) -> _builtins.str:
221
+ """
222
+ Name of the Scaleway resource.
223
+ """
224
+ return pulumi.get(self, "name")
225
+
226
+ @_builtins.property
227
+ @pulumi.getter
228
+ def type(self) -> _builtins.str:
229
+ """
230
+ Type of the Scaleway resource.
231
+ """
232
+ return pulumi.get(self, "type")
233
+
234
+