svix 0.83.1 → 0.84.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/svix/api/application_api.rb +251 -181
- data/lib/svix/api/authentication_api.rb +84 -152
- data/lib/svix/api/background_tasks_api.rb +165 -0
- data/lib/svix/api/endpoint_api.rb +591 -511
- data/lib/svix/api/environment_api.rb +15 -15
- data/lib/svix/api/environment_settings_api.rb +7 -10
- data/lib/svix/api/event_type_api.rb +160 -85
- data/lib/svix/api/health_api.rb +7 -10
- data/lib/svix/api/integration_api.rb +136 -143
- data/lib/svix/api/message_api.rb +103 -105
- data/lib/svix/api/message_attempt_api.rb +419 -419
- data/lib/svix/api/statistics_api.rb +110 -48
- data/lib/svix/api_client.rb +1 -1
- data/lib/svix/api_error.rb +1 -1
- data/lib/svix/application_api.rb +22 -22
- data/lib/svix/authentication_api.rb +3 -3
- data/lib/svix/configuration.rb +2 -1
- data/lib/svix/endpoint_api.rb +16 -16
- data/lib/svix/event_type_api.rb +19 -19
- data/lib/svix/integration_api.rb +26 -26
- data/lib/svix/message_api.rb +4 -4
- data/lib/svix/message_attempt_api.rb +8 -8
- data/lib/svix/models/app_portal_access_in.rb +2 -1
- data/lib/svix/models/app_portal_access_out.rb +1 -1
- data/lib/svix/models/app_usage_stats_in.rb +255 -0
- data/lib/svix/models/app_usage_stats_out.rb +251 -0
- data/lib/svix/models/application_in.rb +35 -2
- data/lib/svix/models/application_out.rb +23 -3
- data/lib/svix/models/application_patch.rb +300 -0
- data/lib/svix/models/application_stats.rb +3 -2
- data/lib/svix/models/application_token_expire_in.rb +1 -1
- data/lib/svix/models/attempt_statistics_data.rb +1 -1
- data/lib/svix/models/attempt_statistics_response.rb +1 -1
- data/lib/svix/models/{webhook_types.rb → background_task_out.rb} +41 -70
- data/lib/svix/models/background_task_status.rb +38 -0
- data/lib/svix/models/background_task_type.rb +38 -0
- data/lib/svix/models/border_radius_config.rb +1 -1
- data/lib/svix/models/border_radius_enum.rb +1 -1
- data/lib/svix/models/custom_color_palette.rb +1 -1
- data/lib/svix/models/custom_theme_override.rb +1 -1
- data/lib/svix/models/dashboard_access_out.rb +1 -1
- data/lib/svix/models/endpoint_created_event.rb +6 -1
- data/lib/svix/models/endpoint_created_event_data.rb +5 -3
- data/lib/svix/models/endpoint_deleted_event.rb +6 -1
- data/lib/svix/models/endpoint_deleted_event_data.rb +5 -3
- data/lib/svix/models/endpoint_disabled_event.rb +6 -1
- data/lib/svix/models/endpoint_disabled_event_data.rb +6 -3
- data/lib/svix/models/endpoint_headers_in.rb +1 -1
- data/lib/svix/models/endpoint_headers_out.rb +1 -1
- data/lib/svix/models/endpoint_headers_patch_in.rb +1 -1
- data/lib/svix/models/endpoint_in.rb +20 -11
- data/lib/svix/models/endpoint_message_out.rb +4 -1
- data/lib/svix/models/endpoint_out.rb +35 -16
- data/lib/svix/models/endpoint_patch.rb +406 -0
- data/lib/svix/models/endpoint_secret_out.rb +1 -1
- data/lib/svix/models/endpoint_secret_rotate_in.rb +3 -1
- data/lib/svix/models/endpoint_stats.rb +1 -1
- data/lib/svix/models/endpoint_transformation_in.rb +1 -3
- data/lib/svix/models/endpoint_transformation_out.rb +1 -1
- data/lib/svix/models/endpoint_transformation_simulate_in.rb +8 -1
- data/lib/svix/models/endpoint_transformation_simulate_out.rb +1 -1
- data/lib/svix/models/endpoint_update.rb +20 -11
- data/lib/svix/models/endpoint_updated_event.rb +6 -1
- data/lib/svix/models/endpoint_updated_event_data.rb +5 -3
- data/lib/svix/models/environment_in.rb +1 -1
- data/lib/svix/models/environment_out.rb +1 -1
- data/lib/svix/models/environment_settings_out.rb +1 -1
- data/lib/svix/models/event_example_in.rb +2 -1
- data/lib/svix/models/event_type_example_out.rb +5 -3
- data/lib/svix/models/event_type_in.rb +2 -1
- data/lib/svix/models/event_type_out.rb +2 -1
- data/lib/svix/models/event_type_patch.rb +275 -0
- data/lib/svix/models/event_type_schema_in.rb +1 -2
- data/lib/svix/models/event_type_update.rb +1 -1
- data/lib/svix/models/font_size_config.rb +1 -1
- data/lib/svix/models/http_error_out.rb +1 -1
- data/lib/svix/models/http_validation_error.rb +6 -1
- data/lib/svix/models/integration_in.rb +1 -1
- data/lib/svix/models/integration_key_out.rb +1 -1
- data/lib/svix/models/integration_out.rb +2 -1
- data/lib/svix/models/integration_update.rb +1 -1
- data/lib/svix/models/list_response_application_out.rb +1 -1
- data/lib/svix/models/list_response_application_stats.rb +16 -6
- data/lib/svix/models/list_response_background_task_out.rb +259 -0
- data/lib/svix/models/list_response_endpoint_message_out.rb +1 -1
- data/lib/svix/models/list_response_endpoint_out.rb +1 -1
- data/lib/svix/models/list_response_event_type_out.rb +1 -1
- data/lib/svix/models/list_response_integration_out.rb +16 -6
- data/lib/svix/models/list_response_message_attempt_endpoint_out.rb +1 -1
- data/lib/svix/models/list_response_message_attempt_out.rb +1 -1
- data/lib/svix/models/list_response_message_endpoint_out.rb +16 -6
- data/lib/svix/models/list_response_message_out.rb +1 -1
- data/lib/svix/models/message_attempt_endpoint_out.rb +4 -1
- data/lib/svix/models/message_attempt_exhausted_event.rb +6 -1
- data/lib/svix/models/message_attempt_exhausted_event_data.rb +7 -3
- data/lib/svix/models/message_attempt_failed_data.rb +2 -1
- data/lib/svix/models/message_attempt_failing_event.rb +6 -1
- data/lib/svix/models/message_attempt_failing_event_data.rb +7 -3
- data/lib/svix/models/message_attempt_headers_out.rb +28 -2
- data/lib/svix/models/message_attempt_out.rb +4 -1
- data/lib/svix/models/message_attempt_trigger_type.rb +1 -1
- data/lib/svix/models/message_endpoint_out.rb +47 -30
- data/lib/svix/models/message_in.rb +2 -2
- data/lib/svix/models/message_out.rb +3 -1
- data/lib/svix/models/message_status.rb +1 -1
- data/lib/svix/models/ordering.rb +1 -1
- data/lib/svix/models/recover_in.rb +1 -1
- data/lib/svix/models/{one_time_token_out.rb → recover_out.rb} +42 -14
- data/lib/svix/models/replay_in.rb +1 -1
- data/lib/svix/models/{one_time_token_in.rb → replay_out.rb} +42 -14
- data/lib/svix/models/settings_in.rb +1 -1
- data/lib/svix/models/settings_out.rb +1 -1
- data/lib/svix/models/statistics_period.rb +1 -1
- data/lib/svix/models/status_code_class.rb +1 -1
- data/lib/svix/models/transformation_http_method.rb +2 -2
- data/lib/svix/models/validation_error.rb +5 -1
- data/lib/svix/version.rb +1 -1
- metadata +14 -5
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#Welcome to the Svix API documentation! Useful links: [Homepage](https://www.svix.com) | [Support email](mailto:support+docs@svix.com) | [Blog](https://www.svix.com/blog/) | [Slack Community](https://www.svix.com/slack/) # Introduction This is the reference documentation and schemas for the [Svix webhook service](https://www.svix.com) API. For tutorials and other documentation please refer to [the documentation](https://docs.svix.com). ## Main concepts In Svix you have four important entities you will be interacting with: - `messages`: these are the webhooks being sent. They can have contents and a few other properties. - `application`: this is where `messages` are sent to. Usually you want to create one application for each user on your platform. - `endpoint`: endpoints are the URLs messages will be sent to. Each application can have multiple `endpoints` and each message sent to that application will be sent to all of them (unless they are not subscribed to the sent event type). - `event-type`: event types are identifiers denoting the type of the message being sent. Event types are primarily used to decide which events are sent to which endpoint. ## Authentication Get your authentication token (`AUTH_TOKEN`) from the [Svix dashboard](https://dashboard.svix.com) and use it as part of the `Authorization` header as such: `Authorization: Bearer ${AUTH_TOKEN}`. <SecurityDefinitions /> ## Code samples The code samples assume you already have the respective libraries installed and you know how to use them. For the latest information on how to do that, please refer to [the documentation](https://docs.svix.com/). ## Idempotency Svix supports [idempotency](https://en.wikipedia.org/wiki/Idempotence) for safely retrying requests without accidentally performing the same operation twice. This is useful when an API call is disrupted in transit and you do not receive a response. To perform an idempotent request, pass the idempotency key in the `Idempotency-Key` header to the request. The idempotency key should be a unique value generated by the client. You can create the key in however way you like, though we suggest using UUID v4, or any other string with enough entropy to avoid collisions. Svix's idempotency works by saving the resulting status code and body of the first request made for any given idempotency key for any successful request. Subsequent requests with the same key return the same result. Please note that idempotency is only supported for `POST` requests. ## Cross-Origin Resource Sharing This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). And that allows cross-domain communication from the browser. All responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.4
|
6
|
+
The version of the OpenAPI document: 1.4.1
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 5.2.0
|
@@ -19,14 +19,94 @@ module Svix
|
|
19
19
|
def initialize(api_client = ApiClient.default)
|
20
20
|
@api_client = api_client
|
21
21
|
end
|
22
|
+
# Patch Event Type
|
23
|
+
# Partially update an event type.
|
24
|
+
# @param event_type_name [String] The event type's name
|
25
|
+
# @param event_type_patch [EventTypePatch]
|
26
|
+
# @param [Hash] opts the optional parameters
|
27
|
+
# @return [EventTypeOut]
|
28
|
+
def patch_event_type(event_type_name, event_type_patch, opts = {})
|
29
|
+
data, _status_code, _headers = patch_event_type_with_http_info(event_type_name, event_type_patch, opts)
|
30
|
+
data
|
31
|
+
end
|
32
|
+
|
33
|
+
# Patch Event Type
|
34
|
+
# Partially update an event type.
|
35
|
+
# @param event_type_name [String] The event type's name
|
36
|
+
# @param event_type_patch [EventTypePatch]
|
37
|
+
# @param [Hash] opts the optional parameters
|
38
|
+
# @return [Array<(EventTypeOut, Integer, Hash)>] EventTypeOut data, response status code and response headers
|
39
|
+
def patch_event_type_with_http_info(event_type_name, event_type_patch, opts = {})
|
40
|
+
if @api_client.config.debugging
|
41
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.patch_event_type ...'
|
42
|
+
end
|
43
|
+
# verify the required parameter 'event_type_name' is set
|
44
|
+
if @api_client.config.client_side_validation && event_type_name.nil?
|
45
|
+
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.patch_event_type"
|
46
|
+
end
|
47
|
+
if @api_client.config.client_side_validation && event_type_name.to_s.length > 256
|
48
|
+
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.patch_event_type, the character length must be smaller than or equal to 256.'
|
49
|
+
end
|
50
|
+
|
51
|
+
pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
|
52
|
+
if @api_client.config.client_side_validation && event_type_name !~ pattern
|
53
|
+
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.patch_event_type, must conform to the pattern #{pattern}."
|
54
|
+
end
|
55
|
+
|
56
|
+
# verify the required parameter 'event_type_patch' is set
|
57
|
+
if @api_client.config.client_side_validation && event_type_patch.nil?
|
58
|
+
fail ArgumentError, "Missing the required parameter 'event_type_patch' when calling EventTypeApi.patch_event_type"
|
59
|
+
end
|
60
|
+
# resource path
|
61
|
+
local_var_path = '/api/v1/event-type/{event_type_name}/'.sub('{' + 'event_type_name' + '}', CGI.escape(event_type_name.to_s))
|
62
|
+
|
63
|
+
# query parameters
|
64
|
+
query_params = opts[:query_params] || {}
|
65
|
+
|
66
|
+
# header parameters
|
67
|
+
header_params = opts[:header_params] || {}
|
68
|
+
# HTTP header 'Accept' (if needed)
|
69
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
70
|
+
# HTTP header 'Content-Type'
|
71
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
72
|
+
|
73
|
+
# form parameters
|
74
|
+
form_params = opts[:form_params] || {}
|
75
|
+
|
76
|
+
# http body (model)
|
77
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(event_type_patch)
|
78
|
+
|
79
|
+
# return_type
|
80
|
+
return_type = opts[:debug_return_type] || 'EventTypeOut'
|
81
|
+
|
82
|
+
# auth_names
|
83
|
+
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
84
|
+
|
85
|
+
new_options = opts.merge(
|
86
|
+
:operation => :"EventTypeApi.patch_event_type",
|
87
|
+
:header_params => header_params,
|
88
|
+
:query_params => query_params,
|
89
|
+
:form_params => form_params,
|
90
|
+
:body => post_body,
|
91
|
+
:auth_names => auth_names,
|
92
|
+
:return_type => return_type
|
93
|
+
)
|
94
|
+
|
95
|
+
data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
|
96
|
+
if @api_client.config.debugging
|
97
|
+
@api_client.config.logger.debug "API called: EventTypeApi#patch_event_type\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
98
|
+
end
|
99
|
+
return data, status_code, headers
|
100
|
+
end
|
101
|
+
|
22
102
|
# Create Event Type
|
23
103
|
# Create new or unarchive existing event type. Unarchiving an event type will allow endpoints to filter on it and messages to be sent with it. Endpoints filtering on the event type before archival will continue to filter on it. This operation does not preserve the description and schemas.
|
24
104
|
# @param event_type_in [EventTypeIn]
|
25
105
|
# @param [Hash] opts the optional parameters
|
26
106
|
# @option opts [String] :idempotency_key The request's idempotency key
|
27
107
|
# @return [EventTypeOut]
|
28
|
-
def
|
29
|
-
data, _status_code, _headers =
|
108
|
+
def v1_event_type_create(event_type_in, opts = {})
|
109
|
+
data, _status_code, _headers = v1_event_type_create_with_http_info(event_type_in, opts)
|
30
110
|
data
|
31
111
|
end
|
32
112
|
|
@@ -36,13 +116,13 @@ module Svix
|
|
36
116
|
# @param [Hash] opts the optional parameters
|
37
117
|
# @option opts [String] :idempotency_key The request's idempotency key
|
38
118
|
# @return [Array<(EventTypeOut, Integer, Hash)>] EventTypeOut data, response status code and response headers
|
39
|
-
def
|
119
|
+
def v1_event_type_create_with_http_info(event_type_in, opts = {})
|
40
120
|
if @api_client.config.debugging
|
41
|
-
@api_client.config.logger.debug 'Calling API: EventTypeApi.
|
121
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.v1_event_type_create ...'
|
42
122
|
end
|
43
123
|
# verify the required parameter 'event_type_in' is set
|
44
124
|
if @api_client.config.client_side_validation && event_type_in.nil?
|
45
|
-
fail ArgumentError, "Missing the required parameter 'event_type_in' when calling EventTypeApi.
|
125
|
+
fail ArgumentError, "Missing the required parameter 'event_type_in' when calling EventTypeApi.v1_event_type_create"
|
46
126
|
end
|
47
127
|
# resource path
|
48
128
|
local_var_path = '/api/v1/event-type/'
|
@@ -71,7 +151,7 @@ module Svix
|
|
71
151
|
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
72
152
|
|
73
153
|
new_options = opts.merge(
|
74
|
-
:operation => :"EventTypeApi.
|
154
|
+
:operation => :"EventTypeApi.v1_event_type_create",
|
75
155
|
:header_params => header_params,
|
76
156
|
:query_params => query_params,
|
77
157
|
:form_params => form_params,
|
@@ -82,45 +162,43 @@ module Svix
|
|
82
162
|
|
83
163
|
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
84
164
|
if @api_client.config.debugging
|
85
|
-
@api_client.config.logger.debug "API called: EventTypeApi#
|
165
|
+
@api_client.config.logger.debug "API called: EventTypeApi#v1_event_type_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
86
166
|
end
|
87
167
|
return data, status_code, headers
|
88
168
|
end
|
89
169
|
|
90
|
-
#
|
91
|
-
# Archive an event type. Endpoints already configured to filter on an event type will continue to do so after archival. However, new messages can not be sent with it and endpoints can not filter on it. An event type can be unarchived with the [create operation](#operation/create_event_type_api_v1_event_type__post).
|
92
|
-
# @param event_type_name [String]
|
170
|
+
# Delete Event Type
|
171
|
+
# Archive an event type. Endpoints already configured to filter on an event type will continue to do so after archival. However, new messages can not be sent with it and endpoints can not filter on it. An event type can be unarchived with the [create operation](#operation/create_event_type_api_v1_event_type__post).
|
172
|
+
# @param event_type_name [String] The event type's name
|
93
173
|
# @param [Hash] opts the optional parameters
|
94
174
|
# @option opts [Boolean] :expunge (default to false)
|
95
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
96
175
|
# @return [nil]
|
97
|
-
def
|
98
|
-
|
176
|
+
def v1_event_type_delete(event_type_name, opts = {})
|
177
|
+
v1_event_type_delete_with_http_info(event_type_name, opts)
|
99
178
|
nil
|
100
179
|
end
|
101
180
|
|
102
|
-
#
|
103
|
-
# Archive an event type. Endpoints already configured to filter on an event type will continue to do so after archival. However, new messages can not be sent with it and endpoints can not filter on it. An event type can be unarchived with the [create operation](#operation/create_event_type_api_v1_event_type__post).
|
104
|
-
# @param event_type_name [String]
|
181
|
+
# Delete Event Type
|
182
|
+
# Archive an event type. Endpoints already configured to filter on an event type will continue to do so after archival. However, new messages can not be sent with it and endpoints can not filter on it. An event type can be unarchived with the [create operation](#operation/create_event_type_api_v1_event_type__post).
|
183
|
+
# @param event_type_name [String] The event type's name
|
105
184
|
# @param [Hash] opts the optional parameters
|
106
185
|
# @option opts [Boolean] :expunge
|
107
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
108
186
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
109
|
-
def
|
187
|
+
def v1_event_type_delete_with_http_info(event_type_name, opts = {})
|
110
188
|
if @api_client.config.debugging
|
111
|
-
@api_client.config.logger.debug 'Calling API: EventTypeApi.
|
189
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.v1_event_type_delete ...'
|
112
190
|
end
|
113
191
|
# verify the required parameter 'event_type_name' is set
|
114
192
|
if @api_client.config.client_side_validation && event_type_name.nil?
|
115
|
-
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.
|
193
|
+
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.v1_event_type_delete"
|
116
194
|
end
|
117
195
|
if @api_client.config.client_side_validation && event_type_name.to_s.length > 256
|
118
|
-
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.
|
196
|
+
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.v1_event_type_delete, the character length must be smaller than or equal to 256.'
|
119
197
|
end
|
120
198
|
|
121
199
|
pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
|
122
200
|
if @api_client.config.client_side_validation && event_type_name !~ pattern
|
123
|
-
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.
|
201
|
+
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.v1_event_type_delete, must conform to the pattern #{pattern}."
|
124
202
|
end
|
125
203
|
|
126
204
|
# resource path
|
@@ -134,7 +212,6 @@ module Svix
|
|
134
212
|
header_params = opts[:header_params] || {}
|
135
213
|
# HTTP header 'Accept' (if needed)
|
136
214
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
137
|
-
header_params[:'idempotency-key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
138
215
|
|
139
216
|
# form parameters
|
140
217
|
form_params = opts[:form_params] || {}
|
@@ -149,7 +226,7 @@ module Svix
|
|
149
226
|
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
150
227
|
|
151
228
|
new_options = opts.merge(
|
152
|
-
:operation => :"EventTypeApi.
|
229
|
+
:operation => :"EventTypeApi.v1_event_type_delete",
|
153
230
|
:header_params => header_params,
|
154
231
|
:query_params => query_params,
|
155
232
|
:form_params => form_params,
|
@@ -160,7 +237,7 @@ module Svix
|
|
160
237
|
|
161
238
|
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
162
239
|
if @api_client.config.debugging
|
163
|
-
@api_client.config.logger.debug "API called: EventTypeApi#
|
240
|
+
@api_client.config.logger.debug "API called: EventTypeApi#v1_event_type_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
164
241
|
end
|
165
242
|
return data, status_code, headers
|
166
243
|
end
|
@@ -171,8 +248,8 @@ module Svix
|
|
171
248
|
# @param [Hash] opts the optional parameters
|
172
249
|
# @option opts [String] :idempotency_key The request's idempotency key
|
173
250
|
# @return [EventTypeExampleOut]
|
174
|
-
def
|
175
|
-
data, _status_code, _headers =
|
251
|
+
def v1_event_type_generate_example(event_type_schema_in, opts = {})
|
252
|
+
data, _status_code, _headers = v1_event_type_generate_example_with_http_info(event_type_schema_in, opts)
|
176
253
|
data
|
177
254
|
end
|
178
255
|
|
@@ -182,13 +259,13 @@ module Svix
|
|
182
259
|
# @param [Hash] opts the optional parameters
|
183
260
|
# @option opts [String] :idempotency_key The request's idempotency key
|
184
261
|
# @return [Array<(EventTypeExampleOut, Integer, Hash)>] EventTypeExampleOut data, response status code and response headers
|
185
|
-
def
|
262
|
+
def v1_event_type_generate_example_with_http_info(event_type_schema_in, opts = {})
|
186
263
|
if @api_client.config.debugging
|
187
|
-
@api_client.config.logger.debug 'Calling API: EventTypeApi.
|
264
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.v1_event_type_generate_example ...'
|
188
265
|
end
|
189
266
|
# verify the required parameter 'event_type_schema_in' is set
|
190
267
|
if @api_client.config.client_side_validation && event_type_schema_in.nil?
|
191
|
-
fail ArgumentError, "Missing the required parameter 'event_type_schema_in' when calling EventTypeApi.
|
268
|
+
fail ArgumentError, "Missing the required parameter 'event_type_schema_in' when calling EventTypeApi.v1_event_type_generate_example"
|
192
269
|
end
|
193
270
|
# resource path
|
194
271
|
local_var_path = '/api/v1/event-type/schema/generate-example/'
|
@@ -214,10 +291,10 @@ module Svix
|
|
214
291
|
return_type = opts[:debug_return_type] || 'EventTypeExampleOut'
|
215
292
|
|
216
293
|
# auth_names
|
217
|
-
auth_names = opts[:debug_auth_names] || []
|
294
|
+
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
218
295
|
|
219
296
|
new_options = opts.merge(
|
220
|
-
:operation => :"EventTypeApi.
|
297
|
+
:operation => :"EventTypeApi.v1_event_type_generate_example",
|
221
298
|
:header_params => header_params,
|
222
299
|
:query_params => query_params,
|
223
300
|
:form_params => form_params,
|
@@ -228,43 +305,41 @@ module Svix
|
|
228
305
|
|
229
306
|
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
230
307
|
if @api_client.config.debugging
|
231
|
-
@api_client.config.logger.debug "API called: EventTypeApi#
|
308
|
+
@api_client.config.logger.debug "API called: EventTypeApi#v1_event_type_generate_example\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
232
309
|
end
|
233
310
|
return data, status_code, headers
|
234
311
|
end
|
235
312
|
|
236
313
|
# Get Event Type
|
237
314
|
# Get an event type.
|
238
|
-
# @param event_type_name [String]
|
315
|
+
# @param event_type_name [String] The event type's name
|
239
316
|
# @param [Hash] opts the optional parameters
|
240
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
241
317
|
# @return [EventTypeOut]
|
242
|
-
def
|
243
|
-
data, _status_code, _headers =
|
318
|
+
def v1_event_type_get(event_type_name, opts = {})
|
319
|
+
data, _status_code, _headers = v1_event_type_get_with_http_info(event_type_name, opts)
|
244
320
|
data
|
245
321
|
end
|
246
322
|
|
247
323
|
# Get Event Type
|
248
324
|
# Get an event type.
|
249
|
-
# @param event_type_name [String]
|
325
|
+
# @param event_type_name [String] The event type's name
|
250
326
|
# @param [Hash] opts the optional parameters
|
251
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
252
327
|
# @return [Array<(EventTypeOut, Integer, Hash)>] EventTypeOut data, response status code and response headers
|
253
|
-
def
|
328
|
+
def v1_event_type_get_with_http_info(event_type_name, opts = {})
|
254
329
|
if @api_client.config.debugging
|
255
|
-
@api_client.config.logger.debug 'Calling API: EventTypeApi.
|
330
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.v1_event_type_get ...'
|
256
331
|
end
|
257
332
|
# verify the required parameter 'event_type_name' is set
|
258
333
|
if @api_client.config.client_side_validation && event_type_name.nil?
|
259
|
-
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.
|
334
|
+
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.v1_event_type_get"
|
260
335
|
end
|
261
336
|
if @api_client.config.client_side_validation && event_type_name.to_s.length > 256
|
262
|
-
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.
|
337
|
+
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.v1_event_type_get, the character length must be smaller than or equal to 256.'
|
263
338
|
end
|
264
339
|
|
265
340
|
pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
|
266
341
|
if @api_client.config.client_side_validation && event_type_name !~ pattern
|
267
|
-
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.
|
342
|
+
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.v1_event_type_get, must conform to the pattern #{pattern}."
|
268
343
|
end
|
269
344
|
|
270
345
|
# resource path
|
@@ -277,7 +352,6 @@ module Svix
|
|
277
352
|
header_params = opts[:header_params] || {}
|
278
353
|
# HTTP header 'Accept' (if needed)
|
279
354
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
280
|
-
header_params[:'idempotency-key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
281
355
|
|
282
356
|
# form parameters
|
283
357
|
form_params = opts[:form_params] || {}
|
@@ -292,7 +366,7 @@ module Svix
|
|
292
366
|
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
293
367
|
|
294
368
|
new_options = opts.merge(
|
295
|
-
:operation => :"EventTypeApi.
|
369
|
+
:operation => :"EventTypeApi.v1_event_type_get",
|
296
370
|
:header_params => header_params,
|
297
371
|
:query_params => query_params,
|
298
372
|
:form_params => form_params,
|
@@ -303,7 +377,7 @@ module Svix
|
|
303
377
|
|
304
378
|
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
305
379
|
if @api_client.config.debugging
|
306
|
-
@api_client.config.logger.debug "API called: EventTypeApi#
|
380
|
+
@api_client.config.logger.debug "API called: EventTypeApi#v1_event_type_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
307
381
|
end
|
308
382
|
return data, status_code, headers
|
309
383
|
end
|
@@ -311,41 +385,45 @@ module Svix
|
|
311
385
|
# List Event Types
|
312
386
|
# Return the list of event types.
|
313
387
|
# @param [Hash] opts the optional parameters
|
314
|
-
# @option opts [
|
315
|
-
# @option opts [
|
316
|
-
# @option opts [
|
388
|
+
# @option opts [Integer] :limit
|
389
|
+
# @option opts [String] :iterator The event type's name
|
390
|
+
# @option opts [Ordering] :order
|
317
391
|
# @option opts [Boolean] :include_archived (default to false)
|
318
|
-
# @option opts [
|
392
|
+
# @option opts [Boolean] :with_content (default to false)
|
319
393
|
# @return [ListResponseEventTypeOut]
|
320
|
-
def
|
321
|
-
data, _status_code, _headers =
|
394
|
+
def v1_event_type_list(opts = {})
|
395
|
+
data, _status_code, _headers = v1_event_type_list_with_http_info(opts)
|
322
396
|
data
|
323
397
|
end
|
324
398
|
|
325
399
|
# List Event Types
|
326
400
|
# Return the list of event types.
|
327
401
|
# @param [Hash] opts the optional parameters
|
328
|
-
# @option opts [String] :iterator
|
329
402
|
# @option opts [Integer] :limit
|
330
|
-
# @option opts [
|
403
|
+
# @option opts [String] :iterator The event type's name
|
404
|
+
# @option opts [Ordering] :order
|
331
405
|
# @option opts [Boolean] :include_archived
|
332
|
-
# @option opts [
|
406
|
+
# @option opts [Boolean] :with_content
|
333
407
|
# @return [Array<(ListResponseEventTypeOut, Integer, Hash)>] ListResponseEventTypeOut data, response status code and response headers
|
334
|
-
def
|
408
|
+
def v1_event_type_list_with_http_info(opts = {})
|
335
409
|
if @api_client.config.debugging
|
336
|
-
@api_client.config.logger.debug 'Calling API: EventTypeApi.
|
410
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.v1_event_type_list ...'
|
337
411
|
end
|
412
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 250
|
413
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling EventTypeApi.v1_event_type_list, must be smaller than or equal to 250.'
|
414
|
+
end
|
415
|
+
|
416
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
|
417
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling EventTypeApi.v1_event_type_list, must be greater than or equal to 1.'
|
418
|
+
end
|
419
|
+
|
338
420
|
if @api_client.config.client_side_validation && !opts[:'iterator'].nil? && opts[:'iterator'].to_s.length > 256
|
339
|
-
fail ArgumentError, 'invalid value for "opts[:"iterator"]" when calling EventTypeApi.
|
421
|
+
fail ArgumentError, 'invalid value for "opts[:"iterator"]" when calling EventTypeApi.v1_event_type_list, the character length must be smaller than or equal to 256.'
|
340
422
|
end
|
341
423
|
|
342
424
|
pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
|
343
425
|
if @api_client.config.client_side_validation && !opts[:'iterator'].nil? && opts[:'iterator'] !~ pattern
|
344
|
-
fail ArgumentError, "invalid value for 'opts[:\"iterator\"]' when calling EventTypeApi.
|
345
|
-
end
|
346
|
-
|
347
|
-
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 250
|
348
|
-
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling EventTypeApi.list_event_types_api_v1_event_type_get, must be smaller than or equal to 250.'
|
426
|
+
fail ArgumentError, "invalid value for 'opts[:\"iterator\"]' when calling EventTypeApi.v1_event_type_list, must conform to the pattern #{pattern}."
|
349
427
|
end
|
350
428
|
|
351
429
|
# resource path
|
@@ -353,16 +431,16 @@ module Svix
|
|
353
431
|
|
354
432
|
# query parameters
|
355
433
|
query_params = opts[:query_params] || {}
|
356
|
-
query_params[:'iterator'] = opts[:'iterator'] if !opts[:'iterator'].nil?
|
357
434
|
query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
|
358
|
-
query_params[:'
|
435
|
+
query_params[:'iterator'] = opts[:'iterator'] if !opts[:'iterator'].nil?
|
436
|
+
query_params[:'order'] = opts[:'order'] if !opts[:'order'].nil?
|
359
437
|
query_params[:'include_archived'] = opts[:'include_archived'] if !opts[:'include_archived'].nil?
|
438
|
+
query_params[:'with_content'] = opts[:'with_content'] if !opts[:'with_content'].nil?
|
360
439
|
|
361
440
|
# header parameters
|
362
441
|
header_params = opts[:header_params] || {}
|
363
442
|
# HTTP header 'Accept' (if needed)
|
364
443
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
365
|
-
header_params[:'idempotency-key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
366
444
|
|
367
445
|
# form parameters
|
368
446
|
form_params = opts[:form_params] || {}
|
@@ -377,7 +455,7 @@ module Svix
|
|
377
455
|
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
378
456
|
|
379
457
|
new_options = opts.merge(
|
380
|
-
:operation => :"EventTypeApi.
|
458
|
+
:operation => :"EventTypeApi.v1_event_type_list",
|
381
459
|
:header_params => header_params,
|
382
460
|
:query_params => query_params,
|
383
461
|
:form_params => form_params,
|
@@ -388,50 +466,48 @@ module Svix
|
|
388
466
|
|
389
467
|
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
390
468
|
if @api_client.config.debugging
|
391
|
-
@api_client.config.logger.debug "API called: EventTypeApi#
|
469
|
+
@api_client.config.logger.debug "API called: EventTypeApi#v1_event_type_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
392
470
|
end
|
393
471
|
return data, status_code, headers
|
394
472
|
end
|
395
473
|
|
396
474
|
# Update Event Type
|
397
475
|
# Update an event type.
|
398
|
-
# @param event_type_name [String]
|
476
|
+
# @param event_type_name [String] The event type's name
|
399
477
|
# @param event_type_update [EventTypeUpdate]
|
400
478
|
# @param [Hash] opts the optional parameters
|
401
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
402
479
|
# @return [EventTypeOut]
|
403
|
-
def
|
404
|
-
data, _status_code, _headers =
|
480
|
+
def v1_event_type_update(event_type_name, event_type_update, opts = {})
|
481
|
+
data, _status_code, _headers = v1_event_type_update_with_http_info(event_type_name, event_type_update, opts)
|
405
482
|
data
|
406
483
|
end
|
407
484
|
|
408
485
|
# Update Event Type
|
409
486
|
# Update an event type.
|
410
|
-
# @param event_type_name [String]
|
487
|
+
# @param event_type_name [String] The event type's name
|
411
488
|
# @param event_type_update [EventTypeUpdate]
|
412
489
|
# @param [Hash] opts the optional parameters
|
413
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
414
490
|
# @return [Array<(EventTypeOut, Integer, Hash)>] EventTypeOut data, response status code and response headers
|
415
|
-
def
|
491
|
+
def v1_event_type_update_with_http_info(event_type_name, event_type_update, opts = {})
|
416
492
|
if @api_client.config.debugging
|
417
|
-
@api_client.config.logger.debug 'Calling API: EventTypeApi.
|
493
|
+
@api_client.config.logger.debug 'Calling API: EventTypeApi.v1_event_type_update ...'
|
418
494
|
end
|
419
495
|
# verify the required parameter 'event_type_name' is set
|
420
496
|
if @api_client.config.client_side_validation && event_type_name.nil?
|
421
|
-
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.
|
497
|
+
fail ArgumentError, "Missing the required parameter 'event_type_name' when calling EventTypeApi.v1_event_type_update"
|
422
498
|
end
|
423
499
|
if @api_client.config.client_side_validation && event_type_name.to_s.length > 256
|
424
|
-
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.
|
500
|
+
fail ArgumentError, 'invalid value for "event_type_name" when calling EventTypeApi.v1_event_type_update, the character length must be smaller than or equal to 256.'
|
425
501
|
end
|
426
502
|
|
427
503
|
pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
|
428
504
|
if @api_client.config.client_side_validation && event_type_name !~ pattern
|
429
|
-
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.
|
505
|
+
fail ArgumentError, "invalid value for 'event_type_name' when calling EventTypeApi.v1_event_type_update, must conform to the pattern #{pattern}."
|
430
506
|
end
|
431
507
|
|
432
508
|
# verify the required parameter 'event_type_update' is set
|
433
509
|
if @api_client.config.client_side_validation && event_type_update.nil?
|
434
|
-
fail ArgumentError, "Missing the required parameter 'event_type_update' when calling EventTypeApi.
|
510
|
+
fail ArgumentError, "Missing the required parameter 'event_type_update' when calling EventTypeApi.v1_event_type_update"
|
435
511
|
end
|
436
512
|
# resource path
|
437
513
|
local_var_path = '/api/v1/event-type/{event_type_name}/'.sub('{' + 'event_type_name' + '}', CGI.escape(event_type_name.to_s))
|
@@ -445,7 +521,6 @@ module Svix
|
|
445
521
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
446
522
|
# HTTP header 'Content-Type'
|
447
523
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
448
|
-
header_params[:'idempotency-key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
449
524
|
|
450
525
|
# form parameters
|
451
526
|
form_params = opts[:form_params] || {}
|
@@ -460,7 +535,7 @@ module Svix
|
|
460
535
|
auth_names = opts[:debug_auth_names] || ['HTTPBearer']
|
461
536
|
|
462
537
|
new_options = opts.merge(
|
463
|
-
:operation => :"EventTypeApi.
|
538
|
+
:operation => :"EventTypeApi.v1_event_type_update",
|
464
539
|
:header_params => header_params,
|
465
540
|
:query_params => query_params,
|
466
541
|
:form_params => form_params,
|
@@ -471,7 +546,7 @@ module Svix
|
|
471
546
|
|
472
547
|
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
473
548
|
if @api_client.config.debugging
|
474
|
-
@api_client.config.logger.debug "API called: EventTypeApi#
|
549
|
+
@api_client.config.logger.debug "API called: EventTypeApi#v1_event_type_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
475
550
|
end
|
476
551
|
return data, status_code, headers
|
477
552
|
end
|
data/lib/svix/api/health_api.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
#Welcome to the Svix API documentation! Useful links: [Homepage](https://www.svix.com) | [Support email](mailto:support+docs@svix.com) | [Blog](https://www.svix.com/blog/) | [Slack Community](https://www.svix.com/slack/) # Introduction This is the reference documentation and schemas for the [Svix webhook service](https://www.svix.com) API. For tutorials and other documentation please refer to [the documentation](https://docs.svix.com). ## Main concepts In Svix you have four important entities you will be interacting with: - `messages`: these are the webhooks being sent. They can have contents and a few other properties. - `application`: this is where `messages` are sent to. Usually you want to create one application for each user on your platform. - `endpoint`: endpoints are the URLs messages will be sent to. Each application can have multiple `endpoints` and each message sent to that application will be sent to all of them (unless they are not subscribed to the sent event type). - `event-type`: event types are identifiers denoting the type of the message being sent. Event types are primarily used to decide which events are sent to which endpoint. ## Authentication Get your authentication token (`AUTH_TOKEN`) from the [Svix dashboard](https://dashboard.svix.com) and use it as part of the `Authorization` header as such: `Authorization: Bearer ${AUTH_TOKEN}`. <SecurityDefinitions /> ## Code samples The code samples assume you already have the respective libraries installed and you know how to use them. For the latest information on how to do that, please refer to [the documentation](https://docs.svix.com/). ## Idempotency Svix supports [idempotency](https://en.wikipedia.org/wiki/Idempotence) for safely retrying requests without accidentally performing the same operation twice. This is useful when an API call is disrupted in transit and you do not receive a response. To perform an idempotent request, pass the idempotency key in the `Idempotency-Key` header to the request. The idempotency key should be a unique value generated by the client. You can create the key in however way you like, though we suggest using UUID v4, or any other string with enough entropy to avoid collisions. Svix's idempotency works by saving the resulting status code and body of the first request made for any given idempotency key for any successful request. Subsequent requests with the same key return the same result. Please note that idempotency is only supported for `POST` requests. ## Cross-Origin Resource Sharing This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/). And that allows cross-domain communication from the browser. All responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site.
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.4
|
6
|
+
The version of the OpenAPI document: 1.4.1
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: 5.2.0
|
@@ -22,21 +22,19 @@ module Svix
|
|
22
22
|
# Health
|
23
23
|
# Verify the API server is up and running.
|
24
24
|
# @param [Hash] opts the optional parameters
|
25
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
26
25
|
# @return [nil]
|
27
|
-
def
|
28
|
-
|
26
|
+
def v1_health_get(opts = {})
|
27
|
+
v1_health_get_with_http_info(opts)
|
29
28
|
nil
|
30
29
|
end
|
31
30
|
|
32
31
|
# Health
|
33
32
|
# Verify the API server is up and running.
|
34
33
|
# @param [Hash] opts the optional parameters
|
35
|
-
# @option opts [String] :idempotency_key The request's idempotency key
|
36
34
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
37
|
-
def
|
35
|
+
def v1_health_get_with_http_info(opts = {})
|
38
36
|
if @api_client.config.debugging
|
39
|
-
@api_client.config.logger.debug 'Calling API: HealthApi.
|
37
|
+
@api_client.config.logger.debug 'Calling API: HealthApi.v1_health_get ...'
|
40
38
|
end
|
41
39
|
# resource path
|
42
40
|
local_var_path = '/api/v1/health/'
|
@@ -48,7 +46,6 @@ module Svix
|
|
48
46
|
header_params = opts[:header_params] || {}
|
49
47
|
# HTTP header 'Accept' (if needed)
|
50
48
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
51
|
-
header_params[:'idempotency-key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
52
49
|
|
53
50
|
# form parameters
|
54
51
|
form_params = opts[:form_params] || {}
|
@@ -63,7 +60,7 @@ module Svix
|
|
63
60
|
auth_names = opts[:debug_auth_names] || []
|
64
61
|
|
65
62
|
new_options = opts.merge(
|
66
|
-
:operation => :"HealthApi.
|
63
|
+
:operation => :"HealthApi.v1_health_get",
|
67
64
|
:header_params => header_params,
|
68
65
|
:query_params => query_params,
|
69
66
|
:form_params => form_params,
|
@@ -74,7 +71,7 @@ module Svix
|
|
74
71
|
|
75
72
|
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
76
73
|
if @api_client.config.debugging
|
77
|
-
@api_client.config.logger.debug "API called: HealthApi#
|
74
|
+
@api_client.config.logger.debug "API called: HealthApi#v1_health_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
78
75
|
end
|
79
76
|
return data, status_code, headers
|
80
77
|
end
|