pingram 0.1.0

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 (187) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +54 -0
  4. data/Rakefile +10 -0
  5. data/lib/pingram/api/account_api.rb +506 -0
  6. data/lib/pingram/api/addresses_api.rb +209 -0
  7. data/lib/pingram/api/components_api.rb +396 -0
  8. data/lib/pingram/api/default_api.rb +88 -0
  9. data/lib/pingram/api/domains_api.rb +204 -0
  10. data/lib/pingram/api/editor_api.rb +88 -0
  11. data/lib/pingram/api/environments_api.rb +215 -0
  12. data/lib/pingram/api/health_api.rb +77 -0
  13. data/lib/pingram/api/insights_api.rb +88 -0
  14. data/lib/pingram/api/keys_api.rb +204 -0
  15. data/lib/pingram/api/logs_api.rb +375 -0
  16. data/lib/pingram/api/members_api.rb +433 -0
  17. data/lib/pingram/api/sender_api.rb +221 -0
  18. data/lib/pingram/api/templates_api.rb +479 -0
  19. data/lib/pingram/api/types_api.rb +335 -0
  20. data/lib/pingram/api/user_api.rb +587 -0
  21. data/lib/pingram/api/users_api.rb +228 -0
  22. data/lib/pingram/api_client.rb +397 -0
  23. data/lib/pingram/api_error.rb +58 -0
  24. data/lib/pingram/api_model_base.rb +88 -0
  25. data/lib/pingram/client_wrapper.rb +212 -0
  26. data/lib/pingram/configuration.rb +330 -0
  27. data/lib/pingram/models/account_addresses_response.rb +166 -0
  28. data/lib/pingram/models/account_addresses_response_addresses_inner.rb +301 -0
  29. data/lib/pingram/models/account_get_response.rb +354 -0
  30. data/lib/pingram/models/account_get_response_pending_downgrade_usage_limit.rb +201 -0
  31. data/lib/pingram/models/address_response.rb +164 -0
  32. data/lib/pingram/models/auto_join_get_response.rb +192 -0
  33. data/lib/pingram/models/auto_join_post_response.rb +192 -0
  34. data/lib/pingram/models/auto_join_request_body.rb +166 -0
  35. data/lib/pingram/models/bee_token_v2.rb +190 -0
  36. data/lib/pingram/models/billing_post_request_body.rb +216 -0
  37. data/lib/pingram/models/billing_post_response_body.rb +367 -0
  38. data/lib/pingram/models/billing_post_response_body_pending_downgrade_usage_limit.rb +202 -0
  39. data/lib/pingram/models/channels_enum.rb +45 -0
  40. data/lib/pingram/models/create_account_request_body.rb +164 -0
  41. data/lib/pingram/models/create_account_response.rb +190 -0
  42. data/lib/pingram/models/create_address_request.rb +182 -0
  43. data/lib/pingram/models/create_key_request.rb +227 -0
  44. data/lib/pingram/models/create_key_response.rb +308 -0
  45. data/lib/pingram/models/delete_key_response.rb +165 -0
  46. data/lib/pingram/models/delete_user_response.rb +164 -0
  47. data/lib/pingram/models/email_auth_token_post_request.rb +147 -0
  48. data/lib/pingram/models/email_component_patch_request.rb +174 -0
  49. data/lib/pingram/models/email_component_post_request.rb +217 -0
  50. data/lib/pingram/models/email_component_response.rb +424 -0
  51. data/lib/pingram/models/email_component_response_referenced_by_inner.rb +238 -0
  52. data/lib/pingram/models/environment.rb +270 -0
  53. data/lib/pingram/models/environment_create_request.rb +164 -0
  54. data/lib/pingram/models/environment_patch_request.rb +176 -0
  55. data/lib/pingram/models/get_account_metadata_response.rb +164 -0
  56. data/lib/pingram/models/get_account_metadata_response_user_account_metadata.rb +216 -0
  57. data/lib/pingram/models/get_email_components_response_inner.rb +424 -0
  58. data/lib/pingram/models/get_environments_response_inner.rb +270 -0
  59. data/lib/pingram/models/get_inapp_notifications_response.rb +166 -0
  60. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner.rb +389 -0
  61. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner_delivery_options.rb +206 -0
  62. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner_delivery_options_instant.rb +191 -0
  63. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner_delivery_options_off.rb +164 -0
  64. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner_replies_inner.rb +190 -0
  65. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner_template.rb +103 -0
  66. data/lib/pingram/models/get_inapp_notifications_response_notifications_inner_template_any_of.rb +301 -0
  67. data/lib/pingram/models/get_keys_response.rb +168 -0
  68. data/lib/pingram/models/get_keys_response_keys_inner.rb +371 -0
  69. data/lib/pingram/models/get_logs_response.rb +175 -0
  70. data/lib/pingram/models/get_logs_response_messages_inner.rb +419 -0
  71. data/lib/pingram/models/get_logs_response_messages_inner_attachments_inner.rb +225 -0
  72. data/lib/pingram/models/get_members_response_inner.rb +236 -0
  73. data/lib/pingram/models/get_metrics_response_inner.rb +238 -0
  74. data/lib/pingram/models/get_metrics_response_inner_messages_inner.rb +159 -0
  75. data/lib/pingram/models/get_notifications_response_inner.rb +317 -0
  76. data/lib/pingram/models/get_notifications_response_inner_deduplication.rb +164 -0
  77. data/lib/pingram/models/get_notifications_response_inner_options.rb +201 -0
  78. data/lib/pingram/models/get_notifications_response_inner_options_email.rb +242 -0
  79. data/lib/pingram/models/get_notifications_response_inner_options_email_daily.rb +173 -0
  80. data/lib/pingram/models/get_notifications_response_inner_options_email_monthly.rb +216 -0
  81. data/lib/pingram/models/get_notifications_response_inner_options_email_weekly.rb +182 -0
  82. data/lib/pingram/models/get_notifications_response_inner_templates_inner.rb +214 -0
  83. data/lib/pingram/models/get_notifications_response_inner_throttling.rb +294 -0
  84. data/lib/pingram/models/get_senders_response_inner.rb +342 -0
  85. data/lib/pingram/models/get_templates_response.rb +103 -0
  86. data/lib/pingram/models/get_users_response.rb +201 -0
  87. data/lib/pingram/models/get_users_response_users_inner.rb +268 -0
  88. data/lib/pingram/models/get_users_response_users_inner_email_suppression_status.rb +214 -0
  89. data/lib/pingram/models/get_users_response_users_inner_push_tokens_inner.rb +252 -0
  90. data/lib/pingram/models/get_users_response_users_inner_push_tokens_inner_device.rb +209 -0
  91. data/lib/pingram/models/get_users_response_users_inner_slack_token.rb +317 -0
  92. data/lib/pingram/models/get_users_response_users_inner_slack_token_authed_user.rb +192 -0
  93. data/lib/pingram/models/get_users_response_users_inner_slack_token_enterprise.rb +156 -0
  94. data/lib/pingram/models/get_users_response_users_inner_slack_token_incoming_webhook.rb +174 -0
  95. data/lib/pingram/models/get_users_response_users_inner_slack_token_response_metadata.rb +200 -0
  96. data/lib/pingram/models/get_users_response_users_inner_web_push_tokens_inner.rb +164 -0
  97. data/lib/pingram/models/get_users_response_users_inner_web_push_tokens_inner_sub.rb +191 -0
  98. data/lib/pingram/models/get_users_response_users_inner_web_push_tokens_inner_sub_keys.rb +190 -0
  99. data/lib/pingram/models/in_app_notification_patch_request.rb +231 -0
  100. data/lib/pingram/models/in_app_notification_unread_clear_request.rb +156 -0
  101. data/lib/pingram/models/inapp_unread_count_response.rb +164 -0
  102. data/lib/pingram/models/inbound_request_body.rb +103 -0
  103. data/lib/pingram/models/inbound_response_body.rb +216 -0
  104. data/lib/pingram/models/inbound_response_body_results_inner.rb +216 -0
  105. data/lib/pingram/models/ingishts_post_request.rb +288 -0
  106. data/lib/pingram/models/ingishts_post_request_label_options.rb +147 -0
  107. data/lib/pingram/models/ingishts_post_request_metric_data_queries_inner.rb +208 -0
  108. data/lib/pingram/models/ingishts_post_request_metric_data_queries_inner_metric_stat.rb +211 -0
  109. data/lib/pingram/models/ingishts_post_request_metric_data_queries_inner_metric_stat_metric.rb +171 -0
  110. data/lib/pingram/models/ingishts_post_request_metric_data_queries_inner_metric_stat_metric_dimensions_inner.rb +159 -0
  111. data/lib/pingram/models/intercom_webhook.rb +293 -0
  112. data/lib/pingram/models/intercom_webhook_data.rb +164 -0
  113. data/lib/pingram/models/intercom_webhook_data_item.rb +103 -0
  114. data/lib/pingram/models/intercom_webhook_data_item_any_of.rb +453 -0
  115. data/lib/pingram/models/intercom_webhook_data_item_any_of_contacts.rb +216 -0
  116. data/lib/pingram/models/intercom_webhook_data_item_any_of_contacts_contacts_inner.rb +199 -0
  117. data/lib/pingram/models/intercom_webhook_data_item_any_of_source.rb +260 -0
  118. data/lib/pingram/models/intercom_webhook_data_item_any_of_source_author.rb +208 -0
  119. data/lib/pingram/models/invite_post_response.rb +156 -0
  120. data/lib/pingram/models/log_query_post_body.rb +251 -0
  121. data/lib/pingram/models/logs_bulk_request.rb +167 -0
  122. data/lib/pingram/models/logs_get_response.rb +167 -0
  123. data/lib/pingram/models/logs_get_response_logs_inner.rb +1808 -0
  124. data/lib/pingram/models/logs_query_response.rb +165 -0
  125. data/lib/pingram/models/logs_query_result_response.rb +194 -0
  126. data/lib/pingram/models/logs_retention_response.rb +165 -0
  127. data/lib/pingram/models/logs_tail_response.rb +167 -0
  128. data/lib/pingram/models/member_invite_request.rb +173 -0
  129. data/lib/pingram/models/member_update_request.rb +164 -0
  130. data/lib/pingram/models/message_response.rb +164 -0
  131. data/lib/pingram/models/notification.rb +317 -0
  132. data/lib/pingram/models/notification_create_request.rb +227 -0
  133. data/lib/pingram/models/notification_patch_request.rb +203 -0
  134. data/lib/pingram/models/post_email_test_request.rb +303 -0
  135. data/lib/pingram/models/post_email_test_response.rb +175 -0
  136. data/lib/pingram/models/post_senders_request_body.rb +164 -0
  137. data/lib/pingram/models/post_user_request.rb +215 -0
  138. data/lib/pingram/models/sender_post_body.rb +324 -0
  139. data/lib/pingram/models/sender_post_body_email.rb +217 -0
  140. data/lib/pingram/models/sender_post_body_inapp.rb +182 -0
  141. data/lib/pingram/models/sender_post_body_mobile_push.rb +190 -0
  142. data/lib/pingram/models/sender_post_body_options.rb +165 -0
  143. data/lib/pingram/models/sender_post_body_options_apn.rb +201 -0
  144. data/lib/pingram/models/sender_post_body_options_email.rb +209 -0
  145. data/lib/pingram/models/sender_post_body_options_email_attachments_inner.rb +103 -0
  146. data/lib/pingram/models/sender_post_body_options_email_attachments_inner_any_of.rb +190 -0
  147. data/lib/pingram/models/sender_post_body_options_email_attachments_inner_any_of1.rb +199 -0
  148. data/lib/pingram/models/sender_post_body_options_fcm.rb +147 -0
  149. data/lib/pingram/models/sender_post_body_options_fcm_android.rb +208 -0
  150. data/lib/pingram/models/sender_post_body_slack.rb +299 -0
  151. data/lib/pingram/models/sender_post_body_slack_metadata.rb +173 -0
  152. data/lib/pingram/models/sender_post_body_slack_metadata_entities_inner.rb +257 -0
  153. data/lib/pingram/models/sender_post_body_slack_metadata_entities_inner_external_ref.rb +174 -0
  154. data/lib/pingram/models/sender_post_body_sms.rb +156 -0
  155. data/lib/pingram/models/sender_post_body_sms_auto_reply.rb +164 -0
  156. data/lib/pingram/models/sender_post_body_to.rb +251 -0
  157. data/lib/pingram/models/sender_post_body_user.rb +268 -0
  158. data/lib/pingram/models/sender_post_body_web_push.rb +208 -0
  159. data/lib/pingram/models/sender_post_response.rb +192 -0
  160. data/lib/pingram/models/set_default_template_request.rb +204 -0
  161. data/lib/pingram/models/slack_interactivity_response.rb +165 -0
  162. data/lib/pingram/models/slack_oauth_request.rb +190 -0
  163. data/lib/pingram/models/success_response.rb +164 -0
  164. data/lib/pingram/models/supabase_configure_request.rb +242 -0
  165. data/lib/pingram/models/supabase_configure_response.rb +173 -0
  166. data/lib/pingram/models/supabase_o_auth_request.rb +216 -0
  167. data/lib/pingram/models/supabase_o_auth_response.rb +173 -0
  168. data/lib/pingram/models/supabase_projects_response.rb +166 -0
  169. data/lib/pingram/models/supabase_projects_response_projects_inner.rb +268 -0
  170. data/lib/pingram/models/supabase_status_response.rb +208 -0
  171. data/lib/pingram/models/template.rb +301 -0
  172. data/lib/pingram/models/template_patch_request.rb +104 -0
  173. data/lib/pingram/models/template_patch_request_any_of.rb +199 -0
  174. data/lib/pingram/models/template_patch_request_any_of1.rb +187 -0
  175. data/lib/pingram/models/template_patch_request_any_of1_batch.rb +217 -0
  176. data/lib/pingram/models/template_patch_request_any_of1_instant.rb +184 -0
  177. data/lib/pingram/models/template_post_request.rb +346 -0
  178. data/lib/pingram/models/template_post_request_batch.rb +217 -0
  179. data/lib/pingram/models/template_post_request_instant.rb +183 -0
  180. data/lib/pingram/models/update_address_request.rb +182 -0
  181. data/lib/pingram/models/user.rb +268 -0
  182. data/lib/pingram/models/user_suppression_delete_response.rb +164 -0
  183. data/lib/pingram/models/webhook_response.rb +182 -0
  184. data/lib/pingram/version.rb +15 -0
  185. data/lib/pingram.rb +215 -0
  186. data/pingram.gemspec +38 -0
  187. metadata +270 -0
@@ -0,0 +1,433 @@
1
+ =begin
2
+ #NotificationAPI
3
+
4
+ #Internal API for notification delivery and management
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Pingram
16
+ class MembersApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Get auto-join domains for the account
23
+ # @param env_id [String] Environment ID
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [AutoJoinGetResponse]
26
+ def members_get_auto_join(env_id, opts = {})
27
+ data, _status_code, _headers = members_get_auto_join_with_http_info(env_id, opts)
28
+ data
29
+ end
30
+
31
+ # Get auto-join domains for the account
32
+ # @param env_id [String] Environment ID
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(AutoJoinGetResponse, Integer, Hash)>] AutoJoinGetResponse data, response status code and response headers
35
+ def members_get_auto_join_with_http_info(env_id, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: MembersApi.members_get_auto_join ...'
38
+ end
39
+ # verify the required parameter 'env_id' is set
40
+ if @api_client.config.client_side_validation && env_id.nil?
41
+ fail ArgumentError, "Missing the required parameter 'env_id' when calling MembersApi.members_get_auto_join"
42
+ end
43
+ # resource path
44
+ local_var_path = '/members/autojoin'.sub('{' + 'envId' + '}', CGI.escape(env_id.to_s))
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ # HTTP header 'Accept' (if needed)
52
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
53
+
54
+ # form parameters
55
+ form_params = opts[:form_params] || {}
56
+
57
+ # http body (model)
58
+ post_body = opts[:debug_body]
59
+
60
+ # return_type
61
+ return_type = opts[:debug_return_type] || 'AutoJoinGetResponse'
62
+
63
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
64
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
65
+
66
+ new_options = opts.merge(
67
+ :operation => :"MembersApi.members_get_auto_join",
68
+ :header_params => header_params,
69
+ :query_params => query_params,
70
+ :form_params => form_params,
71
+ :body => post_body,
72
+ :auth_names => auth_names,
73
+ :return_type => return_type
74
+ )
75
+
76
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
77
+ if @api_client.config.debugging
78
+ @api_client.config.logger.debug "API called: MembersApi#members_get_auto_join\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
79
+ end
80
+ return data, status_code, headers
81
+ end
82
+
83
+ # Invite a new member to the account
84
+ # @param env_id [String] Environment ID
85
+ # @param member_invite_request [MemberInviteRequest]
86
+ # @param [Hash] opts the optional parameters
87
+ # @return [InvitePostResponse]
88
+ def members_invite_member(env_id, member_invite_request, opts = {})
89
+ data, _status_code, _headers = members_invite_member_with_http_info(env_id, member_invite_request, opts)
90
+ data
91
+ end
92
+
93
+ # Invite a new member to the account
94
+ # @param env_id [String] Environment ID
95
+ # @param member_invite_request [MemberInviteRequest]
96
+ # @param [Hash] opts the optional parameters
97
+ # @return [Array<(InvitePostResponse, Integer, Hash)>] InvitePostResponse data, response status code and response headers
98
+ def members_invite_member_with_http_info(env_id, member_invite_request, opts = {})
99
+ if @api_client.config.debugging
100
+ @api_client.config.logger.debug 'Calling API: MembersApi.members_invite_member ...'
101
+ end
102
+ # verify the required parameter 'env_id' is set
103
+ if @api_client.config.client_side_validation && env_id.nil?
104
+ fail ArgumentError, "Missing the required parameter 'env_id' when calling MembersApi.members_invite_member"
105
+ end
106
+ # verify the required parameter 'member_invite_request' is set
107
+ if @api_client.config.client_side_validation && member_invite_request.nil?
108
+ fail ArgumentError, "Missing the required parameter 'member_invite_request' when calling MembersApi.members_invite_member"
109
+ end
110
+ # resource path
111
+ local_var_path = '/members'.sub('{' + 'envId' + '}', CGI.escape(env_id.to_s))
112
+
113
+ # query parameters
114
+ query_params = opts[:query_params] || {}
115
+
116
+ # header parameters
117
+ header_params = opts[:header_params] || {}
118
+ # HTTP header 'Accept' (if needed)
119
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
120
+ # HTTP header 'Content-Type'
121
+ content_type = @api_client.select_header_content_type(['application/json'])
122
+ if !content_type.nil?
123
+ header_params['Content-Type'] = content_type
124
+ end
125
+
126
+ # form parameters
127
+ form_params = opts[:form_params] || {}
128
+
129
+ # http body (model)
130
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(member_invite_request)
131
+
132
+ # return_type
133
+ return_type = opts[:debug_return_type] || 'InvitePostResponse'
134
+
135
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
136
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
137
+
138
+ new_options = opts.merge(
139
+ :operation => :"MembersApi.members_invite_member",
140
+ :header_params => header_params,
141
+ :query_params => query_params,
142
+ :form_params => form_params,
143
+ :body => post_body,
144
+ :auth_names => auth_names,
145
+ :return_type => return_type
146
+ )
147
+
148
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
149
+ if @api_client.config.debugging
150
+ @api_client.config.logger.debug "API called: MembersApi#members_invite_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
151
+ end
152
+ return data, status_code, headers
153
+ end
154
+
155
+ # Get a list of team members in the account
156
+ # @param env_id [String] Environment ID
157
+ # @param [Hash] opts the optional parameters
158
+ # @return [Array<GetMembersResponseInner>]
159
+ def members_list_members(env_id, opts = {})
160
+ data, _status_code, _headers = members_list_members_with_http_info(env_id, opts)
161
+ data
162
+ end
163
+
164
+ # Get a list of team members in the account
165
+ # @param env_id [String] Environment ID
166
+ # @param [Hash] opts the optional parameters
167
+ # @return [Array<(Array<GetMembersResponseInner>, Integer, Hash)>] Array<GetMembersResponseInner> data, response status code and response headers
168
+ def members_list_members_with_http_info(env_id, opts = {})
169
+ if @api_client.config.debugging
170
+ @api_client.config.logger.debug 'Calling API: MembersApi.members_list_members ...'
171
+ end
172
+ # verify the required parameter 'env_id' is set
173
+ if @api_client.config.client_side_validation && env_id.nil?
174
+ fail ArgumentError, "Missing the required parameter 'env_id' when calling MembersApi.members_list_members"
175
+ end
176
+ # resource path
177
+ local_var_path = '/members'.sub('{' + 'envId' + '}', CGI.escape(env_id.to_s))
178
+
179
+ # query parameters
180
+ query_params = opts[:query_params] || {}
181
+
182
+ # header parameters
183
+ header_params = opts[:header_params] || {}
184
+ # HTTP header 'Accept' (if needed)
185
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
186
+
187
+ # form parameters
188
+ form_params = opts[:form_params] || {}
189
+
190
+ # http body (model)
191
+ post_body = opts[:debug_body]
192
+
193
+ # return_type
194
+ return_type = opts[:debug_return_type] || 'Array<GetMembersResponseInner>'
195
+
196
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
197
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
198
+
199
+ new_options = opts.merge(
200
+ :operation => :"MembersApi.members_list_members",
201
+ :header_params => header_params,
202
+ :query_params => query_params,
203
+ :form_params => form_params,
204
+ :body => post_body,
205
+ :auth_names => auth_names,
206
+ :return_type => return_type
207
+ )
208
+
209
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
210
+ if @api_client.config.debugging
211
+ @api_client.config.logger.debug "API called: MembersApi#members_list_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
212
+ end
213
+ return data, status_code, headers
214
+ end
215
+
216
+ # Remove a member from the account
217
+ # @param env_id [String] Environment ID
218
+ # @param user_id [String] User ID or email address (URL encoded)
219
+ # @param [Hash] opts the optional parameters
220
+ # @return [SuccessResponse]
221
+ def members_remove_member(env_id, user_id, opts = {})
222
+ data, _status_code, _headers = members_remove_member_with_http_info(env_id, user_id, opts)
223
+ data
224
+ end
225
+
226
+ # Remove a member from the account
227
+ # @param env_id [String] Environment ID
228
+ # @param user_id [String] User ID or email address (URL encoded)
229
+ # @param [Hash] opts the optional parameters
230
+ # @return [Array<(SuccessResponse, Integer, Hash)>] SuccessResponse data, response status code and response headers
231
+ def members_remove_member_with_http_info(env_id, user_id, opts = {})
232
+ if @api_client.config.debugging
233
+ @api_client.config.logger.debug 'Calling API: MembersApi.members_remove_member ...'
234
+ end
235
+ # verify the required parameter 'env_id' is set
236
+ if @api_client.config.client_side_validation && env_id.nil?
237
+ fail ArgumentError, "Missing the required parameter 'env_id' when calling MembersApi.members_remove_member"
238
+ end
239
+ # verify the required parameter 'user_id' is set
240
+ if @api_client.config.client_side_validation && user_id.nil?
241
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling MembersApi.members_remove_member"
242
+ end
243
+ # resource path
244
+ local_var_path = '/members/{userId}'.sub('{' + 'envId' + '}', CGI.escape(env_id.to_s)).sub('{' + 'userId' + '}', CGI.escape(user_id.to_s))
245
+
246
+ # query parameters
247
+ query_params = opts[:query_params] || {}
248
+
249
+ # header parameters
250
+ header_params = opts[:header_params] || {}
251
+ # HTTP header 'Accept' (if needed)
252
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
253
+
254
+ # form parameters
255
+ form_params = opts[:form_params] || {}
256
+
257
+ # http body (model)
258
+ post_body = opts[:debug_body]
259
+
260
+ # return_type
261
+ return_type = opts[:debug_return_type] || 'SuccessResponse'
262
+
263
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
264
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
265
+
266
+ new_options = opts.merge(
267
+ :operation => :"MembersApi.members_remove_member",
268
+ :header_params => header_params,
269
+ :query_params => query_params,
270
+ :form_params => form_params,
271
+ :body => post_body,
272
+ :auth_names => auth_names,
273
+ :return_type => return_type
274
+ )
275
+
276
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
277
+ if @api_client.config.debugging
278
+ @api_client.config.logger.debug "API called: MembersApi#members_remove_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
279
+ end
280
+ return data, status_code, headers
281
+ end
282
+
283
+ # Set auto-join domains for the account
284
+ # @param env_id [String] Environment ID
285
+ # @param auto_join_request_body [AutoJoinRequestBody]
286
+ # @param [Hash] opts the optional parameters
287
+ # @return [AutoJoinPostResponse]
288
+ def members_set_auto_join(env_id, auto_join_request_body, opts = {})
289
+ data, _status_code, _headers = members_set_auto_join_with_http_info(env_id, auto_join_request_body, opts)
290
+ data
291
+ end
292
+
293
+ # Set auto-join domains for the account
294
+ # @param env_id [String] Environment ID
295
+ # @param auto_join_request_body [AutoJoinRequestBody]
296
+ # @param [Hash] opts the optional parameters
297
+ # @return [Array<(AutoJoinPostResponse, Integer, Hash)>] AutoJoinPostResponse data, response status code and response headers
298
+ def members_set_auto_join_with_http_info(env_id, auto_join_request_body, opts = {})
299
+ if @api_client.config.debugging
300
+ @api_client.config.logger.debug 'Calling API: MembersApi.members_set_auto_join ...'
301
+ end
302
+ # verify the required parameter 'env_id' is set
303
+ if @api_client.config.client_side_validation && env_id.nil?
304
+ fail ArgumentError, "Missing the required parameter 'env_id' when calling MembersApi.members_set_auto_join"
305
+ end
306
+ # verify the required parameter 'auto_join_request_body' is set
307
+ if @api_client.config.client_side_validation && auto_join_request_body.nil?
308
+ fail ArgumentError, "Missing the required parameter 'auto_join_request_body' when calling MembersApi.members_set_auto_join"
309
+ end
310
+ # resource path
311
+ local_var_path = '/members/autojoin'.sub('{' + 'envId' + '}', CGI.escape(env_id.to_s))
312
+
313
+ # query parameters
314
+ query_params = opts[:query_params] || {}
315
+
316
+ # header parameters
317
+ header_params = opts[:header_params] || {}
318
+ # HTTP header 'Accept' (if needed)
319
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
320
+ # HTTP header 'Content-Type'
321
+ content_type = @api_client.select_header_content_type(['application/json'])
322
+ if !content_type.nil?
323
+ header_params['Content-Type'] = content_type
324
+ end
325
+
326
+ # form parameters
327
+ form_params = opts[:form_params] || {}
328
+
329
+ # http body (model)
330
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(auto_join_request_body)
331
+
332
+ # return_type
333
+ return_type = opts[:debug_return_type] || 'AutoJoinPostResponse'
334
+
335
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
336
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
337
+
338
+ new_options = opts.merge(
339
+ :operation => :"MembersApi.members_set_auto_join",
340
+ :header_params => header_params,
341
+ :query_params => query_params,
342
+ :form_params => form_params,
343
+ :body => post_body,
344
+ :auth_names => auth_names,
345
+ :return_type => return_type
346
+ )
347
+
348
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
349
+ if @api_client.config.debugging
350
+ @api_client.config.logger.debug "API called: MembersApi#members_set_auto_join\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
351
+ end
352
+ return data, status_code, headers
353
+ end
354
+
355
+ # Updates a specified member. The role update operation is restricted to administrators only.
356
+ # @param env_id [String] Environment ID
357
+ # @param user_id [String] User ID to update
358
+ # @param member_update_request [MemberUpdateRequest]
359
+ # @param [Hash] opts the optional parameters
360
+ # @return [SuccessResponse]
361
+ def members_update(env_id, user_id, member_update_request, opts = {})
362
+ data, _status_code, _headers = members_update_with_http_info(env_id, user_id, member_update_request, opts)
363
+ data
364
+ end
365
+
366
+ # Updates a specified member. The role update operation is restricted to administrators only.
367
+ # @param env_id [String] Environment ID
368
+ # @param user_id [String] User ID to update
369
+ # @param member_update_request [MemberUpdateRequest]
370
+ # @param [Hash] opts the optional parameters
371
+ # @return [Array<(SuccessResponse, Integer, Hash)>] SuccessResponse data, response status code and response headers
372
+ def members_update_with_http_info(env_id, user_id, member_update_request, opts = {})
373
+ if @api_client.config.debugging
374
+ @api_client.config.logger.debug 'Calling API: MembersApi.members_update ...'
375
+ end
376
+ # verify the required parameter 'env_id' is set
377
+ if @api_client.config.client_side_validation && env_id.nil?
378
+ fail ArgumentError, "Missing the required parameter 'env_id' when calling MembersApi.members_update"
379
+ end
380
+ # verify the required parameter 'user_id' is set
381
+ if @api_client.config.client_side_validation && user_id.nil?
382
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling MembersApi.members_update"
383
+ end
384
+ # verify the required parameter 'member_update_request' is set
385
+ if @api_client.config.client_side_validation && member_update_request.nil?
386
+ fail ArgumentError, "Missing the required parameter 'member_update_request' when calling MembersApi.members_update"
387
+ end
388
+ # resource path
389
+ local_var_path = '/members/{userId}'.sub('{' + 'envId' + '}', CGI.escape(env_id.to_s)).sub('{' + 'userId' + '}', CGI.escape(user_id.to_s))
390
+
391
+ # query parameters
392
+ query_params = opts[:query_params] || {}
393
+
394
+ # header parameters
395
+ header_params = opts[:header_params] || {}
396
+ # HTTP header 'Accept' (if needed)
397
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
398
+ # HTTP header 'Content-Type'
399
+ content_type = @api_client.select_header_content_type(['application/json'])
400
+ if !content_type.nil?
401
+ header_params['Content-Type'] = content_type
402
+ end
403
+
404
+ # form parameters
405
+ form_params = opts[:form_params] || {}
406
+
407
+ # http body (model)
408
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(member_update_request)
409
+
410
+ # return_type
411
+ return_type = opts[:debug_return_type] || 'SuccessResponse'
412
+
413
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
414
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
415
+
416
+ new_options = opts.merge(
417
+ :operation => :"MembersApi.members_update",
418
+ :header_params => header_params,
419
+ :query_params => query_params,
420
+ :form_params => form_params,
421
+ :body => post_body,
422
+ :auth_names => auth_names,
423
+ :return_type => return_type
424
+ )
425
+
426
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
427
+ if @api_client.config.debugging
428
+ @api_client.config.logger.debug "API called: MembersApi#members_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
429
+ end
430
+ return data, status_code, headers
431
+ end
432
+ end
433
+ end
@@ -0,0 +1,221 @@
1
+ =begin
2
+ #NotificationAPI
3
+
4
+ #Internal API for notification delivery and management
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Pingram
16
+ class SenderApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Delete (unschedule) an already scheduled notification
23
+ # @param tracking_id [String] The tracking ID of the scheduled notification
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [MessageResponse]
26
+ def sender_delete_schedule(tracking_id, opts = {})
27
+ data, _status_code, _headers = sender_delete_schedule_with_http_info(tracking_id, opts)
28
+ data
29
+ end
30
+
31
+ # Delete (unschedule) an already scheduled notification
32
+ # @param tracking_id [String] The tracking ID of the scheduled notification
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
35
+ def sender_delete_schedule_with_http_info(tracking_id, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: SenderApi.sender_delete_schedule ...'
38
+ end
39
+ # verify the required parameter 'tracking_id' is set
40
+ if @api_client.config.client_side_validation && tracking_id.nil?
41
+ fail ArgumentError, "Missing the required parameter 'tracking_id' when calling SenderApi.sender_delete_schedule"
42
+ end
43
+ # resource path
44
+ local_var_path = '/sender/scheduler/{trackingId}'.sub('{' + 'trackingId' + '}', CGI.escape(tracking_id.to_s))
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ # HTTP header 'Accept' (if needed)
52
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
53
+
54
+ # form parameters
55
+ form_params = opts[:form_params] || {}
56
+
57
+ # http body (model)
58
+ post_body = opts[:debug_body]
59
+
60
+ # return_type
61
+ return_type = opts[:debug_return_type] || 'MessageResponse'
62
+
63
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
64
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
65
+
66
+ new_options = opts.merge(
67
+ :operation => :"SenderApi.sender_delete_schedule",
68
+ :header_params => header_params,
69
+ :query_params => query_params,
70
+ :form_params => form_params,
71
+ :body => post_body,
72
+ :auth_names => auth_names,
73
+ :return_type => return_type
74
+ )
75
+
76
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
77
+ if @api_client.config.debugging
78
+ @api_client.config.logger.debug "API called: SenderApi#sender_delete_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
79
+ end
80
+ return data, status_code, headers
81
+ end
82
+
83
+ # Test the emailer with a sample email
84
+ # @param post_email_test_request [PostEmailTestRequest]
85
+ # @param [Hash] opts the optional parameters
86
+ # @return [PostEmailTestResponse]
87
+ def sender_test_email(post_email_test_request, opts = {})
88
+ data, _status_code, _headers = sender_test_email_with_http_info(post_email_test_request, opts)
89
+ data
90
+ end
91
+
92
+ # Test the emailer with a sample email
93
+ # @param post_email_test_request [PostEmailTestRequest]
94
+ # @param [Hash] opts the optional parameters
95
+ # @return [Array<(PostEmailTestResponse, Integer, Hash)>] PostEmailTestResponse data, response status code and response headers
96
+ def sender_test_email_with_http_info(post_email_test_request, opts = {})
97
+ if @api_client.config.debugging
98
+ @api_client.config.logger.debug 'Calling API: SenderApi.sender_test_email ...'
99
+ end
100
+ # verify the required parameter 'post_email_test_request' is set
101
+ if @api_client.config.client_side_validation && post_email_test_request.nil?
102
+ fail ArgumentError, "Missing the required parameter 'post_email_test_request' when calling SenderApi.sender_test_email"
103
+ end
104
+ # resource path
105
+ local_var_path = '/sender/test/email'
106
+
107
+ # query parameters
108
+ query_params = opts[:query_params] || {}
109
+
110
+ # header parameters
111
+ header_params = opts[:header_params] || {}
112
+ # HTTP header 'Accept' (if needed)
113
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
114
+ # HTTP header 'Content-Type'
115
+ content_type = @api_client.select_header_content_type(['application/json'])
116
+ if !content_type.nil?
117
+ header_params['Content-Type'] = content_type
118
+ end
119
+
120
+ # form parameters
121
+ form_params = opts[:form_params] || {}
122
+
123
+ # http body (model)
124
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_email_test_request)
125
+
126
+ # return_type
127
+ return_type = opts[:debug_return_type] || 'PostEmailTestResponse'
128
+
129
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
130
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
131
+
132
+ new_options = opts.merge(
133
+ :operation => :"SenderApi.sender_test_email",
134
+ :header_params => header_params,
135
+ :query_params => query_params,
136
+ :form_params => form_params,
137
+ :body => post_body,
138
+ :auth_names => auth_names,
139
+ :return_type => return_type
140
+ )
141
+
142
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
143
+ if @api_client.config.debugging
144
+ @api_client.config.logger.debug "API called: SenderApi#sender_test_email\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
145
+ end
146
+ return data, status_code, headers
147
+ end
148
+
149
+ # Update the body or schedule of an already scheduled notification.
150
+ # @param tracking_id [String] The tracking ID of the scheduled notification
151
+ # @param sender_post_body [SenderPostBody]
152
+ # @param [Hash] opts the optional parameters
153
+ # @return [MessageResponse]
154
+ def sender_update_schedule(tracking_id, sender_post_body, opts = {})
155
+ data, _status_code, _headers = sender_update_schedule_with_http_info(tracking_id, sender_post_body, opts)
156
+ data
157
+ end
158
+
159
+ # Update the body or schedule of an already scheduled notification.
160
+ # @param tracking_id [String] The tracking ID of the scheduled notification
161
+ # @param sender_post_body [SenderPostBody]
162
+ # @param [Hash] opts the optional parameters
163
+ # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
164
+ def sender_update_schedule_with_http_info(tracking_id, sender_post_body, opts = {})
165
+ if @api_client.config.debugging
166
+ @api_client.config.logger.debug 'Calling API: SenderApi.sender_update_schedule ...'
167
+ end
168
+ # verify the required parameter 'tracking_id' is set
169
+ if @api_client.config.client_side_validation && tracking_id.nil?
170
+ fail ArgumentError, "Missing the required parameter 'tracking_id' when calling SenderApi.sender_update_schedule"
171
+ end
172
+ # verify the required parameter 'sender_post_body' is set
173
+ if @api_client.config.client_side_validation && sender_post_body.nil?
174
+ fail ArgumentError, "Missing the required parameter 'sender_post_body' when calling SenderApi.sender_update_schedule"
175
+ end
176
+ # resource path
177
+ local_var_path = '/sender/scheduler/{trackingId}'.sub('{' + 'trackingId' + '}', CGI.escape(tracking_id.to_s))
178
+
179
+ # query parameters
180
+ query_params = opts[:query_params] || {}
181
+
182
+ # header parameters
183
+ header_params = opts[:header_params] || {}
184
+ # HTTP header 'Accept' (if needed)
185
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
186
+ # HTTP header 'Content-Type'
187
+ content_type = @api_client.select_header_content_type(['application/json'])
188
+ if !content_type.nil?
189
+ header_params['Content-Type'] = content_type
190
+ end
191
+
192
+ # form parameters
193
+ form_params = opts[:form_params] || {}
194
+
195
+ # http body (model)
196
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(sender_post_body)
197
+
198
+ # return_type
199
+ return_type = opts[:debug_return_type] || 'MessageResponse'
200
+
201
+ # auth_names (apiKey last so Bearer wins when multiple schemes set Authorization)
202
+ auth_names = opts[:debug_auth_names] || ['endUserHashed', 'endUser', 'clientCredentials', 'apiKey']
203
+
204
+ new_options = opts.merge(
205
+ :operation => :"SenderApi.sender_update_schedule",
206
+ :header_params => header_params,
207
+ :query_params => query_params,
208
+ :form_params => form_params,
209
+ :body => post_body,
210
+ :auth_names => auth_names,
211
+ :return_type => return_type
212
+ )
213
+
214
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
215
+ if @api_client.config.debugging
216
+ @api_client.config.logger.debug "API called: SenderApi#sender_update_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
217
+ end
218
+ return data, status_code, headers
219
+ end
220
+ end
221
+ end