emailguard_sdk 1.0.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 (128) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +169 -0
  4. data/Rakefile +10 -0
  5. data/docs/BaseResponse.md +20 -0
  6. data/docs/BillingApi.md +85 -0
  7. data/docs/BillingUsageEvent.md +26 -0
  8. data/docs/BillingUsageItem.md +28 -0
  9. data/docs/BillingUsageResponse.md +22 -0
  10. data/docs/ChannelsApi.md +366 -0
  11. data/docs/CreateNotificationChannelInput.md +22 -0
  12. data/docs/CreateNotificationRuleInput.md +28 -0
  13. data/docs/EmailApi.md +72 -0
  14. data/docs/EmailDetectData.md +44 -0
  15. data/docs/EmailDetectResponse.md +22 -0
  16. data/docs/EventsApi.md +76 -0
  17. data/docs/GetNotificationChannelResponse.md +22 -0
  18. data/docs/GetNotificationChannelsResponse.md +22 -0
  19. data/docs/GetNotificationEventsResponse.md +22 -0
  20. data/docs/GetNotificationRulesResponse.md +22 -0
  21. data/docs/GetPublicTeamResponse.md +22 -0
  22. data/docs/IdDataResponse.md +22 -0
  23. data/docs/IdDataStruct.md +18 -0
  24. data/docs/InviteTeamMemberInput.md +20 -0
  25. data/docs/InvitesApi.md +220 -0
  26. data/docs/ListPublicTeamInvitesResponse.md +22 -0
  27. data/docs/ListPublicTeamMembersResponse.md +22 -0
  28. data/docs/MembersApi.md +222 -0
  29. data/docs/MessageResponse.md +20 -0
  30. data/docs/NotificationChannelResponse.md +28 -0
  31. data/docs/NotificationRuleChannelInput.md +22 -0
  32. data/docs/NotificationRuleChannelResponse.md +28 -0
  33. data/docs/NotificationRuleResponse.md +32 -0
  34. data/docs/PublicTeamInviteResponse.md +24 -0
  35. data/docs/PublicTeamMemberResponse.md +34 -0
  36. data/docs/PublicTeamResponse.md +28 -0
  37. data/docs/RulesApi.md +294 -0
  38. data/docs/TeamsApi.md +148 -0
  39. data/docs/UpdateNotificationChannelInput.md +20 -0
  40. data/docs/UpdateNotificationRuleInput.md +28 -0
  41. data/docs/UpdateTeamInput.md +24 -0
  42. data/docs/UpdateTeamMemberInput.md +22 -0
  43. data/emailguard_sdk.gemspec +39 -0
  44. data/git_push.sh +57 -0
  45. data/lib/emailguard_sdk/api/billing_api.rb +92 -0
  46. data/lib/emailguard_sdk/api/channels_api.rb +347 -0
  47. data/lib/emailguard_sdk/api/email_api.rb +86 -0
  48. data/lib/emailguard_sdk/api/events_api.rb +79 -0
  49. data/lib/emailguard_sdk/api/invites_api.rb +210 -0
  50. data/lib/emailguard_sdk/api/members_api.rb +216 -0
  51. data/lib/emailguard_sdk/api/rules_api.rb +284 -0
  52. data/lib/emailguard_sdk/api/teams_api.rb +147 -0
  53. data/lib/emailguard_sdk/api_client.rb +397 -0
  54. data/lib/emailguard_sdk/api_error.rb +58 -0
  55. data/lib/emailguard_sdk/api_model_base.rb +88 -0
  56. data/lib/emailguard_sdk/configuration.rb +322 -0
  57. data/lib/emailguard_sdk/models/base_response.rb +175 -0
  58. data/lib/emailguard_sdk/models/billing_usage_event.rb +268 -0
  59. data/lib/emailguard_sdk/models/billing_usage_item.rb +262 -0
  60. data/lib/emailguard_sdk/models/billing_usage_response.rb +186 -0
  61. data/lib/emailguard_sdk/models/create_notification_channel_input.rb +204 -0
  62. data/lib/emailguard_sdk/models/create_notification_rule_input.rb +264 -0
  63. data/lib/emailguard_sdk/models/email_detect_data.rb +266 -0
  64. data/lib/emailguard_sdk/models/email_detect_response.rb +184 -0
  65. data/lib/emailguard_sdk/models/get_notification_channel_response.rb +184 -0
  66. data/lib/emailguard_sdk/models/get_notification_channels_response.rb +186 -0
  67. data/lib/emailguard_sdk/models/get_notification_events_response.rb +186 -0
  68. data/lib/emailguard_sdk/models/get_notification_rules_response.rb +186 -0
  69. data/lib/emailguard_sdk/models/get_public_team_response.rb +184 -0
  70. data/lib/emailguard_sdk/models/id_data_response.rb +184 -0
  71. data/lib/emailguard_sdk/models/id_data_struct.rb +148 -0
  72. data/lib/emailguard_sdk/models/invite_team_member_input.rb +192 -0
  73. data/lib/emailguard_sdk/models/list_public_team_invites_response.rb +186 -0
  74. data/lib/emailguard_sdk/models/list_public_team_members_response.rb +186 -0
  75. data/lib/emailguard_sdk/models/message_response.rb +175 -0
  76. data/lib/emailguard_sdk/models/notification_channel_response.rb +200 -0
  77. data/lib/emailguard_sdk/models/notification_rule_channel_input.rb +168 -0
  78. data/lib/emailguard_sdk/models/notification_rule_channel_response.rb +198 -0
  79. data/lib/emailguard_sdk/models/notification_rule_response.rb +224 -0
  80. data/lib/emailguard_sdk/models/public_team_invite_response.rb +246 -0
  81. data/lib/emailguard_sdk/models/public_team_member_response.rb +347 -0
  82. data/lib/emailguard_sdk/models/public_team_response.rb +198 -0
  83. data/lib/emailguard_sdk/models/update_notification_channel_input.rb +160 -0
  84. data/lib/emailguard_sdk/models/update_notification_rule_input.rb +204 -0
  85. data/lib/emailguard_sdk/models/update_team_input.rb +195 -0
  86. data/lib/emailguard_sdk/models/update_team_member_input.rb +185 -0
  87. data/lib/emailguard_sdk/version.rb +15 -0
  88. data/lib/emailguard_sdk.rb +78 -0
  89. data/spec/api/billing_api_spec.rb +49 -0
  90. data/spec/api/channels_api_spec.rb +95 -0
  91. data/spec/api/email_api_spec.rb +47 -0
  92. data/spec/api/events_api_spec.rb +46 -0
  93. data/spec/api/invites_api_spec.rb +70 -0
  94. data/spec/api/members_api_spec.rb +71 -0
  95. data/spec/api/rules_api_spec.rb +83 -0
  96. data/spec/api/teams_api_spec.rb +58 -0
  97. data/spec/models/base_response_spec.rb +42 -0
  98. data/spec/models/billing_usage_event_spec.rb +60 -0
  99. data/spec/models/billing_usage_item_spec.rb +66 -0
  100. data/spec/models/billing_usage_response_spec.rb +48 -0
  101. data/spec/models/create_notification_channel_input_spec.rb +48 -0
  102. data/spec/models/create_notification_rule_input_spec.rb +66 -0
  103. data/spec/models/email_detect_data_spec.rb +114 -0
  104. data/spec/models/email_detect_response_spec.rb +48 -0
  105. data/spec/models/get_notification_channel_response_spec.rb +48 -0
  106. data/spec/models/get_notification_channels_response_spec.rb +48 -0
  107. data/spec/models/get_notification_events_response_spec.rb +48 -0
  108. data/spec/models/get_notification_rules_response_spec.rb +48 -0
  109. data/spec/models/get_public_team_response_spec.rb +48 -0
  110. data/spec/models/id_data_response_spec.rb +48 -0
  111. data/spec/models/id_data_struct_spec.rb +36 -0
  112. data/spec/models/invite_team_member_input_spec.rb +42 -0
  113. data/spec/models/list_public_team_invites_response_spec.rb +48 -0
  114. data/spec/models/list_public_team_members_response_spec.rb +48 -0
  115. data/spec/models/message_response_spec.rb +42 -0
  116. data/spec/models/notification_channel_response_spec.rb +66 -0
  117. data/spec/models/notification_rule_channel_input_spec.rb +48 -0
  118. data/spec/models/notification_rule_channel_response_spec.rb +66 -0
  119. data/spec/models/notification_rule_response_spec.rb +78 -0
  120. data/spec/models/public_team_invite_response_spec.rb +54 -0
  121. data/spec/models/public_team_member_response_spec.rb +84 -0
  122. data/spec/models/public_team_response_spec.rb +66 -0
  123. data/spec/models/update_notification_channel_input_spec.rb +42 -0
  124. data/spec/models/update_notification_rule_input_spec.rb +66 -0
  125. data/spec/models/update_team_input_spec.rb +54 -0
  126. data/spec/models/update_team_member_input_spec.rb +48 -0
  127. data/spec/spec_helper.rb +111 -0
  128. metadata +251 -0
@@ -0,0 +1,79 @@
1
+ =begin
2
+ #EmailGuard Public API
3
+
4
+ #Team-scoped REST API at /api/v1. Authenticate with `Authorization: Bearer egsk_live_...` or `X-API-Key`. Forks may register custom routes under /api/v1/tools/* (requires `tools:read` / `tools:write` scopes). Async tool jobs return a `job_id` — poll `GET .../{jobId}/results` until complete. See /docs/api-reference.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: dev@emailguard.co
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Emailguard
16
+ class EventsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # List notification events
23
+ # Returns recent notification delivery events for polling integrations. Use this to inspect what was sent and when without configuring a webhook receiver.
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [GetNotificationEventsResponse]
26
+ def api_v1_team_notifications_events_get(opts = {})
27
+ data, _status_code, _headers = api_v1_team_notifications_events_get_with_http_info(opts)
28
+ data
29
+ end
30
+
31
+ # List notification events
32
+ # Returns recent notification delivery events for polling integrations. Use this to inspect what was sent and when without configuring a webhook receiver.
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(GetNotificationEventsResponse, Integer, Hash)>] GetNotificationEventsResponse data, response status code and response headers
35
+ def api_v1_team_notifications_events_get_with_http_info(opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: EventsApi.api_v1_team_notifications_events_get ...'
38
+ end
39
+ # resource path
40
+ local_var_path = '/api/v1/team/notifications/events'
41
+
42
+ # query parameters
43
+ query_params = opts[:query_params] || {}
44
+
45
+ # header parameters
46
+ header_params = opts[:header_params] || {}
47
+ # HTTP header 'Accept' (if needed)
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
49
+
50
+ # form parameters
51
+ form_params = opts[:form_params] || {}
52
+
53
+ # http body (model)
54
+ post_body = opts[:debug_body]
55
+
56
+ # return_type
57
+ return_type = opts[:debug_return_type] || 'GetNotificationEventsResponse'
58
+
59
+ # auth_names
60
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
61
+
62
+ new_options = opts.merge(
63
+ :operation => :"EventsApi.api_v1_team_notifications_events_get",
64
+ :header_params => header_params,
65
+ :query_params => query_params,
66
+ :form_params => form_params,
67
+ :body => post_body,
68
+ :auth_names => auth_names,
69
+ :return_type => return_type
70
+ )
71
+
72
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
73
+ if @api_client.config.debugging
74
+ @api_client.config.logger.debug "API called: EventsApi#api_v1_team_notifications_events_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
75
+ end
76
+ return data, status_code, headers
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,210 @@
1
+ =begin
2
+ #EmailGuard Public API
3
+
4
+ #Team-scoped REST API at /api/v1. Authenticate with `Authorization: Bearer egsk_live_...` or `X-API-Key`. Forks may register custom routes under /api/v1/tools/* (requires `tools:read` / `tools:write` scopes). Async tool jobs return a `job_id` — poll `GET .../{jobId}/results` until complete. See /docs/api-reference.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: dev@emailguard.co
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Emailguard
16
+ class InvitesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # List pending team invites
23
+ # Returns invites that have not yet been accepted or expired. Each invite includes the target email, assigned role, and expiry time.
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [ListPublicTeamInvitesResponse]
26
+ def api_v1_team_members_invites_get(opts = {})
27
+ data, _status_code, _headers = api_v1_team_members_invites_get_with_http_info(opts)
28
+ data
29
+ end
30
+
31
+ # List pending team invites
32
+ # Returns invites that have not yet been accepted or expired. Each invite includes the target email, assigned role, and expiry time.
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(ListPublicTeamInvitesResponse, Integer, Hash)>] ListPublicTeamInvitesResponse data, response status code and response headers
35
+ def api_v1_team_members_invites_get_with_http_info(opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: InvitesApi.api_v1_team_members_invites_get ...'
38
+ end
39
+ # resource path
40
+ local_var_path = '/api/v1/team/members/invites'
41
+
42
+ # query parameters
43
+ query_params = opts[:query_params] || {}
44
+
45
+ # header parameters
46
+ header_params = opts[:header_params] || {}
47
+ # HTTP header 'Accept' (if needed)
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
49
+
50
+ # form parameters
51
+ form_params = opts[:form_params] || {}
52
+
53
+ # http body (model)
54
+ post_body = opts[:debug_body]
55
+
56
+ # return_type
57
+ return_type = opts[:debug_return_type] || 'ListPublicTeamInvitesResponse'
58
+
59
+ # auth_names
60
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
61
+
62
+ new_options = opts.merge(
63
+ :operation => :"InvitesApi.api_v1_team_members_invites_get",
64
+ :header_params => header_params,
65
+ :query_params => query_params,
66
+ :form_params => form_params,
67
+ :body => post_body,
68
+ :auth_names => auth_names,
69
+ :return_type => return_type
70
+ )
71
+
72
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
73
+ if @api_client.config.debugging
74
+ @api_client.config.logger.debug "API called: InvitesApi#api_v1_team_members_invites_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
75
+ end
76
+ return data, status_code, headers
77
+ end
78
+
79
+ # Cancel a pending invite
80
+ # Revokes a pending invite so it can no longer be accepted. The invite is identified by its UUID from the list invites response.
81
+ # @param invite_id [String] UUID of the pending invite to cancel
82
+ # @param [Hash] opts the optional parameters
83
+ # @return [MessageResponse]
84
+ def api_v1_team_members_invites_invite_id_delete(invite_id, opts = {})
85
+ data, _status_code, _headers = api_v1_team_members_invites_invite_id_delete_with_http_info(invite_id, opts)
86
+ data
87
+ end
88
+
89
+ # Cancel a pending invite
90
+ # Revokes a pending invite so it can no longer be accepted. The invite is identified by its UUID from the list invites response.
91
+ # @param invite_id [String] UUID of the pending invite to cancel
92
+ # @param [Hash] opts the optional parameters
93
+ # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
94
+ def api_v1_team_members_invites_invite_id_delete_with_http_info(invite_id, opts = {})
95
+ if @api_client.config.debugging
96
+ @api_client.config.logger.debug 'Calling API: InvitesApi.api_v1_team_members_invites_invite_id_delete ...'
97
+ end
98
+ # verify the required parameter 'invite_id' is set
99
+ if @api_client.config.client_side_validation && invite_id.nil?
100
+ fail ArgumentError, "Missing the required parameter 'invite_id' when calling InvitesApi.api_v1_team_members_invites_invite_id_delete"
101
+ end
102
+ # resource path
103
+ local_var_path = '/api/v1/team/members/invites/{inviteId}'.sub('{inviteId}', CGI.escape(invite_id.to_s))
104
+
105
+ # query parameters
106
+ query_params = opts[:query_params] || {}
107
+
108
+ # header parameters
109
+ header_params = opts[:header_params] || {}
110
+ # HTTP header 'Accept' (if needed)
111
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
112
+
113
+ # form parameters
114
+ form_params = opts[:form_params] || {}
115
+
116
+ # http body (model)
117
+ post_body = opts[:debug_body]
118
+
119
+ # return_type
120
+ return_type = opts[:debug_return_type] || 'MessageResponse'
121
+
122
+ # auth_names
123
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
124
+
125
+ new_options = opts.merge(
126
+ :operation => :"InvitesApi.api_v1_team_members_invites_invite_id_delete",
127
+ :header_params => header_params,
128
+ :query_params => query_params,
129
+ :form_params => form_params,
130
+ :body => post_body,
131
+ :auth_names => auth_names,
132
+ :return_type => return_type
133
+ )
134
+
135
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
136
+ if @api_client.config.debugging
137
+ @api_client.config.logger.debug "API called: InvitesApi#api_v1_team_members_invites_invite_id_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
138
+ end
139
+ return data, status_code, headers
140
+ end
141
+
142
+ # Invite a team member
143
+ # Sends an email invite to join the team with the specified role. The invitee must accept before they appear in the members list.
144
+ # @param invite_team_member_input [InviteTeamMemberInput] Invitee email and role to assign on acceptance
145
+ # @param [Hash] opts the optional parameters
146
+ # @return [MessageResponse]
147
+ def api_v1_team_members_invites_post(invite_team_member_input, opts = {})
148
+ data, _status_code, _headers = api_v1_team_members_invites_post_with_http_info(invite_team_member_input, opts)
149
+ data
150
+ end
151
+
152
+ # Invite a team member
153
+ # Sends an email invite to join the team with the specified role. The invitee must accept before they appear in the members list.
154
+ # @param invite_team_member_input [InviteTeamMemberInput] Invitee email and role to assign on acceptance
155
+ # @param [Hash] opts the optional parameters
156
+ # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
157
+ def api_v1_team_members_invites_post_with_http_info(invite_team_member_input, opts = {})
158
+ if @api_client.config.debugging
159
+ @api_client.config.logger.debug 'Calling API: InvitesApi.api_v1_team_members_invites_post ...'
160
+ end
161
+ # verify the required parameter 'invite_team_member_input' is set
162
+ if @api_client.config.client_side_validation && invite_team_member_input.nil?
163
+ fail ArgumentError, "Missing the required parameter 'invite_team_member_input' when calling InvitesApi.api_v1_team_members_invites_post"
164
+ end
165
+ # resource path
166
+ local_var_path = '/api/v1/team/members/invites'
167
+
168
+ # query parameters
169
+ query_params = opts[:query_params] || {}
170
+
171
+ # header parameters
172
+ header_params = opts[:header_params] || {}
173
+ # HTTP header 'Accept' (if needed)
174
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
175
+ # HTTP header 'Content-Type'
176
+ content_type = @api_client.select_header_content_type(['application/json'])
177
+ if !content_type.nil?
178
+ header_params['Content-Type'] = content_type
179
+ end
180
+
181
+ # form parameters
182
+ form_params = opts[:form_params] || {}
183
+
184
+ # http body (model)
185
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(invite_team_member_input)
186
+
187
+ # return_type
188
+ return_type = opts[:debug_return_type] || 'MessageResponse'
189
+
190
+ # auth_names
191
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
192
+
193
+ new_options = opts.merge(
194
+ :operation => :"InvitesApi.api_v1_team_members_invites_post",
195
+ :header_params => header_params,
196
+ :query_params => query_params,
197
+ :form_params => form_params,
198
+ :body => post_body,
199
+ :auth_names => auth_names,
200
+ :return_type => return_type
201
+ )
202
+
203
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
204
+ if @api_client.config.debugging
205
+ @api_client.config.logger.debug "API called: InvitesApi#api_v1_team_members_invites_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
206
+ end
207
+ return data, status_code, headers
208
+ end
209
+ end
210
+ end
@@ -0,0 +1,216 @@
1
+ =begin
2
+ #EmailGuard Public API
3
+
4
+ #Team-scoped REST API at /api/v1. Authenticate with `Authorization: Bearer egsk_live_...` or `X-API-Key`. Forks may register custom routes under /api/v1/tools/* (requires `tools:read` / `tools:write` scopes). Async tool jobs return a `job_id` — poll `GET .../{jobId}/results` until complete. See /docs/api-reference.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: dev@emailguard.co
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Emailguard
16
+ class MembersApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # List team members
23
+ # Returns every member of the team, including role, profile fields, and join timestamp. Use the `user_id` field when calling member update or remove routes.
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [ListPublicTeamMembersResponse]
26
+ def api_v1_team_members_get(opts = {})
27
+ data, _status_code, _headers = api_v1_team_members_get_with_http_info(opts)
28
+ data
29
+ end
30
+
31
+ # List team members
32
+ # Returns every member of the team, including role, profile fields, and join timestamp. Use the &#x60;user_id&#x60; field when calling member update or remove routes.
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(ListPublicTeamMembersResponse, Integer, Hash)>] ListPublicTeamMembersResponse data, response status code and response headers
35
+ def api_v1_team_members_get_with_http_info(opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: MembersApi.api_v1_team_members_get ...'
38
+ end
39
+ # resource path
40
+ local_var_path = '/api/v1/team/members'
41
+
42
+ # query parameters
43
+ query_params = opts[:query_params] || {}
44
+
45
+ # header parameters
46
+ header_params = opts[:header_params] || {}
47
+ # HTTP header 'Accept' (if needed)
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
49
+
50
+ # form parameters
51
+ form_params = opts[:form_params] || {}
52
+
53
+ # http body (model)
54
+ post_body = opts[:debug_body]
55
+
56
+ # return_type
57
+ return_type = opts[:debug_return_type] || 'ListPublicTeamMembersResponse'
58
+
59
+ # auth_names
60
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
61
+
62
+ new_options = opts.merge(
63
+ :operation => :"MembersApi.api_v1_team_members_get",
64
+ :header_params => header_params,
65
+ :query_params => query_params,
66
+ :form_params => form_params,
67
+ :body => post_body,
68
+ :auth_names => auth_names,
69
+ :return_type => return_type
70
+ )
71
+
72
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
73
+ if @api_client.config.debugging
74
+ @api_client.config.logger.debug "API called: MembersApi#api_v1_team_members_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
75
+ end
76
+ return data, status_code, headers
77
+ end
78
+
79
+ # Remove a team member
80
+ # Removes a user from the team. Identify the member by user account UUID in the path. The team owner cannot be removed through this endpoint.
81
+ # @param user_id [String] User account UUID of the member to remove
82
+ # @param [Hash] opts the optional parameters
83
+ # @return [MessageResponse]
84
+ def api_v1_team_members_user_id_delete(user_id, opts = {})
85
+ data, _status_code, _headers = api_v1_team_members_user_id_delete_with_http_info(user_id, opts)
86
+ data
87
+ end
88
+
89
+ # Remove a team member
90
+ # Removes a user from the team. Identify the member by user account UUID in the path. The team owner cannot be removed through this endpoint.
91
+ # @param user_id [String] User account UUID of the member to remove
92
+ # @param [Hash] opts the optional parameters
93
+ # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
94
+ def api_v1_team_members_user_id_delete_with_http_info(user_id, opts = {})
95
+ if @api_client.config.debugging
96
+ @api_client.config.logger.debug 'Calling API: MembersApi.api_v1_team_members_user_id_delete ...'
97
+ end
98
+ # verify the required parameter 'user_id' is set
99
+ if @api_client.config.client_side_validation && user_id.nil?
100
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling MembersApi.api_v1_team_members_user_id_delete"
101
+ end
102
+ # resource path
103
+ local_var_path = '/api/v1/team/members/{userId}'.sub('{userId}', CGI.escape(user_id.to_s))
104
+
105
+ # query parameters
106
+ query_params = opts[:query_params] || {}
107
+
108
+ # header parameters
109
+ header_params = opts[:header_params] || {}
110
+ # HTTP header 'Accept' (if needed)
111
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
112
+
113
+ # form parameters
114
+ form_params = opts[:form_params] || {}
115
+
116
+ # http body (model)
117
+ post_body = opts[:debug_body]
118
+
119
+ # return_type
120
+ return_type = opts[:debug_return_type] || 'MessageResponse'
121
+
122
+ # auth_names
123
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
124
+
125
+ new_options = opts.merge(
126
+ :operation => :"MembersApi.api_v1_team_members_user_id_delete",
127
+ :header_params => header_params,
128
+ :query_params => query_params,
129
+ :form_params => form_params,
130
+ :body => post_body,
131
+ :auth_names => auth_names,
132
+ :return_type => return_type
133
+ )
134
+
135
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
136
+ if @api_client.config.debugging
137
+ @api_client.config.logger.debug "API called: MembersApi#api_v1_team_members_user_id_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
138
+ end
139
+ return data, status_code, headers
140
+ end
141
+
142
+ # Update a team member role
143
+ # Changes a member's role or internal notes. Identify the member by user account UUID in the path (not the team membership record ID).
144
+ # @param user_id [String] User account UUID of the member to update
145
+ # @param update_team_member_input [UpdateTeamMemberInput] New role and/or notes for the member
146
+ # @param [Hash] opts the optional parameters
147
+ # @return [MessageResponse]
148
+ def api_v1_team_members_user_id_patch(user_id, update_team_member_input, opts = {})
149
+ data, _status_code, _headers = api_v1_team_members_user_id_patch_with_http_info(user_id, update_team_member_input, opts)
150
+ data
151
+ end
152
+
153
+ # Update a team member role
154
+ # Changes a member&#39;s role or internal notes. Identify the member by user account UUID in the path (not the team membership record ID).
155
+ # @param user_id [String] User account UUID of the member to update
156
+ # @param update_team_member_input [UpdateTeamMemberInput] New role and/or notes for the member
157
+ # @param [Hash] opts the optional parameters
158
+ # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
159
+ def api_v1_team_members_user_id_patch_with_http_info(user_id, update_team_member_input, opts = {})
160
+ if @api_client.config.debugging
161
+ @api_client.config.logger.debug 'Calling API: MembersApi.api_v1_team_members_user_id_patch ...'
162
+ end
163
+ # verify the required parameter 'user_id' is set
164
+ if @api_client.config.client_side_validation && user_id.nil?
165
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling MembersApi.api_v1_team_members_user_id_patch"
166
+ end
167
+ # verify the required parameter 'update_team_member_input' is set
168
+ if @api_client.config.client_side_validation && update_team_member_input.nil?
169
+ fail ArgumentError, "Missing the required parameter 'update_team_member_input' when calling MembersApi.api_v1_team_members_user_id_patch"
170
+ end
171
+ # resource path
172
+ local_var_path = '/api/v1/team/members/{userId}'.sub('{userId}', CGI.escape(user_id.to_s))
173
+
174
+ # query parameters
175
+ query_params = opts[:query_params] || {}
176
+
177
+ # header parameters
178
+ header_params = opts[:header_params] || {}
179
+ # HTTP header 'Accept' (if needed)
180
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
181
+ # HTTP header 'Content-Type'
182
+ content_type = @api_client.select_header_content_type(['application/json'])
183
+ if !content_type.nil?
184
+ header_params['Content-Type'] = content_type
185
+ end
186
+
187
+ # form parameters
188
+ form_params = opts[:form_params] || {}
189
+
190
+ # http body (model)
191
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_team_member_input)
192
+
193
+ # return_type
194
+ return_type = opts[:debug_return_type] || 'MessageResponse'
195
+
196
+ # auth_names
197
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
198
+
199
+ new_options = opts.merge(
200
+ :operation => :"MembersApi.api_v1_team_members_user_id_patch",
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(:PATCH, local_var_path, new_options)
210
+ if @api_client.config.debugging
211
+ @api_client.config.logger.debug "API called: MembersApi#api_v1_team_members_user_id_patch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
212
+ end
213
+ return data, status_code, headers
214
+ end
215
+ end
216
+ end