lockally 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (630) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +21 -0
  4. data/README.md +481 -0
  5. data/Rakefile +10 -0
  6. data/docs/APIKey.md +32 -0
  7. data/docs/ActivateAddOn200Response.md +24 -0
  8. data/docs/AddCalendarMemberRequest.md +20 -0
  9. data/docs/AddContactListMemberRequest.md +18 -0
  10. data/docs/AddOn.md +28 -0
  11. data/docs/AddOnsApi.md +275 -0
  12. data/docs/AddSharedMemberRequest.md +20 -0
  13. data/docs/Admin.md +30 -0
  14. data/docs/AdminApi.md +205 -0
  15. data/docs/AdminFull.md +36 -0
  16. data/docs/AdminsApi.md +283 -0
  17. data/docs/AgentsApi.md +927 -0
  18. data/docs/AiApi.md +282 -0
  19. data/docs/AliasesApi.md +211 -0
  20. data/docs/ApiKeysApi.md +213 -0
  21. data/docs/AuditEvent.md +26 -0
  22. data/docs/BatchLookupPublicKeys200Response.md +18 -0
  23. data/docs/BatchLookupPublicKeys200ResponseDataInner.md +22 -0
  24. data/docs/BatchResult.md +26 -0
  25. data/docs/BillingApi.md +208 -0
  26. data/docs/BillingStatus.md +46 -0
  27. data/docs/Calendar.md +38 -0
  28. data/docs/CalendarEvent.md +40 -0
  29. data/docs/CalendarIntegration.md +34 -0
  30. data/docs/CalendarMember.md +28 -0
  31. data/docs/CalendarPolicies.md +40 -0
  32. data/docs/CalendarsApi.md +1445 -0
  33. data/docs/Contact.md +44 -0
  34. data/docs/ContactList.md +32 -0
  35. data/docs/ContactListsApi.md +483 -0
  36. data/docs/ContactsApi.md +426 -0
  37. data/docs/CreateBillingCheckout200Response.md +20 -0
  38. data/docs/CreateBillingCheckoutRequest.md +18 -0
  39. data/docs/CreateCalendarEventRequest.md +28 -0
  40. data/docs/CreateCalendarIntegrationRequest.md +20 -0
  41. data/docs/CreateCalendarRequest.md +26 -0
  42. data/docs/CreateContactListRequest.md +22 -0
  43. data/docs/CreateContactRequest.md +32 -0
  44. data/docs/CreateDedicatedIPRequestRequest.md +18 -0
  45. data/docs/CreateDistributionListRequest.md +22 -0
  46. data/docs/CreateEncryptionKey201Response.md +22 -0
  47. data/docs/CreateEncryptionKeyRequest.md +24 -0
  48. data/docs/CreateEncryptionRecoveryRequest.md +20 -0
  49. data/docs/CreateMigrationCredentialRequest.md +22 -0
  50. data/docs/CreateMigrationCredentialRequestCredentials.md +26 -0
  51. data/docs/CreateMigrationRequest.md +24 -0
  52. data/docs/CreateResourceRequest.md +22 -0
  53. data/docs/CreateUnitsCheckout200Response.md +22 -0
  54. data/docs/CreateUnitsCheckoutRequest.md +18 -0
  55. data/docs/CreateUserRequest.md +26 -0
  56. data/docs/DNSRecord.md +28 -0
  57. data/docs/DashboardApi.md +462 -0
  58. data/docs/DedicatedIPRequest.md +30 -0
  59. data/docs/DirectoryApi.md +533 -0
  60. data/docs/DirectoryPermissions.md +30 -0
  61. data/docs/DiscoverMigration202Response.md +18 -0
  62. data/docs/DistributionListDetail.md +30 -0
  63. data/docs/DistributionListSummary.md +28 -0
  64. data/docs/DistributionListsApi.md +345 -0
  65. data/docs/Domain.md +36 -0
  66. data/docs/DomainsApi.md +351 -0
  67. data/docs/DraftsApi.md +503 -0
  68. data/docs/EncryptionApi.md +345 -0
  69. data/docs/GALSettings.md +36 -0
  70. data/docs/GetAddOnStatus200Response.md +22 -0
  71. data/docs/GetAuditSummary200Response.md +26 -0
  72. data/docs/GetCalendarSecurity200Response.md +32 -0
  73. data/docs/GetCalendarSecurity200ResponseAlertsInner.md +20 -0
  74. data/docs/GetCalendarSecurity200ResponseDelegatedAccessInner.md +26 -0
  75. data/docs/GetCalendarSecurity200ResponseExternalSharing.md +22 -0
  76. data/docs/GetCalendarSecurity200ResponsePublicCalendarListInner.md +26 -0
  77. data/docs/GetContactList200Response.md +20 -0
  78. data/docs/GetContactList200ResponseMembersInner.md +22 -0
  79. data/docs/GetContactLists200Response.md +18 -0
  80. data/docs/GetContactLists200ResponseDataInner.md +22 -0
  81. data/docs/GetDirectoryActivity200Response.md +18 -0
  82. data/docs/GetDirectoryActivity200ResponseDataInner.md +24 -0
  83. data/docs/GetDirectoryStats200Response.md +28 -0
  84. data/docs/GetDomainsStatus200Response.md +20 -0
  85. data/docs/GetDomainsStatus200ResponseDomainsInner.md +22 -0
  86. data/docs/GetDomainsStatus200ResponseDomainsInnerChecksInner.md +22 -0
  87. data/docs/GetEncryptionKey200Response.md +28 -0
  88. data/docs/GetIPAssignment200Response.md +26 -0
  89. data/docs/GetIntegrationsSummary200Response.md +30 -0
  90. data/docs/GetIntegrationsSummary200ResponseApiKeysInner.md +22 -0
  91. data/docs/GetIntegrationsSummary200ResponseWebhooksInner.md +24 -0
  92. data/docs/GetSecurity200Response.md +22 -0
  93. data/docs/GetSecurity200ResponseAlertsInner.md +22 -0
  94. data/docs/GetSecurity200ResponseStatsInner.md +22 -0
  95. data/docs/GetStorage200Response.md +28 -0
  96. data/docs/GetStorage200ResponseTopMailboxesInner.md +20 -0
  97. data/docs/GetStorage200ResponseTopMessagesInner.md +26 -0
  98. data/docs/GetUserInsights200Response.md +28 -0
  99. data/docs/HealthApi.md +69 -0
  100. data/docs/HealthzGet200Response.md +20 -0
  101. data/docs/IpPoolsApi.md +205 -0
  102. data/docs/ListAddOns200Response.md +18 -0
  103. data/docs/ListCalendarEvents200Response.md +18 -0
  104. data/docs/ListCalendarIntegrations200Response.md +18 -0
  105. data/docs/ListCalendarMembers200Response.md +18 -0
  106. data/docs/ListCalendars200Response.md +18 -0
  107. data/docs/ListContactLists200Response.md +18 -0
  108. data/docs/ListContacts200Response.md +18 -0
  109. data/docs/ListDedicatedIPRequests200Response.md +18 -0
  110. data/docs/ListDistributionLists200Response.md +18 -0
  111. data/docs/ListMigrationCredentials200Response.md +18 -0
  112. data/docs/ListMigrationEvents200Response.md +18 -0
  113. data/docs/ListMigrationMailboxes200Response.md +18 -0
  114. data/docs/ListMigrations200Response.md +18 -0
  115. data/docs/ListResources200Response.md +18 -0
  116. data/docs/ListSharedMembers200Response.md +18 -0
  117. data/docs/ListUsers200Response.md +20 -0
  118. data/docs/Mailbox.md +38 -0
  119. data/docs/MailboxesApi.md +980 -0
  120. data/docs/MapMigrationRequest.md +18 -0
  121. data/docs/MapMigrationRequestMappingsInner.md +20 -0
  122. data/docs/Message.md +38 -0
  123. data/docs/MessageStats.md +26 -0
  124. data/docs/MessageStatsCounts.md +24 -0
  125. data/docs/MessageStatsRates.md +24 -0
  126. data/docs/MessageStatsWindow.md +20 -0
  127. data/docs/Migration.md +44 -0
  128. data/docs/MigrationCredential.md +30 -0
  129. data/docs/MigrationEvent.md +36 -0
  130. data/docs/MigrationMailbox.md +54 -0
  131. data/docs/MigrationProgress.md +36 -0
  132. data/docs/MigrationProgressMailboxesInner.md +30 -0
  133. data/docs/MigrationSettings.md +26 -0
  134. data/docs/MigrationsApi.md +1434 -0
  135. data/docs/ModelAlias.md +26 -0
  136. data/docs/PlanCatalogEntry.md +36 -0
  137. data/docs/Problem.md +26 -0
  138. data/docs/ReplaceDistributionListMembers200Response.md +26 -0
  139. data/docs/ReplaceDistributionListMembersRequest.md +18 -0
  140. data/docs/Resource.md +32 -0
  141. data/docs/ResourcesApi.md +345 -0
  142. data/docs/RotateEncryptionKeyRequest.md +22 -0
  143. data/docs/SendApi.md +446 -0
  144. data/docs/SendMessage.md +42 -0
  145. data/docs/SharedMember.md +28 -0
  146. data/docs/SignupApi.md +70 -0
  147. data/docs/SignupRequest.md +26 -0
  148. data/docs/StartMigration202Response.md +20 -0
  149. data/docs/Suppression.md +24 -0
  150. data/docs/SuppressionsApi.md +284 -0
  151. data/docs/Template.md +30 -0
  152. data/docs/TemplateInput.md +24 -0
  153. data/docs/TemplatesApi.md +345 -0
  154. data/docs/Tenant.md +40 -0
  155. data/docs/TenantApi.md +141 -0
  156. data/docs/TestApi.md +74 -0
  157. data/docs/UnitBundle.md +26 -0
  158. data/docs/UpdateCalendarEventRequest.md +28 -0
  159. data/docs/UpdateCalendarIntegrationRequest.md +22 -0
  160. data/docs/UpdateCalendarMemberRequest.md +18 -0
  161. data/docs/UpdateCalendarPoliciesRequest.md +34 -0
  162. data/docs/UpdateCalendarRequest.md +26 -0
  163. data/docs/UpdateContactListRequest.md +22 -0
  164. data/docs/UpdateContactRequest.md +34 -0
  165. data/docs/UpdateDirectoryPermissionsRequest.md +24 -0
  166. data/docs/UpdateGALSettingsRequest.md +26 -0
  167. data/docs/UpdateMigrationMailboxRequest.md +20 -0
  168. data/docs/UpdateMigrationRequest.md +20 -0
  169. data/docs/UpdateResourceRequest.md +24 -0
  170. data/docs/UpdateUserRequest.md +26 -0
  171. data/docs/User.md +38 -0
  172. data/docs/UserEvent.md +22 -0
  173. data/docs/UsersApi.md +352 -0
  174. data/docs/V1AdminLoginPost200Response.md +24 -0
  175. data/docs/V1AdminLoginPostRequest.md +20 -0
  176. data/docs/V1AdminMeGet200Response.md +20 -0
  177. data/docs/V1AdminsGet200Response.md +18 -0
  178. data/docs/V1AdminsIdPatchRequest.md +24 -0
  179. data/docs/V1AdminsPostRequest.md +24 -0
  180. data/docs/V1AliasesGet200Response.md +18 -0
  181. data/docs/V1AliasesPostRequest.md +20 -0
  182. data/docs/V1ApiKeysGet200Response.md +18 -0
  183. data/docs/V1ApiKeysPost201Response.md +34 -0
  184. data/docs/V1ApiKeysPostRequest.md +20 -0
  185. data/docs/V1DomainsGet200Response.md +18 -0
  186. data/docs/V1DomainsPostRequest.md +18 -0
  187. data/docs/V1InboxesMailboxMessagesPostRequest.md +26 -0
  188. data/docs/V1MailboxesEmailExportPost201Response.md +22 -0
  189. data/docs/V1MailboxesEmailPatchRequest.md +22 -0
  190. data/docs/V1MailboxesEmailVacationPutRequest.md +20 -0
  191. data/docs/V1MailboxesGet200Response.md +20 -0
  192. data/docs/V1MailboxesPostRequest.md +22 -0
  193. data/docs/V1MessagesGet200Response.md +20 -0
  194. data/docs/V1SendBatchPost200Response.md +18 -0
  195. data/docs/V1SendBatchPostRequest.md +18 -0
  196. data/docs/V1SendPost202Response.md +24 -0
  197. data/docs/V1SendPostRequest.md +42 -0
  198. data/docs/V1SendPostRequestAttachmentsInner.md +22 -0
  199. data/docs/V1SuppressionsGet200Response.md +20 -0
  200. data/docs/V1SuppressionsPostRequest.md +20 -0
  201. data/docs/V1TemplatesGet200Response.md +18 -0
  202. data/docs/V1UsageGet200Response.md +42 -0
  203. data/docs/V1VacationGet200Response.md +18 -0
  204. data/docs/V1WebhooksGet200Response.md +18 -0
  205. data/docs/V1WebhooksIdPatchRequest.md +22 -0
  206. data/docs/V1WebhooksPostRequest.md +20 -0
  207. data/docs/VacationParams.md +24 -0
  208. data/docs/VacationResponder.md +30 -0
  209. data/docs/Webhook.md +38 -0
  210. data/docs/WebhooksApi.md +285 -0
  211. data/git_push.sh +57 -0
  212. data/lib/lockally/api/add_ons_api.rb +260 -0
  213. data/lib/lockally/api/admin_api.rb +204 -0
  214. data/lib/lockally/api/admins_api.rb +282 -0
  215. data/lib/lockally/api/agents_api.rb +900 -0
  216. data/lib/lockally/api/ai_api.rb +259 -0
  217. data/lib/lockally/api/aliases_api.rb +208 -0
  218. data/lib/lockally/api/api_keys_api.rb +210 -0
  219. data/lib/lockally/api/billing_api.rb +209 -0
  220. data/lib/lockally/api/calendars_api.rb +1390 -0
  221. data/lib/lockally/api/contact_lists_api.rb +476 -0
  222. data/lib/lockally/api/contacts_api.rb +413 -0
  223. data/lib/lockally/api/dashboard_api.rb +407 -0
  224. data/lib/lockally/api/directory_api.rb +484 -0
  225. data/lib/lockally/api/distribution_lists_api.rb +337 -0
  226. data/lib/lockally/api/domains_api.rb +334 -0
  227. data/lib/lockally/api/drafts_api.rb +487 -0
  228. data/lib/lockally/api/encryption_api.rb +343 -0
  229. data/lib/lockally/api/health_api.rb +79 -0
  230. data/lib/lockally/api/ip_pools_api.rb +198 -0
  231. data/lib/lockally/api/mailboxes_api.rb +946 -0
  232. data/lib/lockally/api/migrations_api.rb +1340 -0
  233. data/lib/lockally/api/resources_api.rb +337 -0
  234. data/lib/lockally/api/send_api.rb +453 -0
  235. data/lib/lockally/api/signup_api.rb +88 -0
  236. data/lib/lockally/api/suppressions_api.rb +282 -0
  237. data/lib/lockally/api/templates_api.rb +337 -0
  238. data/lib/lockally/api/tenant_api.rb +136 -0
  239. data/lib/lockally/api/test_api.rb +79 -0
  240. data/lib/lockally/api/users_api.rb +350 -0
  241. data/lib/lockally/api/webhooks_api.rb +284 -0
  242. data/lib/lockally/api_client.rb +441 -0
  243. data/lib/lockally/api_error.rb +58 -0
  244. data/lib/lockally/api_model_base.rb +88 -0
  245. data/lib/lockally/configuration.rb +404 -0
  246. data/lib/lockally/models/activate_add_on200_response.rb +242 -0
  247. data/lib/lockally/models/add_calendar_member_request.rb +209 -0
  248. data/lib/lockally/models/add_contact_list_member_request.rb +164 -0
  249. data/lib/lockally/models/add_on.rb +294 -0
  250. data/lib/lockally/models/add_shared_member_request.rb +209 -0
  251. data/lib/lockally/models/admin.rb +310 -0
  252. data/lib/lockally/models/admin_full.rb +362 -0
  253. data/lib/lockally/models/api_key.rb +315 -0
  254. data/lib/lockally/models/audit_event.rb +183 -0
  255. data/lib/lockally/models/batch_lookup_public_keys200_response.rb +149 -0
  256. data/lib/lockally/models/batch_lookup_public_keys200_response_data_inner.rb +165 -0
  257. data/lib/lockally/models/batch_result.rb +218 -0
  258. data/lib/lockally/models/billing_status.rb +507 -0
  259. data/lib/lockally/models/calendar.rb +363 -0
  260. data/lib/lockally/models/calendar_event.rb +416 -0
  261. data/lib/lockally/models/calendar_integration.rb +347 -0
  262. data/lib/lockally/models/calendar_member.rb +318 -0
  263. data/lib/lockally/models/calendar_policies.rb +297 -0
  264. data/lib/lockally/models/contact.rb +424 -0
  265. data/lib/lockally/models/contact_list.rb +353 -0
  266. data/lib/lockally/models/create_billing_checkout200_response.rb +190 -0
  267. data/lib/lockally/models/create_billing_checkout_request.rb +188 -0
  268. data/lib/lockally/models/create_calendar_event_request.rb +245 -0
  269. data/lib/lockally/models/create_calendar_integration_request.rb +197 -0
  270. data/lib/lockally/models/create_calendar_request.rb +236 -0
  271. data/lib/lockally/models/create_contact_list_request.rb +218 -0
  272. data/lib/lockally/models/create_contact_request.rb +280 -0
  273. data/lib/lockally/models/create_dedicated_ip_request_request.rb +164 -0
  274. data/lib/lockally/models/create_distribution_list_request.rb +184 -0
  275. data/lib/lockally/models/create_encryption_key201_response.rb +165 -0
  276. data/lib/lockally/models/create_encryption_key_request.rb +225 -0
  277. data/lib/lockally/models/create_encryption_recovery_request.rb +190 -0
  278. data/lib/lockally/models/create_migration_credential_request.rb +223 -0
  279. data/lib/lockally/models/create_migration_credential_request_credentials.rb +217 -0
  280. data/lib/lockally/models/create_migration_request.rb +225 -0
  281. data/lib/lockally/models/create_resource_request.rb +237 -0
  282. data/lib/lockally/models/create_units_checkout200_response.rb +216 -0
  283. data/lib/lockally/models/create_units_checkout_request.rb +188 -0
  284. data/lib/lockally/models/create_user_request.rb +234 -0
  285. data/lib/lockally/models/dedicated_ip_request.rb +293 -0
  286. data/lib/lockally/models/directory_permissions.rb +316 -0
  287. data/lib/lockally/models/discover_migration202_response.rb +164 -0
  288. data/lib/lockally/models/distribution_list_detail.rb +305 -0
  289. data/lib/lockally/models/distribution_list_summary.rb +277 -0
  290. data/lib/lockally/models/dns_record.rb +304 -0
  291. data/lib/lockally/models/domain.rb +367 -0
  292. data/lib/lockally/models/gal_settings.rb +354 -0
  293. data/lib/lockally/models/get_add_on_status200_response.rb +216 -0
  294. data/lib/lockally/models/get_audit_summary200_response.rb +189 -0
  295. data/lib/lockally/models/get_calendar_security200_response.rb +216 -0
  296. data/lib/lockally/models/get_calendar_security200_response_alerts_inner.rb +190 -0
  297. data/lib/lockally/models/get_calendar_security200_response_delegated_access_inner.rb +183 -0
  298. data/lib/lockally/models/get_calendar_security200_response_external_sharing.rb +165 -0
  299. data/lib/lockally/models/get_calendar_security200_response_public_calendar_list_inner.rb +183 -0
  300. data/lib/lockally/models/get_contact_list200_response.rb +158 -0
  301. data/lib/lockally/models/get_contact_list200_response_members_inner.rb +165 -0
  302. data/lib/lockally/models/get_contact_lists200_response.rb +149 -0
  303. data/lib/lockally/models/get_contact_lists200_response_data_inner.rb +165 -0
  304. data/lib/lockally/models/get_directory_activity200_response.rb +149 -0
  305. data/lib/lockally/models/get_directory_activity200_response_data_inner.rb +174 -0
  306. data/lib/lockally/models/get_directory_stats200_response.rb +192 -0
  307. data/lib/lockally/models/get_domains_status200_response.rb +158 -0
  308. data/lib/lockally/models/get_domains_status200_response_domains_inner.rb +167 -0
  309. data/lib/lockally/models/get_domains_status200_response_domains_inner_checks_inner.rb +199 -0
  310. data/lib/lockally/models/get_encryption_key200_response.rb +192 -0
  311. data/lib/lockally/models/get_integrations_summary200_response.rb +205 -0
  312. data/lib/lockally/models/get_integrations_summary200_response_api_keys_inner.rb +165 -0
  313. data/lib/lockally/models/get_integrations_summary200_response_webhooks_inner.rb +174 -0
  314. data/lib/lockally/models/get_ip_assignment200_response.rb +183 -0
  315. data/lib/lockally/models/get_security200_response.rb +203 -0
  316. data/lib/lockally/models/get_security200_response_alerts_inner.rb +199 -0
  317. data/lib/lockally/models/get_security200_response_stats_inner.rb +165 -0
  318. data/lib/lockally/models/get_storage200_response.rb +196 -0
  319. data/lib/lockally/models/get_storage200_response_top_mailboxes_inner.rb +156 -0
  320. data/lib/lockally/models/get_storage200_response_top_messages_inner.rb +185 -0
  321. data/lib/lockally/models/get_user_insights200_response.rb +198 -0
  322. data/lib/lockally/models/healthz_get200_response.rb +214 -0
  323. data/lib/lockally/models/list_add_ons200_response.rb +166 -0
  324. data/lib/lockally/models/list_calendar_events200_response.rb +149 -0
  325. data/lib/lockally/models/list_calendar_integrations200_response.rb +149 -0
  326. data/lib/lockally/models/list_calendar_members200_response.rb +149 -0
  327. data/lib/lockally/models/list_calendars200_response.rb +149 -0
  328. data/lib/lockally/models/list_contact_lists200_response.rb +149 -0
  329. data/lib/lockally/models/list_contacts200_response.rb +149 -0
  330. data/lib/lockally/models/list_dedicated_ip_requests200_response.rb +166 -0
  331. data/lib/lockally/models/list_distribution_lists200_response.rb +166 -0
  332. data/lib/lockally/models/list_migration_credentials200_response.rb +166 -0
  333. data/lib/lockally/models/list_migration_events200_response.rb +166 -0
  334. data/lib/lockally/models/list_migration_mailboxes200_response.rb +166 -0
  335. data/lib/lockally/models/list_migrations200_response.rb +166 -0
  336. data/lib/lockally/models/list_resources200_response.rb +149 -0
  337. data/lib/lockally/models/list_shared_members200_response.rb +166 -0
  338. data/lib/lockally/models/list_users200_response.rb +192 -0
  339. data/lib/lockally/models/mailbox.rb +357 -0
  340. data/lib/lockally/models/map_migration_request.rb +166 -0
  341. data/lib/lockally/models/map_migration_request_mappings_inner.rb +190 -0
  342. data/lib/lockally/models/message.rb +400 -0
  343. data/lib/lockally/models/message_stats.rb +183 -0
  344. data/lib/lockally/models/message_stats_counts.rb +174 -0
  345. data/lib/lockally/models/message_stats_rates.rb +174 -0
  346. data/lib/lockally/models/message_stats_window.rb +156 -0
  347. data/lib/lockally/models/migration.rb +441 -0
  348. data/lib/lockally/models/migration_credential.rb +310 -0
  349. data/lib/lockally/models/migration_event.rb +330 -0
  350. data/lib/lockally/models/migration_mailbox.rb +462 -0
  351. data/lib/lockally/models/migration_progress.rb +400 -0
  352. data/lib/lockally/models/migration_progress_mailboxes_inner.rb +286 -0
  353. data/lib/lockally/models/migration_settings.rb +185 -0
  354. data/lib/lockally/models/model_alias.rb +268 -0
  355. data/lib/lockally/models/plan_catalog_entry.rb +398 -0
  356. data/lib/lockally/models/problem.rb +235 -0
  357. data/lib/lockally/models/replace_distribution_list_members200_response.rb +270 -0
  358. data/lib/lockally/models/replace_distribution_list_members_request.rb +166 -0
  359. data/lib/lockally/models/resource.rb +353 -0
  360. data/lib/lockally/models/rotate_encryption_key_request.rb +199 -0
  361. data/lib/lockally/models/send_message.rb +310 -0
  362. data/lib/lockally/models/shared_member.rb +318 -0
  363. data/lib/lockally/models/signup_request.rb +279 -0
  364. data/lib/lockally/models/start_migration202_response.rb +190 -0
  365. data/lib/lockally/models/suppression.rb +208 -0
  366. data/lib/lockally/models/template.rb +201 -0
  367. data/lib/lockally/models/template_input.rb +195 -0
  368. data/lib/lockally/models/tenant.rb +424 -0
  369. data/lib/lockally/models/unit_bundle.rb +268 -0
  370. data/lib/lockally/models/update_calendar_event_request.rb +192 -0
  371. data/lib/lockally/models/update_calendar_integration_request.rb +199 -0
  372. data/lib/lockally/models/update_calendar_member_request.rb +188 -0
  373. data/lib/lockally/models/update_calendar_policies_request.rb +337 -0
  374. data/lib/lockally/models/update_calendar_request.rb +217 -0
  375. data/lib/lockally/models/update_contact_list_request.rb +199 -0
  376. data/lib/lockally/models/update_contact_request.rb +265 -0
  377. data/lib/lockally/models/update_directory_permissions_request.rb +244 -0
  378. data/lib/lockally/models/update_gal_settings_request.rb +217 -0
  379. data/lib/lockally/models/update_migration_mailbox_request.rb +157 -0
  380. data/lib/lockally/models/update_migration_request.rb +156 -0
  381. data/lib/lockally/models/update_resource_request.rb +220 -0
  382. data/lib/lockally/models/update_user_request.rb +217 -0
  383. data/lib/lockally/models/user.rb +397 -0
  384. data/lib/lockally/models/user_event.rb +165 -0
  385. data/lib/lockally/models/v1_admin_login_post200_response.rb +242 -0
  386. data/lib/lockally/models/v1_admin_login_post_request.rb +199 -0
  387. data/lib/lockally/models/v1_admin_me_get200_response.rb +190 -0
  388. data/lib/lockally/models/v1_admins_get200_response.rb +166 -0
  389. data/lib/lockally/models/v1_admins_id_patch_request.rb +227 -0
  390. data/lib/lockally/models/v1_admins_post_request.rb +246 -0
  391. data/lib/lockally/models/v1_aliases_get200_response.rb +166 -0
  392. data/lib/lockally/models/v1_aliases_post_request.rb +190 -0
  393. data/lib/lockally/models/v1_api_keys_get200_response.rb +166 -0
  394. data/lib/lockally/models/v1_api_keys_post201_response.rb +349 -0
  395. data/lib/lockally/models/v1_api_keys_post_request.rb +211 -0
  396. data/lib/lockally/models/v1_domains_get200_response.rb +166 -0
  397. data/lib/lockally/models/v1_domains_post_request.rb +164 -0
  398. data/lib/lockally/models/v1_inboxes_mailbox_messages_post_request.rb +221 -0
  399. data/lib/lockally/models/v1_mailboxes_email_export_post201_response.rb +241 -0
  400. data/lib/lockally/models/v1_mailboxes_email_patch_request.rb +203 -0
  401. data/lib/lockally/models/v1_mailboxes_email_vacation_put_request.rb +175 -0
  402. data/lib/lockally/models/v1_mailboxes_get200_response.rb +192 -0
  403. data/lib/lockally/models/v1_mailboxes_post_request.rb +205 -0
  404. data/lib/lockally/models/v1_messages_get200_response.rb +176 -0
  405. data/lib/lockally/models/v1_send_batch_post200_response.rb +149 -0
  406. data/lib/lockally/models/v1_send_batch_post_request.rb +184 -0
  407. data/lib/lockally/models/v1_send_post202_response.rb +252 -0
  408. data/lib/lockally/models/v1_send_post_request.rb +316 -0
  409. data/lib/lockally/models/v1_send_post_request_attachments_inner.rb +217 -0
  410. data/lib/lockally/models/v1_suppressions_get200_response.rb +158 -0
  411. data/lib/lockally/models/v1_suppressions_post_request.rb +209 -0
  412. data/lib/lockally/models/v1_templates_get200_response.rb +149 -0
  413. data/lib/lockally/models/v1_usage_get200_response.rb +300 -0
  414. data/lib/lockally/models/v1_vacation_get200_response.rb +166 -0
  415. data/lib/lockally/models/v1_webhooks_get200_response.rb +166 -0
  416. data/lib/lockally/models/v1_webhooks_id_patch_request.rb +167 -0
  417. data/lib/lockally/models/v1_webhooks_post_request.rb +202 -0
  418. data/lib/lockally/models/vacation_params.rb +208 -0
  419. data/lib/lockally/models/vacation_responder.rb +305 -0
  420. data/lib/lockally/models/webhook.rb +359 -0
  421. data/lib/lockally/version.rb +15 -0
  422. data/lib/lockally.rb +245 -0
  423. data/lockally.gemspec +41 -0
  424. data/spec/api/add_ons_api_spec.rb +78 -0
  425. data/spec/api/admin_api_spec.rb +69 -0
  426. data/spec/api/admins_api_spec.rb +82 -0
  427. data/spec/api/agents_api_spec.rb +197 -0
  428. data/spec/api/ai_api_spec.rb +81 -0
  429. data/spec/api/aliases_api_spec.rb +69 -0
  430. data/spec/api/api_keys_api_spec.rb +70 -0
  431. data/spec/api/billing_api_spec.rb +67 -0
  432. data/spec/api/calendars_api_spec.rb +274 -0
  433. data/spec/api/contact_lists_api_spec.rb +114 -0
  434. data/spec/api/contacts_api_spec.rb +106 -0
  435. data/spec/api/dashboard_api_spec.rb +105 -0
  436. data/spec/api/directory_api_spec.rb +117 -0
  437. data/spec/api/distribution_lists_api_spec.rb +90 -0
  438. data/spec/api/domains_api_spec.rb +93 -0
  439. data/spec/api/drafts_api_spec.rb +121 -0
  440. data/spec/api/encryption_api_spec.rb +90 -0
  441. data/spec/api/health_api_spec.rb +46 -0
  442. data/spec/api/ip_pools_api_spec.rb +66 -0
  443. data/spec/api/mailboxes_api_spec.rb +203 -0
  444. data/spec/api/migrations_api_spec.rb +268 -0
  445. data/spec/api/resources_api_spec.rb +90 -0
  446. data/spec/api/send_api_spec.rb +115 -0
  447. data/spec/api/signup_api_spec.rb +46 -0
  448. data/spec/api/suppressions_api_spec.rb +81 -0
  449. data/spec/api/templates_api_spec.rb +90 -0
  450. data/spec/api/tenant_api_spec.rb +57 -0
  451. data/spec/api/test_api_spec.rb +46 -0
  452. data/spec/api/users_api_spec.rb +92 -0
  453. data/spec/api/webhooks_api_spec.rb +83 -0
  454. data/spec/models/activate_add_on200_response_spec.rb +54 -0
  455. data/spec/models/add_calendar_member_request_spec.rb +46 -0
  456. data/spec/models/add_contact_list_member_request_spec.rb +36 -0
  457. data/spec/models/add_on_spec.rb +66 -0
  458. data/spec/models/add_shared_member_request_spec.rb +46 -0
  459. data/spec/models/admin_full_spec.rb +94 -0
  460. data/spec/models/admin_spec.rb +76 -0
  461. data/spec/models/api_key_spec.rb +78 -0
  462. data/spec/models/audit_event_spec.rb +60 -0
  463. data/spec/models/batch_lookup_public_keys200_response_data_inner_spec.rb +48 -0
  464. data/spec/models/batch_lookup_public_keys200_response_spec.rb +36 -0
  465. data/spec/models/batch_result_spec.rb +64 -0
  466. data/spec/models/billing_status_spec.rb +128 -0
  467. data/spec/models/calendar_event_spec.rb +102 -0
  468. data/spec/models/calendar_integration_spec.rb +92 -0
  469. data/spec/models/calendar_member_spec.rb +70 -0
  470. data/spec/models/calendar_policies_spec.rb +106 -0
  471. data/spec/models/calendar_spec.rb +100 -0
  472. data/spec/models/contact_list_spec.rb +82 -0
  473. data/spec/models/contact_spec.rb +118 -0
  474. data/spec/models/create_billing_checkout200_response_spec.rb +42 -0
  475. data/spec/models/create_billing_checkout_request_spec.rb +40 -0
  476. data/spec/models/create_calendar_event_request_spec.rb +66 -0
  477. data/spec/models/create_calendar_integration_request_spec.rb +46 -0
  478. data/spec/models/create_calendar_request_spec.rb +64 -0
  479. data/spec/models/create_contact_list_request_spec.rb +52 -0
  480. data/spec/models/create_contact_request_spec.rb +82 -0
  481. data/spec/models/create_dedicated_ip_request_request_spec.rb +36 -0
  482. data/spec/models/create_distribution_list_request_spec.rb +48 -0
  483. data/spec/models/create_encryption_key201_response_spec.rb +48 -0
  484. data/spec/models/create_encryption_key_request_spec.rb +54 -0
  485. data/spec/models/create_encryption_recovery_request_spec.rb +42 -0
  486. data/spec/models/create_migration_credential_request_credentials_spec.rb +60 -0
  487. data/spec/models/create_migration_credential_request_spec.rb +52 -0
  488. data/spec/models/create_migration_request_spec.rb +54 -0
  489. data/spec/models/create_resource_request_spec.rb +52 -0
  490. data/spec/models/create_units_checkout200_response_spec.rb +48 -0
  491. data/spec/models/create_units_checkout_request_spec.rb +40 -0
  492. data/spec/models/create_user_request_spec.rb +60 -0
  493. data/spec/models/dedicated_ip_request_spec.rb +76 -0
  494. data/spec/models/directory_permissions_spec.rb +88 -0
  495. data/spec/models/discover_migration202_response_spec.rb +36 -0
  496. data/spec/models/distribution_list_detail_spec.rb +72 -0
  497. data/spec/models/distribution_list_summary_spec.rb +66 -0
  498. data/spec/models/dns_record_spec.rb +74 -0
  499. data/spec/models/domain_spec.rb +90 -0
  500. data/spec/models/gal_settings_spec.rb +94 -0
  501. data/spec/models/get_add_on_status200_response_spec.rb +48 -0
  502. data/spec/models/get_audit_summary200_response_spec.rb +60 -0
  503. data/spec/models/get_calendar_security200_response_alerts_inner_spec.rb +46 -0
  504. data/spec/models/get_calendar_security200_response_delegated_access_inner_spec.rb +60 -0
  505. data/spec/models/get_calendar_security200_response_external_sharing_spec.rb +48 -0
  506. data/spec/models/get_calendar_security200_response_public_calendar_list_inner_spec.rb +60 -0
  507. data/spec/models/get_calendar_security200_response_spec.rb +78 -0
  508. data/spec/models/get_contact_list200_response_members_inner_spec.rb +48 -0
  509. data/spec/models/get_contact_list200_response_spec.rb +42 -0
  510. data/spec/models/get_contact_lists200_response_data_inner_spec.rb +48 -0
  511. data/spec/models/get_contact_lists200_response_spec.rb +36 -0
  512. data/spec/models/get_directory_activity200_response_data_inner_spec.rb +54 -0
  513. data/spec/models/get_directory_activity200_response_spec.rb +36 -0
  514. data/spec/models/get_directory_stats200_response_spec.rb +66 -0
  515. data/spec/models/get_domains_status200_response_domains_inner_checks_inner_spec.rb +52 -0
  516. data/spec/models/get_domains_status200_response_domains_inner_spec.rb +48 -0
  517. data/spec/models/get_domains_status200_response_spec.rb +42 -0
  518. data/spec/models/get_encryption_key200_response_spec.rb +66 -0
  519. data/spec/models/get_integrations_summary200_response_api_keys_inner_spec.rb +48 -0
  520. data/spec/models/get_integrations_summary200_response_spec.rb +72 -0
  521. data/spec/models/get_integrations_summary200_response_webhooks_inner_spec.rb +54 -0
  522. data/spec/models/get_ip_assignment200_response_spec.rb +60 -0
  523. data/spec/models/get_security200_response_alerts_inner_spec.rb +52 -0
  524. data/spec/models/get_security200_response_spec.rb +52 -0
  525. data/spec/models/get_security200_response_stats_inner_spec.rb +48 -0
  526. data/spec/models/get_storage200_response_spec.rb +66 -0
  527. data/spec/models/get_storage200_response_top_mailboxes_inner_spec.rb +42 -0
  528. data/spec/models/get_storage200_response_top_messages_inner_spec.rb +60 -0
  529. data/spec/models/get_user_insights200_response_spec.rb +66 -0
  530. data/spec/models/healthz_get200_response_spec.rb +46 -0
  531. data/spec/models/list_add_ons200_response_spec.rb +36 -0
  532. data/spec/models/list_calendar_events200_response_spec.rb +36 -0
  533. data/spec/models/list_calendar_integrations200_response_spec.rb +36 -0
  534. data/spec/models/list_calendar_members200_response_spec.rb +36 -0
  535. data/spec/models/list_calendars200_response_spec.rb +36 -0
  536. data/spec/models/list_contact_lists200_response_spec.rb +36 -0
  537. data/spec/models/list_contacts200_response_spec.rb +36 -0
  538. data/spec/models/list_dedicated_ip_requests200_response_spec.rb +36 -0
  539. data/spec/models/list_distribution_lists200_response_spec.rb +36 -0
  540. data/spec/models/list_migration_credentials200_response_spec.rb +36 -0
  541. data/spec/models/list_migration_events200_response_spec.rb +36 -0
  542. data/spec/models/list_migration_mailboxes200_response_spec.rb +36 -0
  543. data/spec/models/list_migrations200_response_spec.rb +36 -0
  544. data/spec/models/list_resources200_response_spec.rb +36 -0
  545. data/spec/models/list_shared_members200_response_spec.rb +36 -0
  546. data/spec/models/list_users200_response_spec.rb +42 -0
  547. data/spec/models/mailbox_spec.rb +96 -0
  548. data/spec/models/map_migration_request_mappings_inner_spec.rb +42 -0
  549. data/spec/models/map_migration_request_spec.rb +36 -0
  550. data/spec/models/message_spec.rb +100 -0
  551. data/spec/models/message_stats_counts_spec.rb +54 -0
  552. data/spec/models/message_stats_rates_spec.rb +54 -0
  553. data/spec/models/message_stats_spec.rb +60 -0
  554. data/spec/models/message_stats_window_spec.rb +42 -0
  555. data/spec/models/migration_credential_spec.rb +76 -0
  556. data/spec/models/migration_event_spec.rb +90 -0
  557. data/spec/models/migration_mailbox_spec.rb +144 -0
  558. data/spec/models/migration_progress_mailboxes_inner_spec.rb +72 -0
  559. data/spec/models/migration_progress_spec.rb +90 -0
  560. data/spec/models/migration_settings_spec.rb +60 -0
  561. data/spec/models/migration_spec.rb +118 -0
  562. data/spec/models/model_alias_spec.rb +60 -0
  563. data/spec/models/plan_catalog_entry_spec.rb +90 -0
  564. data/spec/models/problem_spec.rb +60 -0
  565. data/spec/models/replace_distribution_list_members200_response_spec.rb +60 -0
  566. data/spec/models/replace_distribution_list_members_request_spec.rb +36 -0
  567. data/spec/models/resource_spec.rb +82 -0
  568. data/spec/models/rotate_encryption_key_request_spec.rb +48 -0
  569. data/spec/models/send_message_spec.rb +108 -0
  570. data/spec/models/shared_member_spec.rb +70 -0
  571. data/spec/models/signup_request_spec.rb +64 -0
  572. data/spec/models/start_migration202_response_spec.rb +42 -0
  573. data/spec/models/suppression_spec.rb +58 -0
  574. data/spec/models/template_input_spec.rb +54 -0
  575. data/spec/models/template_spec.rb +72 -0
  576. data/spec/models/tenant_spec.rb +106 -0
  577. data/spec/models/unit_bundle_spec.rb +60 -0
  578. data/spec/models/update_calendar_event_request_spec.rb +66 -0
  579. data/spec/models/update_calendar_integration_request_spec.rb +52 -0
  580. data/spec/models/update_calendar_member_request_spec.rb +40 -0
  581. data/spec/models/update_calendar_policies_request_spec.rb +88 -0
  582. data/spec/models/update_calendar_request_spec.rb +64 -0
  583. data/spec/models/update_contact_list_request_spec.rb +52 -0
  584. data/spec/models/update_contact_request_spec.rb +92 -0
  585. data/spec/models/update_directory_permissions_request_spec.rb +70 -0
  586. data/spec/models/update_gal_settings_request_spec.rb +64 -0
  587. data/spec/models/update_migration_mailbox_request_spec.rb +42 -0
  588. data/spec/models/update_migration_request_spec.rb +42 -0
  589. data/spec/models/update_resource_request_spec.rb +62 -0
  590. data/spec/models/update_user_request_spec.rb +64 -0
  591. data/spec/models/user_event_spec.rb +48 -0
  592. data/spec/models/user_spec.rb +100 -0
  593. data/spec/models/v1_admin_login_post200_response_spec.rb +54 -0
  594. data/spec/models/v1_admin_login_post_request_spec.rb +42 -0
  595. data/spec/models/v1_admin_me_get200_response_spec.rb +42 -0
  596. data/spec/models/v1_admins_get200_response_spec.rb +36 -0
  597. data/spec/models/v1_admins_id_patch_request_spec.rb +58 -0
  598. data/spec/models/v1_admins_post_request_spec.rb +58 -0
  599. data/spec/models/v1_aliases_get200_response_spec.rb +36 -0
  600. data/spec/models/v1_aliases_post_request_spec.rb +42 -0
  601. data/spec/models/v1_api_keys_get200_response_spec.rb +36 -0
  602. data/spec/models/v1_api_keys_post201_response_spec.rb +84 -0
  603. data/spec/models/v1_api_keys_post_request_spec.rb +46 -0
  604. data/spec/models/v1_domains_get200_response_spec.rb +36 -0
  605. data/spec/models/v1_domains_post_request_spec.rb +36 -0
  606. data/spec/models/v1_inboxes_mailbox_messages_post_request_spec.rb +60 -0
  607. data/spec/models/v1_mailboxes_email_export_post201_response_spec.rb +52 -0
  608. data/spec/models/v1_mailboxes_email_patch_request_spec.rb +48 -0
  609. data/spec/models/v1_mailboxes_email_vacation_put_request_spec.rb +42 -0
  610. data/spec/models/v1_mailboxes_get200_response_spec.rb +42 -0
  611. data/spec/models/v1_mailboxes_post_request_spec.rb +48 -0
  612. data/spec/models/v1_messages_get200_response_spec.rb +42 -0
  613. data/spec/models/v1_send_batch_post200_response_spec.rb +36 -0
  614. data/spec/models/v1_send_batch_post_request_spec.rb +36 -0
  615. data/spec/models/v1_send_post202_response_spec.rb +58 -0
  616. data/spec/models/v1_send_post_request_attachments_inner_spec.rb +48 -0
  617. data/spec/models/v1_send_post_request_spec.rb +108 -0
  618. data/spec/models/v1_suppressions_get200_response_spec.rb +42 -0
  619. data/spec/models/v1_suppressions_post_request_spec.rb +46 -0
  620. data/spec/models/v1_templates_get200_response_spec.rb +36 -0
  621. data/spec/models/v1_usage_get200_response_spec.rb +108 -0
  622. data/spec/models/v1_vacation_get200_response_spec.rb +36 -0
  623. data/spec/models/v1_webhooks_get200_response_spec.rb +36 -0
  624. data/spec/models/v1_webhooks_id_patch_request_spec.rb +48 -0
  625. data/spec/models/v1_webhooks_post_request_spec.rb +42 -0
  626. data/spec/models/vacation_params_spec.rb +54 -0
  627. data/spec/models/vacation_responder_spec.rb +72 -0
  628. data/spec/models/webhook_spec.rb +96 -0
  629. data/spec/spec_helper.rb +111 -0
  630. metadata +952 -0
@@ -0,0 +1,209 @@
1
+ =begin
2
+ #lockally control plane
3
+
4
+ #The lockally control plane lets integrators and direct customers manage everything except actual mail data flow (which uses standard JMAP / IMAP / SMTP-submission against the data plane endpoints). **Authentication.** All `/v1/*` endpoints require a Bearer API key in the `Authorization` header. Keys are formatted `lk_live_<8-char-prefix>_<32-char-secret>`. Generate the first key for a tenant via `cmd/seed`; subsequent keys via `POST /v1/api-keys`. **Errors.** Failures return [RFC 9457](https://www.rfc-editor.org/rfc/rfc9457) `application/problem+json` documents. **Scopes.** Each endpoint requires a specific scope on the presented key. Insufficient scope returns `403` with the required scope name in `detail`.
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+ Contact: support@lockally.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Lockally
17
+ class V1SuppressionsPostRequest < ApiModelBase
18
+ attr_accessor :email
19
+
20
+ attr_accessor :reason
21
+
22
+ class EnumAttributeValidator
23
+ attr_reader :datatype
24
+ attr_reader :allowable_values
25
+
26
+ def initialize(datatype, allowable_values)
27
+ @allowable_values = allowable_values.map do |value|
28
+ case datatype.to_s
29
+ when /Integer/i
30
+ value.to_i
31
+ when /Float/i
32
+ value.to_f
33
+ else
34
+ value
35
+ end
36
+ end
37
+ end
38
+
39
+ def valid?(value)
40
+ !value || allowable_values.include?(value)
41
+ end
42
+ end
43
+
44
+ # Attribute mapping from ruby-style variable name to JSON key.
45
+ def self.attribute_map
46
+ {
47
+ :'email' => :'email',
48
+ :'reason' => :'reason'
49
+ }
50
+ end
51
+
52
+ # Returns attribute mapping this model knows about
53
+ def self.acceptable_attribute_map
54
+ attribute_map
55
+ end
56
+
57
+ # Returns all the JSON keys this model knows about
58
+ def self.acceptable_attributes
59
+ acceptable_attribute_map.values
60
+ end
61
+
62
+ # Attribute type mapping.
63
+ def self.openapi_types
64
+ {
65
+ :'email' => :'String',
66
+ :'reason' => :'String'
67
+ }
68
+ end
69
+
70
+ # List of attributes with nullable: true
71
+ def self.openapi_nullable
72
+ Set.new([
73
+ ])
74
+ end
75
+
76
+ # Initializes the object
77
+ # @param [Hash] attributes Model attributes in the form of hash
78
+ def initialize(attributes = {})
79
+ if (!attributes.is_a?(Hash))
80
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Lockally::V1SuppressionsPostRequest` initialize method"
81
+ end
82
+
83
+ # check to see if the attribute exists and convert string to symbol for hash key
84
+ acceptable_attribute_map = self.class.acceptable_attribute_map
85
+ attributes = attributes.each_with_object({}) { |(k, v), h|
86
+ if (!acceptable_attribute_map.key?(k.to_sym))
87
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Lockally::V1SuppressionsPostRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
88
+ end
89
+ h[k.to_sym] = v
90
+ }
91
+
92
+ if attributes.key?(:'email')
93
+ self.email = attributes[:'email']
94
+ else
95
+ self.email = nil
96
+ end
97
+
98
+ if attributes.key?(:'reason')
99
+ self.reason = attributes[:'reason']
100
+ else
101
+ self.reason = 'manual'
102
+ end
103
+ end
104
+
105
+ # Show invalid properties with the reasons. Usually used together with valid?
106
+ # @return Array for valid properties with the reasons
107
+ def list_invalid_properties
108
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
109
+ invalid_properties = Array.new
110
+ if @email.nil?
111
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
112
+ end
113
+
114
+ invalid_properties
115
+ end
116
+
117
+ # Check to see if the all the properties in the model are valid
118
+ # @return true if the model is valid
119
+ def valid?
120
+ warn '[DEPRECATED] the `valid?` method is obsolete'
121
+ return false if @email.nil?
122
+ reason_validator = EnumAttributeValidator.new('String', ["unsubscribe", "complaint", "bounce", "manual"])
123
+ return false unless reason_validator.valid?(@reason)
124
+ true
125
+ end
126
+
127
+ # Custom attribute writer method with validation
128
+ # @param [Object] email Value to be assigned
129
+ def email=(email)
130
+ if email.nil?
131
+ fail ArgumentError, 'email cannot be nil'
132
+ end
133
+
134
+ @email = email
135
+ end
136
+
137
+ # Custom attribute writer method checking allowed values (enum).
138
+ # @param [Object] reason Object to be assigned
139
+ def reason=(reason)
140
+ validator = EnumAttributeValidator.new('String', ["unsubscribe", "complaint", "bounce", "manual"])
141
+ unless validator.valid?(reason)
142
+ fail ArgumentError, "invalid value for \"reason\", must be one of #{validator.allowable_values}."
143
+ end
144
+ @reason = reason
145
+ end
146
+
147
+ # Checks equality by comparing each attribute.
148
+ # @param [Object] Object to be compared
149
+ def ==(o)
150
+ return true if self.equal?(o)
151
+ self.class == o.class &&
152
+ email == o.email &&
153
+ reason == o.reason
154
+ end
155
+
156
+ # @see the `==` method
157
+ # @param [Object] Object to be compared
158
+ def eql?(o)
159
+ self == o
160
+ end
161
+
162
+ # Calculates hash code according to all attributes.
163
+ # @return [Integer] Hash code
164
+ def hash
165
+ [email, reason].hash
166
+ end
167
+
168
+ # Builds the object from hash
169
+ # @param [Hash] attributes Model attributes in the form of hash
170
+ # @return [Object] Returns the model itself
171
+ def self.build_from_hash(attributes)
172
+ return nil unless attributes.is_a?(Hash)
173
+ attributes = attributes.transform_keys(&:to_sym)
174
+ transformed_hash = {}
175
+ openapi_types.each_pair do |key, type|
176
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
177
+ transformed_hash["#{key}"] = nil
178
+ elsif type =~ /\AArray<(.*)>/i
179
+ # check to ensure the input is an array given that the attribute
180
+ # is documented as an array but the input is not
181
+ if attributes[attribute_map[key]].is_a?(Array)
182
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
183
+ end
184
+ elsif !attributes[attribute_map[key]].nil?
185
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
186
+ end
187
+ end
188
+ new(transformed_hash)
189
+ end
190
+
191
+ # Returns the object in the form of hash
192
+ # @return [Hash] Returns the object in the form of hash
193
+ def to_hash
194
+ hash = {}
195
+ self.class.attribute_map.each_pair do |attr, param|
196
+ value = self.send(attr)
197
+ if value.nil?
198
+ is_nullable = self.class.openapi_nullable.include?(attr)
199
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
200
+ end
201
+
202
+ hash[param] = _to_hash(value)
203
+ end
204
+ hash
205
+ end
206
+
207
+ end
208
+
209
+ end
@@ -0,0 +1,149 @@
1
+ =begin
2
+ #lockally control plane
3
+
4
+ #The lockally control plane lets integrators and direct customers manage everything except actual mail data flow (which uses standard JMAP / IMAP / SMTP-submission against the data plane endpoints). **Authentication.** All `/v1/*` endpoints require a Bearer API key in the `Authorization` header. Keys are formatted `lk_live_<8-char-prefix>_<32-char-secret>`. Generate the first key for a tenant via `cmd/seed`; subsequent keys via `POST /v1/api-keys`. **Errors.** Failures return [RFC 9457](https://www.rfc-editor.org/rfc/rfc9457) `application/problem+json` documents. **Scopes.** Each endpoint requires a specific scope on the presented key. Insufficient scope returns `403` with the required scope name in `detail`.
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+ Contact: support@lockally.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Lockally
17
+ class V1TemplatesGet200Response < ApiModelBase
18
+ attr_accessor :data
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'data' => :'data'
24
+ }
25
+ end
26
+
27
+ # Returns attribute mapping this model knows about
28
+ def self.acceptable_attribute_map
29
+ attribute_map
30
+ end
31
+
32
+ # Returns all the JSON keys this model knows about
33
+ def self.acceptable_attributes
34
+ acceptable_attribute_map.values
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ def self.openapi_types
39
+ {
40
+ :'data' => :'Array<Template>'
41
+ }
42
+ end
43
+
44
+ # List of attributes with nullable: true
45
+ def self.openapi_nullable
46
+ Set.new([
47
+ ])
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param [Hash] attributes Model attributes in the form of hash
52
+ def initialize(attributes = {})
53
+ if (!attributes.is_a?(Hash))
54
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Lockally::V1TemplatesGet200Response` initialize method"
55
+ end
56
+
57
+ # check to see if the attribute exists and convert string to symbol for hash key
58
+ acceptable_attribute_map = self.class.acceptable_attribute_map
59
+ attributes = attributes.each_with_object({}) { |(k, v), h|
60
+ if (!acceptable_attribute_map.key?(k.to_sym))
61
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Lockally::V1TemplatesGet200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
62
+ end
63
+ h[k.to_sym] = v
64
+ }
65
+
66
+ if attributes.key?(:'data')
67
+ if (value = attributes[:'data']).is_a?(Array)
68
+ self.data = value
69
+ end
70
+ end
71
+ end
72
+
73
+ # Show invalid properties with the reasons. Usually used together with valid?
74
+ # @return Array for valid properties with the reasons
75
+ def list_invalid_properties
76
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
77
+ invalid_properties = Array.new
78
+ invalid_properties
79
+ end
80
+
81
+ # Check to see if the all the properties in the model are valid
82
+ # @return true if the model is valid
83
+ def valid?
84
+ warn '[DEPRECATED] the `valid?` method is obsolete'
85
+ true
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param [Object] Object to be compared
90
+ def ==(o)
91
+ return true if self.equal?(o)
92
+ self.class == o.class &&
93
+ data == o.data
94
+ end
95
+
96
+ # @see the `==` method
97
+ # @param [Object] Object to be compared
98
+ def eql?(o)
99
+ self == o
100
+ end
101
+
102
+ # Calculates hash code according to all attributes.
103
+ # @return [Integer] Hash code
104
+ def hash
105
+ [data].hash
106
+ end
107
+
108
+ # Builds the object from hash
109
+ # @param [Hash] attributes Model attributes in the form of hash
110
+ # @return [Object] Returns the model itself
111
+ def self.build_from_hash(attributes)
112
+ return nil unless attributes.is_a?(Hash)
113
+ attributes = attributes.transform_keys(&:to_sym)
114
+ transformed_hash = {}
115
+ openapi_types.each_pair do |key, type|
116
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
117
+ transformed_hash["#{key}"] = nil
118
+ elsif type =~ /\AArray<(.*)>/i
119
+ # check to ensure the input is an array given that the attribute
120
+ # is documented as an array but the input is not
121
+ if attributes[attribute_map[key]].is_a?(Array)
122
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
123
+ end
124
+ elsif !attributes[attribute_map[key]].nil?
125
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
126
+ end
127
+ end
128
+ new(transformed_hash)
129
+ end
130
+
131
+ # Returns the object in the form of hash
132
+ # @return [Hash] Returns the object in the form of hash
133
+ def to_hash
134
+ hash = {}
135
+ self.class.attribute_map.each_pair do |attr, param|
136
+ value = self.send(attr)
137
+ if value.nil?
138
+ is_nullable = self.class.openapi_nullable.include?(attr)
139
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
140
+ end
141
+
142
+ hash[param] = _to_hash(value)
143
+ end
144
+ hash
145
+ end
146
+
147
+ end
148
+
149
+ end
@@ -0,0 +1,300 @@
1
+ =begin
2
+ #lockally control plane
3
+
4
+ #The lockally control plane lets integrators and direct customers manage everything except actual mail data flow (which uses standard JMAP / IMAP / SMTP-submission against the data plane endpoints). **Authentication.** All `/v1/*` endpoints require a Bearer API key in the `Authorization` header. Keys are formatted `lk_live_<8-char-prefix>_<32-char-secret>`. Generate the first key for a tenant via `cmd/seed`; subsequent keys via `POST /v1/api-keys`. **Errors.** Failures return [RFC 9457](https://www.rfc-editor.org/rfc/rfc9457) `application/problem+json` documents. **Scopes.** Each endpoint requires a specific scope on the presented key. Insufficient scope returns `403` with the required scope name in `detail`.
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+ Contact: support@lockally.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Lockally
17
+ class V1UsageGet200Response < ApiModelBase
18
+ # Mailboxes that are neither disabled nor soft-deleted.
19
+ attr_accessor :mailboxes_active
20
+
21
+ # All mailboxes for this tenant, including disabled/soft-deleted.
22
+ attr_accessor :mailboxes_total
23
+
24
+ # Domains that have passed DNS verification.
25
+ attr_accessor :domains_verified
26
+
27
+ attr_accessor :domains_total
28
+
29
+ # Sends in the 60-second window ending now. Used by the rate-cap check.
30
+ attr_accessor :messages_sent_last_60s
31
+
32
+ # Sends since 00:00 UTC. Compared against `daily_msg_quota`.
33
+ attr_accessor :messages_sent_today_utc
34
+
35
+ # Rolling 30-day send count (not calendar month).
36
+ attr_accessor :messages_sent_last_30d
37
+
38
+ # Lifetime sum of `messages.size_bytes` for this tenant.
39
+ attr_accessor :bytes_stored
40
+
41
+ # Per-tenant outbound rate cap (sends per minute).
42
+ attr_accessor :rate_cap_per_min
43
+
44
+ # Per-tenant daily send quota (UTC day boundary).
45
+ attr_accessor :daily_msg_quota
46
+
47
+ attr_accessor :webhooks_total
48
+
49
+ # Webhook subscriptions auto-paused after 50 consecutive failures (LT2).
50
+ attr_accessor :webhooks_paused
51
+
52
+ # When this snapshot was generated, RFC 3339 UTC.
53
+ attr_accessor :generated_at
54
+
55
+ # Attribute mapping from ruby-style variable name to JSON key.
56
+ def self.attribute_map
57
+ {
58
+ :'mailboxes_active' => :'mailboxes_active',
59
+ :'mailboxes_total' => :'mailboxes_total',
60
+ :'domains_verified' => :'domains_verified',
61
+ :'domains_total' => :'domains_total',
62
+ :'messages_sent_last_60s' => :'messages_sent_last_60s',
63
+ :'messages_sent_today_utc' => :'messages_sent_today_utc',
64
+ :'messages_sent_last_30d' => :'messages_sent_last_30d',
65
+ :'bytes_stored' => :'bytes_stored',
66
+ :'rate_cap_per_min' => :'rate_cap_per_min',
67
+ :'daily_msg_quota' => :'daily_msg_quota',
68
+ :'webhooks_total' => :'webhooks_total',
69
+ :'webhooks_paused' => :'webhooks_paused',
70
+ :'generated_at' => :'generated_at'
71
+ }
72
+ end
73
+
74
+ # Returns attribute mapping this model knows about
75
+ def self.acceptable_attribute_map
76
+ attribute_map
77
+ end
78
+
79
+ # Returns all the JSON keys this model knows about
80
+ def self.acceptable_attributes
81
+ acceptable_attribute_map.values
82
+ end
83
+
84
+ # Attribute type mapping.
85
+ def self.openapi_types
86
+ {
87
+ :'mailboxes_active' => :'Integer',
88
+ :'mailboxes_total' => :'Integer',
89
+ :'domains_verified' => :'Integer',
90
+ :'domains_total' => :'Integer',
91
+ :'messages_sent_last_60s' => :'Integer',
92
+ :'messages_sent_today_utc' => :'Integer',
93
+ :'messages_sent_last_30d' => :'Integer',
94
+ :'bytes_stored' => :'Integer',
95
+ :'rate_cap_per_min' => :'Integer',
96
+ :'daily_msg_quota' => :'Integer',
97
+ :'webhooks_total' => :'Integer',
98
+ :'webhooks_paused' => :'Integer',
99
+ :'generated_at' => :'Time'
100
+ }
101
+ end
102
+
103
+ # List of attributes with nullable: true
104
+ def self.openapi_nullable
105
+ Set.new([
106
+ ])
107
+ end
108
+
109
+ # Initializes the object
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ def initialize(attributes = {})
112
+ if (!attributes.is_a?(Hash))
113
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Lockally::V1UsageGet200Response` initialize method"
114
+ end
115
+
116
+ # check to see if the attribute exists and convert string to symbol for hash key
117
+ acceptable_attribute_map = self.class.acceptable_attribute_map
118
+ attributes = attributes.each_with_object({}) { |(k, v), h|
119
+ if (!acceptable_attribute_map.key?(k.to_sym))
120
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Lockally::V1UsageGet200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
121
+ end
122
+ h[k.to_sym] = v
123
+ }
124
+
125
+ if attributes.key?(:'mailboxes_active')
126
+ self.mailboxes_active = attributes[:'mailboxes_active']
127
+ else
128
+ self.mailboxes_active = nil
129
+ end
130
+
131
+ if attributes.key?(:'mailboxes_total')
132
+ self.mailboxes_total = attributes[:'mailboxes_total']
133
+ end
134
+
135
+ if attributes.key?(:'domains_verified')
136
+ self.domains_verified = attributes[:'domains_verified']
137
+ end
138
+
139
+ if attributes.key?(:'domains_total')
140
+ self.domains_total = attributes[:'domains_total']
141
+ end
142
+
143
+ if attributes.key?(:'messages_sent_last_60s')
144
+ self.messages_sent_last_60s = attributes[:'messages_sent_last_60s']
145
+ end
146
+
147
+ if attributes.key?(:'messages_sent_today_utc')
148
+ self.messages_sent_today_utc = attributes[:'messages_sent_today_utc']
149
+ end
150
+
151
+ if attributes.key?(:'messages_sent_last_30d')
152
+ self.messages_sent_last_30d = attributes[:'messages_sent_last_30d']
153
+ end
154
+
155
+ if attributes.key?(:'bytes_stored')
156
+ self.bytes_stored = attributes[:'bytes_stored']
157
+ end
158
+
159
+ if attributes.key?(:'rate_cap_per_min')
160
+ self.rate_cap_per_min = attributes[:'rate_cap_per_min']
161
+ end
162
+
163
+ if attributes.key?(:'daily_msg_quota')
164
+ self.daily_msg_quota = attributes[:'daily_msg_quota']
165
+ end
166
+
167
+ if attributes.key?(:'webhooks_total')
168
+ self.webhooks_total = attributes[:'webhooks_total']
169
+ end
170
+
171
+ if attributes.key?(:'webhooks_paused')
172
+ self.webhooks_paused = attributes[:'webhooks_paused']
173
+ end
174
+
175
+ if attributes.key?(:'generated_at')
176
+ self.generated_at = attributes[:'generated_at']
177
+ else
178
+ self.generated_at = nil
179
+ end
180
+ end
181
+
182
+ # Show invalid properties with the reasons. Usually used together with valid?
183
+ # @return Array for valid properties with the reasons
184
+ def list_invalid_properties
185
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
186
+ invalid_properties = Array.new
187
+ if @mailboxes_active.nil?
188
+ invalid_properties.push('invalid value for "mailboxes_active", mailboxes_active cannot be nil.')
189
+ end
190
+
191
+ if @generated_at.nil?
192
+ invalid_properties.push('invalid value for "generated_at", generated_at cannot be nil.')
193
+ end
194
+
195
+ invalid_properties
196
+ end
197
+
198
+ # Check to see if the all the properties in the model are valid
199
+ # @return true if the model is valid
200
+ def valid?
201
+ warn '[DEPRECATED] the `valid?` method is obsolete'
202
+ return false if @mailboxes_active.nil?
203
+ return false if @generated_at.nil?
204
+ true
205
+ end
206
+
207
+ # Custom attribute writer method with validation
208
+ # @param [Object] mailboxes_active Value to be assigned
209
+ def mailboxes_active=(mailboxes_active)
210
+ if mailboxes_active.nil?
211
+ fail ArgumentError, 'mailboxes_active cannot be nil'
212
+ end
213
+
214
+ @mailboxes_active = mailboxes_active
215
+ end
216
+
217
+ # Custom attribute writer method with validation
218
+ # @param [Object] generated_at Value to be assigned
219
+ def generated_at=(generated_at)
220
+ if generated_at.nil?
221
+ fail ArgumentError, 'generated_at cannot be nil'
222
+ end
223
+
224
+ @generated_at = generated_at
225
+ end
226
+
227
+ # Checks equality by comparing each attribute.
228
+ # @param [Object] Object to be compared
229
+ def ==(o)
230
+ return true if self.equal?(o)
231
+ self.class == o.class &&
232
+ mailboxes_active == o.mailboxes_active &&
233
+ mailboxes_total == o.mailboxes_total &&
234
+ domains_verified == o.domains_verified &&
235
+ domains_total == o.domains_total &&
236
+ messages_sent_last_60s == o.messages_sent_last_60s &&
237
+ messages_sent_today_utc == o.messages_sent_today_utc &&
238
+ messages_sent_last_30d == o.messages_sent_last_30d &&
239
+ bytes_stored == o.bytes_stored &&
240
+ rate_cap_per_min == o.rate_cap_per_min &&
241
+ daily_msg_quota == o.daily_msg_quota &&
242
+ webhooks_total == o.webhooks_total &&
243
+ webhooks_paused == o.webhooks_paused &&
244
+ generated_at == o.generated_at
245
+ end
246
+
247
+ # @see the `==` method
248
+ # @param [Object] Object to be compared
249
+ def eql?(o)
250
+ self == o
251
+ end
252
+
253
+ # Calculates hash code according to all attributes.
254
+ # @return [Integer] Hash code
255
+ def hash
256
+ [mailboxes_active, mailboxes_total, domains_verified, domains_total, messages_sent_last_60s, messages_sent_today_utc, messages_sent_last_30d, bytes_stored, rate_cap_per_min, daily_msg_quota, webhooks_total, webhooks_paused, generated_at].hash
257
+ end
258
+
259
+ # Builds the object from hash
260
+ # @param [Hash] attributes Model attributes in the form of hash
261
+ # @return [Object] Returns the model itself
262
+ def self.build_from_hash(attributes)
263
+ return nil unless attributes.is_a?(Hash)
264
+ attributes = attributes.transform_keys(&:to_sym)
265
+ transformed_hash = {}
266
+ openapi_types.each_pair do |key, type|
267
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
268
+ transformed_hash["#{key}"] = nil
269
+ elsif type =~ /\AArray<(.*)>/i
270
+ # check to ensure the input is an array given that the attribute
271
+ # is documented as an array but the input is not
272
+ if attributes[attribute_map[key]].is_a?(Array)
273
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
274
+ end
275
+ elsif !attributes[attribute_map[key]].nil?
276
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
277
+ end
278
+ end
279
+ new(transformed_hash)
280
+ end
281
+
282
+ # Returns the object in the form of hash
283
+ # @return [Hash] Returns the object in the form of hash
284
+ def to_hash
285
+ hash = {}
286
+ self.class.attribute_map.each_pair do |attr, param|
287
+ value = self.send(attr)
288
+ if value.nil?
289
+ is_nullable = self.class.openapi_nullable.include?(attr)
290
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
291
+ end
292
+
293
+ hash[param] = _to_hash(value)
294
+ end
295
+ hash
296
+ end
297
+
298
+ end
299
+
300
+ end