nightona_api_client 0.191.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 (219) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +39 -0
  3. data/.openapi-generator/FILES +212 -0
  4. data/.openapi-generator/VERSION +1 -0
  5. data/.openapi-generator-ignore +31 -0
  6. data/.rspec +2 -0
  7. data/.rubocop.yml +148 -0
  8. data/Rakefile +10 -0
  9. data/fix-gemspec.sh +11 -0
  10. data/lib/nightona_api_client/api/admin_api.rb +1449 -0
  11. data/lib/nightona_api_client/api/api_keys_api.rb +401 -0
  12. data/lib/nightona_api_client/api/audit_api.rb +110 -0
  13. data/lib/nightona_api_client/api/config_api.rb +77 -0
  14. data/lib/nightona_api_client/api/docker_registry_api.rb +411 -0
  15. data/lib/nightona_api_client/api/health_api.rb +126 -0
  16. data/lib/nightona_api_client/api/jobs_api.rb +299 -0
  17. data/lib/nightona_api_client/api/object_storage_api.rb +80 -0
  18. data/lib/nightona_api_client/api/organizations_api.rb +2615 -0
  19. data/lib/nightona_api_client/api/preview_api.rb +278 -0
  20. data/lib/nightona_api_client/api/regions_api.rb +77 -0
  21. data/lib/nightona_api_client/api/runners_api.rb +711 -0
  22. data/lib/nightona_api_client/api/sandbox_api.rb +3064 -0
  23. data/lib/nightona_api_client/api/snapshots_api.rb +567 -0
  24. data/lib/nightona_api_client/api/toolbox_api.rb +5108 -0
  25. data/lib/nightona_api_client/api/users_api.rb +316 -0
  26. data/lib/nightona_api_client/api/volumes_api.rb +342 -0
  27. data/lib/nightona_api_client/api/webhooks_api.rb +276 -0
  28. data/lib/nightona_api_client/api_client.rb +397 -0
  29. data/lib/nightona_api_client/api_error.rb +58 -0
  30. data/lib/nightona_api_client/api_model_base.rb +88 -0
  31. data/lib/nightona_api_client/configuration.rb +309 -0
  32. data/lib/nightona_api_client/models/account_provider.rb +190 -0
  33. data/lib/nightona_api_client/models/admin_create_runner.rb +326 -0
  34. data/lib/nightona_api_client/models/admin_get_webhook_status200_response.rb +147 -0
  35. data/lib/nightona_api_client/models/announcement.rb +175 -0
  36. data/lib/nightona_api_client/models/api_key_list.rb +313 -0
  37. data/lib/nightona_api_client/models/api_key_response.rb +273 -0
  38. data/lib/nightona_api_client/models/audit_log.rb +369 -0
  39. data/lib/nightona_api_client/models/build_info.rb +241 -0
  40. data/lib/nightona_api_client/models/command.rb +202 -0
  41. data/lib/nightona_api_client/models/completion_context.rb +173 -0
  42. data/lib/nightona_api_client/models/completion_item.rb +218 -0
  43. data/lib/nightona_api_client/models/completion_list.rb +192 -0
  44. data/lib/nightona_api_client/models/compressed_screenshot_response.rb +185 -0
  45. data/lib/nightona_api_client/models/computer_use_start_response.rb +192 -0
  46. data/lib/nightona_api_client/models/computer_use_status_response.rb +189 -0
  47. data/lib/nightona_api_client/models/computer_use_stop_response.rb +192 -0
  48. data/lib/nightona_api_client/models/create_api_key.rb +217 -0
  49. data/lib/nightona_api_client/models/create_build_info.rb +177 -0
  50. data/lib/nightona_api_client/models/create_docker_registry.rb +256 -0
  51. data/lib/nightona_api_client/models/create_linked_account.rb +192 -0
  52. data/lib/nightona_api_client/models/create_organization.rb +192 -0
  53. data/lib/nightona_api_client/models/create_organization_invitation.rb +255 -0
  54. data/lib/nightona_api_client/models/create_organization_quota.rb +219 -0
  55. data/lib/nightona_api_client/models/create_organization_region_quota.rb +372 -0
  56. data/lib/nightona_api_client/models/create_organization_role.rb +233 -0
  57. data/lib/nightona_api_client/models/create_region.rb +198 -0
  58. data/lib/nightona_api_client/models/create_region_response.rb +209 -0
  59. data/lib/nightona_api_client/models/create_runner.rb +202 -0
  60. data/lib/nightona_api_client/models/create_runner_response.rb +192 -0
  61. data/lib/nightona_api_client/models/create_sandbox.rb +356 -0
  62. data/lib/nightona_api_client/models/create_sandbox_snapshot.rb +177 -0
  63. data/lib/nightona_api_client/models/create_session_request.rb +165 -0
  64. data/lib/nightona_api_client/models/create_snapshot.rb +291 -0
  65. data/lib/nightona_api_client/models/create_user.rb +269 -0
  66. data/lib/nightona_api_client/models/create_volume.rb +164 -0
  67. data/lib/nightona_api_client/models/display_info_response.rb +167 -0
  68. data/lib/nightona_api_client/models/docker_registry.rb +378 -0
  69. data/lib/nightona_api_client/models/download_files.rb +167 -0
  70. data/lib/nightona_api_client/models/execute_request.rb +184 -0
  71. data/lib/nightona_api_client/models/execute_response.rb +192 -0
  72. data/lib/nightona_api_client/models/file_info.rb +346 -0
  73. data/lib/nightona_api_client/models/file_status.rb +242 -0
  74. data/lib/nightona_api_client/models/fork_sandbox.rb +148 -0
  75. data/lib/nightona_api_client/models/git_add_request.rb +193 -0
  76. data/lib/nightona_api_client/models/git_branch_request.rb +190 -0
  77. data/lib/nightona_api_client/models/git_checkout_request.rb +190 -0
  78. data/lib/nightona_api_client/models/git_clone_request.rb +226 -0
  79. data/lib/nightona_api_client/models/git_commit_info.rb +268 -0
  80. data/lib/nightona_api_client/models/git_commit_request.rb +254 -0
  81. data/lib/nightona_api_client/models/git_commit_response.rb +164 -0
  82. data/lib/nightona_api_client/models/git_delete_branch_request.rb +190 -0
  83. data/lib/nightona_api_client/models/git_repo_request.rb +182 -0
  84. data/lib/nightona_api_client/models/git_status.rb +219 -0
  85. data/lib/nightona_api_client/models/gpu_type.rb +41 -0
  86. data/lib/nightona_api_client/models/health_controller_check200_response.rb +182 -0
  87. data/lib/nightona_api_client/models/health_controller_check200_response_info_value.rb +164 -0
  88. data/lib/nightona_api_client/models/health_controller_check503_response.rb +182 -0
  89. data/lib/nightona_api_client/models/job.rb +366 -0
  90. data/lib/nightona_api_client/models/job_status.rb +43 -0
  91. data/lib/nightona_api_client/models/job_type.rb +54 -0
  92. data/lib/nightona_api_client/models/keyboard_hotkey_request.rb +165 -0
  93. data/lib/nightona_api_client/models/keyboard_press_request.rb +177 -0
  94. data/lib/nightona_api_client/models/keyboard_type_request.rb +175 -0
  95. data/lib/nightona_api_client/models/list_branch_response.rb +166 -0
  96. data/lib/nightona_api_client/models/list_sandboxes_response.rb +180 -0
  97. data/lib/nightona_api_client/models/log_entry.rb +334 -0
  98. data/lib/nightona_api_client/models/lsp_completion_params.rb +254 -0
  99. data/lib/nightona_api_client/models/lsp_document_request.rb +219 -0
  100. data/lib/nightona_api_client/models/lsp_location.rb +190 -0
  101. data/lib/nightona_api_client/models/lsp_server_request.rb +192 -0
  102. data/lib/nightona_api_client/models/lsp_symbol.rb +216 -0
  103. data/lib/nightona_api_client/models/match.rb +216 -0
  104. data/lib/nightona_api_client/models/metric_data_point.rb +192 -0
  105. data/lib/nightona_api_client/models/metric_series.rb +194 -0
  106. data/lib/nightona_api_client/models/metrics_response.rb +167 -0
  107. data/lib/nightona_api_client/models/mouse_click_request.rb +212 -0
  108. data/lib/nightona_api_client/models/mouse_click_response.rb +192 -0
  109. data/lib/nightona_api_client/models/mouse_drag_request.rb +256 -0
  110. data/lib/nightona_api_client/models/mouse_drag_response.rb +192 -0
  111. data/lib/nightona_api_client/models/mouse_move_request.rb +192 -0
  112. data/lib/nightona_api_client/models/mouse_move_response.rb +192 -0
  113. data/lib/nightona_api_client/models/mouse_position.rb +192 -0
  114. data/lib/nightona_api_client/models/mouse_scroll_request.rb +229 -0
  115. data/lib/nightona_api_client/models/mouse_scroll_response.rb +165 -0
  116. data/lib/nightona_api_client/models/nightona_configuration.rb +507 -0
  117. data/lib/nightona_api_client/models/oidc_config.rb +219 -0
  118. data/lib/nightona_api_client/models/organization.rb +698 -0
  119. data/lib/nightona_api_client/models/organization_invitation.rb +463 -0
  120. data/lib/nightona_api_client/models/organization_role.rb +341 -0
  121. data/lib/nightona_api_client/models/organization_sandbox_default_limited_network_egress.rb +165 -0
  122. data/lib/nightona_api_client/models/organization_suspension.rb +221 -0
  123. data/lib/nightona_api_client/models/organization_usage_overview.rb +270 -0
  124. data/lib/nightona_api_client/models/organization_user.rb +380 -0
  125. data/lib/nightona_api_client/models/otel_config.rb +178 -0
  126. data/lib/nightona_api_client/models/paginated_audit_logs.rb +254 -0
  127. data/lib/nightona_api_client/models/paginated_jobs.rb +244 -0
  128. data/lib/nightona_api_client/models/paginated_logs.rb +248 -0
  129. data/lib/nightona_api_client/models/paginated_sandboxes_deprecated.rb +244 -0
  130. data/lib/nightona_api_client/models/paginated_snapshots.rb +244 -0
  131. data/lib/nightona_api_client/models/paginated_traces.rb +248 -0
  132. data/lib/nightona_api_client/models/poll_jobs_response.rb +167 -0
  133. data/lib/nightona_api_client/models/port_preview_url.rb +219 -0
  134. data/lib/nightona_api_client/models/position.rb +190 -0
  135. data/lib/nightona_api_client/models/posthog_config.rb +192 -0
  136. data/lib/nightona_api_client/models/process_errors_response.rb +192 -0
  137. data/lib/nightona_api_client/models/process_logs_response.rb +192 -0
  138. data/lib/nightona_api_client/models/process_restart_response.rb +192 -0
  139. data/lib/nightona_api_client/models/process_status_response.rb +192 -0
  140. data/lib/nightona_api_client/models/project_dir_response.rb +147 -0
  141. data/lib/nightona_api_client/models/pty_create_request.rb +217 -0
  142. data/lib/nightona_api_client/models/pty_create_response.rb +165 -0
  143. data/lib/nightona_api_client/models/pty_list_response.rb +167 -0
  144. data/lib/nightona_api_client/models/pty_resize_request.rb +192 -0
  145. data/lib/nightona_api_client/models/pty_session_info.rb +354 -0
  146. data/lib/nightona_api_client/models/range.rb +190 -0
  147. data/lib/nightona_api_client/models/rate_limit_config.rb +178 -0
  148. data/lib/nightona_api_client/models/rate_limit_entry.rb +158 -0
  149. data/lib/nightona_api_client/models/regenerate_api_key_response.rb +165 -0
  150. data/lib/nightona_api_client/models/region.rb +339 -0
  151. data/lib/nightona_api_client/models/region_quota.rb +437 -0
  152. data/lib/nightona_api_client/models/region_screenshot_response.rb +185 -0
  153. data/lib/nightona_api_client/models/region_type.rb +42 -0
  154. data/lib/nightona_api_client/models/region_usage_overview.rb +515 -0
  155. data/lib/nightona_api_client/models/registry_push_access_dto.rb +300 -0
  156. data/lib/nightona_api_client/models/replace_request.rb +218 -0
  157. data/lib/nightona_api_client/models/replace_result.rb +165 -0
  158. data/lib/nightona_api_client/models/resize_sandbox.rb +225 -0
  159. data/lib/nightona_api_client/models/runner.rb +710 -0
  160. data/lib/nightona_api_client/models/runner_class.rb +40 -0
  161. data/lib/nightona_api_client/models/runner_full.rb +747 -0
  162. data/lib/nightona_api_client/models/runner_health_metrics.rb +482 -0
  163. data/lib/nightona_api_client/models/runner_healthcheck.rb +217 -0
  164. data/lib/nightona_api_client/models/runner_service_health.rb +202 -0
  165. data/lib/nightona_api_client/models/runner_snapshot_dto.rb +202 -0
  166. data/lib/nightona_api_client/models/runner_state.rb +44 -0
  167. data/lib/nightona_api_client/models/sandbox.rb +788 -0
  168. data/lib/nightona_api_client/models/sandbox_class.rb +43 -0
  169. data/lib/nightona_api_client/models/sandbox_desired_state.rb +45 -0
  170. data/lib/nightona_api_client/models/sandbox_labels.rb +167 -0
  171. data/lib/nightona_api_client/models/sandbox_list_item.rb +658 -0
  172. data/lib/nightona_api_client/models/sandbox_list_sort_direction.rb +41 -0
  173. data/lib/nightona_api_client/models/sandbox_list_sort_field.rb +45 -0
  174. data/lib/nightona_api_client/models/sandbox_state.rb +61 -0
  175. data/lib/nightona_api_client/models/sandbox_volume.rb +202 -0
  176. data/lib/nightona_api_client/models/screenshot_response.rb +185 -0
  177. data/lib/nightona_api_client/models/search_files_response.rb +166 -0
  178. data/lib/nightona_api_client/models/send_webhook_dto.rb +224 -0
  179. data/lib/nightona_api_client/models/session.rb +180 -0
  180. data/lib/nightona_api_client/models/session_execute_request.rb +185 -0
  181. data/lib/nightona_api_client/models/session_execute_response.rb +168 -0
  182. data/lib/nightona_api_client/models/set_snapshot_general_status_dto.rb +165 -0
  183. data/lib/nightona_api_client/models/signed_port_preview_url.rb +246 -0
  184. data/lib/nightona_api_client/models/snapshot_dto.rb +562 -0
  185. data/lib/nightona_api_client/models/snapshot_manager_credentials.rb +192 -0
  186. data/lib/nightona_api_client/models/snapshot_state.rb +47 -0
  187. data/lib/nightona_api_client/models/ssh_access_dto.rb +327 -0
  188. data/lib/nightona_api_client/models/ssh_access_validation_dto.rb +192 -0
  189. data/lib/nightona_api_client/models/storage_access_dto.rb +300 -0
  190. data/lib/nightona_api_client/models/toolbox_proxy_url.rb +165 -0
  191. data/lib/nightona_api_client/models/trace_span.rb +332 -0
  192. data/lib/nightona_api_client/models/trace_summary.rb +310 -0
  193. data/lib/nightona_api_client/models/update_docker_registry.rb +239 -0
  194. data/lib/nightona_api_client/models/update_job_status.rb +207 -0
  195. data/lib/nightona_api_client/models/update_organization_default_region.rb +165 -0
  196. data/lib/nightona_api_client/models/update_organization_invitation.rb +228 -0
  197. data/lib/nightona_api_client/models/update_organization_member_access.rb +218 -0
  198. data/lib/nightona_api_client/models/update_organization_quota.rb +295 -0
  199. data/lib/nightona_api_client/models/update_organization_region_quota.rb +299 -0
  200. data/lib/nightona_api_client/models/update_organization_role.rb +233 -0
  201. data/lib/nightona_api_client/models/update_region.rb +171 -0
  202. data/lib/nightona_api_client/models/update_sandbox_network_settings.rb +168 -0
  203. data/lib/nightona_api_client/models/update_sandbox_state_dto.rb +209 -0
  204. data/lib/nightona_api_client/models/url.rb +165 -0
  205. data/lib/nightona_api_client/models/user.rb +275 -0
  206. data/lib/nightona_api_client/models/user_home_dir_response.rb +147 -0
  207. data/lib/nightona_api_client/models/user_public_key.rb +192 -0
  208. data/lib/nightona_api_client/models/volume_dto.rb +346 -0
  209. data/lib/nightona_api_client/models/volume_state.rb +46 -0
  210. data/lib/nightona_api_client/models/webhook_app_portal_access.rb +192 -0
  211. data/lib/nightona_api_client/models/webhook_event.rb +46 -0
  212. data/lib/nightona_api_client/models/webhook_initialization_status.rb +272 -0
  213. data/lib/nightona_api_client/models/windows_response.rb +194 -0
  214. data/lib/nightona_api_client/models/work_dir_response.rb +147 -0
  215. data/lib/nightona_api_client/version.rb +15 -0
  216. data/lib/nightona_api_client.rb +241 -0
  217. data/nightona_api_client.gemspec +39 -0
  218. data/project.json +68 -0
  219. metadata +299 -0
@@ -0,0 +1,698 @@
1
+ =begin
2
+ #Nightona
3
+
4
+ #Nightona AI platform API Docs
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: amaraaamka0404@gmail.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.21.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module NightonaApiClient
17
+ class Organization < ApiModelBase
18
+ # Organization ID
19
+ attr_accessor :id
20
+
21
+ # Organization name
22
+ attr_accessor :name
23
+
24
+ # User ID of the organization creator
25
+ attr_accessor :created_by
26
+
27
+ # Personal organization flag
28
+ attr_accessor :personal
29
+
30
+ # Creation timestamp
31
+ attr_accessor :created_at
32
+
33
+ # Last update timestamp
34
+ attr_accessor :updated_at
35
+
36
+ # Suspended flag
37
+ attr_accessor :suspended
38
+
39
+ # Suspended at
40
+ attr_accessor :suspended_at
41
+
42
+ # Suspended reason
43
+ attr_accessor :suspension_reason
44
+
45
+ # Suspended until
46
+ attr_accessor :suspended_until
47
+
48
+ # Suspension cleanup grace period hours
49
+ attr_accessor :suspension_cleanup_grace_period_hours
50
+
51
+ # Max CPU per sandbox
52
+ attr_accessor :max_cpu_per_sandbox
53
+
54
+ # Max memory per sandbox
55
+ attr_accessor :max_memory_per_sandbox
56
+
57
+ # Max disk per sandbox
58
+ attr_accessor :max_disk_per_sandbox
59
+
60
+ # Time in minutes before an unused snapshot is deactivated
61
+ attr_accessor :snapshot_deactivation_timeout_minutes
62
+
63
+ # Sandbox default network block all
64
+ attr_accessor :sandbox_limited_network_egress
65
+
66
+ # Default region ID
67
+ attr_accessor :default_region_id
68
+
69
+ # Authenticated rate limit per minute
70
+ attr_accessor :authenticated_rate_limit
71
+
72
+ # Sandbox create rate limit per minute
73
+ attr_accessor :sandbox_create_rate_limit
74
+
75
+ # Sandbox lifecycle rate limit per minute
76
+ attr_accessor :sandbox_lifecycle_rate_limit
77
+
78
+ # Experimental configuration
79
+ attr_accessor :experimental_config
80
+
81
+ # OpenTelemetry collection configuration
82
+ attr_accessor :otel_config
83
+
84
+ # Authenticated rate limit TTL in seconds
85
+ attr_accessor :authenticated_rate_limit_ttl_seconds
86
+
87
+ # Sandbox create rate limit TTL in seconds
88
+ attr_accessor :sandbox_create_rate_limit_ttl_seconds
89
+
90
+ # Sandbox lifecycle rate limit TTL in seconds
91
+ attr_accessor :sandbox_lifecycle_rate_limit_ttl_seconds
92
+
93
+ # Attribute mapping from ruby-style variable name to JSON key.
94
+ def self.attribute_map
95
+ {
96
+ :'id' => :'id',
97
+ :'name' => :'name',
98
+ :'created_by' => :'createdBy',
99
+ :'personal' => :'personal',
100
+ :'created_at' => :'createdAt',
101
+ :'updated_at' => :'updatedAt',
102
+ :'suspended' => :'suspended',
103
+ :'suspended_at' => :'suspendedAt',
104
+ :'suspension_reason' => :'suspensionReason',
105
+ :'suspended_until' => :'suspendedUntil',
106
+ :'suspension_cleanup_grace_period_hours' => :'suspensionCleanupGracePeriodHours',
107
+ :'max_cpu_per_sandbox' => :'maxCpuPerSandbox',
108
+ :'max_memory_per_sandbox' => :'maxMemoryPerSandbox',
109
+ :'max_disk_per_sandbox' => :'maxDiskPerSandbox',
110
+ :'snapshot_deactivation_timeout_minutes' => :'snapshotDeactivationTimeoutMinutes',
111
+ :'sandbox_limited_network_egress' => :'sandboxLimitedNetworkEgress',
112
+ :'default_region_id' => :'defaultRegionId',
113
+ :'authenticated_rate_limit' => :'authenticatedRateLimit',
114
+ :'sandbox_create_rate_limit' => :'sandboxCreateRateLimit',
115
+ :'sandbox_lifecycle_rate_limit' => :'sandboxLifecycleRateLimit',
116
+ :'experimental_config' => :'experimentalConfig',
117
+ :'otel_config' => :'otelConfig',
118
+ :'authenticated_rate_limit_ttl_seconds' => :'authenticatedRateLimitTtlSeconds',
119
+ :'sandbox_create_rate_limit_ttl_seconds' => :'sandboxCreateRateLimitTtlSeconds',
120
+ :'sandbox_lifecycle_rate_limit_ttl_seconds' => :'sandboxLifecycleRateLimitTtlSeconds'
121
+ }
122
+ end
123
+
124
+ # Returns attribute mapping this model knows about
125
+ def self.acceptable_attribute_map
126
+ attribute_map
127
+ end
128
+
129
+ # Returns all the JSON keys this model knows about
130
+ def self.acceptable_attributes
131
+ acceptable_attribute_map.values
132
+ end
133
+
134
+ # Attribute type mapping.
135
+ def self.openapi_types
136
+ {
137
+ :'id' => :'String',
138
+ :'name' => :'String',
139
+ :'created_by' => :'String',
140
+ :'personal' => :'Boolean',
141
+ :'created_at' => :'Time',
142
+ :'updated_at' => :'Time',
143
+ :'suspended' => :'Boolean',
144
+ :'suspended_at' => :'Time',
145
+ :'suspension_reason' => :'String',
146
+ :'suspended_until' => :'Time',
147
+ :'suspension_cleanup_grace_period_hours' => :'Float',
148
+ :'max_cpu_per_sandbox' => :'Float',
149
+ :'max_memory_per_sandbox' => :'Float',
150
+ :'max_disk_per_sandbox' => :'Float',
151
+ :'snapshot_deactivation_timeout_minutes' => :'Float',
152
+ :'sandbox_limited_network_egress' => :'Boolean',
153
+ :'default_region_id' => :'String',
154
+ :'authenticated_rate_limit' => :'Float',
155
+ :'sandbox_create_rate_limit' => :'Float',
156
+ :'sandbox_lifecycle_rate_limit' => :'Float',
157
+ :'experimental_config' => :'Object',
158
+ :'otel_config' => :'OtelConfig',
159
+ :'authenticated_rate_limit_ttl_seconds' => :'Float',
160
+ :'sandbox_create_rate_limit_ttl_seconds' => :'Float',
161
+ :'sandbox_lifecycle_rate_limit_ttl_seconds' => :'Float'
162
+ }
163
+ end
164
+
165
+ # List of attributes with nullable: true
166
+ def self.openapi_nullable
167
+ Set.new([
168
+ :'authenticated_rate_limit',
169
+ :'sandbox_create_rate_limit',
170
+ :'sandbox_lifecycle_rate_limit',
171
+ :'otel_config',
172
+ :'authenticated_rate_limit_ttl_seconds',
173
+ :'sandbox_create_rate_limit_ttl_seconds',
174
+ :'sandbox_lifecycle_rate_limit_ttl_seconds'
175
+ ])
176
+ end
177
+
178
+ # Initializes the object
179
+ # @param [Hash] attributes Model attributes in the form of hash
180
+ def initialize(attributes = {})
181
+ if (!attributes.is_a?(Hash))
182
+ fail ArgumentError, "The input argument (attributes) must be a hash in `NightonaApiClient::Organization` initialize method"
183
+ end
184
+
185
+ # check to see if the attribute exists and convert string to symbol for hash key
186
+ acceptable_attribute_map = self.class.acceptable_attribute_map
187
+ attributes = attributes.each_with_object({}) { |(k, v), h|
188
+ if (!acceptable_attribute_map.key?(k.to_sym))
189
+ fail ArgumentError, "`#{k}` is not a valid attribute in `NightonaApiClient::Organization`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
190
+ end
191
+ h[k.to_sym] = v
192
+ }
193
+
194
+ if attributes.key?(:'id')
195
+ self.id = attributes[:'id']
196
+ else
197
+ self.id = nil
198
+ end
199
+
200
+ if attributes.key?(:'name')
201
+ self.name = attributes[:'name']
202
+ else
203
+ self.name = nil
204
+ end
205
+
206
+ if attributes.key?(:'created_by')
207
+ self.created_by = attributes[:'created_by']
208
+ else
209
+ self.created_by = nil
210
+ end
211
+
212
+ if attributes.key?(:'personal')
213
+ self.personal = attributes[:'personal']
214
+ else
215
+ self.personal = nil
216
+ end
217
+
218
+ if attributes.key?(:'created_at')
219
+ self.created_at = attributes[:'created_at']
220
+ else
221
+ self.created_at = nil
222
+ end
223
+
224
+ if attributes.key?(:'updated_at')
225
+ self.updated_at = attributes[:'updated_at']
226
+ else
227
+ self.updated_at = nil
228
+ end
229
+
230
+ if attributes.key?(:'suspended')
231
+ self.suspended = attributes[:'suspended']
232
+ else
233
+ self.suspended = nil
234
+ end
235
+
236
+ if attributes.key?(:'suspended_at')
237
+ self.suspended_at = attributes[:'suspended_at']
238
+ else
239
+ self.suspended_at = nil
240
+ end
241
+
242
+ if attributes.key?(:'suspension_reason')
243
+ self.suspension_reason = attributes[:'suspension_reason']
244
+ else
245
+ self.suspension_reason = nil
246
+ end
247
+
248
+ if attributes.key?(:'suspended_until')
249
+ self.suspended_until = attributes[:'suspended_until']
250
+ else
251
+ self.suspended_until = nil
252
+ end
253
+
254
+ if attributes.key?(:'suspension_cleanup_grace_period_hours')
255
+ self.suspension_cleanup_grace_period_hours = attributes[:'suspension_cleanup_grace_period_hours']
256
+ else
257
+ self.suspension_cleanup_grace_period_hours = nil
258
+ end
259
+
260
+ if attributes.key?(:'max_cpu_per_sandbox')
261
+ self.max_cpu_per_sandbox = attributes[:'max_cpu_per_sandbox']
262
+ else
263
+ self.max_cpu_per_sandbox = nil
264
+ end
265
+
266
+ if attributes.key?(:'max_memory_per_sandbox')
267
+ self.max_memory_per_sandbox = attributes[:'max_memory_per_sandbox']
268
+ else
269
+ self.max_memory_per_sandbox = nil
270
+ end
271
+
272
+ if attributes.key?(:'max_disk_per_sandbox')
273
+ self.max_disk_per_sandbox = attributes[:'max_disk_per_sandbox']
274
+ else
275
+ self.max_disk_per_sandbox = nil
276
+ end
277
+
278
+ if attributes.key?(:'snapshot_deactivation_timeout_minutes')
279
+ self.snapshot_deactivation_timeout_minutes = attributes[:'snapshot_deactivation_timeout_minutes']
280
+ else
281
+ self.snapshot_deactivation_timeout_minutes = 20160
282
+ end
283
+
284
+ if attributes.key?(:'sandbox_limited_network_egress')
285
+ self.sandbox_limited_network_egress = attributes[:'sandbox_limited_network_egress']
286
+ else
287
+ self.sandbox_limited_network_egress = nil
288
+ end
289
+
290
+ if attributes.key?(:'default_region_id')
291
+ self.default_region_id = attributes[:'default_region_id']
292
+ end
293
+
294
+ if attributes.key?(:'authenticated_rate_limit')
295
+ self.authenticated_rate_limit = attributes[:'authenticated_rate_limit']
296
+ else
297
+ self.authenticated_rate_limit = nil
298
+ end
299
+
300
+ if attributes.key?(:'sandbox_create_rate_limit')
301
+ self.sandbox_create_rate_limit = attributes[:'sandbox_create_rate_limit']
302
+ else
303
+ self.sandbox_create_rate_limit = nil
304
+ end
305
+
306
+ if attributes.key?(:'sandbox_lifecycle_rate_limit')
307
+ self.sandbox_lifecycle_rate_limit = attributes[:'sandbox_lifecycle_rate_limit']
308
+ else
309
+ self.sandbox_lifecycle_rate_limit = nil
310
+ end
311
+
312
+ if attributes.key?(:'experimental_config')
313
+ self.experimental_config = attributes[:'experimental_config']
314
+ else
315
+ self.experimental_config = nil
316
+ end
317
+
318
+ if attributes.key?(:'otel_config')
319
+ self.otel_config = attributes[:'otel_config']
320
+ else
321
+ self.otel_config = nil
322
+ end
323
+
324
+ if attributes.key?(:'authenticated_rate_limit_ttl_seconds')
325
+ self.authenticated_rate_limit_ttl_seconds = attributes[:'authenticated_rate_limit_ttl_seconds']
326
+ else
327
+ self.authenticated_rate_limit_ttl_seconds = nil
328
+ end
329
+
330
+ if attributes.key?(:'sandbox_create_rate_limit_ttl_seconds')
331
+ self.sandbox_create_rate_limit_ttl_seconds = attributes[:'sandbox_create_rate_limit_ttl_seconds']
332
+ else
333
+ self.sandbox_create_rate_limit_ttl_seconds = nil
334
+ end
335
+
336
+ if attributes.key?(:'sandbox_lifecycle_rate_limit_ttl_seconds')
337
+ self.sandbox_lifecycle_rate_limit_ttl_seconds = attributes[:'sandbox_lifecycle_rate_limit_ttl_seconds']
338
+ else
339
+ self.sandbox_lifecycle_rate_limit_ttl_seconds = nil
340
+ end
341
+ end
342
+
343
+ # Show invalid properties with the reasons. Usually used together with valid?
344
+ # @return Array for valid properties with the reasons
345
+ def list_invalid_properties
346
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
347
+ invalid_properties = Array.new
348
+ if @id.nil?
349
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
350
+ end
351
+
352
+ if @name.nil?
353
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
354
+ end
355
+
356
+ if @created_by.nil?
357
+ invalid_properties.push('invalid value for "created_by", created_by cannot be nil.')
358
+ end
359
+
360
+ if @personal.nil?
361
+ invalid_properties.push('invalid value for "personal", personal cannot be nil.')
362
+ end
363
+
364
+ if @created_at.nil?
365
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
366
+ end
367
+
368
+ if @updated_at.nil?
369
+ invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
370
+ end
371
+
372
+ if @suspended.nil?
373
+ invalid_properties.push('invalid value for "suspended", suspended cannot be nil.')
374
+ end
375
+
376
+ if @suspended_at.nil?
377
+ invalid_properties.push('invalid value for "suspended_at", suspended_at cannot be nil.')
378
+ end
379
+
380
+ if @suspension_reason.nil?
381
+ invalid_properties.push('invalid value for "suspension_reason", suspension_reason cannot be nil.')
382
+ end
383
+
384
+ if @suspended_until.nil?
385
+ invalid_properties.push('invalid value for "suspended_until", suspended_until cannot be nil.')
386
+ end
387
+
388
+ if @suspension_cleanup_grace_period_hours.nil?
389
+ invalid_properties.push('invalid value for "suspension_cleanup_grace_period_hours", suspension_cleanup_grace_period_hours cannot be nil.')
390
+ end
391
+
392
+ if @max_cpu_per_sandbox.nil?
393
+ invalid_properties.push('invalid value for "max_cpu_per_sandbox", max_cpu_per_sandbox cannot be nil.')
394
+ end
395
+
396
+ if @max_memory_per_sandbox.nil?
397
+ invalid_properties.push('invalid value for "max_memory_per_sandbox", max_memory_per_sandbox cannot be nil.')
398
+ end
399
+
400
+ if @max_disk_per_sandbox.nil?
401
+ invalid_properties.push('invalid value for "max_disk_per_sandbox", max_disk_per_sandbox cannot be nil.')
402
+ end
403
+
404
+ if @snapshot_deactivation_timeout_minutes.nil?
405
+ invalid_properties.push('invalid value for "snapshot_deactivation_timeout_minutes", snapshot_deactivation_timeout_minutes cannot be nil.')
406
+ end
407
+
408
+ if @sandbox_limited_network_egress.nil?
409
+ invalid_properties.push('invalid value for "sandbox_limited_network_egress", sandbox_limited_network_egress cannot be nil.')
410
+ end
411
+
412
+ if @experimental_config.nil?
413
+ invalid_properties.push('invalid value for "experimental_config", experimental_config cannot be nil.')
414
+ end
415
+
416
+ invalid_properties
417
+ end
418
+
419
+ # Check to see if the all the properties in the model are valid
420
+ # @return true if the model is valid
421
+ def valid?
422
+ warn '[DEPRECATED] the `valid?` method is obsolete'
423
+ return false if @id.nil?
424
+ return false if @name.nil?
425
+ return false if @created_by.nil?
426
+ return false if @personal.nil?
427
+ return false if @created_at.nil?
428
+ return false if @updated_at.nil?
429
+ return false if @suspended.nil?
430
+ return false if @suspended_at.nil?
431
+ return false if @suspension_reason.nil?
432
+ return false if @suspended_until.nil?
433
+ return false if @suspension_cleanup_grace_period_hours.nil?
434
+ return false if @max_cpu_per_sandbox.nil?
435
+ return false if @max_memory_per_sandbox.nil?
436
+ return false if @max_disk_per_sandbox.nil?
437
+ return false if @snapshot_deactivation_timeout_minutes.nil?
438
+ return false if @sandbox_limited_network_egress.nil?
439
+ return false if @experimental_config.nil?
440
+ true
441
+ end
442
+
443
+ # Custom attribute writer method with validation
444
+ # @param [Object] id Value to be assigned
445
+ def id=(id)
446
+ if id.nil?
447
+ fail ArgumentError, 'id cannot be nil'
448
+ end
449
+
450
+ @id = id
451
+ end
452
+
453
+ # Custom attribute writer method with validation
454
+ # @param [Object] name Value to be assigned
455
+ def name=(name)
456
+ if name.nil?
457
+ fail ArgumentError, 'name cannot be nil'
458
+ end
459
+
460
+ @name = name
461
+ end
462
+
463
+ # Custom attribute writer method with validation
464
+ # @param [Object] created_by Value to be assigned
465
+ def created_by=(created_by)
466
+ if created_by.nil?
467
+ fail ArgumentError, 'created_by cannot be nil'
468
+ end
469
+
470
+ @created_by = created_by
471
+ end
472
+
473
+ # Custom attribute writer method with validation
474
+ # @param [Object] personal Value to be assigned
475
+ def personal=(personal)
476
+ if personal.nil?
477
+ fail ArgumentError, 'personal cannot be nil'
478
+ end
479
+
480
+ @personal = personal
481
+ end
482
+
483
+ # Custom attribute writer method with validation
484
+ # @param [Object] created_at Value to be assigned
485
+ def created_at=(created_at)
486
+ if created_at.nil?
487
+ fail ArgumentError, 'created_at cannot be nil'
488
+ end
489
+
490
+ @created_at = created_at
491
+ end
492
+
493
+ # Custom attribute writer method with validation
494
+ # @param [Object] updated_at Value to be assigned
495
+ def updated_at=(updated_at)
496
+ if updated_at.nil?
497
+ fail ArgumentError, 'updated_at cannot be nil'
498
+ end
499
+
500
+ @updated_at = updated_at
501
+ end
502
+
503
+ # Custom attribute writer method with validation
504
+ # @param [Object] suspended Value to be assigned
505
+ def suspended=(suspended)
506
+ if suspended.nil?
507
+ fail ArgumentError, 'suspended cannot be nil'
508
+ end
509
+
510
+ @suspended = suspended
511
+ end
512
+
513
+ # Custom attribute writer method with validation
514
+ # @param [Object] suspended_at Value to be assigned
515
+ def suspended_at=(suspended_at)
516
+ if suspended_at.nil?
517
+ fail ArgumentError, 'suspended_at cannot be nil'
518
+ end
519
+
520
+ @suspended_at = suspended_at
521
+ end
522
+
523
+ # Custom attribute writer method with validation
524
+ # @param [Object] suspension_reason Value to be assigned
525
+ def suspension_reason=(suspension_reason)
526
+ if suspension_reason.nil?
527
+ fail ArgumentError, 'suspension_reason cannot be nil'
528
+ end
529
+
530
+ @suspension_reason = suspension_reason
531
+ end
532
+
533
+ # Custom attribute writer method with validation
534
+ # @param [Object] suspended_until Value to be assigned
535
+ def suspended_until=(suspended_until)
536
+ if suspended_until.nil?
537
+ fail ArgumentError, 'suspended_until cannot be nil'
538
+ end
539
+
540
+ @suspended_until = suspended_until
541
+ end
542
+
543
+ # Custom attribute writer method with validation
544
+ # @param [Object] suspension_cleanup_grace_period_hours Value to be assigned
545
+ def suspension_cleanup_grace_period_hours=(suspension_cleanup_grace_period_hours)
546
+ if suspension_cleanup_grace_period_hours.nil?
547
+ fail ArgumentError, 'suspension_cleanup_grace_period_hours cannot be nil'
548
+ end
549
+
550
+ @suspension_cleanup_grace_period_hours = suspension_cleanup_grace_period_hours
551
+ end
552
+
553
+ # Custom attribute writer method with validation
554
+ # @param [Object] max_cpu_per_sandbox Value to be assigned
555
+ def max_cpu_per_sandbox=(max_cpu_per_sandbox)
556
+ if max_cpu_per_sandbox.nil?
557
+ fail ArgumentError, 'max_cpu_per_sandbox cannot be nil'
558
+ end
559
+
560
+ @max_cpu_per_sandbox = max_cpu_per_sandbox
561
+ end
562
+
563
+ # Custom attribute writer method with validation
564
+ # @param [Object] max_memory_per_sandbox Value to be assigned
565
+ def max_memory_per_sandbox=(max_memory_per_sandbox)
566
+ if max_memory_per_sandbox.nil?
567
+ fail ArgumentError, 'max_memory_per_sandbox cannot be nil'
568
+ end
569
+
570
+ @max_memory_per_sandbox = max_memory_per_sandbox
571
+ end
572
+
573
+ # Custom attribute writer method with validation
574
+ # @param [Object] max_disk_per_sandbox Value to be assigned
575
+ def max_disk_per_sandbox=(max_disk_per_sandbox)
576
+ if max_disk_per_sandbox.nil?
577
+ fail ArgumentError, 'max_disk_per_sandbox cannot be nil'
578
+ end
579
+
580
+ @max_disk_per_sandbox = max_disk_per_sandbox
581
+ end
582
+
583
+ # Custom attribute writer method with validation
584
+ # @param [Object] snapshot_deactivation_timeout_minutes Value to be assigned
585
+ def snapshot_deactivation_timeout_minutes=(snapshot_deactivation_timeout_minutes)
586
+ if snapshot_deactivation_timeout_minutes.nil?
587
+ fail ArgumentError, 'snapshot_deactivation_timeout_minutes cannot be nil'
588
+ end
589
+
590
+ @snapshot_deactivation_timeout_minutes = snapshot_deactivation_timeout_minutes
591
+ end
592
+
593
+ # Custom attribute writer method with validation
594
+ # @param [Object] sandbox_limited_network_egress Value to be assigned
595
+ def sandbox_limited_network_egress=(sandbox_limited_network_egress)
596
+ if sandbox_limited_network_egress.nil?
597
+ fail ArgumentError, 'sandbox_limited_network_egress cannot be nil'
598
+ end
599
+
600
+ @sandbox_limited_network_egress = sandbox_limited_network_egress
601
+ end
602
+
603
+ # Custom attribute writer method with validation
604
+ # @param [Object] experimental_config Value to be assigned
605
+ def experimental_config=(experimental_config)
606
+ if experimental_config.nil?
607
+ fail ArgumentError, 'experimental_config cannot be nil'
608
+ end
609
+
610
+ @experimental_config = experimental_config
611
+ end
612
+
613
+ # Checks equality by comparing each attribute.
614
+ # @param [Object] Object to be compared
615
+ def ==(o)
616
+ return true if self.equal?(o)
617
+ self.class == o.class &&
618
+ id == o.id &&
619
+ name == o.name &&
620
+ created_by == o.created_by &&
621
+ personal == o.personal &&
622
+ created_at == o.created_at &&
623
+ updated_at == o.updated_at &&
624
+ suspended == o.suspended &&
625
+ suspended_at == o.suspended_at &&
626
+ suspension_reason == o.suspension_reason &&
627
+ suspended_until == o.suspended_until &&
628
+ suspension_cleanup_grace_period_hours == o.suspension_cleanup_grace_period_hours &&
629
+ max_cpu_per_sandbox == o.max_cpu_per_sandbox &&
630
+ max_memory_per_sandbox == o.max_memory_per_sandbox &&
631
+ max_disk_per_sandbox == o.max_disk_per_sandbox &&
632
+ snapshot_deactivation_timeout_minutes == o.snapshot_deactivation_timeout_minutes &&
633
+ sandbox_limited_network_egress == o.sandbox_limited_network_egress &&
634
+ default_region_id == o.default_region_id &&
635
+ authenticated_rate_limit == o.authenticated_rate_limit &&
636
+ sandbox_create_rate_limit == o.sandbox_create_rate_limit &&
637
+ sandbox_lifecycle_rate_limit == o.sandbox_lifecycle_rate_limit &&
638
+ experimental_config == o.experimental_config &&
639
+ otel_config == o.otel_config &&
640
+ authenticated_rate_limit_ttl_seconds == o.authenticated_rate_limit_ttl_seconds &&
641
+ sandbox_create_rate_limit_ttl_seconds == o.sandbox_create_rate_limit_ttl_seconds &&
642
+ sandbox_lifecycle_rate_limit_ttl_seconds == o.sandbox_lifecycle_rate_limit_ttl_seconds
643
+ end
644
+
645
+ # @see the `==` method
646
+ # @param [Object] Object to be compared
647
+ def eql?(o)
648
+ self == o
649
+ end
650
+
651
+ # Calculates hash code according to all attributes.
652
+ # @return [Integer] Hash code
653
+ def hash
654
+ [id, name, created_by, personal, created_at, updated_at, suspended, suspended_at, suspension_reason, suspended_until, suspension_cleanup_grace_period_hours, max_cpu_per_sandbox, max_memory_per_sandbox, max_disk_per_sandbox, snapshot_deactivation_timeout_minutes, sandbox_limited_network_egress, default_region_id, authenticated_rate_limit, sandbox_create_rate_limit, sandbox_lifecycle_rate_limit, experimental_config, otel_config, authenticated_rate_limit_ttl_seconds, sandbox_create_rate_limit_ttl_seconds, sandbox_lifecycle_rate_limit_ttl_seconds].hash
655
+ end
656
+
657
+ # Builds the object from hash
658
+ # @param [Hash] attributes Model attributes in the form of hash
659
+ # @return [Object] Returns the model itself
660
+ def self.build_from_hash(attributes)
661
+ return nil unless attributes.is_a?(Hash)
662
+ attributes = attributes.transform_keys(&:to_sym)
663
+ transformed_hash = {}
664
+ openapi_types.each_pair do |key, type|
665
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
666
+ transformed_hash["#{key}"] = nil
667
+ elsif type =~ /\AArray<(.*)>/i
668
+ # check to ensure the input is an array given that the attribute
669
+ # is documented as an array but the input is not
670
+ if attributes[attribute_map[key]].is_a?(Array)
671
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
672
+ end
673
+ elsif !attributes[attribute_map[key]].nil?
674
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
675
+ end
676
+ end
677
+ new(transformed_hash)
678
+ end
679
+
680
+ # Returns the object in the form of hash
681
+ # @return [Hash] Returns the object in the form of hash
682
+ def to_hash
683
+ hash = {}
684
+ self.class.attribute_map.each_pair do |attr, param|
685
+ value = self.send(attr)
686
+ if value.nil?
687
+ is_nullable = self.class.openapi_nullable.include?(attr)
688
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
689
+ end
690
+
691
+ hash[param] = _to_hash(value)
692
+ end
693
+ hash
694
+ end
695
+
696
+ end
697
+
698
+ end