smplkit 2.0.13 → 2.0.15
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.
- checksums.yaml +4 -4
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/account_api.rb +11 -11
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/api_keys_api.rb +18 -18
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/billing_api.rb +21 -21
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/context_types_api.rb +18 -18
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/contexts_api.rb +11 -11
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/environments_api.rb +18 -18
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/metrics_api.rb +2 -2
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/services_api.rb +18 -18
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/api/users_api.rb +18 -18
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/account.rb +14 -31
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_wipe_request.rb +3 -3
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/add_payment_method_attributes.rb +3 -1
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/add_payment_method_body.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/add_payment_method_data.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key.rb +15 -16
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/auth_token_response.rb +3 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context.rb +6 -3
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_batch_response.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_bulk_item.rb +4 -2
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_bulk_register.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type.rb +5 -2
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/create_subscription_attributes.rb +4 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/create_subscription_body.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/create_subscription_data.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/email.rb +3 -1
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/email_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/email_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment.rb +6 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation.rb +11 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation_accept_request.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation_bulk_create_request.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation_create_item.rb +3 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invitation_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invoice.rb +13 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invoice_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invoice_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/invoice_single_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/limit_definition.rb +5 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/login_request.rb +3 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_attributes.rb +7 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_bulk_request.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_name_item.rb +3 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_names_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_rollup_attributes.rb +6 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_rollup_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/metric_rollup_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/next_tier_meta.rb +4 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/page_meta.rb +5 -4
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method.rb +9 -1
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/plan.rb +4 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/plan_change_request.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/plan_definition.rb +3 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/plan_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/plan_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/product.rb +8 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/product_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/product_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/register_request.rb +4 -1
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/service.rb +4 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/setup_intent_attributes.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/setup_intent_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/subscription_attributes.rb +8 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/subscription_list_meta.rb +6 -1
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/subscription_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/subscription_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/subscription_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/user.rb +11 -21
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_list_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_request.rb +165 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_resource.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_response.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/value.rb +1 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client/models/verify_email_request.rb +2 -0
- data/lib/smplkit/_generated/app/lib/smplkit_app_client.rb +8 -0
- data/lib/smplkit/_generated/app/spec/api/account_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/api/api_keys_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/api/billing_api_spec.rb +7 -7
- data/lib/smplkit/_generated/app/spec/api/context_types_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/api/contexts_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/api/environments_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/api/metrics_api_spec.rb +1 -1
- data/lib/smplkit/_generated/app/spec/api/services_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/api/users_api_spec.rb +2 -2
- data/lib/smplkit/_generated/app/spec/models/account_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/api_key_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/api_key_spec.rb +0 -6
- data/lib/smplkit/_generated/app/spec/models/context_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/context_type_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/environment_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/payment_method_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/service_request_spec.rb +36 -0
- data/lib/smplkit/_generated/app/spec/models/user_request_spec.rb +36 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/actions_api.rb +2 -69
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/events_api.rb +17 -17
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/forwarders_api.rb +36 -36
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/functions_api.rb +2 -2
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/resource_types_api.rb +2 -72
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/usage_api.rb +4 -4
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event.rb +12 -2
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_list_response.rb +1 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_request.rb +165 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_resource.rb +2 -18
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_response.rb +1 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder.rb +17 -17
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_delivery.rb +11 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_delivery_list_response.rb +1 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_delivery_resource.rb +1 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_delivery_response.rb +1 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_http.rb +40 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_list_response.rb +1 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_request.rb +165 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_resource.rb +2 -17
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_response.rb +1 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/http_header.rb +3 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/retry_failed_deliveries_summary.rb +4 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/test_forwarder_request.rb +41 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/test_forwarder_response.rb +7 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/usage_attributes.rb +4 -1
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/wipe_response.rb +3 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/wipe_tables_summary.rb +7 -0
- data/lib/smplkit/_generated/audit/lib/smplkit_audit_client.rb +2 -0
- data/lib/smplkit/_generated/audit/spec/api/actions_api_spec.rb +1 -14
- data/lib/smplkit/_generated/audit/spec/api/events_api_spec.rb +5 -5
- data/lib/smplkit/_generated/audit/spec/api/forwarders_api_spec.rb +11 -11
- data/lib/smplkit/_generated/audit/spec/api/functions_api_spec.rb +1 -1
- data/lib/smplkit/_generated/audit/spec/api/resource_types_api_spec.rb +1 -15
- data/lib/smplkit/_generated/audit/spec/api/usage_api_spec.rb +2 -2
- data/lib/smplkit/_generated/audit/spec/models/event_request_spec.rb +36 -0
- data/lib/smplkit/_generated/audit/spec/models/forwarder_http_spec.rb +4 -0
- data/lib/smplkit/_generated/audit/spec/models/forwarder_request_spec.rb +36 -0
- data/lib/smplkit/_generated/audit/spec/models/forwarder_spec.rb +0 -6
- data/lib/smplkit/_generated/audit/spec/models/test_forwarder_request_spec.rb +4 -0
- data/lib/smplkit/audit/actions.rb +35 -0
- data/lib/smplkit/audit/client.rb +11 -9
- data/lib/smplkit/audit/events.rb +8 -45
- data/lib/smplkit/audit/models.rb +197 -0
- data/lib/smplkit/audit/resource_types.rb +30 -0
- data/lib/smplkit/errors.rb +5 -0
- data/lib/smplkit/management/audit.rb +111 -0
- data/lib/smplkit/management/client.rb +4 -1
- data/lib/smplkit.rb +7 -5
- metadata +25 -3
- data/lib/smplkit/audit/forwarders.rb +0 -282
- data/lib/smplkit/audit/functions.rb +0 -58
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Smplkit
|
|
4
|
+
module Audit
|
|
5
|
+
# Parse the +page[after]+ cursor out of a JSON:API +links.next+
|
|
6
|
+
# URL. Returns nil for non-string input or when the link carries
|
|
7
|
+
# no cursor parameter; trims trailing query params at the next
|
|
8
|
+
# ampersand so they don't leak into the token.
|
|
9
|
+
# Wrap a generated-audit-API call and translate +ApiError+ into the
|
|
10
|
+
# +Smplkit::Error+ hierarchy. Connection-level failures (no
|
|
11
|
+
# response code) become {Smplkit::ConnectionError}; status-coded
|
|
12
|
+
# failures route through {Smplkit::Errors.raise_for_status}, which
|
|
13
|
+
# emits +PaymentRequiredError+ / +NotFoundError+ / +ConflictError+
|
|
14
|
+
# / +ValidationError+ / +Error+ depending on the JSON:API body.
|
|
15
|
+
def self.call_api
|
|
16
|
+
yield
|
|
17
|
+
rescue SmplkitGeneratedClient::Audit::ApiError => e
|
|
18
|
+
raise Smplkit::ConnectionError, e.message.to_s if e.code.nil? || e.code.zero?
|
|
19
|
+
|
|
20
|
+
Smplkit::Errors.raise_for_status(e.code, e.response_body.to_s)
|
|
21
|
+
# raise_for_status only returns on 2xx; if we get here the
|
|
22
|
+
# generated layer raised on a 2xx (shouldn't happen) — re-raise
|
|
23
|
+
# the original so the caller can inspect.
|
|
24
|
+
raise
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def self.next_cursor(link)
|
|
28
|
+
return nil unless link.is_a?(String)
|
|
29
|
+
|
|
30
|
+
idx = link.index("page[after]=")
|
|
31
|
+
return nil if idx.nil?
|
|
32
|
+
|
|
33
|
+
token = link[(idx + "page[after]=".length)..]
|
|
34
|
+
amp = token.index("&")
|
|
35
|
+
amp ? token[0...amp] : token
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Public-facing enum for SIEM streaming destination types.
|
|
39
|
+
#
|
|
40
|
+
# Mirrors the +ForwarderType+ enum the audit OpenAPI spec emits
|
|
41
|
+
# (ADR-047 §2.12). Customers pass these constants — or any string
|
|
42
|
+
# in {VALUES} — to the management +forwarders+ surface. The wrapper
|
|
43
|
+
# validates membership before round-tripping to the wire.
|
|
44
|
+
module ForwarderType
|
|
45
|
+
HTTP = "HTTP"
|
|
46
|
+
DATADOG = "DATADOG"
|
|
47
|
+
SPLUNK_HEC = "SPLUNK_HEC"
|
|
48
|
+
SUMO_LOGIC = "SUMO_LOGIC"
|
|
49
|
+
NEW_RELIC = "NEW_RELIC"
|
|
50
|
+
HONEYCOMB = "HONEYCOMB"
|
|
51
|
+
ELASTIC = "ELASTIC"
|
|
52
|
+
|
|
53
|
+
VALUES = [HTTP, DATADOG, SPLUNK_HEC, SUMO_LOGIC, NEW_RELIC, HONEYCOMB, ELASTIC].freeze
|
|
54
|
+
|
|
55
|
+
def self.coerce(value)
|
|
56
|
+
return nil if value.nil?
|
|
57
|
+
|
|
58
|
+
s = value.to_s
|
|
59
|
+
return s if VALUES.include?(s)
|
|
60
|
+
|
|
61
|
+
raise ArgumentError,
|
|
62
|
+
"Unknown ForwarderType #{value.inspect}; expected one of #{VALUES.inspect}"
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# Public-facing audit event resource. ADR-047 §2.3.1.
|
|
67
|
+
AuditEvent = Struct.new(
|
|
68
|
+
:id, :action, :resource_type, :resource_id,
|
|
69
|
+
:occurred_at, :created_at,
|
|
70
|
+
:actor_type, :actor_id, :actor_label,
|
|
71
|
+
:data, :idempotency_key, :do_not_forward,
|
|
72
|
+
keyword_init: true
|
|
73
|
+
) do
|
|
74
|
+
def self.from_resource(resource)
|
|
75
|
+
attrs = resource.attributes
|
|
76
|
+
new(
|
|
77
|
+
id: resource.id,
|
|
78
|
+
action: attrs.action,
|
|
79
|
+
resource_type: attrs.resource_type,
|
|
80
|
+
resource_id: attrs.resource_id,
|
|
81
|
+
occurred_at: attrs.occurred_at,
|
|
82
|
+
created_at: attrs.created_at,
|
|
83
|
+
actor_type: attrs.actor_type,
|
|
84
|
+
actor_id: attrs.actor_id,
|
|
85
|
+
actor_label: attrs.actor_label,
|
|
86
|
+
data: Smplkit::Helpers.deep_stringify_keys(attrs.data || {}),
|
|
87
|
+
idempotency_key: attrs.idempotency_key,
|
|
88
|
+
do_not_forward: attrs.do_not_forward || false
|
|
89
|
+
)
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
# A distinct +resource_type+ slug seen for the account.
|
|
94
|
+
#
|
|
95
|
+
# The +id+ and +resource_type+ are the same value — JSON:API surfaces
|
|
96
|
+
# the customer-facing key as the resource id (ADR-014). The duplication
|
|
97
|
+
# keeps SDK consumers from having to dig into the id field when
|
|
98
|
+
# filtering UI controls; pick whichever name reads better in context.
|
|
99
|
+
ResourceType = Struct.new(:id, :resource_type, :created_at, keyword_init: true) do
|
|
100
|
+
def self.from_resource(resource)
|
|
101
|
+
attrs = resource.attributes
|
|
102
|
+
new(
|
|
103
|
+
id: resource.id,
|
|
104
|
+
resource_type: attrs.resource_type || resource.id,
|
|
105
|
+
created_at: attrs.created_at
|
|
106
|
+
)
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
# A distinct +action+ slug seen for the account.
|
|
111
|
+
#
|
|
112
|
+
# Same shape as {ResourceType} — +id+ and +action+ are the same value.
|
|
113
|
+
# +created_at+ is the earliest sighting; when the parent list call
|
|
114
|
+
# filtered by +resource_type+, this is the first sighting of that
|
|
115
|
+
# specific (action, resource_type) triple, not the action overall.
|
|
116
|
+
Action = Struct.new(:id, :action, :created_at, keyword_init: true) do
|
|
117
|
+
def self.from_resource(resource)
|
|
118
|
+
attrs = resource.attributes
|
|
119
|
+
new(
|
|
120
|
+
id: resource.id,
|
|
121
|
+
action: attrs.action || resource.id,
|
|
122
|
+
created_at: attrs.created_at
|
|
123
|
+
)
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
HttpHeader = Struct.new(:name, :value, keyword_init: true)
|
|
128
|
+
|
|
129
|
+
# rubocop:disable Lint/StructNewOverride -- ``:method`` matches the
|
|
130
|
+
# API attribute and shadowing Struct#method is the expected ergonomics.
|
|
131
|
+
ForwarderHttp = Struct.new(:method, :url, :headers, :body, :success_status, keyword_init: true) do
|
|
132
|
+
def initialize(method: "POST", url: "", headers: nil, body: nil, success_status: "2xx")
|
|
133
|
+
super(method: method, url: url, headers: headers || [], body: body, success_status: success_status)
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
def self.to_wire(src)
|
|
137
|
+
h = src.is_a?(Hash) ? new(**src) : src
|
|
138
|
+
SmplkitGeneratedClient::Audit::ForwarderHttp.new(
|
|
139
|
+
method: h.method,
|
|
140
|
+
url: h.url,
|
|
141
|
+
headers: (h.headers || []).map do |hdr|
|
|
142
|
+
name, value = if hdr.is_a?(Hash)
|
|
143
|
+
[hdr[:name] || hdr["name"],
|
|
144
|
+
hdr[:value] || hdr["value"]]
|
|
145
|
+
else
|
|
146
|
+
[hdr.name, hdr.value]
|
|
147
|
+
end
|
|
148
|
+
SmplkitGeneratedClient::Audit::HttpHeader.new(name: name, value: value)
|
|
149
|
+
end,
|
|
150
|
+
body: h.body,
|
|
151
|
+
success_status: h.success_status
|
|
152
|
+
)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
def self.from_wire(src)
|
|
156
|
+
return new if src.nil?
|
|
157
|
+
|
|
158
|
+
new(
|
|
159
|
+
method: src.method || "POST",
|
|
160
|
+
url: src.url || "",
|
|
161
|
+
headers: (src.headers || []).map { |h| HttpHeader.new(name: h.name, value: h.value) },
|
|
162
|
+
body: src.body,
|
|
163
|
+
success_status: src.success_status || "2xx"
|
|
164
|
+
)
|
|
165
|
+
end
|
|
166
|
+
end
|
|
167
|
+
# rubocop:enable Lint/StructNewOverride
|
|
168
|
+
|
|
169
|
+
# rubocop:disable Lint/StructNewOverride -- ``:filter`` matches the
|
|
170
|
+
# API attribute and shadowing Struct#filter is the expected ergonomics.
|
|
171
|
+
Forwarder = Struct.new(
|
|
172
|
+
:id, :name, :slug, :forwarder_type, :enabled,
|
|
173
|
+
:filter, :transform, :http,
|
|
174
|
+
:created_at, :updated_at, :deleted_at, :version,
|
|
175
|
+
keyword_init: true
|
|
176
|
+
) do
|
|
177
|
+
def self.from_resource(resource)
|
|
178
|
+
a = resource.attributes
|
|
179
|
+
new(
|
|
180
|
+
id: resource.id,
|
|
181
|
+
name: a.name,
|
|
182
|
+
slug: a.slug,
|
|
183
|
+
forwarder_type: a.forwarder_type,
|
|
184
|
+
enabled: a.enabled.nil? || a.enabled,
|
|
185
|
+
filter: a.filter.nil? ? nil : Smplkit::Helpers.deep_stringify_keys(a.filter),
|
|
186
|
+
transform: a.transform,
|
|
187
|
+
http: ForwarderHttp.from_wire(a.http),
|
|
188
|
+
created_at: a.created_at,
|
|
189
|
+
updated_at: a.updated_at,
|
|
190
|
+
deleted_at: a.deleted_at,
|
|
191
|
+
version: a.version
|
|
192
|
+
)
|
|
193
|
+
end
|
|
194
|
+
end
|
|
195
|
+
# rubocop:enable Lint/StructNewOverride
|
|
196
|
+
end
|
|
197
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Smplkit
|
|
4
|
+
module Audit
|
|
5
|
+
# +client.audit.resource_types.list+ — distinct +resource_type+ slugs
|
|
6
|
+
# seen for the account.
|
|
7
|
+
#
|
|
8
|
+
# Backed by a maintain-by-write side table (ADR-047 §2.5), so the
|
|
9
|
+
# response time is independent of how many years of events the
|
|
10
|
+
# account has accumulated. Sorted alphabetically; cursor pagination
|
|
11
|
+
# via +page_after+.
|
|
12
|
+
class ResourceTypes
|
|
13
|
+
def initialize(api)
|
|
14
|
+
@api = api
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def list(page_size: nil, page_after: nil)
|
|
18
|
+
opts = {}
|
|
19
|
+
opts[:page_size] = page_size if page_size
|
|
20
|
+
opts[:page_after] = page_after if page_after
|
|
21
|
+
|
|
22
|
+
resp = Smplkit::Audit.call_api { @api.list_resource_types(opts) }
|
|
23
|
+
rows = (resp.data || []).map { |r| ResourceType.from_resource(r) }
|
|
24
|
+
ResourceTypeListPage.new(rows, Smplkit::Audit.next_cursor(resp.links&._next))
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
ResourceTypeListPage = Struct.new(:resource_types, :next_cursor)
|
|
29
|
+
end
|
|
30
|
+
end
|
data/lib/smplkit/errors.rb
CHANGED
|
@@ -70,6 +70,10 @@ module Smplkit
|
|
|
70
70
|
class ConflictError < Error; end
|
|
71
71
|
class ValidationError < Error; end
|
|
72
72
|
|
|
73
|
+
# Raised when the server rejects a request because the account's
|
|
74
|
+
# subscription plan does not include the required entitlement.
|
|
75
|
+
class PaymentRequiredError < Error; end
|
|
76
|
+
|
|
73
77
|
module Errors
|
|
74
78
|
module_function
|
|
75
79
|
|
|
@@ -102,6 +106,7 @@ module Smplkit
|
|
|
102
106
|
|
|
103
107
|
exc_cls =
|
|
104
108
|
case status_code
|
|
109
|
+
when 402 then PaymentRequiredError
|
|
105
110
|
when 404 then NotFoundError
|
|
106
111
|
when 409 then ConflictError
|
|
107
112
|
when 400, 422 then ValidationError
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Smplkit
|
|
4
|
+
module Management
|
|
5
|
+
# Audit management surface — accessed via +mgmt.audit.forwarders+.
|
|
6
|
+
#
|
|
7
|
+
# Counterpart to the runtime {Smplkit::Audit::AuditClient}. The
|
|
8
|
+
# runtime client owns event recording and read-side queries; this
|
|
9
|
+
# surface owns SIEM forwarder CRUD. ADR-047 §2.7.
|
|
10
|
+
class AuditNamespace
|
|
11
|
+
attr_reader :forwarders
|
|
12
|
+
|
|
13
|
+
def initialize(api_client)
|
|
14
|
+
@forwarders = ForwardersNamespace.new(
|
|
15
|
+
SmplkitGeneratedClient::Audit::ForwardersApi.new(api_client)
|
|
16
|
+
)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# +mgmt.audit.forwarders.*+ — manage the customer's configured SIEM
|
|
21
|
+
# forwarders.
|
|
22
|
+
class ForwardersNamespace
|
|
23
|
+
def initialize(api)
|
|
24
|
+
@api = api
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Create a forwarder.
|
|
28
|
+
#
|
|
29
|
+
# @param name [String] Display name. The slug is derived
|
|
30
|
+
# server-side.
|
|
31
|
+
# @param forwarder_type [String, Smplkit::Audit::ForwarderType]
|
|
32
|
+
# One of the published {Smplkit::Audit::ForwarderType} constants
|
|
33
|
+
# (or the equivalent string).
|
|
34
|
+
# @param http [Smplkit::Audit::ForwarderHttp, Hash] Destination
|
|
35
|
+
# configuration. Headers carry credentials and are encrypted at
|
|
36
|
+
# rest server-side; reads return them redacted.
|
|
37
|
+
# @param enabled [Boolean] Whether the forwarder is active.
|
|
38
|
+
# @param filter [Hash, nil] Optional JSON Logic filter; events
|
|
39
|
+
# that don't match are recorded as +filtered_out+ deliveries.
|
|
40
|
+
# @param transform [String, nil] Optional JSONata template
|
|
41
|
+
# applied to the event payload before POST. Nil/empty sends the
|
|
42
|
+
# event as-is.
|
|
43
|
+
def create(name:, forwarder_type:, http:, enabled: true,
|
|
44
|
+
filter: nil, transform: nil)
|
|
45
|
+
body = build_body(nil, name: name, forwarder_type: forwarder_type,
|
|
46
|
+
http: http, enabled: enabled,
|
|
47
|
+
filter: filter, transform: transform)
|
|
48
|
+
resp = Smplkit::Audit.call_api { @api.create_forwarder(body) }
|
|
49
|
+
Smplkit::Audit::Forwarder.from_resource(resp.data)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def list(forwarder_type: nil, enabled: nil, page_size: nil, page_after: nil)
|
|
53
|
+
opts = {}
|
|
54
|
+
opts[:filter_forwarder_type] = Smplkit::Audit::ForwarderType.coerce(forwarder_type) if forwarder_type
|
|
55
|
+
opts[:filter_enabled] = enabled unless enabled.nil?
|
|
56
|
+
opts[:page_size] = page_size if page_size
|
|
57
|
+
opts[:page_after] = page_after if page_after
|
|
58
|
+
|
|
59
|
+
resp = Smplkit::Audit.call_api { @api.list_forwarders(opts) }
|
|
60
|
+
forwarders = (resp.data || []).map { |r| Smplkit::Audit::Forwarder.from_resource(r) }
|
|
61
|
+
ForwarderListPage.new(forwarders, Smplkit::Audit.next_cursor(resp.links&._next))
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def get(forwarder_id)
|
|
65
|
+
resp = Smplkit::Audit.call_api { @api.get_forwarder(forwarder_id) }
|
|
66
|
+
Smplkit::Audit::Forwarder.from_resource(resp.data)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# Full-replace update. PUT semantics — every field is overwritten.
|
|
70
|
+
#
|
|
71
|
+
# Header values must be re-supplied as plaintext; the GET path
|
|
72
|
+
# redacts them, so a PUT body containing +"<redacted>"+ would
|
|
73
|
+
# persist that literal. Track real header values client-side and
|
|
74
|
+
# round-trip them on update.
|
|
75
|
+
def update(forwarder_id, name:, forwarder_type:, http:, enabled: true,
|
|
76
|
+
filter: nil, transform: nil)
|
|
77
|
+
body = build_body(forwarder_id, name: name, forwarder_type: forwarder_type,
|
|
78
|
+
http: http, enabled: enabled,
|
|
79
|
+
filter: filter, transform: transform)
|
|
80
|
+
resp = Smplkit::Audit.call_api { @api.update_forwarder(forwarder_id, body) }
|
|
81
|
+
Smplkit::Audit::Forwarder.from_resource(resp.data)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def delete(forwarder_id)
|
|
85
|
+
Smplkit::Audit.call_api { @api.delete_forwarder(forwarder_id) }
|
|
86
|
+
nil
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
private
|
|
90
|
+
|
|
91
|
+
def build_body(id, name:, forwarder_type:, http:, enabled:, filter:, transform:)
|
|
92
|
+
attrs = SmplkitGeneratedClient::Audit::Forwarder.new(
|
|
93
|
+
name: name,
|
|
94
|
+
forwarder_type: Smplkit::Audit::ForwarderType.coerce(forwarder_type),
|
|
95
|
+
enabled: enabled,
|
|
96
|
+
http: Smplkit::Audit::ForwarderHttp.to_wire(http),
|
|
97
|
+
filter: filter,
|
|
98
|
+
transform: transform
|
|
99
|
+
)
|
|
100
|
+
resource = SmplkitGeneratedClient::Audit::ForwarderResource.new(
|
|
101
|
+
id: id ? id.to_s : "",
|
|
102
|
+
type: "forwarder",
|
|
103
|
+
attributes: attrs
|
|
104
|
+
)
|
|
105
|
+
SmplkitGeneratedClient::Audit::ForwarderRequest.new(data: resource)
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
ForwarderListPage = Struct.new(:forwarders, :next_cursor)
|
|
110
|
+
end
|
|
111
|
+
end
|
|
@@ -28,7 +28,7 @@ module Smplkit
|
|
|
28
28
|
# +<resource>_from_resource+ helpers.
|
|
29
29
|
class ManagementClient
|
|
30
30
|
attr_reader :contexts, :context_types, :environments, :account_settings,
|
|
31
|
-
:config, :flags, :loggers, :log_groups
|
|
31
|
+
:config, :flags, :loggers, :log_groups, :audit
|
|
32
32
|
|
|
33
33
|
def self.from_resolved(resolved, extra_headers: nil)
|
|
34
34
|
new(_resolved: resolved, extra_headers: extra_headers)
|
|
@@ -50,6 +50,7 @@ module Smplkit
|
|
|
50
50
|
@config_api_client = build_api_client(SmplkitGeneratedClient::Config, "config", cfg)
|
|
51
51
|
@flags_api_client = build_api_client(SmplkitGeneratedClient::Flags, "flags", cfg)
|
|
52
52
|
@logging_api_client = build_api_client(SmplkitGeneratedClient::Logging, "logging", cfg)
|
|
53
|
+
@audit_api_client = build_api_client(SmplkitGeneratedClient::Audit, "audit", cfg)
|
|
53
54
|
|
|
54
55
|
@contexts = ContextsNamespace.new(@app_api_client)
|
|
55
56
|
@context_types = ContextTypesNamespace.new(@app_api_client)
|
|
@@ -59,6 +60,7 @@ module Smplkit
|
|
|
59
60
|
@flags = FlagsNamespace.new(@flags_api_client)
|
|
60
61
|
@loggers = LoggersNamespace.new(@logging_api_client)
|
|
61
62
|
@log_groups = LogGroupsNamespace.new(@logging_api_client)
|
|
63
|
+
@audit = Management::AuditNamespace.new(@audit_api_client)
|
|
62
64
|
end
|
|
63
65
|
|
|
64
66
|
def close
|
|
@@ -71,6 +73,7 @@ module Smplkit
|
|
|
71
73
|
def _config_http = @config_api_client
|
|
72
74
|
def _flags_http = @flags_api_client
|
|
73
75
|
def _logging_http = @logging_api_client
|
|
76
|
+
def _audit_http = @audit_api_client
|
|
74
77
|
|
|
75
78
|
SDK_OWNED_HEADERS = %w[authorization content-type user-agent].freeze
|
|
76
79
|
|
data/lib/smplkit.rb
CHANGED
|
@@ -58,15 +58,17 @@ require_relative "smplkit/logging/helpers"
|
|
|
58
58
|
require_relative "smplkit/logging/adapters/base"
|
|
59
59
|
require_relative "smplkit/logging/adapters/stdlib_logger_adapter"
|
|
60
60
|
require_relative "smplkit/logging/client"
|
|
61
|
+
require_relative "smplkit/audit/models"
|
|
62
|
+
require_relative "smplkit/audit/buffer"
|
|
63
|
+
require_relative "smplkit/audit/events"
|
|
64
|
+
require_relative "smplkit/audit/resource_types"
|
|
65
|
+
require_relative "smplkit/audit/actions"
|
|
66
|
+
require_relative "smplkit/audit/client"
|
|
61
67
|
require_relative "smplkit/management/types"
|
|
62
68
|
require_relative "smplkit/management/models"
|
|
63
69
|
require_relative "smplkit/management/buffer"
|
|
70
|
+
require_relative "smplkit/management/audit"
|
|
64
71
|
require_relative "smplkit/management/client"
|
|
65
|
-
require_relative "smplkit/audit/buffer"
|
|
66
|
-
require_relative "smplkit/audit/events"
|
|
67
|
-
require_relative "smplkit/audit/forwarders"
|
|
68
|
-
require_relative "smplkit/audit/functions"
|
|
69
|
-
require_relative "smplkit/audit/client"
|
|
70
72
|
require_relative "smplkit/client"
|
|
71
73
|
|
|
72
74
|
require_relative "smplkit/railtie" if defined?(Rails::Railtie)
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: smplkit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.
|
|
4
|
+
version: 2.0.15
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Smpl Solutions LLC
|
|
@@ -172,6 +172,7 @@ files:
|
|
|
172
172
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/api_model_base.rb
|
|
173
173
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/configuration.rb
|
|
174
174
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/account.rb
|
|
175
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_request.rb
|
|
175
176
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_resource.rb
|
|
176
177
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_response.rb
|
|
177
178
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/account_wipe_request.rb
|
|
@@ -180,6 +181,7 @@ files:
|
|
|
180
181
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/add_payment_method_data.rb
|
|
181
182
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key.rb
|
|
182
183
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_list_response.rb
|
|
184
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_request.rb
|
|
183
185
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_resource.rb
|
|
184
186
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/api_key_response.rb
|
|
185
187
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/auth_token_response.rb
|
|
@@ -189,10 +191,12 @@ files:
|
|
|
189
191
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_bulk_item.rb
|
|
190
192
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_bulk_register.rb
|
|
191
193
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_list_response.rb
|
|
194
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_request.rb
|
|
192
195
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_resource.rb
|
|
193
196
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_response.rb
|
|
194
197
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type.rb
|
|
195
198
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_list_response.rb
|
|
199
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_request.rb
|
|
196
200
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_resource.rb
|
|
197
201
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/context_type_response.rb
|
|
198
202
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/create_subscription_attributes.rb
|
|
@@ -203,6 +207,7 @@ files:
|
|
|
203
207
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/email_response.rb
|
|
204
208
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment.rb
|
|
205
209
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_list_response.rb
|
|
210
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_request.rb
|
|
206
211
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_resource.rb
|
|
207
212
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/environment_response.rb
|
|
208
213
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/error.rb
|
|
@@ -234,6 +239,7 @@ files:
|
|
|
234
239
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/page_meta.rb
|
|
235
240
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method.rb
|
|
236
241
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_list_response.rb
|
|
242
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_request.rb
|
|
237
243
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_resource.rb
|
|
238
244
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/payment_method_response.rb
|
|
239
245
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/plan.rb
|
|
@@ -247,6 +253,7 @@ files:
|
|
|
247
253
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/register_request.rb
|
|
248
254
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/service.rb
|
|
249
255
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_list_response.rb
|
|
256
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_request.rb
|
|
250
257
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_resource.rb
|
|
251
258
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/service_response.rb
|
|
252
259
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/setup_intent_attributes.rb
|
|
@@ -260,6 +267,7 @@ files:
|
|
|
260
267
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/user.rb
|
|
261
268
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_list_meta.rb
|
|
262
269
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_list_response.rb
|
|
270
|
+
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_request.rb
|
|
263
271
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_resource.rb
|
|
264
272
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/user_response.rb
|
|
265
273
|
- lib/smplkit/_generated/app/lib/smplkit_app_client/models/value.rb
|
|
@@ -280,6 +288,7 @@ files:
|
|
|
280
288
|
- lib/smplkit/_generated/app/spec/api/products_api_spec.rb
|
|
281
289
|
- lib/smplkit/_generated/app/spec/api/services_api_spec.rb
|
|
282
290
|
- lib/smplkit/_generated/app/spec/api/users_api_spec.rb
|
|
291
|
+
- lib/smplkit/_generated/app/spec/models/account_request_spec.rb
|
|
283
292
|
- lib/smplkit/_generated/app/spec/models/account_resource_spec.rb
|
|
284
293
|
- lib/smplkit/_generated/app/spec/models/account_response_spec.rb
|
|
285
294
|
- lib/smplkit/_generated/app/spec/models/account_spec.rb
|
|
@@ -288,6 +297,7 @@ files:
|
|
|
288
297
|
- lib/smplkit/_generated/app/spec/models/add_payment_method_body_spec.rb
|
|
289
298
|
- lib/smplkit/_generated/app/spec/models/add_payment_method_data_spec.rb
|
|
290
299
|
- lib/smplkit/_generated/app/spec/models/api_key_list_response_spec.rb
|
|
300
|
+
- lib/smplkit/_generated/app/spec/models/api_key_request_spec.rb
|
|
291
301
|
- lib/smplkit/_generated/app/spec/models/api_key_resource_spec.rb
|
|
292
302
|
- lib/smplkit/_generated/app/spec/models/api_key_response_spec.rb
|
|
293
303
|
- lib/smplkit/_generated/app/spec/models/api_key_spec.rb
|
|
@@ -297,10 +307,12 @@ files:
|
|
|
297
307
|
- lib/smplkit/_generated/app/spec/models/context_bulk_item_spec.rb
|
|
298
308
|
- lib/smplkit/_generated/app/spec/models/context_bulk_register_spec.rb
|
|
299
309
|
- lib/smplkit/_generated/app/spec/models/context_list_response_spec.rb
|
|
310
|
+
- lib/smplkit/_generated/app/spec/models/context_request_spec.rb
|
|
300
311
|
- lib/smplkit/_generated/app/spec/models/context_resource_spec.rb
|
|
301
312
|
- lib/smplkit/_generated/app/spec/models/context_response_spec.rb
|
|
302
313
|
- lib/smplkit/_generated/app/spec/models/context_spec.rb
|
|
303
314
|
- lib/smplkit/_generated/app/spec/models/context_type_list_response_spec.rb
|
|
315
|
+
- lib/smplkit/_generated/app/spec/models/context_type_request_spec.rb
|
|
304
316
|
- lib/smplkit/_generated/app/spec/models/context_type_resource_spec.rb
|
|
305
317
|
- lib/smplkit/_generated/app/spec/models/context_type_response_spec.rb
|
|
306
318
|
- lib/smplkit/_generated/app/spec/models/context_type_spec.rb
|
|
@@ -311,6 +323,7 @@ files:
|
|
|
311
323
|
- lib/smplkit/_generated/app/spec/models/email_response_spec.rb
|
|
312
324
|
- lib/smplkit/_generated/app/spec/models/email_spec.rb
|
|
313
325
|
- lib/smplkit/_generated/app/spec/models/environment_list_response_spec.rb
|
|
326
|
+
- lib/smplkit/_generated/app/spec/models/environment_request_spec.rb
|
|
314
327
|
- lib/smplkit/_generated/app/spec/models/environment_resource_spec.rb
|
|
315
328
|
- lib/smplkit/_generated/app/spec/models/environment_response_spec.rb
|
|
316
329
|
- lib/smplkit/_generated/app/spec/models/environment_spec.rb
|
|
@@ -342,6 +355,7 @@ files:
|
|
|
342
355
|
- lib/smplkit/_generated/app/spec/models/oidc_provider_spec.rb
|
|
343
356
|
- lib/smplkit/_generated/app/spec/models/page_meta_spec.rb
|
|
344
357
|
- lib/smplkit/_generated/app/spec/models/payment_method_list_response_spec.rb
|
|
358
|
+
- lib/smplkit/_generated/app/spec/models/payment_method_request_spec.rb
|
|
345
359
|
- lib/smplkit/_generated/app/spec/models/payment_method_resource_spec.rb
|
|
346
360
|
- lib/smplkit/_generated/app/spec/models/payment_method_response_spec.rb
|
|
347
361
|
- lib/smplkit/_generated/app/spec/models/payment_method_spec.rb
|
|
@@ -355,6 +369,7 @@ files:
|
|
|
355
369
|
- lib/smplkit/_generated/app/spec/models/product_spec.rb
|
|
356
370
|
- lib/smplkit/_generated/app/spec/models/register_request_spec.rb
|
|
357
371
|
- lib/smplkit/_generated/app/spec/models/service_list_response_spec.rb
|
|
372
|
+
- lib/smplkit/_generated/app/spec/models/service_request_spec.rb
|
|
358
373
|
- lib/smplkit/_generated/app/spec/models/service_resource_spec.rb
|
|
359
374
|
- lib/smplkit/_generated/app/spec/models/service_response_spec.rb
|
|
360
375
|
- lib/smplkit/_generated/app/spec/models/service_spec.rb
|
|
@@ -368,6 +383,7 @@ files:
|
|
|
368
383
|
- lib/smplkit/_generated/app/spec/models/subscription_response_spec.rb
|
|
369
384
|
- lib/smplkit/_generated/app/spec/models/user_list_meta_spec.rb
|
|
370
385
|
- lib/smplkit/_generated/app/spec/models/user_list_response_spec.rb
|
|
386
|
+
- lib/smplkit/_generated/app/spec/models/user_request_spec.rb
|
|
371
387
|
- lib/smplkit/_generated/app/spec/models/user_resource_spec.rb
|
|
372
388
|
- lib/smplkit/_generated/app/spec/models/user_response_spec.rb
|
|
373
389
|
- lib/smplkit/_generated/app/spec/models/user_spec.rb
|
|
@@ -394,6 +410,7 @@ files:
|
|
|
394
410
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_list_links.rb
|
|
395
411
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_list_meta.rb
|
|
396
412
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_list_response.rb
|
|
413
|
+
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_request.rb
|
|
397
414
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_resource.rb
|
|
398
415
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/event_response.rb
|
|
399
416
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder.rb
|
|
@@ -405,6 +422,7 @@ files:
|
|
|
405
422
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_list_links.rb
|
|
406
423
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_list_meta.rb
|
|
407
424
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_list_response.rb
|
|
425
|
+
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_request.rb
|
|
408
426
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_resource.rb
|
|
409
427
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_response.rb
|
|
410
428
|
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/models/forwarder_type.rb
|
|
@@ -437,6 +455,7 @@ files:
|
|
|
437
455
|
- lib/smplkit/_generated/audit/spec/models/event_list_links_spec.rb
|
|
438
456
|
- lib/smplkit/_generated/audit/spec/models/event_list_meta_spec.rb
|
|
439
457
|
- lib/smplkit/_generated/audit/spec/models/event_list_response_spec.rb
|
|
458
|
+
- lib/smplkit/_generated/audit/spec/models/event_request_spec.rb
|
|
440
459
|
- lib/smplkit/_generated/audit/spec/models/event_resource_spec.rb
|
|
441
460
|
- lib/smplkit/_generated/audit/spec/models/event_response_spec.rb
|
|
442
461
|
- lib/smplkit/_generated/audit/spec/models/event_spec.rb
|
|
@@ -448,6 +467,7 @@ files:
|
|
|
448
467
|
- lib/smplkit/_generated/audit/spec/models/forwarder_list_links_spec.rb
|
|
449
468
|
- lib/smplkit/_generated/audit/spec/models/forwarder_list_meta_spec.rb
|
|
450
469
|
- lib/smplkit/_generated/audit/spec/models/forwarder_list_response_spec.rb
|
|
470
|
+
- lib/smplkit/_generated/audit/spec/models/forwarder_request_spec.rb
|
|
451
471
|
- lib/smplkit/_generated/audit/spec/models/forwarder_resource_spec.rb
|
|
452
472
|
- lib/smplkit/_generated/audit/spec/models/forwarder_response_spec.rb
|
|
453
473
|
- lib/smplkit/_generated/audit/spec/models/forwarder_spec.rb
|
|
@@ -622,11 +642,12 @@ files:
|
|
|
622
642
|
- lib/smplkit/_generated/logging/spec/models/usage_list_response_spec.rb
|
|
623
643
|
- lib/smplkit/_generated/logging/spec/models/usage_resource_spec.rb
|
|
624
644
|
- lib/smplkit/_generated/logging/spec/spec_helper.rb
|
|
645
|
+
- lib/smplkit/audit/actions.rb
|
|
625
646
|
- lib/smplkit/audit/buffer.rb
|
|
626
647
|
- lib/smplkit/audit/client.rb
|
|
627
648
|
- lib/smplkit/audit/events.rb
|
|
628
|
-
- lib/smplkit/audit/
|
|
629
|
-
- lib/smplkit/audit/
|
|
649
|
+
- lib/smplkit/audit/models.rb
|
|
650
|
+
- lib/smplkit/audit/resource_types.rb
|
|
630
651
|
- lib/smplkit/client.rb
|
|
631
652
|
- lib/smplkit/config/client.rb
|
|
632
653
|
- lib/smplkit/config/helpers.rb
|
|
@@ -651,6 +672,7 @@ files:
|
|
|
651
672
|
- lib/smplkit/logging/models.rb
|
|
652
673
|
- lib/smplkit/logging/normalize.rb
|
|
653
674
|
- lib/smplkit/logging/sources.rb
|
|
675
|
+
- lib/smplkit/management/audit.rb
|
|
654
676
|
- lib/smplkit/management/buffer.rb
|
|
655
677
|
- lib/smplkit/management/client.rb
|
|
656
678
|
- lib/smplkit/management/models.rb
|