permit-sdk 0.0.1

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 (196) hide show
  1. checksums.yaml +7 -0
  2. data/lib/api/api.rb +25 -0
  3. data/lib/api/base.rb +26 -0
  4. data/lib/api/resources.rb +13 -0
  5. data/lib/api/tenants.rb +11 -0
  6. data/lib/api/users.rb +50 -0
  7. data/lib/api/utils.rb +9 -0
  8. data/lib/config.rb +23 -0
  9. data/lib/main.rb +49 -0
  10. data/lib/openapi_client/api/api_keys_api.rb +413 -0
  11. data/lib/openapi_client/api/audit_elements_data_api.rb +118 -0
  12. data/lib/openapi_client/api/audit_logs_api.rb +204 -0
  13. data/lib/openapi_client/api/authentication_api.rb +512 -0
  14. data/lib/openapi_client/api/condition_set_rules_api.rb +278 -0
  15. data/lib/openapi_client/api/condition_sets_api.rb +428 -0
  16. data/lib/openapi_client/api/decision_logs_api.rb +128 -0
  17. data/lib/openapi_client/api/decision_logs_ingress_api.rb +90 -0
  18. data/lib/openapi_client/api/default_api.rb +297 -0
  19. data/lib/openapi_client/api/elements_configs_api.rb +657 -0
  20. data/lib/openapi_client/api/environments_api.rb +462 -0
  21. data/lib/openapi_client/api/instructions_api.rb +91 -0
  22. data/lib/openapi_client/api/members_api.rb +354 -0
  23. data/lib/openapi_client/api/opal_data_api.rb +343 -0
  24. data/lib/openapi_client/api/organizations_api.rb +652 -0
  25. data/lib/openapi_client/api/policy_api.rb +138 -0
  26. data/lib/openapi_client/api/policy_decision_points_api.rb +382 -0
  27. data/lib/openapi_client/api/policy_git_repositories_api.rb +510 -0
  28. data/lib/openapi_client/api/projects_api.rb +365 -0
  29. data/lib/openapi_client/api/resource_actions_api.rb +455 -0
  30. data/lib/openapi_client/api/resource_attributes_api.rb +473 -0
  31. data/lib/openapi_client/api/resource_instances_api.rb +425 -0
  32. data/lib/openapi_client/api/resource_roles_api.rb +813 -0
  33. data/lib/openapi_client/api/resources_api.rb +514 -0
  34. data/lib/openapi_client/api/role_assignments_api.rb +278 -0
  35. data/lib/openapi_client/api/roles_api.rb +759 -0
  36. data/lib/openapi_client/api/tenants_api.rb +603 -0
  37. data/lib/openapi_client/api/user_attributes_api.rb +458 -0
  38. data/lib/openapi_client/api/users_api.rb +684 -0
  39. data/lib/openapi_client/api/users_elements_data_api.rb +638 -0
  40. data/lib/openapi_client/api_client.rb +392 -0
  41. data/lib/openapi_client/api_error.rb +57 -0
  42. data/lib/openapi_client/configuration.rb +280 -0
  43. data/lib/openapi_client/models/action_block_editable.rb +230 -0
  44. data/lib/openapi_client/models/action_block_read.rb +255 -0
  45. data/lib/openapi_client/models/action_object.rb +275 -0
  46. data/lib/openapi_client/models/actor.rb +57 -0
  47. data/lib/openapi_client/models/add_role_permissions.rb +227 -0
  48. data/lib/openapi_client/models/api_key_create.rb +269 -0
  49. data/lib/openapi_client/models/api_key_owner_type.rb +41 -0
  50. data/lib/openapi_client/models/api_key_read.rb +329 -0
  51. data/lib/openapi_client/models/api_key_scope_read.rb +245 -0
  52. data/lib/openapi_client/models/attribute_block_editable.rb +235 -0
  53. data/lib/openapi_client/models/attribute_block_read.rb +260 -0
  54. data/lib/openapi_client/models/attribute_type.rb +44 -0
  55. data/lib/openapi_client/models/attributes.rb +231 -0
  56. data/lib/openapi_client/models/audit_log.rb +415 -0
  57. data/lib/openapi_client/models/audit_log_objects.rb +282 -0
  58. data/lib/openapi_client/models/authn_me_api_key_read.rb +329 -0
  59. data/lib/openapi_client/models/authn_me_member_read.rb +352 -0
  60. data/lib/openapi_client/models/authn_me_read.rb +224 -0
  61. data/lib/openapi_client/models/authn_me_user_read.rb +440 -0
  62. data/lib/openapi_client/models/condition_set_create.rb +340 -0
  63. data/lib/openapi_client/models/condition_set_read.rb +409 -0
  64. data/lib/openapi_client/models/condition_set_rule_create.rb +279 -0
  65. data/lib/openapi_client/models/condition_set_rule_read.rb +360 -0
  66. data/lib/openapi_client/models/condition_set_rule_remove.rb +279 -0
  67. data/lib/openapi_client/models/condition_set_type.rb +40 -0
  68. data/lib/openapi_client/models/condition_set_update.rb +255 -0
  69. data/lib/openapi_client/models/data_source_config.rb +228 -0
  70. data/lib/openapi_client/models/data_source_entry.rb +272 -0
  71. data/lib/openapi_client/models/detailed_audit_log.rb +443 -0
  72. data/lib/openapi_client/models/dev_login.rb +225 -0
  73. data/lib/openapi_client/models/dummy_engine_model.rb +229 -0
  74. data/lib/openapi_client/models/elements_config_create.rb +319 -0
  75. data/lib/openapi_client/models/elements_config_read.rb +402 -0
  76. data/lib/openapi_client/models/elements_config_runtime_read.rb +238 -0
  77. data/lib/openapi_client/models/elements_config_update.rb +268 -0
  78. data/lib/openapi_client/models/elements_env_type_read.rb +242 -0
  79. data/lib/openapi_client/models/elements_env_type_update.rb +222 -0
  80. data/lib/openapi_client/models/elements_permission_level.rb +44 -0
  81. data/lib/openapi_client/models/elements_role_read.rb +378 -0
  82. data/lib/openapi_client/models/elements_type.rb +41 -0
  83. data/lib/openapi_client/models/elements_user_create.rb +295 -0
  84. data/lib/openapi_client/models/elements_user_role_create.rb +225 -0
  85. data/lib/openapi_client/models/elements_user_role_remove.rb +225 -0
  86. data/lib/openapi_client/models/embedded_login_request_output.rb +265 -0
  87. data/lib/openapi_client/models/engine.rb +39 -0
  88. data/lib/openapi_client/models/environment_create.rb +281 -0
  89. data/lib/openapi_client/models/environment_object.rb +295 -0
  90. data/lib/openapi_client/models/environment_read.rb +335 -0
  91. data/lib/openapi_client/models/environment_stats.rb +365 -0
  92. data/lib/openapi_client/models/environment_update.rb +240 -0
  93. data/lib/openapi_client/models/failed_invite.rb +238 -0
  94. data/lib/openapi_client/models/full_data.rb +258 -0
  95. data/lib/openapi_client/models/http_validation_error.rb +221 -0
  96. data/lib/openapi_client/models/identity_read.rb +300 -0
  97. data/lib/openapi_client/models/invite_attempt_result.rb +232 -0
  98. data/lib/openapi_client/models/invite_create.rb +240 -0
  99. data/lib/openapi_client/models/invite_read.rb +325 -0
  100. data/lib/openapi_client/models/invite_status.rb +42 -0
  101. data/lib/openapi_client/models/labels.rb +238 -0
  102. data/lib/openapi_client/models/language_instructions.rb +252 -0
  103. data/lib/openapi_client/models/location_inner.rb +230 -0
  104. data/lib/openapi_client/models/login_result.rb +259 -0
  105. data/lib/openapi_client/models/member_access_level.rb +41 -0
  106. data/lib/openapi_client/models/member_access_obj.rb +41 -0
  107. data/lib/openapi_client/models/multi_invite_result.rb +238 -0
  108. data/lib/openapi_client/models/onboarding_step.rb +46 -0
  109. data/lib/openapi_client/models/opa_decision_log.rb +288 -0
  110. data/lib/openapi_client/models/opa_engine_decision_log.rb +345 -0
  111. data/lib/openapi_client/models/opa_labels.rb +238 -0
  112. data/lib/openapi_client/models/opa_metrics.rb +273 -0
  113. data/lib/openapi_client/models/opal_client.rb +305 -0
  114. data/lib/openapi_client/models/org_member_read.rb +420 -0
  115. data/lib/openapi_client/models/org_member_update.rb +230 -0
  116. data/lib/openapi_client/models/organization_create.rb +292 -0
  117. data/lib/openapi_client/models/organization_object.rb +295 -0
  118. data/lib/openapi_client/models/organization_read.rb +295 -0
  119. data/lib/openapi_client/models/organization_read_with_api_key.rb +313 -0
  120. data/lib/openapi_client/models/organization_update.rb +247 -0
  121. data/lib/openapi_client/models/paginated_result_api_key_read.rb +285 -0
  122. data/lib/openapi_client/models/paginated_result_audit_log.rb +285 -0
  123. data/lib/openapi_client/models/paginated_result_elements_config_read.rb +285 -0
  124. data/lib/openapi_client/models/paginated_result_opa_decision_log.rb +285 -0
  125. data/lib/openapi_client/models/paginated_result_user_read.rb +285 -0
  126. data/lib/openapi_client/models/pdp.rb +259 -0
  127. data/lib/openapi_client/models/pdp_config_object.rb +258 -0
  128. data/lib/openapi_client/models/pdp_config_read.rb +292 -0
  129. data/lib/openapi_client/models/pdp_context.rb +291 -0
  130. data/lib/openapi_client/models/pdp_state.rb +224 -0
  131. data/lib/openapi_client/models/pdp_state_update.rb +238 -0
  132. data/lib/openapi_client/models/pdp_values.rb +252 -0
  133. data/lib/openapi_client/models/permission_level_role_read.rb +254 -0
  134. data/lib/openapi_client/models/policy_repo_create.rb +318 -0
  135. data/lib/openapi_client/models/policy_repo_read.rb +347 -0
  136. data/lib/openapi_client/models/policy_repo_status.rb +41 -0
  137. data/lib/openapi_client/models/programming_language.rb +43 -0
  138. data/lib/openapi_client/models/project_create.rb +318 -0
  139. data/lib/openapi_client/models/project_object.rb +295 -0
  140. data/lib/openapi_client/models/project_read.rb +357 -0
  141. data/lib/openapi_client/models/project_update.rb +250 -0
  142. data/lib/openapi_client/models/raw_data.rb +329 -0
  143. data/lib/openapi_client/models/relationship_tuple_object.rb +252 -0
  144. data/lib/openapi_client/models/remote_config.rb +256 -0
  145. data/lib/openapi_client/models/remove_role_permissions.rb +227 -0
  146. data/lib/openapi_client/models/resource_action_create.rb +271 -0
  147. data/lib/openapi_client/models/resource_action_read.rb +370 -0
  148. data/lib/openapi_client/models/resource_action_update.rb +230 -0
  149. data/lib/openapi_client/models/resource_attribute_create.rb +271 -0
  150. data/lib/openapi_client/models/resource_attribute_read.rb +370 -0
  151. data/lib/openapi_client/models/resource_attribute_update.rb +230 -0
  152. data/lib/openapi_client/models/resource_attributes.rb +238 -0
  153. data/lib/openapi_client/models/resource_create.rb +310 -0
  154. data/lib/openapi_client/models/resource_id.rb +230 -0
  155. data/lib/openapi_client/models/resource_instance_create.rb +281 -0
  156. data/lib/openapi_client/models/resource_instance_read.rb +375 -0
  157. data/lib/openapi_client/models/resource_instance_update.rb +220 -0
  158. data/lib/openapi_client/models/resource_read.rb +374 -0
  159. data/lib/openapi_client/models/resource_replace.rb +274 -0
  160. data/lib/openapi_client/models/resource_role_create.rb +295 -0
  161. data/lib/openapi_client/models/resource_role_read.rb +379 -0
  162. data/lib/openapi_client/models/resource_role_update.rb +254 -0
  163. data/lib/openapi_client/models/resource_type_object.rb +286 -0
  164. data/lib/openapi_client/models/resource_update.rb +264 -0
  165. data/lib/openapi_client/models/role_assignment_create.rb +255 -0
  166. data/lib/openapi_client/models/role_assignment_read.rb +375 -0
  167. data/lib/openapi_client/models/role_assignment_remove.rb +255 -0
  168. data/lib/openapi_client/models/role_block.rb +244 -0
  169. data/lib/openapi_client/models/role_create.rb +295 -0
  170. data/lib/openapi_client/models/role_data.rb +221 -0
  171. data/lib/openapi_client/models/role_read.rb +364 -0
  172. data/lib/openapi_client/models/role_update.rb +254 -0
  173. data/lib/openapi_client/models/settings.rb +231 -0
  174. data/lib/openapi_client/models/ssh_auth_data.rb +295 -0
  175. data/lib/openapi_client/models/statistics.rb +389 -0
  176. data/lib/openapi_client/models/tenant_create.rb +281 -0
  177. data/lib/openapi_client/models/tenant_object.rb +284 -0
  178. data/lib/openapi_client/models/tenant_read.rb +365 -0
  179. data/lib/openapi_client/models/tenant_update.rb +240 -0
  180. data/lib/openapi_client/models/user_create.rb +286 -0
  181. data/lib/openapi_client/models/user_data.rb +232 -0
  182. data/lib/openapi_client/models/user_login_request_input.rb +240 -0
  183. data/lib/openapi_client/models/user_object.rb +313 -0
  184. data/lib/openapi_client/models/user_read.rb +336 -0
  185. data/lib/openapi_client/models/user_role.rb +240 -0
  186. data/lib/openapi_client/models/user_role_create.rb +240 -0
  187. data/lib/openapi_client/models/user_role_remove.rb +240 -0
  188. data/lib/openapi_client/models/user_update.rb +250 -0
  189. data/lib/openapi_client/models/validation_error.rb +254 -0
  190. data/lib/openapi_client/models/webhook_create.rb +235 -0
  191. data/lib/openapi_client/models/webhook_read.rb +315 -0
  192. data/lib/openapi_client/models/webhook_update.rb +230 -0
  193. data/lib/openapi_client/version.rb +15 -0
  194. data/lib/openapi_client.rb +220 -0
  195. data/lib/permit.rb +58 -0
  196. metadata +251 -0
@@ -0,0 +1,652 @@
1
+ =begin
2
+ #Permit.io API
3
+
4
+ # Authorization as a service
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module OpenapiClient
16
+ class OrganizationsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Cancel Invite
23
+ # Cancels an invite that was sent to a new member.
24
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \"slug\").
25
+ # @param invite_id [String] Id of the invite to cancel
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [nil]
28
+ def cancel_invite(org_id, invite_id, opts = {})
29
+ cancel_invite_with_http_info(org_id, invite_id, opts)
30
+ nil
31
+ end
32
+
33
+ # Cancel Invite
34
+ # Cancels an invite that was sent to a new member.
35
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \"slug\").
36
+ # @param invite_id [String] Id of the invite to cancel
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
39
+ def cancel_invite_with_http_info(org_id, invite_id, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.cancel_invite ...'
42
+ end
43
+ # verify the required parameter 'org_id' is set
44
+ if @api_client.config.client_side_validation && org_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'org_id' when calling OrganizationsApi.cancel_invite"
46
+ end
47
+ # verify the required parameter 'invite_id' is set
48
+ if @api_client.config.client_side_validation && invite_id.nil?
49
+ fail ArgumentError, "Missing the required parameter 'invite_id' when calling OrganizationsApi.cancel_invite"
50
+ end
51
+ # resource path
52
+ local_var_path = '/v2/orgs/{org_id}/invites/{invite_id}'.sub('{' + 'org_id' + '}', CGI.escape(org_id.to_s)).sub('{' + 'invite_id' + '}', CGI.escape(invite_id.to_s))
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
61
+
62
+ # form parameters
63
+ form_params = opts[:form_params] || {}
64
+
65
+ # http body (model)
66
+ post_body = opts[:debug_body]
67
+
68
+ # return_type
69
+ return_type = opts[:debug_return_type]
70
+
71
+ # auth_names
72
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
73
+
74
+ new_options = opts.merge(
75
+ :operation => :"OrganizationsApi.cancel_invite",
76
+ :header_params => header_params,
77
+ :query_params => query_params,
78
+ :form_params => form_params,
79
+ :body => post_body,
80
+ :auth_names => auth_names,
81
+ :return_type => return_type
82
+ )
83
+
84
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
85
+ if @api_client.config.debugging
86
+ @api_client.config.logger.debug "API called: OrganizationsApi#cancel_invite\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
87
+ end
88
+ return data, status_code, headers
89
+ end
90
+
91
+ # Create Organization
92
+ # Creates a new organization that will be owned by the authenticated actor (i.e: human team member or api key).
93
+ # @param organization_create [OrganizationCreate]
94
+ # @param [Hash] opts the optional parameters
95
+ # @return [OrganizationReadWithAPIKey]
96
+ def create_organization(organization_create, opts = {})
97
+ data, _status_code, _headers = create_organization_with_http_info(organization_create, opts)
98
+ data
99
+ end
100
+
101
+ # Create Organization
102
+ # Creates a new organization that will be owned by the authenticated actor (i.e: human team member or api key).
103
+ # @param organization_create [OrganizationCreate]
104
+ # @param [Hash] opts the optional parameters
105
+ # @return [Array<(OrganizationReadWithAPIKey, Integer, Hash)>] OrganizationReadWithAPIKey data, response status code and response headers
106
+ def create_organization_with_http_info(organization_create, opts = {})
107
+ if @api_client.config.debugging
108
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.create_organization ...'
109
+ end
110
+ # verify the required parameter 'organization_create' is set
111
+ if @api_client.config.client_side_validation && organization_create.nil?
112
+ fail ArgumentError, "Missing the required parameter 'organization_create' when calling OrganizationsApi.create_organization"
113
+ end
114
+ # resource path
115
+ local_var_path = '/v2/orgs'
116
+
117
+ # query parameters
118
+ query_params = opts[:query_params] || {}
119
+
120
+ # header parameters
121
+ header_params = opts[:header_params] || {}
122
+ # HTTP header 'Accept' (if needed)
123
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
124
+ # HTTP header 'Content-Type'
125
+ content_type = @api_client.select_header_content_type(['application/json'])
126
+ if !content_type.nil?
127
+ header_params['Content-Type'] = content_type
128
+ end
129
+
130
+ # form parameters
131
+ form_params = opts[:form_params] || {}
132
+
133
+ # http body (model)
134
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(organization_create)
135
+
136
+ # return_type
137
+ return_type = opts[:debug_return_type] || 'OrganizationReadWithAPIKey'
138
+
139
+ # auth_names
140
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
141
+
142
+ new_options = opts.merge(
143
+ :operation => :"OrganizationsApi.create_organization",
144
+ :header_params => header_params,
145
+ :query_params => query_params,
146
+ :form_params => form_params,
147
+ :body => post_body,
148
+ :auth_names => auth_names,
149
+ :return_type => return_type
150
+ )
151
+
152
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
153
+ if @api_client.config.debugging
154
+ @api_client.config.logger.debug "API called: OrganizationsApi#create_organization\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
155
+ end
156
+ return data, status_code, headers
157
+ end
158
+
159
+ # Delete Organization
160
+ # Deletes an organization (Permit.io account) and all its related data.
161
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
162
+ # @param [Hash] opts the optional parameters
163
+ # @return [nil]
164
+ def delete_organization(org_id, opts = {})
165
+ delete_organization_with_http_info(org_id, opts)
166
+ nil
167
+ end
168
+
169
+ # Delete Organization
170
+ # Deletes an organization (Permit.io account) and all its related data.
171
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
172
+ # @param [Hash] opts the optional parameters
173
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
174
+ def delete_organization_with_http_info(org_id, opts = {})
175
+ if @api_client.config.debugging
176
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.delete_organization ...'
177
+ end
178
+ # verify the required parameter 'org_id' is set
179
+ if @api_client.config.client_side_validation && org_id.nil?
180
+ fail ArgumentError, "Missing the required parameter 'org_id' when calling OrganizationsApi.delete_organization"
181
+ end
182
+ # resource path
183
+ local_var_path = '/v2/orgs/{org_id}'.sub('{' + 'org_id' + '}', CGI.escape(org_id.to_s))
184
+
185
+ # query parameters
186
+ query_params = opts[:query_params] || {}
187
+
188
+ # header parameters
189
+ header_params = opts[:header_params] || {}
190
+ # HTTP header 'Accept' (if needed)
191
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
192
+
193
+ # form parameters
194
+ form_params = opts[:form_params] || {}
195
+
196
+ # http body (model)
197
+ post_body = opts[:debug_body]
198
+
199
+ # return_type
200
+ return_type = opts[:debug_return_type]
201
+
202
+ # auth_names
203
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
204
+
205
+ new_options = opts.merge(
206
+ :operation => :"OrganizationsApi.delete_organization",
207
+ :header_params => header_params,
208
+ :query_params => query_params,
209
+ :form_params => form_params,
210
+ :body => post_body,
211
+ :auth_names => auth_names,
212
+ :return_type => return_type
213
+ )
214
+
215
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
216
+ if @api_client.config.debugging
217
+ @api_client.config.logger.debug "API called: OrganizationsApi#delete_organization\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
218
+ end
219
+ return data, status_code, headers
220
+ end
221
+
222
+ # Get Active Organization
223
+ # Gets a single organization (Permit.io account) matching the given org_id, if such org exists and can be accessed by the authenticated actor.
224
+ # @param [Hash] opts the optional parameters
225
+ # @return [OrganizationRead]
226
+ def get_active_organization(opts = {})
227
+ data, _status_code, _headers = get_active_organization_with_http_info(opts)
228
+ data
229
+ end
230
+
231
+ # Get Active Organization
232
+ # Gets a single organization (Permit.io account) matching the given org_id, if such org exists and can be accessed by the authenticated actor.
233
+ # @param [Hash] opts the optional parameters
234
+ # @return [Array<(OrganizationRead, Integer, Hash)>] OrganizationRead data, response status code and response headers
235
+ def get_active_organization_with_http_info(opts = {})
236
+ if @api_client.config.debugging
237
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.get_active_organization ...'
238
+ end
239
+ # resource path
240
+ local_var_path = '/v2/orgs/active/org'
241
+
242
+ # query parameters
243
+ query_params = opts[:query_params] || {}
244
+
245
+ # header parameters
246
+ header_params = opts[:header_params] || {}
247
+ # HTTP header 'Accept' (if needed)
248
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
249
+
250
+ # form parameters
251
+ form_params = opts[:form_params] || {}
252
+
253
+ # http body (model)
254
+ post_body = opts[:debug_body]
255
+
256
+ # return_type
257
+ return_type = opts[:debug_return_type] || 'OrganizationRead'
258
+
259
+ # auth_names
260
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
261
+
262
+ new_options = opts.merge(
263
+ :operation => :"OrganizationsApi.get_active_organization",
264
+ :header_params => header_params,
265
+ :query_params => query_params,
266
+ :form_params => form_params,
267
+ :body => post_body,
268
+ :auth_names => auth_names,
269
+ :return_type => return_type
270
+ )
271
+
272
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
273
+ if @api_client.config.debugging
274
+ @api_client.config.logger.debug "API called: OrganizationsApi#get_active_organization\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
275
+ end
276
+ return data, status_code, headers
277
+ end
278
+
279
+ # Get Organization
280
+ # Gets a single organization (Permit.io account) matching the given org_id, if such org exists and can be accessed by the authenticated actor.
281
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
282
+ # @param [Hash] opts the optional parameters
283
+ # @return [OrganizationRead]
284
+ def get_organization(org_id, opts = {})
285
+ data, _status_code, _headers = get_organization_with_http_info(org_id, opts)
286
+ data
287
+ end
288
+
289
+ # Get Organization
290
+ # Gets a single organization (Permit.io account) matching the given org_id, if such org exists and can be accessed by the authenticated actor.
291
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
292
+ # @param [Hash] opts the optional parameters
293
+ # @return [Array<(OrganizationRead, Integer, Hash)>] OrganizationRead data, response status code and response headers
294
+ def get_organization_with_http_info(org_id, opts = {})
295
+ if @api_client.config.debugging
296
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.get_organization ...'
297
+ end
298
+ # verify the required parameter 'org_id' is set
299
+ if @api_client.config.client_side_validation && org_id.nil?
300
+ fail ArgumentError, "Missing the required parameter 'org_id' when calling OrganizationsApi.get_organization"
301
+ end
302
+ # resource path
303
+ local_var_path = '/v2/orgs/{org_id}'.sub('{' + 'org_id' + '}', CGI.escape(org_id.to_s))
304
+
305
+ # query parameters
306
+ query_params = opts[:query_params] || {}
307
+
308
+ # header parameters
309
+ header_params = opts[:header_params] || {}
310
+ # HTTP header 'Accept' (if needed)
311
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
312
+
313
+ # form parameters
314
+ form_params = opts[:form_params] || {}
315
+
316
+ # http body (model)
317
+ post_body = opts[:debug_body]
318
+
319
+ # return_type
320
+ return_type = opts[:debug_return_type] || 'OrganizationRead'
321
+
322
+ # auth_names
323
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
324
+
325
+ new_options = opts.merge(
326
+ :operation => :"OrganizationsApi.get_organization",
327
+ :header_params => header_params,
328
+ :query_params => query_params,
329
+ :form_params => form_params,
330
+ :body => post_body,
331
+ :auth_names => auth_names,
332
+ :return_type => return_type
333
+ )
334
+
335
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
336
+ if @api_client.config.debugging
337
+ @api_client.config.logger.debug "API called: OrganizationsApi#get_organization\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
338
+ end
339
+ return data, status_code, headers
340
+ end
341
+
342
+ # Invite Members To Organization
343
+ # Invite new members into the organization.
344
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
345
+ # @param invite_create [Array<InviteCreate>]
346
+ # @param [Hash] opts the optional parameters
347
+ # @option opts [String] :inviter_name
348
+ # @option opts [String] :inviter_email
349
+ # @return [MultiInviteResult]
350
+ def invite_members_to_organization(org_id, invite_create, opts = {})
351
+ data, _status_code, _headers = invite_members_to_organization_with_http_info(org_id, invite_create, opts)
352
+ data
353
+ end
354
+
355
+ # Invite Members To Organization
356
+ # Invite new members into the organization.
357
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
358
+ # @param invite_create [Array<InviteCreate>]
359
+ # @param [Hash] opts the optional parameters
360
+ # @option opts [String] :inviter_name
361
+ # @option opts [String] :inviter_email
362
+ # @return [Array<(MultiInviteResult, Integer, Hash)>] MultiInviteResult data, response status code and response headers
363
+ def invite_members_to_organization_with_http_info(org_id, invite_create, opts = {})
364
+ if @api_client.config.debugging
365
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.invite_members_to_organization ...'
366
+ end
367
+ # verify the required parameter 'org_id' is set
368
+ if @api_client.config.client_side_validation && org_id.nil?
369
+ fail ArgumentError, "Missing the required parameter 'org_id' when calling OrganizationsApi.invite_members_to_organization"
370
+ end
371
+ # verify the required parameter 'invite_create' is set
372
+ if @api_client.config.client_side_validation && invite_create.nil?
373
+ fail ArgumentError, "Missing the required parameter 'invite_create' when calling OrganizationsApi.invite_members_to_organization"
374
+ end
375
+ # resource path
376
+ local_var_path = '/v2/orgs/{org_id}/invites'.sub('{' + 'org_id' + '}', CGI.escape(org_id.to_s))
377
+
378
+ # query parameters
379
+ query_params = opts[:query_params] || {}
380
+ query_params[:'inviter_name'] = opts[:'inviter_name'] if !opts[:'inviter_name'].nil?
381
+ query_params[:'inviter_email'] = opts[:'inviter_email'] if !opts[:'inviter_email'].nil?
382
+
383
+ # header parameters
384
+ header_params = opts[:header_params] || {}
385
+ # HTTP header 'Accept' (if needed)
386
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
387
+ # HTTP header 'Content-Type'
388
+ content_type = @api_client.select_header_content_type(['application/json'])
389
+ if !content_type.nil?
390
+ header_params['Content-Type'] = content_type
391
+ end
392
+
393
+ # form parameters
394
+ form_params = opts[:form_params] || {}
395
+
396
+ # http body (model)
397
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(invite_create)
398
+
399
+ # return_type
400
+ return_type = opts[:debug_return_type] || 'MultiInviteResult'
401
+
402
+ # auth_names
403
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
404
+
405
+ new_options = opts.merge(
406
+ :operation => :"OrganizationsApi.invite_members_to_organization",
407
+ :header_params => header_params,
408
+ :query_params => query_params,
409
+ :form_params => form_params,
410
+ :body => post_body,
411
+ :auth_names => auth_names,
412
+ :return_type => return_type
413
+ )
414
+
415
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
416
+ if @api_client.config.debugging
417
+ @api_client.config.logger.debug "API called: OrganizationsApi#invite_members_to_organization\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
418
+ end
419
+ return data, status_code, headers
420
+ end
421
+
422
+ # List Organization Invites
423
+ # Lists pending organization invites
424
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
425
+ # @param [Hash] opts the optional parameters
426
+ # @option opts [Integer] :page Page number of the results to fetch, starting at 1. (default to 1)
427
+ # @option opts [Integer] :per_page The number of results per page (max 100). (default to 30)
428
+ # @return [Array<InviteRead>]
429
+ def list_organization_invites(org_id, opts = {})
430
+ data, _status_code, _headers = list_organization_invites_with_http_info(org_id, opts)
431
+ data
432
+ end
433
+
434
+ # List Organization Invites
435
+ # Lists pending organization invites
436
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
437
+ # @param [Hash] opts the optional parameters
438
+ # @option opts [Integer] :page Page number of the results to fetch, starting at 1. (default to 1)
439
+ # @option opts [Integer] :per_page The number of results per page (max 100). (default to 30)
440
+ # @return [Array<(Array<InviteRead>, Integer, Hash)>] Array<InviteRead> data, response status code and response headers
441
+ def list_organization_invites_with_http_info(org_id, opts = {})
442
+ if @api_client.config.debugging
443
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.list_organization_invites ...'
444
+ end
445
+ # verify the required parameter 'org_id' is set
446
+ if @api_client.config.client_side_validation && org_id.nil?
447
+ fail ArgumentError, "Missing the required parameter 'org_id' when calling OrganizationsApi.list_organization_invites"
448
+ end
449
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
450
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling OrganizationsApi.list_organization_invites, must be greater than or equal to 1.'
451
+ end
452
+
453
+ if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] > 100
454
+ fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling OrganizationsApi.list_organization_invites, must be smaller than or equal to 100.'
455
+ end
456
+
457
+ if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] < 1
458
+ fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling OrganizationsApi.list_organization_invites, must be greater than or equal to 1.'
459
+ end
460
+
461
+ # resource path
462
+ local_var_path = '/v2/orgs/{org_id}/invites'.sub('{' + 'org_id' + '}', CGI.escape(org_id.to_s))
463
+
464
+ # query parameters
465
+ query_params = opts[:query_params] || {}
466
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
467
+ query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
468
+
469
+ # header parameters
470
+ header_params = opts[:header_params] || {}
471
+ # HTTP header 'Accept' (if needed)
472
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
473
+
474
+ # form parameters
475
+ form_params = opts[:form_params] || {}
476
+
477
+ # http body (model)
478
+ post_body = opts[:debug_body]
479
+
480
+ # return_type
481
+ return_type = opts[:debug_return_type] || 'Array<InviteRead>'
482
+
483
+ # auth_names
484
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
485
+
486
+ new_options = opts.merge(
487
+ :operation => :"OrganizationsApi.list_organization_invites",
488
+ :header_params => header_params,
489
+ :query_params => query_params,
490
+ :form_params => form_params,
491
+ :body => post_body,
492
+ :auth_names => auth_names,
493
+ :return_type => return_type
494
+ )
495
+
496
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
497
+ if @api_client.config.debugging
498
+ @api_client.config.logger.debug "API called: OrganizationsApi#list_organization_invites\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
499
+ end
500
+ return data, status_code, headers
501
+ end
502
+
503
+ # List Organizations
504
+ # Lists all the organizations that can be accessed by the authenticated actor (i.e: human team member or api key).
505
+ # @param [Hash] opts the optional parameters
506
+ # @option opts [Integer] :page Page number of the results to fetch, starting at 1. (default to 1)
507
+ # @option opts [Integer] :per_page The number of results per page (max 100). (default to 30)
508
+ # @return [Array<OrganizationRead>]
509
+ def list_organizations(opts = {})
510
+ data, _status_code, _headers = list_organizations_with_http_info(opts)
511
+ data
512
+ end
513
+
514
+ # List Organizations
515
+ # Lists all the organizations that can be accessed by the authenticated actor (i.e: human team member or api key).
516
+ # @param [Hash] opts the optional parameters
517
+ # @option opts [Integer] :page Page number of the results to fetch, starting at 1. (default to 1)
518
+ # @option opts [Integer] :per_page The number of results per page (max 100). (default to 30)
519
+ # @return [Array<(Array<OrganizationRead>, Integer, Hash)>] Array<OrganizationRead> data, response status code and response headers
520
+ def list_organizations_with_http_info(opts = {})
521
+ if @api_client.config.debugging
522
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.list_organizations ...'
523
+ end
524
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
525
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling OrganizationsApi.list_organizations, must be greater than or equal to 1.'
526
+ end
527
+
528
+ if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] > 100
529
+ fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling OrganizationsApi.list_organizations, must be smaller than or equal to 100.'
530
+ end
531
+
532
+ if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] < 1
533
+ fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling OrganizationsApi.list_organizations, must be greater than or equal to 1.'
534
+ end
535
+
536
+ # resource path
537
+ local_var_path = '/v2/orgs'
538
+
539
+ # query parameters
540
+ query_params = opts[:query_params] || {}
541
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
542
+ query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
543
+
544
+ # header parameters
545
+ header_params = opts[:header_params] || {}
546
+ # HTTP header 'Accept' (if needed)
547
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
548
+
549
+ # form parameters
550
+ form_params = opts[:form_params] || {}
551
+
552
+ # http body (model)
553
+ post_body = opts[:debug_body]
554
+
555
+ # return_type
556
+ return_type = opts[:debug_return_type] || 'Array<OrganizationRead>'
557
+
558
+ # auth_names
559
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
560
+
561
+ new_options = opts.merge(
562
+ :operation => :"OrganizationsApi.list_organizations",
563
+ :header_params => header_params,
564
+ :query_params => query_params,
565
+ :form_params => form_params,
566
+ :body => post_body,
567
+ :auth_names => auth_names,
568
+ :return_type => return_type
569
+ )
570
+
571
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
572
+ if @api_client.config.debugging
573
+ @api_client.config.logger.debug "API called: OrganizationsApi#list_organizations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
574
+ end
575
+ return data, status_code, headers
576
+ end
577
+
578
+ # Update Organization
579
+ # Updates the organization's profile.
580
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
581
+ # @param organization_update [OrganizationUpdate]
582
+ # @param [Hash] opts the optional parameters
583
+ # @return [OrganizationRead]
584
+ def update_organization(org_id, organization_update, opts = {})
585
+ data, _status_code, _headers = update_organization_with_http_info(org_id, organization_update, opts)
586
+ data
587
+ end
588
+
589
+ # Update Organization
590
+ # Updates the organization&#39;s profile.
591
+ # @param org_id [String] Either the unique id of the organization, or the URL-friendly key of the organization (i.e: the \&quot;slug\&quot;).
592
+ # @param organization_update [OrganizationUpdate]
593
+ # @param [Hash] opts the optional parameters
594
+ # @return [Array<(OrganizationRead, Integer, Hash)>] OrganizationRead data, response status code and response headers
595
+ def update_organization_with_http_info(org_id, organization_update, opts = {})
596
+ if @api_client.config.debugging
597
+ @api_client.config.logger.debug 'Calling API: OrganizationsApi.update_organization ...'
598
+ end
599
+ # verify the required parameter 'org_id' is set
600
+ if @api_client.config.client_side_validation && org_id.nil?
601
+ fail ArgumentError, "Missing the required parameter 'org_id' when calling OrganizationsApi.update_organization"
602
+ end
603
+ # verify the required parameter 'organization_update' is set
604
+ if @api_client.config.client_side_validation && organization_update.nil?
605
+ fail ArgumentError, "Missing the required parameter 'organization_update' when calling OrganizationsApi.update_organization"
606
+ end
607
+ # resource path
608
+ local_var_path = '/v2/orgs/{org_id}'.sub('{' + 'org_id' + '}', CGI.escape(org_id.to_s))
609
+
610
+ # query parameters
611
+ query_params = opts[:query_params] || {}
612
+
613
+ # header parameters
614
+ header_params = opts[:header_params] || {}
615
+ # HTTP header 'Accept' (if needed)
616
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
617
+ # HTTP header 'Content-Type'
618
+ content_type = @api_client.select_header_content_type(['application/json'])
619
+ if !content_type.nil?
620
+ header_params['Content-Type'] = content_type
621
+ end
622
+
623
+ # form parameters
624
+ form_params = opts[:form_params] || {}
625
+
626
+ # http body (model)
627
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(organization_update)
628
+
629
+ # return_type
630
+ return_type = opts[:debug_return_type] || 'OrganizationRead'
631
+
632
+ # auth_names
633
+ auth_names = opts[:debug_auth_names] || ['HTTPBearer']
634
+
635
+ new_options = opts.merge(
636
+ :operation => :"OrganizationsApi.update_organization",
637
+ :header_params => header_params,
638
+ :query_params => query_params,
639
+ :form_params => form_params,
640
+ :body => post_body,
641
+ :auth_names => auth_names,
642
+ :return_type => return_type
643
+ )
644
+
645
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
646
+ if @api_client.config.debugging
647
+ @api_client.config.logger.debug "API called: OrganizationsApi#update_organization\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
648
+ end
649
+ return data, status_code, headers
650
+ end
651
+ end
652
+ end