mailslurp_client 8.0.10 → 8.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.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +7 -0
  3. data/README.md +123 -0
  4. data/SECURITY.md +4 -0
  5. data/SUPPORT.md +4 -0
  6. data/lib/mailslurp_client/api/alias_controller_api.rb +405 -0
  7. data/lib/mailslurp_client/api/attachment_controller_api.rb +160 -0
  8. data/lib/mailslurp_client/api/bulk_actions_controller_api.rb +203 -0
  9. data/lib/mailslurp_client/api/common_actions_controller_api.rb +257 -0
  10. data/lib/mailslurp_client/api/contact_controller_api.rb +323 -0
  11. data/lib/mailslurp_client/api/domain_controller_api.rb +264 -0
  12. data/lib/mailslurp_client/api/email_controller_api.rb +852 -0
  13. data/lib/mailslurp_client/api/form_controller_api.rb +104 -0
  14. data/lib/mailslurp_client/api/group_controller_api.rb +592 -0
  15. data/lib/mailslurp_client/api/inbox_controller_api.rb +897 -0
  16. data/lib/mailslurp_client/api/mail_server_controller_api.rb +146 -0
  17. data/lib/mailslurp_client/api/sent_emails_controller_api.rb +152 -0
  18. data/lib/mailslurp_client/api/template_controller_api.rb +323 -0
  19. data/lib/mailslurp_client/api/wait_for_controller_api.rb +359 -0
  20. data/lib/mailslurp_client/api/webhook_controller_api.rb +405 -0
  21. data/lib/mailslurp_client/api_client.rb +388 -0
  22. data/lib/mailslurp_client/api_error.rb +57 -0
  23. data/lib/mailslurp_client/configuration.rb +248 -0
  24. data/lib/mailslurp_client/models/attachment_meta_data.rb +238 -0
  25. data/lib/mailslurp_client/models/basic_auth_options.rb +226 -0
  26. data/lib/mailslurp_client/models/bulk_send_email_options.rb +219 -0
  27. data/lib/mailslurp_client/models/contact_dto.rb +311 -0
  28. data/lib/mailslurp_client/models/contact_projection.rb +270 -0
  29. data/lib/mailslurp_client/models/create_anonymous_alias_options.rb +208 -0
  30. data/lib/mailslurp_client/models/create_contact_options.rb +277 -0
  31. data/lib/mailslurp_client/models/create_domain_options.rb +208 -0
  32. data/lib/mailslurp_client/models/create_group_options.rb +220 -0
  33. data/lib/mailslurp_client/models/create_owned_alias_options.rb +238 -0
  34. data/lib/mailslurp_client/models/create_template_options.rb +225 -0
  35. data/lib/mailslurp_client/models/create_webhook_options.rb +227 -0
  36. data/lib/mailslurp_client/models/describe_domain_options.rb +211 -0
  37. data/lib/mailslurp_client/models/describe_mail_server_domain_result.rb +237 -0
  38. data/lib/mailslurp_client/models/domain_dto.rb +296 -0
  39. data/lib/mailslurp_client/models/domain_preview.rb +240 -0
  40. data/lib/mailslurp_client/models/email.rb +386 -0
  41. data/lib/mailslurp_client/models/email_analysis.rb +248 -0
  42. data/lib/mailslurp_client/models/email_preview.rb +296 -0
  43. data/lib/mailslurp_client/models/email_projection.rb +325 -0
  44. data/lib/mailslurp_client/models/email_verification_result.rb +263 -0
  45. data/lib/mailslurp_client/models/forward_email_options.rb +244 -0
  46. data/lib/mailslurp_client/models/group_contacts_dto.rb +227 -0
  47. data/lib/mailslurp_client/models/group_dto.rb +248 -0
  48. data/lib/mailslurp_client/models/group_projection.rb +248 -0
  49. data/lib/mailslurp_client/models/html_validation_result.rb +244 -0
  50. data/lib/mailslurp_client/models/inbox.rb +290 -0
  51. data/lib/mailslurp_client/models/inbox_projection.rb +263 -0
  52. data/lib/mailslurp_client/models/match_option.rb +274 -0
  53. data/lib/mailslurp_client/models/match_options.rb +210 -0
  54. data/lib/mailslurp_client/models/model_alias.rb +284 -0
  55. data/lib/mailslurp_client/models/name_server_record.rb +254 -0
  56. data/lib/mailslurp_client/models/page_alias.rb +298 -0
  57. data/lib/mailslurp_client/models/page_contact_projection.rb +298 -0
  58. data/lib/mailslurp_client/models/page_email_preview.rb +298 -0
  59. data/lib/mailslurp_client/models/page_email_projection.rb +298 -0
  60. data/lib/mailslurp_client/models/page_group_projection.rb +298 -0
  61. data/lib/mailslurp_client/models/page_inbox_projection.rb +298 -0
  62. data/lib/mailslurp_client/models/page_sent_email_projection.rb +298 -0
  63. data/lib/mailslurp_client/models/page_template_projection.rb +298 -0
  64. data/lib/mailslurp_client/models/page_webhook_projection.rb +298 -0
  65. data/lib/mailslurp_client/models/pageable.rb +251 -0
  66. data/lib/mailslurp_client/models/raw_email_json.rb +211 -0
  67. data/lib/mailslurp_client/models/send_email_options.rb +392 -0
  68. data/lib/mailslurp_client/models/sent_email_dto.rb +351 -0
  69. data/lib/mailslurp_client/models/sent_email_projection.rb +344 -0
  70. data/lib/mailslurp_client/models/set_inbox_favourited_options.rb +208 -0
  71. data/lib/mailslurp_client/models/simple_send_email_options.rb +237 -0
  72. data/lib/mailslurp_client/models/sort.rb +224 -0
  73. data/lib/mailslurp_client/models/template_dto.rb +269 -0
  74. data/lib/mailslurp_client/models/template_projection.rb +269 -0
  75. data/lib/mailslurp_client/models/template_variable.rb +259 -0
  76. data/lib/mailslurp_client/models/unread_count.rb +211 -0
  77. data/lib/mailslurp_client/models/update_group_contacts.rb +213 -0
  78. data/lib/mailslurp_client/models/update_inbox_options.rb +250 -0
  79. data/lib/mailslurp_client/models/upload_attachment_options.rb +228 -0
  80. data/lib/mailslurp_client/models/validation_dto.rb +217 -0
  81. data/lib/mailslurp_client/models/validation_message.rb +220 -0
  82. data/lib/mailslurp_client/models/verify_email_address_options.rb +239 -0
  83. data/lib/mailslurp_client/models/wait_for_conditions.rb +316 -0
  84. data/lib/mailslurp_client/models/webhook_dto.rb +326 -0
  85. data/lib/mailslurp_client/models/webhook_projection.rb +277 -0
  86. data/lib/mailslurp_client/models/webhook_test_request.rb +284 -0
  87. data/lib/mailslurp_client/models/webhook_test_response.rb +215 -0
  88. data/lib/mailslurp_client/models/webhook_test_result.rb +235 -0
  89. data/lib/mailslurp_client/version.rb +15 -0
  90. metadata +90 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5197e8961209adc23c1c51c44f9049213168472b291e6c244eb796209f1047dd
4
- data.tar.gz: 1012ed146aea2be5f525b945617d4e4e2d6769cb1f035dc341f57ef691914db3
3
+ metadata.gz: 908ff7161db42d2a9939270589fe308669c45ca47324309cb78892ab7c3a4d1b
4
+ data.tar.gz: 89b286099c4f28fe9ba8bfecce0787efa0db0c1de907d3727e975ddcad3013cc
5
5
  SHA512:
6
- metadata.gz: 9697f044a19a56e5cbecf1435eff3e87683f388b57ec16da0286a0c8281946f6c7df05c77043a43fa3e285d0213201f092f12b86cd4fc7f54612d81cf52911af
7
- data.tar.gz: 04ff79bbd19193ba7a8401fd61c61328fec2810eb7dee51637a02123e77403df2a23a715858d1fce43678978d6cdcfb2feef8c7bb11deed4b49e04b04cfd2434
6
+ metadata.gz: e2d337bb0cb9bf721d8c29b66d7938b66bbb6d629a87c9baa74b5e6a71a4c122e98b155c33ca9445adf9bcf3a7e5179f597731309fbdbb69231179a80018a29f
7
+ data.tar.gz: e7e87ea0652a5254e01636a54403c5db91fc94bd46fe6c22d9b4706cd09ca086e31dcb72be3903bf9ed71b1c5307675378c0b7e8f32f2945ec51eb3bae216c1d
data/LICENSE ADDED
@@ -0,0 +1,7 @@
1
+ Copyright 2020 MailSlurp Email API (Provided by Pettman OÜ, Estonia)
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,123 @@
1
+ # MailSlurp Ruby Client
2
+
3
+ > Create real email addresses on demand. Send and receive emails and attachments from code and tests using Ruby.
4
+
5
+ MailSlurp is an email API service that lets you create real email addresses in code. You can then send and receive emails and attachments in Ruby applications and tests.
6
+
7
+ ## Quick links
8
+
9
+ - [Method Documentation](./docs)
10
+ - [Gem Package](https://rubygems.org/gems/mailslurp_client)
11
+ - [Github Source](https://github.com/mailslurp/mailslurp-client-ruby)
12
+
13
+ ## Get started
14
+
15
+ ::: tip
16
+ This section describes how to get up and running with the Ruby client.
17
+
18
+ See the [examples page](https://www.mailslurp.com/examples/) for more examples and use with common frameworks such as Rails and RSpec.
19
+
20
+ See the method documentation for a [list of all functions](./docs)
21
+ :::
22
+
23
+ ### Create API Key
24
+
25
+ First you'll need an API Key. [Create a free account](https://app.mailslurp.com) and copy the key from your dashboard.
26
+
27
+ ### Ruby requirements
28
+
29
+ The MailSlurp client requires Ruby 2.x and the ruby-dev package. You most likely have these packages but if not:
30
+
31
+ `sudo apt-get install ruby-dev`
32
+
33
+ ### Install Gem
34
+
35
+ ```bash
36
+ gem install mailslurp_client
37
+ ```
38
+
39
+ Or in your `Gemfile`:
40
+
41
+ ```ruby
42
+ gem 'mailslurp_client', '~> 7.0', '>= 7.0.8'
43
+ ```
44
+
45
+ ### Configure the client
46
+
47
+ ```ruby
48
+ require 'mailslurp_client'
49
+
50
+ # configure the mailslurp client with an API Key
51
+ MailSlurpClient.configure do |config|
52
+ config.api_key['x-api-key'] = "YOUR_API_KEY_HERE"
53
+ end
54
+ ```
55
+
56
+ ## Common uses
57
+
58
+ MailSlurp can be used for anything email related: sending and receiving emails, creating email addresses, or testing email processes.
59
+
60
+ Here are some common uses:
61
+
62
+ ### Create inboxes
63
+
64
+ To use MailSlurp you need to create inboxes. These are email accounts that have an ID and a real email address.
65
+
66
+ ```ruby
67
+ inbox_controller = MailSlurpClient::InboxControllerApi.new
68
+ inbox = inbox_controller.create_inbox
69
+ ```
70
+
71
+ In a test:
72
+
73
+ ```ruby
74
+ it 'can create email addresses' do
75
+ inbox_controller = MailSlurpClient::InboxControllerApi.new
76
+ inbox = inbox_controller.create_inbox
77
+
78
+ expect(inbox.id).not_to be_nil
79
+ expect(inbox.email_address).to include("mailslurp.com")
80
+ end
81
+ ```
82
+
83
+ ### Send emails
84
+
85
+ You can send HTML emails easily with the inbox controller. First create an inbox then use its ID with the `send_email` method.
86
+ To send attachments see the [Method Documentation](./docs).
87
+
88
+ ```ruby
89
+ # create an inbox
90
+ inbox_controller = MailSlurpClient::InboxControllerApi.new
91
+ inbox = inbox_controller.create_inbox
92
+
93
+ # send an email from the inbox
94
+ inbox_controller.send_email(inbox.id, {
95
+ send_email_options: {
96
+ to: ["test@example.org"],
97
+ subject: "Test",
98
+ isHTML: true,
99
+ body: <<-HEREDOC
100
+ <h1>Hello!</h1>
101
+ <p>MailSlurp supports HTML</p>
102
+ HEREDOC
103
+ }
104
+ })
105
+ ```
106
+
107
+ ### Receive emails
108
+
109
+ You can use MailSlurp to wait for at least 1 unread email in an inbox and return it.
110
+ If a timeout is exceeded it will throw an error instead:
111
+
112
+ ```ruby
113
+ waitfor_controller = MailSlurpClient::WaitForControllerApi.new
114
+ email = waitfor_controller.wait_for_latest_email({ inbox_id: inbox.id, unread_only: true })
115
+
116
+ # verify email contents
117
+ expect(email.subject).to include("Test")
118
+ expect(email.body).to include("Your email body")
119
+ ```
120
+
121
+ ## SDK Documentation
122
+
123
+ See the [examples page](https://www.mailslurp.com/examples/) or the full [Method Documentation](./docs) on Github.
@@ -0,0 +1,4 @@
1
+ # Security
2
+
3
+ This client calls the MailSlurp API endpoints. Connections should be made over secure HTTPS using your secure API Token. Do not share or commit the token if you can avoid doing so.
4
+ To report security issues or talk with MailSlurp support please email [support@mailslurp.zendesk.com](mailto:support@mailslurp.zendesk.com).
@@ -0,0 +1,4 @@
1
+ # Support
2
+
3
+ To report issues or talk with MailSlurp support please email [support@mailslurp.zendesk.com](mailto:support@mailslurp.zendesk.com).
4
+ Alternatively you can visit our [support portal](https://mailslurp.zendesk.com) or open a ticket in the corresponding [Github repository](https://www.github.com/mailslurp).
@@ -0,0 +1,405 @@
1
+ =begin
2
+ #MailSlurp API
3
+
4
+ #MailSlurp is an API for sending and receiving emails from dynamically allocated email addresses. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://www.mailslurp.com/docs/) - [Examples](https://github.com/mailslurp/examples) repository
5
+
6
+ The version of the OpenAPI document: 6.5.2
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MailSlurpClient
16
+ class AliasControllerApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create an email alias
23
+ # Create an email alias belonging to a user ID. To create anonymous aliases use the `createAnonymousAlias` method.
24
+ # @param create_owned_alias_options [CreateOwnedAliasOptions] createOwnedAliasOptions
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [nil]
27
+ def create_alias(create_owned_alias_options, opts = {})
28
+ create_alias_with_http_info(create_owned_alias_options, opts)
29
+ nil
30
+ end
31
+
32
+ # Create an email alias
33
+ # Create an email alias belonging to a user ID. To create anonymous aliases use the &#x60;createAnonymousAlias&#x60; method.
34
+ # @param create_owned_alias_options [CreateOwnedAliasOptions] createOwnedAliasOptions
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
37
+ def create_alias_with_http_info(create_owned_alias_options, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: AliasControllerApi.create_alias ...'
40
+ end
41
+ # verify the required parameter 'create_owned_alias_options' is set
42
+ if @api_client.config.client_side_validation && create_owned_alias_options.nil?
43
+ fail ArgumentError, "Missing the required parameter 'create_owned_alias_options' when calling AliasControllerApi.create_alias"
44
+ end
45
+ # resource path
46
+ local_var_path = '/aliases'
47
+
48
+ # query parameters
49
+ query_params = opts[:query_params] || {}
50
+
51
+ # header parameters
52
+ header_params = opts[:header_params] || {}
53
+ # HTTP header 'Accept' (if needed)
54
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
55
+ # HTTP header 'Content-Type'
56
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
57
+
58
+ # form parameters
59
+ form_params = opts[:form_params] || {}
60
+
61
+ # http body (model)
62
+ post_body = opts[:body] || @api_client.object_to_http_body(create_owned_alias_options)
63
+
64
+ # return_type
65
+ return_type = opts[:return_type]
66
+
67
+ # auth_names
68
+ auth_names = opts[:auth_names] || ['API_KEY']
69
+
70
+ new_options = opts.merge(
71
+ :header_params => header_params,
72
+ :query_params => query_params,
73
+ :form_params => form_params,
74
+ :body => post_body,
75
+ :auth_names => auth_names,
76
+ :return_type => return_type
77
+ )
78
+
79
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
80
+ if @api_client.config.debugging
81
+ @api_client.config.logger.debug "API called: AliasControllerApi#create_alias\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
82
+ end
83
+ return data, status_code, headers
84
+ end
85
+
86
+ # Create an anonymous email alias
87
+ # @param create_anonymous_alias_options [CreateAnonymousAliasOptions] createAnonymousAliasOptions
88
+ # @param [Hash] opts the optional parameters
89
+ # @return [ModelAlias]
90
+ def create_anonymous_alias(create_anonymous_alias_options, opts = {})
91
+ data, _status_code, _headers = create_anonymous_alias_with_http_info(create_anonymous_alias_options, opts)
92
+ data
93
+ end
94
+
95
+ # Create an anonymous email alias
96
+ # @param create_anonymous_alias_options [CreateAnonymousAliasOptions] createAnonymousAliasOptions
97
+ # @param [Hash] opts the optional parameters
98
+ # @return [Array<(ModelAlias, Integer, Hash)>] ModelAlias data, response status code and response headers
99
+ def create_anonymous_alias_with_http_info(create_anonymous_alias_options, opts = {})
100
+ if @api_client.config.debugging
101
+ @api_client.config.logger.debug 'Calling API: AliasControllerApi.create_anonymous_alias ...'
102
+ end
103
+ # verify the required parameter 'create_anonymous_alias_options' is set
104
+ if @api_client.config.client_side_validation && create_anonymous_alias_options.nil?
105
+ fail ArgumentError, "Missing the required parameter 'create_anonymous_alias_options' when calling AliasControllerApi.create_anonymous_alias"
106
+ end
107
+ # resource path
108
+ local_var_path = '/aliases/anonymous'
109
+
110
+ # query parameters
111
+ query_params = opts[:query_params] || {}
112
+
113
+ # header parameters
114
+ header_params = opts[:header_params] || {}
115
+ # HTTP header 'Accept' (if needed)
116
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
117
+ # HTTP header 'Content-Type'
118
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
119
+
120
+ # form parameters
121
+ form_params = opts[:form_params] || {}
122
+
123
+ # http body (model)
124
+ post_body = opts[:body] || @api_client.object_to_http_body(create_anonymous_alias_options)
125
+
126
+ # return_type
127
+ return_type = opts[:return_type] || 'ModelAlias'
128
+
129
+ # auth_names
130
+ auth_names = opts[:auth_names] || ['API_KEY']
131
+
132
+ new_options = opts.merge(
133
+ :header_params => header_params,
134
+ :query_params => query_params,
135
+ :form_params => form_params,
136
+ :body => post_body,
137
+ :auth_names => auth_names,
138
+ :return_type => return_type
139
+ )
140
+
141
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
142
+ if @api_client.config.debugging
143
+ @api_client.config.logger.debug "API called: AliasControllerApi#create_anonymous_alias\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
144
+ end
145
+ return data, status_code, headers
146
+ end
147
+
148
+ # Delete an owned alias
149
+ # @param alias_id [String] aliasId
150
+ # @param [Hash] opts the optional parameters
151
+ # @return [nil]
152
+ def delete_alias(alias_id, opts = {})
153
+ delete_alias_with_http_info(alias_id, opts)
154
+ nil
155
+ end
156
+
157
+ # Delete an owned alias
158
+ # @param alias_id [String] aliasId
159
+ # @param [Hash] opts the optional parameters
160
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
161
+ def delete_alias_with_http_info(alias_id, opts = {})
162
+ if @api_client.config.debugging
163
+ @api_client.config.logger.debug 'Calling API: AliasControllerApi.delete_alias ...'
164
+ end
165
+ # verify the required parameter 'alias_id' is set
166
+ if @api_client.config.client_side_validation && alias_id.nil?
167
+ fail ArgumentError, "Missing the required parameter 'alias_id' when calling AliasControllerApi.delete_alias"
168
+ end
169
+ # resource path
170
+ local_var_path = '/aliases/{aliasId}'.sub('{' + 'aliasId' + '}', CGI.escape(alias_id.to_s))
171
+
172
+ # query parameters
173
+ query_params = opts[:query_params] || {}
174
+
175
+ # header parameters
176
+ header_params = opts[:header_params] || {}
177
+
178
+ # form parameters
179
+ form_params = opts[:form_params] || {}
180
+
181
+ # http body (model)
182
+ post_body = opts[:body]
183
+
184
+ # return_type
185
+ return_type = opts[:return_type]
186
+
187
+ # auth_names
188
+ auth_names = opts[:auth_names] || ['API_KEY']
189
+
190
+ new_options = opts.merge(
191
+ :header_params => header_params,
192
+ :query_params => query_params,
193
+ :form_params => form_params,
194
+ :body => post_body,
195
+ :auth_names => auth_names,
196
+ :return_type => return_type
197
+ )
198
+
199
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
200
+ if @api_client.config.debugging
201
+ @api_client.config.logger.debug "API called: AliasControllerApi#delete_alias\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
202
+ end
203
+ return data, status_code, headers
204
+ end
205
+
206
+ # Get an email alias
207
+ # Get an email alias by ID
208
+ # @param alias_id [String] aliasId
209
+ # @param [Hash] opts the optional parameters
210
+ # @return [ModelAlias]
211
+ def get_alias(alias_id, opts = {})
212
+ data, _status_code, _headers = get_alias_with_http_info(alias_id, opts)
213
+ data
214
+ end
215
+
216
+ # Get an email alias
217
+ # Get an email alias by ID
218
+ # @param alias_id [String] aliasId
219
+ # @param [Hash] opts the optional parameters
220
+ # @return [Array<(ModelAlias, Integer, Hash)>] ModelAlias data, response status code and response headers
221
+ def get_alias_with_http_info(alias_id, opts = {})
222
+ if @api_client.config.debugging
223
+ @api_client.config.logger.debug 'Calling API: AliasControllerApi.get_alias ...'
224
+ end
225
+ # verify the required parameter 'alias_id' is set
226
+ if @api_client.config.client_side_validation && alias_id.nil?
227
+ fail ArgumentError, "Missing the required parameter 'alias_id' when calling AliasControllerApi.get_alias"
228
+ end
229
+ # resource path
230
+ local_var_path = '/aliases/{aliasId}'.sub('{' + 'aliasId' + '}', CGI.escape(alias_id.to_s))
231
+
232
+ # query parameters
233
+ query_params = opts[:query_params] || {}
234
+
235
+ # header parameters
236
+ header_params = opts[:header_params] || {}
237
+ # HTTP header 'Accept' (if needed)
238
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
239
+
240
+ # form parameters
241
+ form_params = opts[:form_params] || {}
242
+
243
+ # http body (model)
244
+ post_body = opts[:body]
245
+
246
+ # return_type
247
+ return_type = opts[:return_type] || 'ModelAlias'
248
+
249
+ # auth_names
250
+ auth_names = opts[:auth_names] || ['API_KEY']
251
+
252
+ new_options = opts.merge(
253
+ :header_params => header_params,
254
+ :query_params => query_params,
255
+ :form_params => form_params,
256
+ :body => post_body,
257
+ :auth_names => auth_names,
258
+ :return_type => return_type
259
+ )
260
+
261
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
262
+ if @api_client.config.debugging
263
+ @api_client.config.logger.debug "API called: AliasControllerApi#get_alias\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
264
+ end
265
+ return data, status_code, headers
266
+ end
267
+
268
+ # Get all email aliases
269
+ # Get all email aliases in paginated form
270
+ # @param [Hash] opts the optional parameters
271
+ # @option opts [Integer] :page Optional page index in alias list pagination (default to 0)
272
+ # @option opts [Integer] :size Optional page size in alias list pagination (default to 20)
273
+ # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC')
274
+ # @return [PageAlias]
275
+ def get_aliases(opts = {})
276
+ data, _status_code, _headers = get_aliases_with_http_info(opts)
277
+ data
278
+ end
279
+
280
+ # Get all email aliases
281
+ # Get all email aliases in paginated form
282
+ # @param [Hash] opts the optional parameters
283
+ # @option opts [Integer] :page Optional page index in alias list pagination
284
+ # @option opts [Integer] :size Optional page size in alias list pagination
285
+ # @option opts [String] :sort Optional createdAt sort direction ASC or DESC
286
+ # @return [Array<(PageAlias, Integer, Hash)>] PageAlias data, response status code and response headers
287
+ def get_aliases_with_http_info(opts = {})
288
+ if @api_client.config.debugging
289
+ @api_client.config.logger.debug 'Calling API: AliasControllerApi.get_aliases ...'
290
+ end
291
+ allowable_values = ["ASC", "DESC"]
292
+ if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
293
+ fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
294
+ end
295
+ # resource path
296
+ local_var_path = '/aliases'
297
+
298
+ # query parameters
299
+ query_params = opts[:query_params] || {}
300
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
301
+ query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
302
+ query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
303
+
304
+ # header parameters
305
+ header_params = opts[:header_params] || {}
306
+ # HTTP header 'Accept' (if needed)
307
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
308
+
309
+ # form parameters
310
+ form_params = opts[:form_params] || {}
311
+
312
+ # http body (model)
313
+ post_body = opts[:body]
314
+
315
+ # return_type
316
+ return_type = opts[:return_type] || 'PageAlias'
317
+
318
+ # auth_names
319
+ auth_names = opts[:auth_names] || ['API_KEY']
320
+
321
+ new_options = opts.merge(
322
+ :header_params => header_params,
323
+ :query_params => query_params,
324
+ :form_params => form_params,
325
+ :body => post_body,
326
+ :auth_names => auth_names,
327
+ :return_type => return_type
328
+ )
329
+
330
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
331
+ if @api_client.config.debugging
332
+ @api_client.config.logger.debug "API called: AliasControllerApi#get_aliases\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
333
+ end
334
+ return data, status_code, headers
335
+ end
336
+
337
+ # Update an owned alias
338
+ # @param alias_id [String] aliasId
339
+ # @param create_owned_alias_options [CreateOwnedAliasOptions] createOwnedAliasOptions
340
+ # @param [Hash] opts the optional parameters
341
+ # @return [nil]
342
+ def update_alias(alias_id, create_owned_alias_options, opts = {})
343
+ update_alias_with_http_info(alias_id, create_owned_alias_options, opts)
344
+ nil
345
+ end
346
+
347
+ # Update an owned alias
348
+ # @param alias_id [String] aliasId
349
+ # @param create_owned_alias_options [CreateOwnedAliasOptions] createOwnedAliasOptions
350
+ # @param [Hash] opts the optional parameters
351
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
352
+ def update_alias_with_http_info(alias_id, create_owned_alias_options, opts = {})
353
+ if @api_client.config.debugging
354
+ @api_client.config.logger.debug 'Calling API: AliasControllerApi.update_alias ...'
355
+ end
356
+ # verify the required parameter 'alias_id' is set
357
+ if @api_client.config.client_side_validation && alias_id.nil?
358
+ fail ArgumentError, "Missing the required parameter 'alias_id' when calling AliasControllerApi.update_alias"
359
+ end
360
+ # verify the required parameter 'create_owned_alias_options' is set
361
+ if @api_client.config.client_side_validation && create_owned_alias_options.nil?
362
+ fail ArgumentError, "Missing the required parameter 'create_owned_alias_options' when calling AliasControllerApi.update_alias"
363
+ end
364
+ # resource path
365
+ local_var_path = '/aliases/{aliasId}'.sub('{' + 'aliasId' + '}', CGI.escape(alias_id.to_s))
366
+
367
+ # query parameters
368
+ query_params = opts[:query_params] || {}
369
+
370
+ # header parameters
371
+ header_params = opts[:header_params] || {}
372
+ # HTTP header 'Accept' (if needed)
373
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
374
+ # HTTP header 'Content-Type'
375
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
376
+
377
+ # form parameters
378
+ form_params = opts[:form_params] || {}
379
+
380
+ # http body (model)
381
+ post_body = opts[:body] || @api_client.object_to_http_body(create_owned_alias_options)
382
+
383
+ # return_type
384
+ return_type = opts[:return_type]
385
+
386
+ # auth_names
387
+ auth_names = opts[:auth_names] || ['API_KEY']
388
+
389
+ new_options = opts.merge(
390
+ :header_params => header_params,
391
+ :query_params => query_params,
392
+ :form_params => form_params,
393
+ :body => post_body,
394
+ :auth_names => auth_names,
395
+ :return_type => return_type
396
+ )
397
+
398
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
399
+ if @api_client.config.debugging
400
+ @api_client.config.logger.debug "API called: AliasControllerApi#update_alias\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
401
+ end
402
+ return data, status_code, headers
403
+ end
404
+ end
405
+ end