Class: SmplkitGeneratedClient::Audit::ExportsApi
- Inherits:
-
Object
- Object
- SmplkitGeneratedClient::Audit::ExportsApi
- Defined in:
- lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb
Instance Attribute Summary collapse
-
#api_client ⇒ Object
Returns the value of attribute api_client.
Instance Method Summary collapse
-
#create_export(export_request, opts = {}) ⇒ ExportResponse
Create Export Mint a short-lived signed URL to stream an events download.
-
#create_export_with_http_info(export_request, opts = {}) ⇒ Array<(ExportResponse, Integer, Hash)>
Create Export Mint a short-lived signed URL to stream an events download.
-
#download_export(token, opts = {}) ⇒ nil
Download Export Stream a signed audit-events download — no ‘Authorization` header required.
-
#download_export_with_http_info(token, opts = {}) ⇒ Array<(nil, Integer, Hash)>
Download Export Stream a signed audit-events download — no `Authorization` header required.
-
#initialize(api_client = ApiClient.default) ⇒ ExportsApi
constructor
A new instance of ExportsApi.
Constructor Details
#initialize(api_client = ApiClient.default) ⇒ ExportsApi
Returns a new instance of ExportsApi.
19 20 21 |
# File 'lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb', line 19 def initialize(api_client = ApiClient.default) @api_client = api_client end |
Instance Attribute Details
#api_client ⇒ Object
Returns the value of attribute api_client.
17 18 19 |
# File 'lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb', line 17 def api_client @api_client end |
Instance Method Details
#create_export(export_request, opts = {}) ⇒ ExportResponse
Create Export Mint a short-lived signed URL to stream an events download. The request body specifies ‘format` (`CSV` or `JSONL`) and any subset of the event filters accepted by `GET /api/v1/events`. The response returns the signed URL plus its expiry (30 seconds from mint). Open the URL in a browser to stream the file to disk; no `Authorization` header is required at download time. Filter rules match `GET /api/v1/events`: `filter` requires `filter`; `filter` requires either `filter` or `filter` + `filter`. Violations are rejected here at mint time. Reads are allowed on lapsed subscriptions per the smplcore convention — same gate as the events list.
27 28 29 30 |
# File 'lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb', line 27 def create_export(export_request, opts = {}) data, _status_code, _headers = create_export_with_http_info(export_request, opts) data end |
#create_export_with_http_info(export_request, opts = {}) ⇒ Array<(ExportResponse, Integer, Hash)>
Create Export Mint a short-lived signed URL to stream an events download. The request body specifies `format` (`CSV` or `JSONL`) and any subset of the event filters accepted by `GET /api/v1/events`. The response returns the signed URL plus its expiry (30 seconds from mint). Open the URL in a browser to stream the file to disk; no `Authorization` header is required at download time. Filter rules match `GET /api/v1/events`: `filter` requires `filter`; `filter` requires either `filter` or `filter` + `filter`. Violations are rejected here at mint time. Reads are allowed on lapsed subscriptions per the smplcore convention — same gate as the events list.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb', line 37 def create_export_with_http_info(export_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ExportsApi.create_export ...' end # verify the required parameter 'export_request' is set if @api_client.config.client_side_validation && export_request.nil? fail ArgumentError, "Missing the required parameter 'export_request' when calling ExportsApi.create_export" end # resource path local_var_path = '/api/v1/exports' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/vnd.api+json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/vnd.api+json']) if !content_type.nil? header_params['Content-Type'] = content_type end # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(export_request) # return_type return_type = opts[:debug_return_type] || 'ExportResponse' # auth_names auth_names = opts[:debug_auth_names] || ['HTTPBearer'] = opts.merge( :operation => :"ExportsApi.create_export", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:POST, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: ExportsApi#create_export\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |
#download_export(token, opts = {}) ⇒ nil
Download Export Stream a signed audit-events download — no ‘Authorization` header required. Authorization is the token itself: it carries the account, the chosen format, and the filters, all integrity-protected by HMAC. The endpoint verifies the signature and expiry, scopes the events query to the token’s account, and streams the response. Any failure (bad signature, wrong audience, expired, malformed payload) returns ‘404 Not Found` — the response shape never leaks which check failed. The token is stateless and replayable until it expires (≤30s). Concurrent or duplicate GETs (browser retries, AV scanners, prefetchers) all succeed; there is no single-use behavior.
95 96 97 98 |
# File 'lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb', line 95 def download_export(token, opts = {}) download_export_with_http_info(token, opts) nil end |
#download_export_with_http_info(token, opts = {}) ⇒ Array<(nil, Integer, Hash)>
Download Export Stream a signed audit-events download — no `Authorization` header required. Authorization is the token itself: it carries the account, the chosen format, and the filters, all integrity-protected by HMAC. The endpoint verifies the signature and expiry, scopes the events query to the token's account, and streams the response. Any failure (bad signature, wrong audience, expired, malformed payload) returns `404 Not Found` — the response shape never leaks which check failed. The token is stateless and replayable until it expires (≤30s). Concurrent or duplicate GETs (browser retries, AV scanners, prefetchers) all succeed; there is no single-use behavior.
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 |
# File 'lib/smplkit/_generated/audit/lib/smplkit_audit_client/api/exports_api.rb', line 105 def download_export_with_http_info(token, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ExportsApi.download_export ...' end # verify the required parameter 'token' is set if @api_client.config.client_side_validation && token.nil? fail ArgumentError, "Missing the required parameter 'token' when calling ExportsApi.download_export" end # resource path local_var_path = '/api/v1/exports/{token}'.sub('{token}', CGI.escape(token.to_s)) # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] # auth_names auth_names = opts[:debug_auth_names] || [] = opts.merge( :operation => :"ExportsApi.download_export", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: ExportsApi#download_export\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |