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,946 @@
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 'cgi'
14
+
15
+ module Lockally
16
+ class MailboxesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Add a shared mailbox member
23
+ # @param email [String]
24
+ # @param add_shared_member_request [AddSharedMemberRequest]
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [SharedMember]
27
+ def add_shared_member(email, add_shared_member_request, opts = {})
28
+ data, _status_code, _headers = add_shared_member_with_http_info(email, add_shared_member_request, opts)
29
+ data
30
+ end
31
+
32
+ # Add a shared mailbox member
33
+ # @param email [String]
34
+ # @param add_shared_member_request [AddSharedMemberRequest]
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(SharedMember, Integer, Hash)>] SharedMember data, response status code and response headers
37
+ def add_shared_member_with_http_info(email, add_shared_member_request, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.add_shared_member ...'
40
+ end
41
+ # verify the required parameter 'email' is set
42
+ if @api_client.config.client_side_validation && email.nil?
43
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.add_shared_member"
44
+ end
45
+ # verify the required parameter 'add_shared_member_request' is set
46
+ if @api_client.config.client_side_validation && add_shared_member_request.nil?
47
+ fail ArgumentError, "Missing the required parameter 'add_shared_member_request' when calling MailboxesApi.add_shared_member"
48
+ end
49
+ # resource path
50
+ local_var_path = '/v1/mailboxes/{email}/members'.sub('{email}', CGI.escape(email.to_s))
51
+
52
+ # query parameters
53
+ query_params = opts[:query_params] || {}
54
+
55
+ # header parameters
56
+ header_params = opts[:header_params] || {}
57
+ # HTTP header 'Accept' (if needed)
58
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
59
+ # HTTP header 'Content-Type'
60
+ content_type = @api_client.select_header_content_type(['application/json'])
61
+ if !content_type.nil?
62
+ header_params['Content-Type'] = content_type
63
+ end
64
+
65
+ # form parameters
66
+ form_params = opts[:form_params] || {}
67
+
68
+ # http body (model)
69
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(add_shared_member_request)
70
+
71
+ # return_type
72
+ return_type = opts[:debug_return_type] || 'SharedMember'
73
+
74
+ # auth_names
75
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
76
+
77
+ new_options = opts.merge(
78
+ :operation => :"MailboxesApi.add_shared_member",
79
+ :header_params => header_params,
80
+ :query_params => query_params,
81
+ :form_params => form_params,
82
+ :body => post_body,
83
+ :auth_names => auth_names,
84
+ :return_type => return_type
85
+ )
86
+
87
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
88
+ if @api_client.config.debugging
89
+ @api_client.config.logger.debug "API called: MailboxesApi#add_shared_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
90
+ end
91
+ return data, status_code, headers
92
+ end
93
+
94
+ # List shared mailbox members
95
+ # @param email [String]
96
+ # @param [Hash] opts the optional parameters
97
+ # @return [ListSharedMembers200Response]
98
+ def list_shared_members(email, opts = {})
99
+ data, _status_code, _headers = list_shared_members_with_http_info(email, opts)
100
+ data
101
+ end
102
+
103
+ # List shared mailbox members
104
+ # @param email [String]
105
+ # @param [Hash] opts the optional parameters
106
+ # @return [Array<(ListSharedMembers200Response, Integer, Hash)>] ListSharedMembers200Response data, response status code and response headers
107
+ def list_shared_members_with_http_info(email, opts = {})
108
+ if @api_client.config.debugging
109
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.list_shared_members ...'
110
+ end
111
+ # verify the required parameter 'email' is set
112
+ if @api_client.config.client_side_validation && email.nil?
113
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.list_shared_members"
114
+ end
115
+ # resource path
116
+ local_var_path = '/v1/mailboxes/{email}/members'.sub('{email}', CGI.escape(email.to_s))
117
+
118
+ # query parameters
119
+ query_params = opts[:query_params] || {}
120
+
121
+ # header parameters
122
+ header_params = opts[:header_params] || {}
123
+ # HTTP header 'Accept' (if needed)
124
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
125
+
126
+ # form parameters
127
+ form_params = opts[:form_params] || {}
128
+
129
+ # http body (model)
130
+ post_body = opts[:debug_body]
131
+
132
+ # return_type
133
+ return_type = opts[:debug_return_type] || 'ListSharedMembers200Response'
134
+
135
+ # auth_names
136
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
137
+
138
+ new_options = opts.merge(
139
+ :operation => :"MailboxesApi.list_shared_members",
140
+ :header_params => header_params,
141
+ :query_params => query_params,
142
+ :form_params => form_params,
143
+ :body => post_body,
144
+ :auth_names => auth_names,
145
+ :return_type => return_type
146
+ )
147
+
148
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
149
+ if @api_client.config.debugging
150
+ @api_client.config.logger.debug "API called: MailboxesApi#list_shared_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
151
+ end
152
+ return data, status_code, headers
153
+ end
154
+
155
+ # Remove a shared mailbox member
156
+ # @param email [String]
157
+ # @param member_email [String]
158
+ # @param [Hash] opts the optional parameters
159
+ # @return [nil]
160
+ def remove_shared_member(email, member_email, opts = {})
161
+ remove_shared_member_with_http_info(email, member_email, opts)
162
+ nil
163
+ end
164
+
165
+ # Remove a shared mailbox member
166
+ # @param email [String]
167
+ # @param member_email [String]
168
+ # @param [Hash] opts the optional parameters
169
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
170
+ def remove_shared_member_with_http_info(email, member_email, opts = {})
171
+ if @api_client.config.debugging
172
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.remove_shared_member ...'
173
+ end
174
+ # verify the required parameter 'email' is set
175
+ if @api_client.config.client_side_validation && email.nil?
176
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.remove_shared_member"
177
+ end
178
+ # verify the required parameter 'member_email' is set
179
+ if @api_client.config.client_side_validation && member_email.nil?
180
+ fail ArgumentError, "Missing the required parameter 'member_email' when calling MailboxesApi.remove_shared_member"
181
+ end
182
+ # resource path
183
+ local_var_path = '/v1/mailboxes/{email}/members/{memberEmail}'.sub('{email}', CGI.escape(email.to_s)).sub('{memberEmail}', CGI.escape(member_email.to_s))
184
+
185
+ # query parameters
186
+ query_params = opts[:query_params] || {}
187
+
188
+ # header parameters
189
+ header_params = opts[:header_params] || {}
190
+ # HTTP header 'Accept' (if needed)
191
+ header_params['Accept'] = @api_client.select_header_accept(['application/problem+json']) unless header_params['Accept']
192
+
193
+ # form parameters
194
+ form_params = opts[:form_params] || {}
195
+
196
+ # http body (model)
197
+ post_body = opts[:debug_body]
198
+
199
+ # return_type
200
+ return_type = opts[:debug_return_type]
201
+
202
+ # auth_names
203
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
204
+
205
+ new_options = opts.merge(
206
+ :operation => :"MailboxesApi.remove_shared_member",
207
+ :header_params => header_params,
208
+ :query_params => query_params,
209
+ :form_params => form_params,
210
+ :body => post_body,
211
+ :auth_names => auth_names,
212
+ :return_type => return_type
213
+ )
214
+
215
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
216
+ if @api_client.config.debugging
217
+ @api_client.config.logger.debug "API called: MailboxesApi#remove_shared_member\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
218
+ end
219
+ return data, status_code, headers
220
+ end
221
+
222
+ # Soft-delete a mailbox
223
+ # Sets `soft_deleted_at = now()` and `hard_delete_after = now() + 90d` per design D25. A background sweep (planned) will hard-delete after the window. The mailbox is also disabled immediately.
224
+ # @param email [String]
225
+ # @param [Hash] opts the optional parameters
226
+ # @return [nil]
227
+ def v1_mailboxes_email_delete(email, opts = {})
228
+ v1_mailboxes_email_delete_with_http_info(email, opts)
229
+ nil
230
+ end
231
+
232
+ # Soft-delete a mailbox
233
+ # Sets &#x60;soft_deleted_at &#x3D; now()&#x60; and &#x60;hard_delete_after &#x3D; now() + 90d&#x60; per design D25. A background sweep (planned) will hard-delete after the window. The mailbox is also disabled immediately.
234
+ # @param email [String]
235
+ # @param [Hash] opts the optional parameters
236
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
237
+ def v1_mailboxes_email_delete_with_http_info(email, opts = {})
238
+ if @api_client.config.debugging
239
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_delete ...'
240
+ end
241
+ # verify the required parameter 'email' is set
242
+ if @api_client.config.client_side_validation && email.nil?
243
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_delete"
244
+ end
245
+ # resource path
246
+ local_var_path = '/v1/mailboxes/{email}'.sub('{email}', CGI.escape(email.to_s))
247
+
248
+ # query parameters
249
+ query_params = opts[:query_params] || {}
250
+
251
+ # header parameters
252
+ header_params = opts[:header_params] || {}
253
+ # HTTP header 'Accept' (if needed)
254
+ header_params['Accept'] = @api_client.select_header_accept(['application/problem+json']) unless header_params['Accept']
255
+
256
+ # form parameters
257
+ form_params = opts[:form_params] || {}
258
+
259
+ # http body (model)
260
+ post_body = opts[:debug_body]
261
+
262
+ # return_type
263
+ return_type = opts[:debug_return_type]
264
+
265
+ # auth_names
266
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
267
+
268
+ new_options = opts.merge(
269
+ :operation => :"MailboxesApi.v1_mailboxes_email_delete",
270
+ :header_params => header_params,
271
+ :query_params => query_params,
272
+ :form_params => form_params,
273
+ :body => post_body,
274
+ :auth_names => auth_names,
275
+ :return_type => return_type
276
+ )
277
+
278
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
279
+ if @api_client.config.debugging
280
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
281
+ end
282
+ return data, status_code, headers
283
+ end
284
+
285
+ # Download a previously-issued mailbox export
286
+ # Public endpoint (no Authorization header). Validates the one-shot token from the URL, marks it used, and streams an mbox file. Second GET with the same token returns 404 — tokens are single-use.
287
+ # @param email [String]
288
+ # @param token [String]
289
+ # @param [Hash] opts the optional parameters
290
+ # @return [File]
291
+ def v1_mailboxes_email_export_download_get(email, token, opts = {})
292
+ data, _status_code, _headers = v1_mailboxes_email_export_download_get_with_http_info(email, token, opts)
293
+ data
294
+ end
295
+
296
+ # Download a previously-issued mailbox export
297
+ # Public endpoint (no Authorization header). Validates the one-shot token from the URL, marks it used, and streams an mbox file. Second GET with the same token returns 404 — tokens are single-use.
298
+ # @param email [String]
299
+ # @param token [String]
300
+ # @param [Hash] opts the optional parameters
301
+ # @return [Array<(File, Integer, Hash)>] File data, response status code and response headers
302
+ def v1_mailboxes_email_export_download_get_with_http_info(email, token, opts = {})
303
+ if @api_client.config.debugging
304
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_export_download_get ...'
305
+ end
306
+ # verify the required parameter 'email' is set
307
+ if @api_client.config.client_side_validation && email.nil?
308
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_export_download_get"
309
+ end
310
+ # verify the required parameter 'token' is set
311
+ if @api_client.config.client_side_validation && token.nil?
312
+ fail ArgumentError, "Missing the required parameter 'token' when calling MailboxesApi.v1_mailboxes_email_export_download_get"
313
+ end
314
+ # resource path
315
+ local_var_path = '/v1/mailboxes/{email}/export/download'.sub('{email}', CGI.escape(email.to_s))
316
+
317
+ # query parameters
318
+ query_params = opts[:query_params] || {}
319
+ query_params[:'token'] = token
320
+
321
+ # header parameters
322
+ header_params = opts[:header_params] || {}
323
+ # HTTP header 'Accept' (if needed)
324
+ header_params['Accept'] = @api_client.select_header_accept(['application/mbox', 'application/problem+json']) unless header_params['Accept']
325
+
326
+ # form parameters
327
+ form_params = opts[:form_params] || {}
328
+
329
+ # http body (model)
330
+ post_body = opts[:debug_body]
331
+
332
+ # return_type
333
+ return_type = opts[:debug_return_type] || 'File'
334
+
335
+ # auth_names
336
+ auth_names = opts[:debug_auth_names] || []
337
+
338
+ new_options = opts.merge(
339
+ :operation => :"MailboxesApi.v1_mailboxes_email_export_download_get",
340
+ :header_params => header_params,
341
+ :query_params => query_params,
342
+ :form_params => form_params,
343
+ :body => post_body,
344
+ :auth_names => auth_names,
345
+ :return_type => return_type
346
+ )
347
+
348
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
349
+ if @api_client.config.debugging
350
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_export_download_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
351
+ end
352
+ return data, status_code, headers
353
+ end
354
+
355
+ # Request a mailbox export
356
+ # Issues a one-shot \"presigned\" download URL for the mailbox's content in mbox format. The URL works without an Authorization header — the token in the query string is the authz. TTL is 5 minutes; the token is consumed on first GET. **v1 caveat:** the synthesized mbox only contains outbound mail (from `lockally.messages`). v2 swaps in Stalwart's export primitive for full inbox + folder structure + flags. The endpoint contract stays unchanged.
357
+ # @param email [String]
358
+ # @param [Hash] opts the optional parameters
359
+ # @return [V1MailboxesEmailExportPost201Response]
360
+ def v1_mailboxes_email_export_post(email, opts = {})
361
+ data, _status_code, _headers = v1_mailboxes_email_export_post_with_http_info(email, opts)
362
+ data
363
+ end
364
+
365
+ # Request a mailbox export
366
+ # Issues a one-shot \&quot;presigned\&quot; download URL for the mailbox&#39;s content in mbox format. The URL works without an Authorization header — the token in the query string is the authz. TTL is 5 minutes; the token is consumed on first GET. **v1 caveat:** the synthesized mbox only contains outbound mail (from &#x60;lockally.messages&#x60;). v2 swaps in Stalwart&#39;s export primitive for full inbox + folder structure + flags. The endpoint contract stays unchanged.
367
+ # @param email [String]
368
+ # @param [Hash] opts the optional parameters
369
+ # @return [Array<(V1MailboxesEmailExportPost201Response, Integer, Hash)>] V1MailboxesEmailExportPost201Response data, response status code and response headers
370
+ def v1_mailboxes_email_export_post_with_http_info(email, opts = {})
371
+ if @api_client.config.debugging
372
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_export_post ...'
373
+ end
374
+ # verify the required parameter 'email' is set
375
+ if @api_client.config.client_side_validation && email.nil?
376
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_export_post"
377
+ end
378
+ # resource path
379
+ local_var_path = '/v1/mailboxes/{email}/export'.sub('{email}', CGI.escape(email.to_s))
380
+
381
+ # query parameters
382
+ query_params = opts[:query_params] || {}
383
+
384
+ # header parameters
385
+ header_params = opts[:header_params] || {}
386
+ # HTTP header 'Accept' (if needed)
387
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
388
+
389
+ # form parameters
390
+ form_params = opts[:form_params] || {}
391
+
392
+ # http body (model)
393
+ post_body = opts[:debug_body]
394
+
395
+ # return_type
396
+ return_type = opts[:debug_return_type] || 'V1MailboxesEmailExportPost201Response'
397
+
398
+ # auth_names
399
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
400
+
401
+ new_options = opts.merge(
402
+ :operation => :"MailboxesApi.v1_mailboxes_email_export_post",
403
+ :header_params => header_params,
404
+ :query_params => query_params,
405
+ :form_params => form_params,
406
+ :body => post_body,
407
+ :auth_names => auth_names,
408
+ :return_type => return_type
409
+ )
410
+
411
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
412
+ if @api_client.config.debugging
413
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_export_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
414
+ end
415
+ return data, status_code, headers
416
+ end
417
+
418
+ # Get a mailbox
419
+ # @param email [String]
420
+ # @param [Hash] opts the optional parameters
421
+ # @return [Mailbox]
422
+ def v1_mailboxes_email_get(email, opts = {})
423
+ data, _status_code, _headers = v1_mailboxes_email_get_with_http_info(email, opts)
424
+ data
425
+ end
426
+
427
+ # Get a mailbox
428
+ # @param email [String]
429
+ # @param [Hash] opts the optional parameters
430
+ # @return [Array<(Mailbox, Integer, Hash)>] Mailbox data, response status code and response headers
431
+ def v1_mailboxes_email_get_with_http_info(email, opts = {})
432
+ if @api_client.config.debugging
433
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_get ...'
434
+ end
435
+ # verify the required parameter 'email' is set
436
+ if @api_client.config.client_side_validation && email.nil?
437
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_get"
438
+ end
439
+ # resource path
440
+ local_var_path = '/v1/mailboxes/{email}'.sub('{email}', CGI.escape(email.to_s))
441
+
442
+ # query parameters
443
+ query_params = opts[:query_params] || {}
444
+
445
+ # header parameters
446
+ header_params = opts[:header_params] || {}
447
+ # HTTP header 'Accept' (if needed)
448
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
449
+
450
+ # form parameters
451
+ form_params = opts[:form_params] || {}
452
+
453
+ # http body (model)
454
+ post_body = opts[:debug_body]
455
+
456
+ # return_type
457
+ return_type = opts[:debug_return_type] || 'Mailbox'
458
+
459
+ # auth_names
460
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
461
+
462
+ new_options = opts.merge(
463
+ :operation => :"MailboxesApi.v1_mailboxes_email_get",
464
+ :header_params => header_params,
465
+ :query_params => query_params,
466
+ :form_params => form_params,
467
+ :body => post_body,
468
+ :auth_names => auth_names,
469
+ :return_type => return_type
470
+ )
471
+
472
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
473
+ if @api_client.config.debugging
474
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
475
+ end
476
+ return data, status_code, headers
477
+ end
478
+
479
+ # Update a mailbox
480
+ # Supply at least one of `password`, `quota_bytes`, `disabled`. Returns the updated mailbox.
481
+ # @param email [String]
482
+ # @param v1_mailboxes_email_patch_request [V1MailboxesEmailPatchRequest]
483
+ # @param [Hash] opts the optional parameters
484
+ # @return [Mailbox]
485
+ def v1_mailboxes_email_patch(email, v1_mailboxes_email_patch_request, opts = {})
486
+ data, _status_code, _headers = v1_mailboxes_email_patch_with_http_info(email, v1_mailboxes_email_patch_request, opts)
487
+ data
488
+ end
489
+
490
+ # Update a mailbox
491
+ # Supply at least one of &#x60;password&#x60;, &#x60;quota_bytes&#x60;, &#x60;disabled&#x60;. Returns the updated mailbox.
492
+ # @param email [String]
493
+ # @param v1_mailboxes_email_patch_request [V1MailboxesEmailPatchRequest]
494
+ # @param [Hash] opts the optional parameters
495
+ # @return [Array<(Mailbox, Integer, Hash)>] Mailbox data, response status code and response headers
496
+ def v1_mailboxes_email_patch_with_http_info(email, v1_mailboxes_email_patch_request, opts = {})
497
+ if @api_client.config.debugging
498
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_patch ...'
499
+ end
500
+ # verify the required parameter 'email' is set
501
+ if @api_client.config.client_side_validation && email.nil?
502
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_patch"
503
+ end
504
+ # verify the required parameter 'v1_mailboxes_email_patch_request' is set
505
+ if @api_client.config.client_side_validation && v1_mailboxes_email_patch_request.nil?
506
+ fail ArgumentError, "Missing the required parameter 'v1_mailboxes_email_patch_request' when calling MailboxesApi.v1_mailboxes_email_patch"
507
+ end
508
+ # resource path
509
+ local_var_path = '/v1/mailboxes/{email}'.sub('{email}', CGI.escape(email.to_s))
510
+
511
+ # query parameters
512
+ query_params = opts[:query_params] || {}
513
+
514
+ # header parameters
515
+ header_params = opts[:header_params] || {}
516
+ # HTTP header 'Accept' (if needed)
517
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
518
+ # HTTP header 'Content-Type'
519
+ content_type = @api_client.select_header_content_type(['application/json'])
520
+ if !content_type.nil?
521
+ header_params['Content-Type'] = content_type
522
+ end
523
+
524
+ # form parameters
525
+ form_params = opts[:form_params] || {}
526
+
527
+ # http body (model)
528
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(v1_mailboxes_email_patch_request)
529
+
530
+ # return_type
531
+ return_type = opts[:debug_return_type] || 'Mailbox'
532
+
533
+ # auth_names
534
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
535
+
536
+ new_options = opts.merge(
537
+ :operation => :"MailboxesApi.v1_mailboxes_email_patch",
538
+ :header_params => header_params,
539
+ :query_params => query_params,
540
+ :form_params => form_params,
541
+ :body => post_body,
542
+ :auth_names => auth_names,
543
+ :return_type => return_type
544
+ )
545
+
546
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
547
+ if @api_client.config.debugging
548
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_patch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
549
+ end
550
+ return data, status_code, headers
551
+ end
552
+
553
+ # Remove the vacation responder
554
+ # Idempotent — 204 whether or not a row existed.
555
+ # @param email [String]
556
+ # @param [Hash] opts the optional parameters
557
+ # @return [nil]
558
+ def v1_mailboxes_email_vacation_delete(email, opts = {})
559
+ v1_mailboxes_email_vacation_delete_with_http_info(email, opts)
560
+ nil
561
+ end
562
+
563
+ # Remove the vacation responder
564
+ # Idempotent — 204 whether or not a row existed.
565
+ # @param email [String]
566
+ # @param [Hash] opts the optional parameters
567
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
568
+ def v1_mailboxes_email_vacation_delete_with_http_info(email, opts = {})
569
+ if @api_client.config.debugging
570
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_vacation_delete ...'
571
+ end
572
+ # verify the required parameter 'email' is set
573
+ if @api_client.config.client_side_validation && email.nil?
574
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_vacation_delete"
575
+ end
576
+ # resource path
577
+ local_var_path = '/v1/mailboxes/{email}/vacation'.sub('{email}', CGI.escape(email.to_s))
578
+
579
+ # query parameters
580
+ query_params = opts[:query_params] || {}
581
+
582
+ # header parameters
583
+ header_params = opts[:header_params] || {}
584
+ # HTTP header 'Accept' (if needed)
585
+ header_params['Accept'] = @api_client.select_header_accept(['application/problem+json']) unless header_params['Accept']
586
+
587
+ # form parameters
588
+ form_params = opts[:form_params] || {}
589
+
590
+ # http body (model)
591
+ post_body = opts[:debug_body]
592
+
593
+ # return_type
594
+ return_type = opts[:debug_return_type]
595
+
596
+ # auth_names
597
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
598
+
599
+ new_options = opts.merge(
600
+ :operation => :"MailboxesApi.v1_mailboxes_email_vacation_delete",
601
+ :header_params => header_params,
602
+ :query_params => query_params,
603
+ :form_params => form_params,
604
+ :body => post_body,
605
+ :auth_names => auth_names,
606
+ :return_type => return_type
607
+ )
608
+
609
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
610
+ if @api_client.config.debugging
611
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_vacation_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
612
+ end
613
+ return data, status_code, headers
614
+ end
615
+
616
+ # Get the vacation responder
617
+ # Returns the stored vacation rule or 404 if none is set.
618
+ # @param email [String]
619
+ # @param [Hash] opts the optional parameters
620
+ # @return [VacationResponder]
621
+ def v1_mailboxes_email_vacation_get(email, opts = {})
622
+ data, _status_code, _headers = v1_mailboxes_email_vacation_get_with_http_info(email, opts)
623
+ data
624
+ end
625
+
626
+ # Get the vacation responder
627
+ # Returns the stored vacation rule or 404 if none is set.
628
+ # @param email [String]
629
+ # @param [Hash] opts the optional parameters
630
+ # @return [Array<(VacationResponder, Integer, Hash)>] VacationResponder data, response status code and response headers
631
+ def v1_mailboxes_email_vacation_get_with_http_info(email, opts = {})
632
+ if @api_client.config.debugging
633
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_vacation_get ...'
634
+ end
635
+ # verify the required parameter 'email' is set
636
+ if @api_client.config.client_side_validation && email.nil?
637
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_vacation_get"
638
+ end
639
+ # resource path
640
+ local_var_path = '/v1/mailboxes/{email}/vacation'.sub('{email}', CGI.escape(email.to_s))
641
+
642
+ # query parameters
643
+ query_params = opts[:query_params] || {}
644
+
645
+ # header parameters
646
+ header_params = opts[:header_params] || {}
647
+ # HTTP header 'Accept' (if needed)
648
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
649
+
650
+ # form parameters
651
+ form_params = opts[:form_params] || {}
652
+
653
+ # http body (model)
654
+ post_body = opts[:debug_body]
655
+
656
+ # return_type
657
+ return_type = opts[:debug_return_type] || 'VacationResponder'
658
+
659
+ # auth_names
660
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
661
+
662
+ new_options = opts.merge(
663
+ :operation => :"MailboxesApi.v1_mailboxes_email_vacation_get",
664
+ :header_params => header_params,
665
+ :query_params => query_params,
666
+ :form_params => form_params,
667
+ :body => post_body,
668
+ :auth_names => auth_names,
669
+ :return_type => return_type
670
+ )
671
+
672
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
673
+ if @api_client.config.debugging
674
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_vacation_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
675
+ end
676
+ return data, status_code, headers
677
+ end
678
+
679
+ # Set the vacation responder
680
+ # Upsert — same endpoint creates or replaces the rule. Clears `synced_at`; the rule is staged on lockally until a sync worker pushes it to the mail server.
681
+ # @param email [String]
682
+ # @param v1_mailboxes_email_vacation_put_request [V1MailboxesEmailVacationPutRequest]
683
+ # @param [Hash] opts the optional parameters
684
+ # @return [VacationResponder]
685
+ def v1_mailboxes_email_vacation_put(email, v1_mailboxes_email_vacation_put_request, opts = {})
686
+ data, _status_code, _headers = v1_mailboxes_email_vacation_put_with_http_info(email, v1_mailboxes_email_vacation_put_request, opts)
687
+ data
688
+ end
689
+
690
+ # Set the vacation responder
691
+ # Upsert — same endpoint creates or replaces the rule. Clears &#x60;synced_at&#x60;; the rule is staged on lockally until a sync worker pushes it to the mail server.
692
+ # @param email [String]
693
+ # @param v1_mailboxes_email_vacation_put_request [V1MailboxesEmailVacationPutRequest]
694
+ # @param [Hash] opts the optional parameters
695
+ # @return [Array<(VacationResponder, Integer, Hash)>] VacationResponder data, response status code and response headers
696
+ def v1_mailboxes_email_vacation_put_with_http_info(email, v1_mailboxes_email_vacation_put_request, opts = {})
697
+ if @api_client.config.debugging
698
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_email_vacation_put ...'
699
+ end
700
+ # verify the required parameter 'email' is set
701
+ if @api_client.config.client_side_validation && email.nil?
702
+ fail ArgumentError, "Missing the required parameter 'email' when calling MailboxesApi.v1_mailboxes_email_vacation_put"
703
+ end
704
+ # verify the required parameter 'v1_mailboxes_email_vacation_put_request' is set
705
+ if @api_client.config.client_side_validation && v1_mailboxes_email_vacation_put_request.nil?
706
+ fail ArgumentError, "Missing the required parameter 'v1_mailboxes_email_vacation_put_request' when calling MailboxesApi.v1_mailboxes_email_vacation_put"
707
+ end
708
+ # resource path
709
+ local_var_path = '/v1/mailboxes/{email}/vacation'.sub('{email}', CGI.escape(email.to_s))
710
+
711
+ # query parameters
712
+ query_params = opts[:query_params] || {}
713
+
714
+ # header parameters
715
+ header_params = opts[:header_params] || {}
716
+ # HTTP header 'Accept' (if needed)
717
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
718
+ # HTTP header 'Content-Type'
719
+ content_type = @api_client.select_header_content_type(['application/json'])
720
+ if !content_type.nil?
721
+ header_params['Content-Type'] = content_type
722
+ end
723
+
724
+ # form parameters
725
+ form_params = opts[:form_params] || {}
726
+
727
+ # http body (model)
728
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(v1_mailboxes_email_vacation_put_request)
729
+
730
+ # return_type
731
+ return_type = opts[:debug_return_type] || 'VacationResponder'
732
+
733
+ # auth_names
734
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
735
+
736
+ new_options = opts.merge(
737
+ :operation => :"MailboxesApi.v1_mailboxes_email_vacation_put",
738
+ :header_params => header_params,
739
+ :query_params => query_params,
740
+ :form_params => form_params,
741
+ :body => post_body,
742
+ :auth_names => auth_names,
743
+ :return_type => return_type
744
+ )
745
+
746
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
747
+ if @api_client.config.debugging
748
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_email_vacation_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
749
+ end
750
+ return data, status_code, headers
751
+ end
752
+
753
+ # List mailboxes
754
+ # Returns mailboxes under the calling tenant — active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
755
+ # @param [Hash] opts the optional parameters
756
+ # @option opts [Integer] :limit (default to 50)
757
+ # @return [V1MailboxesGet200Response]
758
+ def v1_mailboxes_get(opts = {})
759
+ data, _status_code, _headers = v1_mailboxes_get_with_http_info(opts)
760
+ data
761
+ end
762
+
763
+ # List mailboxes
764
+ # Returns mailboxes under the calling tenant — active and soft-deleted. &#x60;?limit&#x3D;N&#x60; between 1 and 200 (default 50).
765
+ # @param [Hash] opts the optional parameters
766
+ # @option opts [Integer] :limit (default to 50)
767
+ # @return [Array<(V1MailboxesGet200Response, Integer, Hash)>] V1MailboxesGet200Response data, response status code and response headers
768
+ def v1_mailboxes_get_with_http_info(opts = {})
769
+ if @api_client.config.debugging
770
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_get ...'
771
+ end
772
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 200
773
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling MailboxesApi.v1_mailboxes_get, must be smaller than or equal to 200.'
774
+ end
775
+
776
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
777
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling MailboxesApi.v1_mailboxes_get, must be greater than or equal to 1.'
778
+ end
779
+
780
+ # resource path
781
+ local_var_path = '/v1/mailboxes'
782
+
783
+ # query parameters
784
+ query_params = opts[:query_params] || {}
785
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
786
+
787
+ # header parameters
788
+ header_params = opts[:header_params] || {}
789
+ # HTTP header 'Accept' (if needed)
790
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
791
+
792
+ # form parameters
793
+ form_params = opts[:form_params] || {}
794
+
795
+ # http body (model)
796
+ post_body = opts[:debug_body]
797
+
798
+ # return_type
799
+ return_type = opts[:debug_return_type] || 'V1MailboxesGet200Response'
800
+
801
+ # auth_names
802
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
803
+
804
+ new_options = opts.merge(
805
+ :operation => :"MailboxesApi.v1_mailboxes_get",
806
+ :header_params => header_params,
807
+ :query_params => query_params,
808
+ :form_params => form_params,
809
+ :body => post_body,
810
+ :auth_names => auth_names,
811
+ :return_type => return_type
812
+ )
813
+
814
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
815
+ if @api_client.config.debugging
816
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
817
+ end
818
+ return data, status_code, headers
819
+ end
820
+
821
+ # Create a mailbox
822
+ # Creates a mailbox on a tenant-verified domain. If `password` is omitted, lockally generates a 16-char password and returns it in the response — shown once. **Gate.** The mailbox's domain must already be registered AND verified for this tenant (via `/v1/domains` + `/v1/domains/{domain}/verify`). **Idempotent.** Re-posting the same email returns the existing mailbox UNTOUCHED — password is NOT regenerated. To change a password, use PATCH instead.
823
+ # @param v1_mailboxes_post_request [V1MailboxesPostRequest]
824
+ # @param [Hash] opts the optional parameters
825
+ # @return [Mailbox]
826
+ def v1_mailboxes_post(v1_mailboxes_post_request, opts = {})
827
+ data, _status_code, _headers = v1_mailboxes_post_with_http_info(v1_mailboxes_post_request, opts)
828
+ data
829
+ end
830
+
831
+ # Create a mailbox
832
+ # Creates a mailbox on a tenant-verified domain. If &#x60;password&#x60; is omitted, lockally generates a 16-char password and returns it in the response — shown once. **Gate.** The mailbox&#39;s domain must already be registered AND verified for this tenant (via &#x60;/v1/domains&#x60; + &#x60;/v1/domains/{domain}/verify&#x60;). **Idempotent.** Re-posting the same email returns the existing mailbox UNTOUCHED — password is NOT regenerated. To change a password, use PATCH instead.
833
+ # @param v1_mailboxes_post_request [V1MailboxesPostRequest]
834
+ # @param [Hash] opts the optional parameters
835
+ # @return [Array<(Mailbox, Integer, Hash)>] Mailbox data, response status code and response headers
836
+ def v1_mailboxes_post_with_http_info(v1_mailboxes_post_request, opts = {})
837
+ if @api_client.config.debugging
838
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_mailboxes_post ...'
839
+ end
840
+ # verify the required parameter 'v1_mailboxes_post_request' is set
841
+ if @api_client.config.client_side_validation && v1_mailboxes_post_request.nil?
842
+ fail ArgumentError, "Missing the required parameter 'v1_mailboxes_post_request' when calling MailboxesApi.v1_mailboxes_post"
843
+ end
844
+ # resource path
845
+ local_var_path = '/v1/mailboxes'
846
+
847
+ # query parameters
848
+ query_params = opts[:query_params] || {}
849
+
850
+ # header parameters
851
+ header_params = opts[:header_params] || {}
852
+ # HTTP header 'Accept' (if needed)
853
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
854
+ # HTTP header 'Content-Type'
855
+ content_type = @api_client.select_header_content_type(['application/json'])
856
+ if !content_type.nil?
857
+ header_params['Content-Type'] = content_type
858
+ end
859
+
860
+ # form parameters
861
+ form_params = opts[:form_params] || {}
862
+
863
+ # http body (model)
864
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(v1_mailboxes_post_request)
865
+
866
+ # return_type
867
+ return_type = opts[:debug_return_type] || 'Mailbox'
868
+
869
+ # auth_names
870
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
871
+
872
+ new_options = opts.merge(
873
+ :operation => :"MailboxesApi.v1_mailboxes_post",
874
+ :header_params => header_params,
875
+ :query_params => query_params,
876
+ :form_params => form_params,
877
+ :body => post_body,
878
+ :auth_names => auth_names,
879
+ :return_type => return_type
880
+ )
881
+
882
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
883
+ if @api_client.config.debugging
884
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_mailboxes_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
885
+ end
886
+ return data, status_code, headers
887
+ end
888
+
889
+ # List all vacation responders
890
+ # Returns every vacation responder for the calling tenant.
891
+ # @param [Hash] opts the optional parameters
892
+ # @return [V1VacationGet200Response]
893
+ def v1_vacation_get(opts = {})
894
+ data, _status_code, _headers = v1_vacation_get_with_http_info(opts)
895
+ data
896
+ end
897
+
898
+ # List all vacation responders
899
+ # Returns every vacation responder for the calling tenant.
900
+ # @param [Hash] opts the optional parameters
901
+ # @return [Array<(V1VacationGet200Response, Integer, Hash)>] V1VacationGet200Response data, response status code and response headers
902
+ def v1_vacation_get_with_http_info(opts = {})
903
+ if @api_client.config.debugging
904
+ @api_client.config.logger.debug 'Calling API: MailboxesApi.v1_vacation_get ...'
905
+ end
906
+ # resource path
907
+ local_var_path = '/v1/vacation'
908
+
909
+ # query parameters
910
+ query_params = opts[:query_params] || {}
911
+
912
+ # header parameters
913
+ header_params = opts[:header_params] || {}
914
+ # HTTP header 'Accept' (if needed)
915
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/problem+json']) unless header_params['Accept']
916
+
917
+ # form parameters
918
+ form_params = opts[:form_params] || {}
919
+
920
+ # http body (model)
921
+ post_body = opts[:debug_body]
922
+
923
+ # return_type
924
+ return_type = opts[:debug_return_type] || 'V1VacationGet200Response'
925
+
926
+ # auth_names
927
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
928
+
929
+ new_options = opts.merge(
930
+ :operation => :"MailboxesApi.v1_vacation_get",
931
+ :header_params => header_params,
932
+ :query_params => query_params,
933
+ :form_params => form_params,
934
+ :body => post_body,
935
+ :auth_names => auth_names,
936
+ :return_type => return_type
937
+ )
938
+
939
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
940
+ if @api_client.config.debugging
941
+ @api_client.config.logger.debug "API called: MailboxesApi#v1_vacation_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
942
+ end
943
+ return data, status_code, headers
944
+ end
945
+ end
946
+ end