lockally 0.3.2__tar.gz → 0.3.3__tar.gz

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 (504) hide show
  1. {lockally-0.3.2 → lockally-0.3.3}/PKG-INFO +2 -2
  2. {lockally-0.3.2 → lockally-0.3.3}/README.md +1 -1
  3. {lockally-0.3.2 → lockally-0.3.3}/lockally/__init__.py +1 -1
  4. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/admin_api.py +9 -9
  5. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/admins_api.py +3 -3
  6. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/agents_api.py +6 -6
  7. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/ai_api.py +3 -3
  8. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/aliases_api.py +3 -3
  9. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/api_keys_api.py +9 -9
  10. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/domains_api.py +9 -9
  11. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/mailboxes_api.py +18 -18
  12. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/send_api.py +12 -12
  13. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/tenant_api.py +3 -3
  14. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/test_api.py +3 -3
  15. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/webhooks_api.py +9 -9
  16. {lockally-0.3.2 → lockally-0.3.3}/lockally/api_client.py +1 -1
  17. {lockally-0.3.2 → lockally-0.3.3}/lockally/configuration.py +1 -1
  18. {lockally-0.3.2 → lockally-0.3.3}/lockally.egg-info/PKG-INFO +2 -2
  19. {lockally-0.3.2 → lockally-0.3.3}/pyproject.toml +1 -1
  20. {lockally-0.3.2 → lockally-0.3.3}/setup.py +1 -1
  21. {lockally-0.3.2 → lockally-0.3.3}/LICENSE +0 -0
  22. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/__init__.py +0 -0
  23. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/add_ons_api.py +0 -0
  24. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/billing_api.py +0 -0
  25. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/calendars_api.py +0 -0
  26. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/contact_lists_api.py +0 -0
  27. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/contacts_api.py +0 -0
  28. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/dashboard_api.py +0 -0
  29. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/directory_api.py +0 -0
  30. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/distribution_lists_api.py +0 -0
  31. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/drafts_api.py +0 -0
  32. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/encryption_api.py +0 -0
  33. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/health_api.py +0 -0
  34. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/ip_pools_api.py +0 -0
  35. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/migrations_api.py +0 -0
  36. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/resources_api.py +0 -0
  37. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/signup_api.py +0 -0
  38. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/suppressions_api.py +0 -0
  39. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/templates_api.py +0 -0
  40. {lockally-0.3.2 → lockally-0.3.3}/lockally/api/users_api.py +0 -0
  41. {lockally-0.3.2 → lockally-0.3.3}/lockally/api_response.py +0 -0
  42. {lockally-0.3.2 → lockally-0.3.3}/lockally/exceptions.py +0 -0
  43. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/__init__.py +0 -0
  44. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/activate_add_on200_response.py +0 -0
  45. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/add_calendar_member_request.py +0 -0
  46. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/add_contact_list_member_request.py +0 -0
  47. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/add_on.py +0 -0
  48. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/add_shared_member_request.py +0 -0
  49. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/admin.py +0 -0
  50. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/admin_full.py +0 -0
  51. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/admin_login200_response.py +0 -0
  52. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/admin_login_request.py +0 -0
  53. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/agent_send_result.py +0 -0
  54. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/ai_config.py +0 -0
  55. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/ai_config_update.py +0 -0
  56. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/alias.py +0 -0
  57. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/annotations.py +0 -0
  58. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/api_key.py +0 -0
  59. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/attachment.py +0 -0
  60. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/audit_event.py +0 -0
  61. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/batch_lookup_public_keys200_response.py +0 -0
  62. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/batch_lookup_public_keys200_response_data_inner.py +0 -0
  63. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/batch_result.py +0 -0
  64. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/billing_status.py +0 -0
  65. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/calendar.py +0 -0
  66. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/calendar_event.py +0 -0
  67. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/calendar_integration.py +0 -0
  68. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/calendar_member.py +0 -0
  69. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/calendar_policies.py +0 -0
  70. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/classification.py +0 -0
  71. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/contact.py +0 -0
  72. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/contact_list.py +0 -0
  73. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/contact_lookup.py +0 -0
  74. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/contact_lookup_contact.py +0 -0
  75. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/contact_lookup_history.py +0 -0
  76. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_ai_units_checkout200_response.py +0 -0
  77. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_alias_request.py +0 -0
  78. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_api_key201_response.py +0 -0
  79. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_api_key_request.py +0 -0
  80. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_billing_checkout200_response.py +0 -0
  81. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_billing_checkout_request.py +0 -0
  82. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_calendar_event_request.py +0 -0
  83. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_calendar_integration_request.py +0 -0
  84. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_calendar_request.py +0 -0
  85. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_contact_list_request.py +0 -0
  86. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_contact_request.py +0 -0
  87. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_dedicated_ip_request_request.py +0 -0
  88. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_distribution_list_request.py +0 -0
  89. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_domain_request.py +0 -0
  90. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_encryption_key201_response.py +0 -0
  91. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_encryption_key_request.py +0 -0
  92. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_encryption_recovery_request.py +0 -0
  93. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_mailbox_request.py +0 -0
  94. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_migration_credential_request.py +0 -0
  95. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_migration_credential_request_credentials.py +0 -0
  96. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_migration_request.py +0 -0
  97. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_resource_request.py +0 -0
  98. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_suppression_request.py +0 -0
  99. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_units_checkout200_response.py +0 -0
  100. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_units_checkout_request.py +0 -0
  101. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_user_request.py +0 -0
  102. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/create_webhook_request.py +0 -0
  103. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/dedicated_ip_request.py +0 -0
  104. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/directory_permissions.py +0 -0
  105. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/discover_migration202_response.py +0 -0
  106. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/distribution_list_detail.py +0 -0
  107. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/distribution_list_summary.py +0 -0
  108. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/dns_record.py +0 -0
  109. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/domain.py +0 -0
  110. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/draft.py +0 -0
  111. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/draft_list.py +0 -0
  112. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/draft_result.py +0 -0
  113. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/export_mailbox201_response.py +0 -0
  114. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/gal_settings.py +0 -0
  115. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_add_on_status200_response.py +0 -0
  116. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_audit_summary200_response.py +0 -0
  117. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_overview200_response.py +0 -0
  118. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_overview200_response_activity_inner.py +0 -0
  119. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_security200_response.py +0 -0
  120. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_security200_response_alerts_inner.py +0 -0
  121. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_security200_response_delegated_access_inner.py +0 -0
  122. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_security200_response_external_sharing.py +0 -0
  123. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_calendar_security200_response_public_calendar_list_inner.py +0 -0
  124. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_contact_list200_response.py +0 -0
  125. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_contact_list200_response_members_inner.py +0 -0
  126. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_contact_lists200_response.py +0 -0
  127. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_contact_lists200_response_data_inner.py +0 -0
  128. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_current_admin200_response.py +0 -0
  129. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_directory_activity200_response.py +0 -0
  130. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_directory_activity200_response_data_inner.py +0 -0
  131. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_directory_stats200_response.py +0 -0
  132. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_domains_status200_response.py +0 -0
  133. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_domains_status200_response_domains_inner.py +0 -0
  134. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_domains_status200_response_domains_inner_checks_inner.py +0 -0
  135. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_encryption_key200_response.py +0 -0
  136. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_integrations_summary200_response.py +0 -0
  137. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_integrations_summary200_response_api_keys_inner.py +0 -0
  138. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_integrations_summary200_response_webhooks_inner.py +0 -0
  139. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_ip_assignment200_response.py +0 -0
  140. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_security200_response.py +0 -0
  141. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_security200_response_alerts_inner.py +0 -0
  142. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_security200_response_stats_inner.py +0 -0
  143. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_storage200_response.py +0 -0
  144. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_storage200_response_top_mailboxes_inner.py +0 -0
  145. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_storage200_response_top_messages_inner.py +0 -0
  146. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_usage200_response.py +0 -0
  147. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/get_user_insights200_response.py +0 -0
  148. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/health_check200_response.py +0 -0
  149. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/inbox.py +0 -0
  150. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/inbox_list.py +0 -0
  151. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/injection_risk.py +0 -0
  152. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/invite_admin_request.py +0 -0
  153. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_add_ons200_response.py +0 -0
  154. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_admins200_response.py +0 -0
  155. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_aliases200_response.py +0 -0
  156. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_api_keys200_response.py +0 -0
  157. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_calendar_events200_response.py +0 -0
  158. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_calendar_integrations200_response.py +0 -0
  159. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_calendar_members200_response.py +0 -0
  160. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_calendars200_response.py +0 -0
  161. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_contact_lists200_response.py +0 -0
  162. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_contacts200_response.py +0 -0
  163. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_dedicated_ip_requests200_response.py +0 -0
  164. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_distribution_lists200_response.py +0 -0
  165. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_domains200_response.py +0 -0
  166. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_mailboxes200_response.py +0 -0
  167. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_messages200_response.py +0 -0
  168. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_migration_credentials200_response.py +0 -0
  169. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_migration_events200_response.py +0 -0
  170. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_migration_mailboxes200_response.py +0 -0
  171. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_migrations200_response.py +0 -0
  172. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_resources200_response.py +0 -0
  173. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_shared_members200_response.py +0 -0
  174. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_suppressions200_response.py +0 -0
  175. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_templates200_response.py +0 -0
  176. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_users200_response.py +0 -0
  177. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_vacation_responders200_response.py +0 -0
  178. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/list_webhooks200_response.py +0 -0
  179. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/mailbox.py +0 -0
  180. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/mailbox_grant.py +0 -0
  181. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/mailbox_grant_list.py +0 -0
  182. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/map_migration_request.py +0 -0
  183. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/map_migration_request_mappings_inner.py +0 -0
  184. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/mark_read_result.py +0 -0
  185. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/message.py +0 -0
  186. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/message_detail.py +0 -0
  187. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/message_stats.py +0 -0
  188. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/message_stats_counts.py +0 -0
  189. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/message_stats_rates.py +0 -0
  190. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/message_stats_window.py +0 -0
  191. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration.py +0 -0
  192. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration_credential.py +0 -0
  193. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration_event.py +0 -0
  194. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration_mailbox.py +0 -0
  195. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration_progress.py +0 -0
  196. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration_progress_mailboxes_inner.py +0 -0
  197. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/migration_settings.py +0 -0
  198. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/plan_catalog_entry.py +0 -0
  199. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/policy_flags.py +0 -0
  200. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/problem.py +0 -0
  201. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/replace_distribution_list_members200_response.py +0 -0
  202. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/replace_distribution_list_members_request.py +0 -0
  203. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/resource.py +0 -0
  204. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/return_path.py +0 -0
  205. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/return_path_check.py +0 -0
  206. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/rotate_encryption_key_request.py +0 -0
  207. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_email200_response.py +0 -0
  208. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_email202_response.py +0 -0
  209. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_email_batch200_response.py +0 -0
  210. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_email_batch_request.py +0 -0
  211. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_email_request.py +0 -0
  212. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_email_request_attachments_inner.py +0 -0
  213. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/send_message.py +0 -0
  214. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/set_vacation_responder_request.py +0 -0
  215. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/shared_member.py +0 -0
  216. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/signup_request.py +0 -0
  217. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/simulated_inbound.py +0 -0
  218. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/start_conversation_request.py +0 -0
  219. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/start_migration202_response.py +0 -0
  220. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/suppression.py +0 -0
  221. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/template.py +0 -0
  222. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/template_input.py +0 -0
  223. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/tenant.py +0 -0
  224. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread.py +0 -0
  225. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread_classification.py +0 -0
  226. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread_list.py +0 -0
  227. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread_message.py +0 -0
  228. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread_message_body.py +0 -0
  229. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread_message_body_body.py +0 -0
  230. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/thread_summary.py +0 -0
  231. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/unit_bundle.py +0 -0
  232. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_admin_request.py +0 -0
  233. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_calendar_event_request.py +0 -0
  234. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_calendar_integration_request.py +0 -0
  235. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_calendar_member_request.py +0 -0
  236. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_calendar_policies_request.py +0 -0
  237. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_calendar_request.py +0 -0
  238. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_contact_list_request.py +0 -0
  239. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_contact_request.py +0 -0
  240. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_directory_permissions_request.py +0 -0
  241. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_gal_settings_request.py +0 -0
  242. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_mailbox_request.py +0 -0
  243. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_migration_mailbox_request.py +0 -0
  244. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_migration_request.py +0 -0
  245. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_resource_request.py +0 -0
  246. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_user_request.py +0 -0
  247. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/update_webhook_request.py +0 -0
  248. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/user.py +0 -0
  249. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/user_event.py +0 -0
  250. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/vacation_params.py +0 -0
  251. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/vacation_responder.py +0 -0
  252. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/webhook.py +0 -0
  253. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/whoami.py +0 -0
  254. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/whoami_key.py +0 -0
  255. {lockally-0.3.2 → lockally-0.3.3}/lockally/models/whoami_tenant.py +0 -0
  256. {lockally-0.3.2 → lockally-0.3.3}/lockally/py.typed +0 -0
  257. {lockally-0.3.2 → lockally-0.3.3}/lockally/rest.py +0 -0
  258. {lockally-0.3.2 → lockally-0.3.3}/lockally.egg-info/SOURCES.txt +0 -0
  259. {lockally-0.3.2 → lockally-0.3.3}/lockally.egg-info/dependency_links.txt +0 -0
  260. {lockally-0.3.2 → lockally-0.3.3}/lockally.egg-info/requires.txt +0 -0
  261. {lockally-0.3.2 → lockally-0.3.3}/lockally.egg-info/top_level.txt +0 -0
  262. {lockally-0.3.2 → lockally-0.3.3}/setup.cfg +0 -0
  263. {lockally-0.3.2 → lockally-0.3.3}/test/test_activate_add_on200_response.py +0 -0
  264. {lockally-0.3.2 → lockally-0.3.3}/test/test_add_calendar_member_request.py +0 -0
  265. {lockally-0.3.2 → lockally-0.3.3}/test/test_add_contact_list_member_request.py +0 -0
  266. {lockally-0.3.2 → lockally-0.3.3}/test/test_add_on.py +0 -0
  267. {lockally-0.3.2 → lockally-0.3.3}/test/test_add_ons_api.py +0 -0
  268. {lockally-0.3.2 → lockally-0.3.3}/test/test_add_shared_member_request.py +0 -0
  269. {lockally-0.3.2 → lockally-0.3.3}/test/test_admin.py +0 -0
  270. {lockally-0.3.2 → lockally-0.3.3}/test/test_admin_api.py +0 -0
  271. {lockally-0.3.2 → lockally-0.3.3}/test/test_admin_full.py +0 -0
  272. {lockally-0.3.2 → lockally-0.3.3}/test/test_admin_login200_response.py +0 -0
  273. {lockally-0.3.2 → lockally-0.3.3}/test/test_admin_login_request.py +0 -0
  274. {lockally-0.3.2 → lockally-0.3.3}/test/test_admins_api.py +0 -0
  275. {lockally-0.3.2 → lockally-0.3.3}/test/test_agent_send_result.py +0 -0
  276. {lockally-0.3.2 → lockally-0.3.3}/test/test_agents_api.py +0 -0
  277. {lockally-0.3.2 → lockally-0.3.3}/test/test_ai_api.py +0 -0
  278. {lockally-0.3.2 → lockally-0.3.3}/test/test_ai_config.py +0 -0
  279. {lockally-0.3.2 → lockally-0.3.3}/test/test_ai_config_update.py +0 -0
  280. {lockally-0.3.2 → lockally-0.3.3}/test/test_alias.py +0 -0
  281. {lockally-0.3.2 → lockally-0.3.3}/test/test_aliases_api.py +0 -0
  282. {lockally-0.3.2 → lockally-0.3.3}/test/test_annotations.py +0 -0
  283. {lockally-0.3.2 → lockally-0.3.3}/test/test_api_key.py +0 -0
  284. {lockally-0.3.2 → lockally-0.3.3}/test/test_api_keys_api.py +0 -0
  285. {lockally-0.3.2 → lockally-0.3.3}/test/test_attachment.py +0 -0
  286. {lockally-0.3.2 → lockally-0.3.3}/test/test_audit_event.py +0 -0
  287. {lockally-0.3.2 → lockally-0.3.3}/test/test_batch_lookup_public_keys200_response.py +0 -0
  288. {lockally-0.3.2 → lockally-0.3.3}/test/test_batch_lookup_public_keys200_response_data_inner.py +0 -0
  289. {lockally-0.3.2 → lockally-0.3.3}/test/test_batch_result.py +0 -0
  290. {lockally-0.3.2 → lockally-0.3.3}/test/test_billing_api.py +0 -0
  291. {lockally-0.3.2 → lockally-0.3.3}/test/test_billing_status.py +0 -0
  292. {lockally-0.3.2 → lockally-0.3.3}/test/test_calendar.py +0 -0
  293. {lockally-0.3.2 → lockally-0.3.3}/test/test_calendar_event.py +0 -0
  294. {lockally-0.3.2 → lockally-0.3.3}/test/test_calendar_integration.py +0 -0
  295. {lockally-0.3.2 → lockally-0.3.3}/test/test_calendar_member.py +0 -0
  296. {lockally-0.3.2 → lockally-0.3.3}/test/test_calendar_policies.py +0 -0
  297. {lockally-0.3.2 → lockally-0.3.3}/test/test_calendars_api.py +0 -0
  298. {lockally-0.3.2 → lockally-0.3.3}/test/test_classification.py +0 -0
  299. {lockally-0.3.2 → lockally-0.3.3}/test/test_contact.py +0 -0
  300. {lockally-0.3.2 → lockally-0.3.3}/test/test_contact_list.py +0 -0
  301. {lockally-0.3.2 → lockally-0.3.3}/test/test_contact_lists_api.py +0 -0
  302. {lockally-0.3.2 → lockally-0.3.3}/test/test_contact_lookup.py +0 -0
  303. {lockally-0.3.2 → lockally-0.3.3}/test/test_contact_lookup_contact.py +0 -0
  304. {lockally-0.3.2 → lockally-0.3.3}/test/test_contact_lookup_history.py +0 -0
  305. {lockally-0.3.2 → lockally-0.3.3}/test/test_contacts_api.py +0 -0
  306. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_ai_units_checkout200_response.py +0 -0
  307. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_alias_request.py +0 -0
  308. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_api_key201_response.py +0 -0
  309. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_api_key_request.py +0 -0
  310. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_billing_checkout200_response.py +0 -0
  311. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_billing_checkout_request.py +0 -0
  312. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_calendar_event_request.py +0 -0
  313. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_calendar_integration_request.py +0 -0
  314. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_calendar_request.py +0 -0
  315. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_contact_list_request.py +0 -0
  316. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_contact_request.py +0 -0
  317. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_dedicated_ip_request_request.py +0 -0
  318. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_distribution_list_request.py +0 -0
  319. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_domain_request.py +0 -0
  320. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_encryption_key201_response.py +0 -0
  321. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_encryption_key_request.py +0 -0
  322. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_encryption_recovery_request.py +0 -0
  323. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_mailbox_request.py +0 -0
  324. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_migration_credential_request.py +0 -0
  325. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_migration_credential_request_credentials.py +0 -0
  326. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_migration_request.py +0 -0
  327. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_resource_request.py +0 -0
  328. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_suppression_request.py +0 -0
  329. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_units_checkout200_response.py +0 -0
  330. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_units_checkout_request.py +0 -0
  331. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_user_request.py +0 -0
  332. {lockally-0.3.2 → lockally-0.3.3}/test/test_create_webhook_request.py +0 -0
  333. {lockally-0.3.2 → lockally-0.3.3}/test/test_dashboard_api.py +0 -0
  334. {lockally-0.3.2 → lockally-0.3.3}/test/test_dedicated_ip_request.py +0 -0
  335. {lockally-0.3.2 → lockally-0.3.3}/test/test_directory_api.py +0 -0
  336. {lockally-0.3.2 → lockally-0.3.3}/test/test_directory_permissions.py +0 -0
  337. {lockally-0.3.2 → lockally-0.3.3}/test/test_discover_migration202_response.py +0 -0
  338. {lockally-0.3.2 → lockally-0.3.3}/test/test_distribution_list_detail.py +0 -0
  339. {lockally-0.3.2 → lockally-0.3.3}/test/test_distribution_list_summary.py +0 -0
  340. {lockally-0.3.2 → lockally-0.3.3}/test/test_distribution_lists_api.py +0 -0
  341. {lockally-0.3.2 → lockally-0.3.3}/test/test_dns_record.py +0 -0
  342. {lockally-0.3.2 → lockally-0.3.3}/test/test_domain.py +0 -0
  343. {lockally-0.3.2 → lockally-0.3.3}/test/test_domains_api.py +0 -0
  344. {lockally-0.3.2 → lockally-0.3.3}/test/test_draft.py +0 -0
  345. {lockally-0.3.2 → lockally-0.3.3}/test/test_draft_list.py +0 -0
  346. {lockally-0.3.2 → lockally-0.3.3}/test/test_draft_result.py +0 -0
  347. {lockally-0.3.2 → lockally-0.3.3}/test/test_drafts_api.py +0 -0
  348. {lockally-0.3.2 → lockally-0.3.3}/test/test_encryption_api.py +0 -0
  349. {lockally-0.3.2 → lockally-0.3.3}/test/test_export_mailbox201_response.py +0 -0
  350. {lockally-0.3.2 → lockally-0.3.3}/test/test_gal_settings.py +0 -0
  351. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_add_on_status200_response.py +0 -0
  352. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_audit_summary200_response.py +0 -0
  353. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_overview200_response.py +0 -0
  354. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_overview200_response_activity_inner.py +0 -0
  355. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_security200_response.py +0 -0
  356. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_security200_response_alerts_inner.py +0 -0
  357. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_security200_response_delegated_access_inner.py +0 -0
  358. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_security200_response_external_sharing.py +0 -0
  359. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_calendar_security200_response_public_calendar_list_inner.py +0 -0
  360. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_contact_list200_response.py +0 -0
  361. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_contact_list200_response_members_inner.py +0 -0
  362. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_contact_lists200_response.py +0 -0
  363. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_contact_lists200_response_data_inner.py +0 -0
  364. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_current_admin200_response.py +0 -0
  365. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_directory_activity200_response.py +0 -0
  366. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_directory_activity200_response_data_inner.py +0 -0
  367. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_directory_stats200_response.py +0 -0
  368. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_domains_status200_response.py +0 -0
  369. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_domains_status200_response_domains_inner.py +0 -0
  370. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_domains_status200_response_domains_inner_checks_inner.py +0 -0
  371. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_encryption_key200_response.py +0 -0
  372. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_integrations_summary200_response.py +0 -0
  373. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_integrations_summary200_response_api_keys_inner.py +0 -0
  374. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_integrations_summary200_response_webhooks_inner.py +0 -0
  375. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_ip_assignment200_response.py +0 -0
  376. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_security200_response.py +0 -0
  377. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_security200_response_alerts_inner.py +0 -0
  378. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_security200_response_stats_inner.py +0 -0
  379. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_storage200_response.py +0 -0
  380. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_storage200_response_top_mailboxes_inner.py +0 -0
  381. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_storage200_response_top_messages_inner.py +0 -0
  382. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_usage200_response.py +0 -0
  383. {lockally-0.3.2 → lockally-0.3.3}/test/test_get_user_insights200_response.py +0 -0
  384. {lockally-0.3.2 → lockally-0.3.3}/test/test_health_api.py +0 -0
  385. {lockally-0.3.2 → lockally-0.3.3}/test/test_health_check200_response.py +0 -0
  386. {lockally-0.3.2 → lockally-0.3.3}/test/test_inbox.py +0 -0
  387. {lockally-0.3.2 → lockally-0.3.3}/test/test_inbox_list.py +0 -0
  388. {lockally-0.3.2 → lockally-0.3.3}/test/test_injection_risk.py +0 -0
  389. {lockally-0.3.2 → lockally-0.3.3}/test/test_invite_admin_request.py +0 -0
  390. {lockally-0.3.2 → lockally-0.3.3}/test/test_ip_pools_api.py +0 -0
  391. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_add_ons200_response.py +0 -0
  392. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_admins200_response.py +0 -0
  393. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_aliases200_response.py +0 -0
  394. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_api_keys200_response.py +0 -0
  395. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_calendar_events200_response.py +0 -0
  396. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_calendar_integrations200_response.py +0 -0
  397. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_calendar_members200_response.py +0 -0
  398. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_calendars200_response.py +0 -0
  399. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_contact_lists200_response.py +0 -0
  400. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_contacts200_response.py +0 -0
  401. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_dedicated_ip_requests200_response.py +0 -0
  402. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_distribution_lists200_response.py +0 -0
  403. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_domains200_response.py +0 -0
  404. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_mailboxes200_response.py +0 -0
  405. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_messages200_response.py +0 -0
  406. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_migration_credentials200_response.py +0 -0
  407. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_migration_events200_response.py +0 -0
  408. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_migration_mailboxes200_response.py +0 -0
  409. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_migrations200_response.py +0 -0
  410. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_resources200_response.py +0 -0
  411. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_shared_members200_response.py +0 -0
  412. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_suppressions200_response.py +0 -0
  413. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_templates200_response.py +0 -0
  414. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_users200_response.py +0 -0
  415. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_vacation_responders200_response.py +0 -0
  416. {lockally-0.3.2 → lockally-0.3.3}/test/test_list_webhooks200_response.py +0 -0
  417. {lockally-0.3.2 → lockally-0.3.3}/test/test_mailbox.py +0 -0
  418. {lockally-0.3.2 → lockally-0.3.3}/test/test_mailbox_grant.py +0 -0
  419. {lockally-0.3.2 → lockally-0.3.3}/test/test_mailbox_grant_list.py +0 -0
  420. {lockally-0.3.2 → lockally-0.3.3}/test/test_mailboxes_api.py +0 -0
  421. {lockally-0.3.2 → lockally-0.3.3}/test/test_map_migration_request.py +0 -0
  422. {lockally-0.3.2 → lockally-0.3.3}/test/test_map_migration_request_mappings_inner.py +0 -0
  423. {lockally-0.3.2 → lockally-0.3.3}/test/test_mark_read_result.py +0 -0
  424. {lockally-0.3.2 → lockally-0.3.3}/test/test_message.py +0 -0
  425. {lockally-0.3.2 → lockally-0.3.3}/test/test_message_detail.py +0 -0
  426. {lockally-0.3.2 → lockally-0.3.3}/test/test_message_stats.py +0 -0
  427. {lockally-0.3.2 → lockally-0.3.3}/test/test_message_stats_counts.py +0 -0
  428. {lockally-0.3.2 → lockally-0.3.3}/test/test_message_stats_rates.py +0 -0
  429. {lockally-0.3.2 → lockally-0.3.3}/test/test_message_stats_window.py +0 -0
  430. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration.py +0 -0
  431. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration_credential.py +0 -0
  432. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration_event.py +0 -0
  433. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration_mailbox.py +0 -0
  434. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration_progress.py +0 -0
  435. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration_progress_mailboxes_inner.py +0 -0
  436. {lockally-0.3.2 → lockally-0.3.3}/test/test_migration_settings.py +0 -0
  437. {lockally-0.3.2 → lockally-0.3.3}/test/test_migrations_api.py +0 -0
  438. {lockally-0.3.2 → lockally-0.3.3}/test/test_plan_catalog_entry.py +0 -0
  439. {lockally-0.3.2 → lockally-0.3.3}/test/test_policy_flags.py +0 -0
  440. {lockally-0.3.2 → lockally-0.3.3}/test/test_problem.py +0 -0
  441. {lockally-0.3.2 → lockally-0.3.3}/test/test_replace_distribution_list_members200_response.py +0 -0
  442. {lockally-0.3.2 → lockally-0.3.3}/test/test_replace_distribution_list_members_request.py +0 -0
  443. {lockally-0.3.2 → lockally-0.3.3}/test/test_resource.py +0 -0
  444. {lockally-0.3.2 → lockally-0.3.3}/test/test_resources_api.py +0 -0
  445. {lockally-0.3.2 → lockally-0.3.3}/test/test_return_path.py +0 -0
  446. {lockally-0.3.2 → lockally-0.3.3}/test/test_return_path_check.py +0 -0
  447. {lockally-0.3.2 → lockally-0.3.3}/test/test_rotate_encryption_key_request.py +0 -0
  448. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_api.py +0 -0
  449. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_email200_response.py +0 -0
  450. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_email202_response.py +0 -0
  451. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_email_batch200_response.py +0 -0
  452. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_email_batch_request.py +0 -0
  453. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_email_request.py +0 -0
  454. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_email_request_attachments_inner.py +0 -0
  455. {lockally-0.3.2 → lockally-0.3.3}/test/test_send_message.py +0 -0
  456. {lockally-0.3.2 → lockally-0.3.3}/test/test_set_vacation_responder_request.py +0 -0
  457. {lockally-0.3.2 → lockally-0.3.3}/test/test_shared_member.py +0 -0
  458. {lockally-0.3.2 → lockally-0.3.3}/test/test_signup_api.py +0 -0
  459. {lockally-0.3.2 → lockally-0.3.3}/test/test_signup_request.py +0 -0
  460. {lockally-0.3.2 → lockally-0.3.3}/test/test_simulated_inbound.py +0 -0
  461. {lockally-0.3.2 → lockally-0.3.3}/test/test_start_conversation_request.py +0 -0
  462. {lockally-0.3.2 → lockally-0.3.3}/test/test_start_migration202_response.py +0 -0
  463. {lockally-0.3.2 → lockally-0.3.3}/test/test_suppression.py +0 -0
  464. {lockally-0.3.2 → lockally-0.3.3}/test/test_suppressions_api.py +0 -0
  465. {lockally-0.3.2 → lockally-0.3.3}/test/test_template.py +0 -0
  466. {lockally-0.3.2 → lockally-0.3.3}/test/test_template_input.py +0 -0
  467. {lockally-0.3.2 → lockally-0.3.3}/test/test_templates_api.py +0 -0
  468. {lockally-0.3.2 → lockally-0.3.3}/test/test_tenant.py +0 -0
  469. {lockally-0.3.2 → lockally-0.3.3}/test/test_tenant_api.py +0 -0
  470. {lockally-0.3.2 → lockally-0.3.3}/test/test_test_api.py +0 -0
  471. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread.py +0 -0
  472. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread_classification.py +0 -0
  473. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread_list.py +0 -0
  474. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread_message.py +0 -0
  475. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread_message_body.py +0 -0
  476. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread_message_body_body.py +0 -0
  477. {lockally-0.3.2 → lockally-0.3.3}/test/test_thread_summary.py +0 -0
  478. {lockally-0.3.2 → lockally-0.3.3}/test/test_unit_bundle.py +0 -0
  479. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_admin_request.py +0 -0
  480. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_calendar_event_request.py +0 -0
  481. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_calendar_integration_request.py +0 -0
  482. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_calendar_member_request.py +0 -0
  483. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_calendar_policies_request.py +0 -0
  484. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_calendar_request.py +0 -0
  485. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_contact_list_request.py +0 -0
  486. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_contact_request.py +0 -0
  487. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_directory_permissions_request.py +0 -0
  488. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_gal_settings_request.py +0 -0
  489. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_mailbox_request.py +0 -0
  490. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_migration_mailbox_request.py +0 -0
  491. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_migration_request.py +0 -0
  492. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_resource_request.py +0 -0
  493. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_user_request.py +0 -0
  494. {lockally-0.3.2 → lockally-0.3.3}/test/test_update_webhook_request.py +0 -0
  495. {lockally-0.3.2 → lockally-0.3.3}/test/test_user.py +0 -0
  496. {lockally-0.3.2 → lockally-0.3.3}/test/test_user_event.py +0 -0
  497. {lockally-0.3.2 → lockally-0.3.3}/test/test_users_api.py +0 -0
  498. {lockally-0.3.2 → lockally-0.3.3}/test/test_vacation_params.py +0 -0
  499. {lockally-0.3.2 → lockally-0.3.3}/test/test_vacation_responder.py +0 -0
  500. {lockally-0.3.2 → lockally-0.3.3}/test/test_webhook.py +0 -0
  501. {lockally-0.3.2 → lockally-0.3.3}/test/test_webhooks_api.py +0 -0
  502. {lockally-0.3.2 → lockally-0.3.3}/test/test_whoami.py +0 -0
  503. {lockally-0.3.2 → lockally-0.3.3}/test/test_whoami_key.py +0 -0
  504. {lockally-0.3.2 → lockally-0.3.3}/test/test_whoami_tenant.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lockally
3
- Version: 0.3.2
3
+ Version: 0.3.3
4
4
  Summary: lockally control plane
5
5
  Home-page:
6
6
  Author: lockally support
@@ -52,7 +52,7 @@ Insufficient scope returns `403` with the required scope name in `detail`.
52
52
  This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
53
53
 
54
54
  - API version: 0.1.0
55
- - Package version: 0.3.2
55
+ - Package version: 0.3.3
56
56
  - Generator version: 7.23.0
57
57
  - Build package: org.openapitools.codegen.languages.PythonClientCodegen
58
58
 
@@ -32,7 +32,7 @@ Insufficient scope returns `403` with the required scope name in `detail`.
32
32
  This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
33
33
 
34
34
  - API version: 0.1.0
35
- - Package version: 0.3.2
35
+ - Package version: 0.3.3
36
36
  - Generator version: 7.23.0
37
37
  - Build package: org.openapitools.codegen.languages.PythonClientCodegen
38
38
 
@@ -15,7 +15,7 @@
15
15
  """ # noqa: E501
16
16
 
17
17
 
18
- __version__ = "0.3.2"
18
+ __version__ = "0.3.3"
19
19
 
20
20
  # Define package exports
21
21
  __all__ = [
@@ -57,7 +57,7 @@ class AdminApi:
57
57
  ) -> AdminLogin200Response:
58
58
  """Tenant-admin email+password login
59
59
 
60
- Exchanges an admin's email + password for a session token. The web console at `app.lockally.com` posts this on form submission and stores the returned token in an httpOnly cookie. **No enumeration leak.** Wrong-email and wrong-password both return the same 401 with title \"Invalid credentials\". The argon2id verify runs even on lookup miss (well, structurally — the lookup fails fast but the response shape is constant) so timing leaks are bounded. Tokens are prefixed `adm_sess_` and valid for 7 days. Use as the `Authorization: Bearer` value on all subsequent calls.
60
+ Exchanges an admin's email + password for a session token. The web console at `app.lockally.com` posts this on form submission and stores the returned token in an httpOnly cookie. **No enumeration leak.** Wrong-email and wrong-password both return the same 401 with title \"Invalid credentials\". The argon2id verify runs even on lookup miss (well, structurally, the lookup fails fast but the response shape is constant) so timing leaks are bounded. Tokens are prefixed `adm_sess_` and valid for 7 days. Use as the `Authorization: Bearer` value on all subsequent calls.
61
61
 
62
62
  :param admin_login_request: (required)
63
63
  :type admin_login_request: AdminLoginRequest
@@ -127,7 +127,7 @@ class AdminApi:
127
127
  ) -> ApiResponse[AdminLogin200Response]:
128
128
  """Tenant-admin email+password login
129
129
 
130
- Exchanges an admin's email + password for a session token. The web console at `app.lockally.com` posts this on form submission and stores the returned token in an httpOnly cookie. **No enumeration leak.** Wrong-email and wrong-password both return the same 401 with title \"Invalid credentials\". The argon2id verify runs even on lookup miss (well, structurally — the lookup fails fast but the response shape is constant) so timing leaks are bounded. Tokens are prefixed `adm_sess_` and valid for 7 days. Use as the `Authorization: Bearer` value on all subsequent calls.
130
+ Exchanges an admin's email + password for a session token. The web console at `app.lockally.com` posts this on form submission and stores the returned token in an httpOnly cookie. **No enumeration leak.** Wrong-email and wrong-password both return the same 401 with title \"Invalid credentials\". The argon2id verify runs even on lookup miss (well, structurally, the lookup fails fast but the response shape is constant) so timing leaks are bounded. Tokens are prefixed `adm_sess_` and valid for 7 days. Use as the `Authorization: Bearer` value on all subsequent calls.
131
131
 
132
132
  :param admin_login_request: (required)
133
133
  :type admin_login_request: AdminLoginRequest
@@ -197,7 +197,7 @@ class AdminApi:
197
197
  ) -> RESTResponseType:
198
198
  """Tenant-admin email+password login
199
199
 
200
- Exchanges an admin's email + password for a session token. The web console at `app.lockally.com` posts this on form submission and stores the returned token in an httpOnly cookie. **No enumeration leak.** Wrong-email and wrong-password both return the same 401 with title \"Invalid credentials\". The argon2id verify runs even on lookup miss (well, structurally — the lookup fails fast but the response shape is constant) so timing leaks are bounded. Tokens are prefixed `adm_sess_` and valid for 7 days. Use as the `Authorization: Bearer` value on all subsequent calls.
200
+ Exchanges an admin's email + password for a session token. The web console at `app.lockally.com` posts this on form submission and stores the returned token in an httpOnly cookie. **No enumeration leak.** Wrong-email and wrong-password both return the same 401 with title \"Invalid credentials\". The argon2id verify runs even on lookup miss (well, structurally, the lookup fails fast but the response shape is constant) so timing leaks are bounded. Tokens are prefixed `adm_sess_` and valid for 7 days. Use as the `Authorization: Bearer` value on all subsequent calls.
201
201
 
202
202
  :param admin_login_request: (required)
203
203
  :type admin_login_request: AdminLoginRequest
@@ -339,7 +339,7 @@ class AdminApi:
339
339
  ) -> None:
340
340
  """Invalidate the current admin session
341
341
 
342
- Deletes the session row from the database. Idempotent — calling logout on an already-invalid token returns 204 anyway.
342
+ Deletes the session row from the database. Idempotent, calling logout on an already-invalid token returns 204 anyway.
343
343
 
344
344
  :param _request_timeout: timeout setting for this request. If one
345
345
  number provided, it will be total request
@@ -404,7 +404,7 @@ class AdminApi:
404
404
  ) -> ApiResponse[None]:
405
405
  """Invalidate the current admin session
406
406
 
407
- Deletes the session row from the database. Idempotent — calling logout on an already-invalid token returns 204 anyway.
407
+ Deletes the session row from the database. Idempotent, calling logout on an already-invalid token returns 204 anyway.
408
408
 
409
409
  :param _request_timeout: timeout setting for this request. If one
410
410
  number provided, it will be total request
@@ -469,7 +469,7 @@ class AdminApi:
469
469
  ) -> RESTResponseType:
470
470
  """Invalidate the current admin session
471
471
 
472
- Deletes the session row from the database. Idempotent — calling logout on an already-invalid token returns 204 anyway.
472
+ Deletes the session row from the database. Idempotent, calling logout on an already-invalid token returns 204 anyway.
473
473
 
474
474
  :param _request_timeout: timeout setting for this request. If one
475
475
  number provided, it will be total request
@@ -591,7 +591,7 @@ class AdminApi:
591
591
  ) -> GetCurrentAdmin200Response:
592
592
  """Get the current admin + tenant
593
593
 
594
- Returns the admin profile + tenant for the session token presented in `Authorization: Bearer`. Used by the web console's layout load function to populate the sidebar. Returns 403 if called with an API key (lk_live_*) bearer — admin context only exists for session tokens.
594
+ Returns the admin profile + tenant for the session token presented in `Authorization: Bearer`. Used by the web console's layout load function to populate the sidebar. Returns 403 if called with an API key (lk_live_*) bearer, admin context only exists for session tokens.
595
595
 
596
596
  :param _request_timeout: timeout setting for this request. If one
597
597
  number provided, it will be total request
@@ -656,7 +656,7 @@ class AdminApi:
656
656
  ) -> ApiResponse[GetCurrentAdmin200Response]:
657
657
  """Get the current admin + tenant
658
658
 
659
- Returns the admin profile + tenant for the session token presented in `Authorization: Bearer`. Used by the web console's layout load function to populate the sidebar. Returns 403 if called with an API key (lk_live_*) bearer — admin context only exists for session tokens.
659
+ Returns the admin profile + tenant for the session token presented in `Authorization: Bearer`. Used by the web console's layout load function to populate the sidebar. Returns 403 if called with an API key (lk_live_*) bearer, admin context only exists for session tokens.
660
660
 
661
661
  :param _request_timeout: timeout setting for this request. If one
662
662
  number provided, it will be total request
@@ -721,7 +721,7 @@ class AdminApi:
721
721
  ) -> RESTResponseType:
722
722
  """Get the current admin + tenant
723
723
 
724
- Returns the admin profile + tenant for the session token presented in `Authorization: Bearer`. Used by the web console's layout load function to populate the sidebar. Returns 403 if called with an API key (lk_live_*) bearer — admin context only exists for session tokens.
724
+ Returns the admin profile + tenant for the session token presented in `Authorization: Bearer`. Used by the web console's layout load function to populate the sidebar. Returns 403 if called with an API key (lk_live_*) bearer, admin context only exists for session tokens.
725
725
 
726
726
  :param _request_timeout: timeout setting for this request. If one
727
727
  number provided, it will be total request
@@ -870,7 +870,7 @@ class AdminsApi:
870
870
  ) -> AdminFull:
871
871
  """Update an admin
872
872
 
873
- Supply at least one of `password`, `display_name`, `role`, `disabled`. **Safety rails.** A session bearer (adm_sess_*) cannot disable itself — use another admin or an API key (which bypasses the self-rail). Disabling the last active admin returns 409 to prevent orphaning the tenant from its console.
873
+ Supply at least one of `password`, `display_name`, `role`, `disabled`. **Safety rails.** A session bearer (adm_sess_*) cannot disable itself, use another admin or an API key (which bypasses the self-rail). Disabling the last active admin returns 409 to prevent orphaning the tenant from its console.
874
874
 
875
875
  :param id: (required)
876
876
  :type id: UUID
@@ -946,7 +946,7 @@ class AdminsApi:
946
946
  ) -> ApiResponse[AdminFull]:
947
947
  """Update an admin
948
948
 
949
- Supply at least one of `password`, `display_name`, `role`, `disabled`. **Safety rails.** A session bearer (adm_sess_*) cannot disable itself — use another admin or an API key (which bypasses the self-rail). Disabling the last active admin returns 409 to prevent orphaning the tenant from its console.
949
+ Supply at least one of `password`, `display_name`, `role`, `disabled`. **Safety rails.** A session bearer (adm_sess_*) cannot disable itself, use another admin or an API key (which bypasses the self-rail). Disabling the last active admin returns 409 to prevent orphaning the tenant from its console.
950
950
 
951
951
  :param id: (required)
952
952
  :type id: UUID
@@ -1022,7 +1022,7 @@ class AdminsApi:
1022
1022
  ) -> RESTResponseType:
1023
1023
  """Update an admin
1024
1024
 
1025
- Supply at least one of `password`, `display_name`, `role`, `disabled`. **Safety rails.** A session bearer (adm_sess_*) cannot disable itself — use another admin or an API key (which bypasses the self-rail). Disabling the last active admin returns 409 to prevent orphaning the tenant from its console.
1025
+ Supply at least one of `password`, `display_name`, `role`, `disabled`. **Safety rails.** A session bearer (adm_sess_*) cannot disable itself, use another admin or an API key (which bypasses the self-rail). Disabling the last active admin returns 409 to prevent orphaning the tenant from its console.
1026
1026
 
1027
1027
  :param id: (required)
1028
1028
  :type id: UUID
@@ -888,7 +888,7 @@ class AgentsApi:
888
888
  ) -> MailboxGrant:
889
889
  """Grant a mailbox to a key
890
890
 
891
- Body: {\"mailbox\": \"email or id\"}. Refused (422) for mailboxes with agent access disabled or an active E2E encryption key — the server cannot read E2E mailboxes.
891
+ Body: {\"mailbox\": \"email or id\"}. Refused (422) for mailboxes with agent access disabled or an active E2E encryption key, the server cannot read E2E mailboxes.
892
892
 
893
893
  :param key_id: (required)
894
894
  :type key_id: UUID
@@ -956,7 +956,7 @@ class AgentsApi:
956
956
  ) -> ApiResponse[MailboxGrant]:
957
957
  """Grant a mailbox to a key
958
958
 
959
- Body: {\"mailbox\": \"email or id\"}. Refused (422) for mailboxes with agent access disabled or an active E2E encryption key — the server cannot read E2E mailboxes.
959
+ Body: {\"mailbox\": \"email or id\"}. Refused (422) for mailboxes with agent access disabled or an active E2E encryption key, the server cannot read E2E mailboxes.
960
960
 
961
961
  :param key_id: (required)
962
962
  :type key_id: UUID
@@ -1024,7 +1024,7 @@ class AgentsApi:
1024
1024
  ) -> RESTResponseType:
1025
1025
  """Grant a mailbox to a key
1026
1026
 
1027
- Body: {\"mailbox\": \"email or id\"}. Refused (422) for mailboxes with agent access disabled or an active E2E encryption key — the server cannot read E2E mailboxes.
1027
+ Body: {\"mailbox\": \"email or id\"}. Refused (422) for mailboxes with agent access disabled or an active E2E encryption key, the server cannot read E2E mailboxes.
1028
1028
 
1029
1029
  :param key_id: (required)
1030
1030
  :type key_id: UUID
@@ -2526,7 +2526,7 @@ class AgentsApi:
2526
2526
  ) -> AgentSendResult:
2527
2527
  """Reply in-thread (agent stream)
2528
2528
 
2529
- The server builds In-Reply-To/References and defaults recipients + subject from the conversation — a minimal call is {\"text\": \"...\"}. Guarded by the reply-loop detector (≥5 outbound/10min → 429 + agent.loop_detected). Idempotency-Key required.
2529
+ The server builds In-Reply-To/References and defaults recipients + subject from the conversation, a minimal call is {\"text\": \"...\"}. Guarded by the reply-loop detector (≥5 outbound/10min → 429 + agent.loop_detected). Idempotency-Key required.
2530
2530
 
2531
2531
  :param thread_id: (required)
2532
2532
  :type thread_id: UUID
@@ -2597,7 +2597,7 @@ class AgentsApi:
2597
2597
  ) -> ApiResponse[AgentSendResult]:
2598
2598
  """Reply in-thread (agent stream)
2599
2599
 
2600
- The server builds In-Reply-To/References and defaults recipients + subject from the conversation — a minimal call is {\"text\": \"...\"}. Guarded by the reply-loop detector (≥5 outbound/10min → 429 + agent.loop_detected). Idempotency-Key required.
2600
+ The server builds In-Reply-To/References and defaults recipients + subject from the conversation, a minimal call is {\"text\": \"...\"}. Guarded by the reply-loop detector (≥5 outbound/10min → 429 + agent.loop_detected). Idempotency-Key required.
2601
2601
 
2602
2602
  :param thread_id: (required)
2603
2603
  :type thread_id: UUID
@@ -2668,7 +2668,7 @@ class AgentsApi:
2668
2668
  ) -> RESTResponseType:
2669
2669
  """Reply in-thread (agent stream)
2670
2670
 
2671
- The server builds In-Reply-To/References and defaults recipients + subject from the conversation — a minimal call is {\"text\": \"...\"}. Guarded by the reply-loop detector (≥5 outbound/10min → 429 + agent.loop_detected). Idempotency-Key required.
2671
+ The server builds In-Reply-To/References and defaults recipients + subject from the conversation, a minimal call is {\"text\": \"...\"}. Guarded by the reply-loop detector (≥5 outbound/10min → 429 + agent.loop_detected). Idempotency-Key required.
2672
2672
 
2673
2673
  :param thread_id: (required)
2674
2674
  :type thread_id: UUID
@@ -62,7 +62,7 @@ class AiApi:
62
62
  ) -> ThreadClassification:
63
63
  """LLM-classify a thread
64
64
 
65
- Returns {intent, urgency, summary, suggested_action} via the tenant's AI tier (BYOK or prepaid units — see /v1/ai-config). Cached per thread state: unchanged threads return the cache free; ?refresh=true forces a re-run. A failed model call charges nothing. 402 when the AI tier is off.
65
+ Returns {intent, urgency, summary, suggested_action} via the tenant's AI tier (BYOK or prepaid units, see /v1/ai-config). Cached per thread state: unchanged threads return the cache free; ?refresh=true forces a re-run. A failed model call charges nothing. 402 when the AI tier is off.
66
66
 
67
67
  :param thread_id: (required)
68
68
  :type thread_id: UUID
@@ -134,7 +134,7 @@ class AiApi:
134
134
  ) -> ApiResponse[ThreadClassification]:
135
135
  """LLM-classify a thread
136
136
 
137
- Returns {intent, urgency, summary, suggested_action} via the tenant's AI tier (BYOK or prepaid units — see /v1/ai-config). Cached per thread state: unchanged threads return the cache free; ?refresh=true forces a re-run. A failed model call charges nothing. 402 when the AI tier is off.
137
+ Returns {intent, urgency, summary, suggested_action} via the tenant's AI tier (BYOK or prepaid units, see /v1/ai-config). Cached per thread state: unchanged threads return the cache free; ?refresh=true forces a re-run. A failed model call charges nothing. 402 when the AI tier is off.
138
138
 
139
139
  :param thread_id: (required)
140
140
  :type thread_id: UUID
@@ -206,7 +206,7 @@ class AiApi:
206
206
  ) -> RESTResponseType:
207
207
  """LLM-classify a thread
208
208
 
209
- Returns {intent, urgency, summary, suggested_action} via the tenant's AI tier (BYOK or prepaid units — see /v1/ai-config). Cached per thread state: unchanged threads return the cache free; ?refresh=true forces a re-run. A failed model call charges nothing. 402 when the AI tier is off.
209
+ Returns {intent, urgency, summary, suggested_action} via the tenant's AI tier (BYOK or prepaid units, see /v1/ai-config). Cached per thread state: unchanged threads return the cache free; ?refresh=true forces a re-run. A failed model call charges nothing. 402 when the AI tier is off.
210
210
 
211
211
  :param thread_id: (required)
212
212
  :type thread_id: UUID
@@ -345,7 +345,7 @@ class AliasesApi:
345
345
  ) -> None:
346
346
  """Delete an alias
347
347
 
348
- Hard-delete (no soft-delete window — aliases are cheap to recreate).
348
+ Hard-delete (no soft-delete window, aliases are cheap to recreate).
349
349
 
350
350
  :param address: (required)
351
351
  :type address: str
@@ -415,7 +415,7 @@ class AliasesApi:
415
415
  ) -> ApiResponse[None]:
416
416
  """Delete an alias
417
417
 
418
- Hard-delete (no soft-delete window — aliases are cheap to recreate).
418
+ Hard-delete (no soft-delete window, aliases are cheap to recreate).
419
419
 
420
420
  :param address: (required)
421
421
  :type address: str
@@ -485,7 +485,7 @@ class AliasesApi:
485
485
  ) -> RESTResponseType:
486
486
  """Delete an alias
487
487
 
488
- Hard-delete (no soft-delete window — aliases are cheap to recreate).
488
+ Hard-delete (no soft-delete window, aliases are cheap to recreate).
489
489
 
490
490
  :param address: (required)
491
491
  :type address: str
@@ -58,7 +58,7 @@ class ApiKeysApi:
58
58
  ) -> CreateApiKey201Response:
59
59
  """Create an API key
60
60
 
61
- Provisions a fresh API key for the calling tenant. **The full `secret` is included in this response ONLY** — store it immediately. The cleartext secret is not recoverable from the argon2id hash kept server-side; rotate by creating a new key and revoking the old one.
61
+ Provisions a fresh API key for the calling tenant. **The full `secret` is included in this response ONLY**, store it immediately. The cleartext secret is not recoverable from the argon2id hash kept server-side; rotate by creating a new key and revoking the old one.
62
62
 
63
63
  :param create_api_key_request: (required)
64
64
  :type create_api_key_request: CreateApiKeyRequest
@@ -128,7 +128,7 @@ class ApiKeysApi:
128
128
  ) -> ApiResponse[CreateApiKey201Response]:
129
129
  """Create an API key
130
130
 
131
- Provisions a fresh API key for the calling tenant. **The full `secret` is included in this response ONLY** — store it immediately. The cleartext secret is not recoverable from the argon2id hash kept server-side; rotate by creating a new key and revoking the old one.
131
+ Provisions a fresh API key for the calling tenant. **The full `secret` is included in this response ONLY**, store it immediately. The cleartext secret is not recoverable from the argon2id hash kept server-side; rotate by creating a new key and revoking the old one.
132
132
 
133
133
  :param create_api_key_request: (required)
134
134
  :type create_api_key_request: CreateApiKeyRequest
@@ -198,7 +198,7 @@ class ApiKeysApi:
198
198
  ) -> RESTResponseType:
199
199
  """Create an API key
200
200
 
201
- Provisions a fresh API key for the calling tenant. **The full `secret` is included in this response ONLY** — store it immediately. The cleartext secret is not recoverable from the argon2id hash kept server-side; rotate by creating a new key and revoking the old one.
201
+ Provisions a fresh API key for the calling tenant. **The full `secret` is included in this response ONLY**, store it immediately. The cleartext secret is not recoverable from the argon2id hash kept server-side; rotate by creating a new key and revoking the old one.
202
202
 
203
203
  :param create_api_key_request: (required)
204
204
  :type create_api_key_request: CreateApiKeyRequest
@@ -341,7 +341,7 @@ class ApiKeysApi:
341
341
  ) -> ListApiKeys200Response:
342
342
  """List API keys
343
343
 
344
- Returns all API keys (active and revoked) belonging to the calling tenant. The `secret` is **never** returned — only prefix + metadata.
344
+ Returns all API keys (active and revoked) belonging to the calling tenant. The `secret` is **never** returned, only prefix + metadata.
345
345
 
346
346
  :param _request_timeout: timeout setting for this request. If one
347
347
  number provided, it will be total request
@@ -406,7 +406,7 @@ class ApiKeysApi:
406
406
  ) -> ApiResponse[ListApiKeys200Response]:
407
407
  """List API keys
408
408
 
409
- Returns all API keys (active and revoked) belonging to the calling tenant. The `secret` is **never** returned — only prefix + metadata.
409
+ Returns all API keys (active and revoked) belonging to the calling tenant. The `secret` is **never** returned, only prefix + metadata.
410
410
 
411
411
  :param _request_timeout: timeout setting for this request. If one
412
412
  number provided, it will be total request
@@ -471,7 +471,7 @@ class ApiKeysApi:
471
471
  ) -> RESTResponseType:
472
472
  """List API keys
473
473
 
474
- Returns all API keys (active and revoked) belonging to the calling tenant. The `secret` is **never** returned — only prefix + metadata.
474
+ Returns all API keys (active and revoked) belonging to the calling tenant. The `secret` is **never** returned, only prefix + metadata.
475
475
 
476
476
  :param _request_timeout: timeout setting for this request. If one
477
477
  number provided, it will be total request
@@ -595,7 +595,7 @@ class ApiKeysApi:
595
595
  ) -> None:
596
596
  """Revoke an API key
597
597
 
598
- Soft-deletes (sets `revoked_at`) on the named key. The row stays for audit purposes; the key no longer authenticates. You **cannot revoke the key currently being used** to make this call — that would lock you out. Use a different `tenant:admin` key.
598
+ Soft-deletes (sets `revoked_at`) on the named key. The row stays for audit purposes; the key no longer authenticates. You **cannot revoke the key currently being used** to make this call, that would lock you out. Use a different `tenant:admin` key.
599
599
 
600
600
  :param id: (required)
601
601
  :type id: UUID
@@ -666,7 +666,7 @@ class ApiKeysApi:
666
666
  ) -> ApiResponse[None]:
667
667
  """Revoke an API key
668
668
 
669
- Soft-deletes (sets `revoked_at`) on the named key. The row stays for audit purposes; the key no longer authenticates. You **cannot revoke the key currently being used** to make this call — that would lock you out. Use a different `tenant:admin` key.
669
+ Soft-deletes (sets `revoked_at`) on the named key. The row stays for audit purposes; the key no longer authenticates. You **cannot revoke the key currently being used** to make this call, that would lock you out. Use a different `tenant:admin` key.
670
670
 
671
671
  :param id: (required)
672
672
  :type id: UUID
@@ -737,7 +737,7 @@ class ApiKeysApi:
737
737
  ) -> RESTResponseType:
738
738
  """Revoke an API key
739
739
 
740
- Soft-deletes (sets `revoked_at`) on the named key. The row stays for audit purposes; the key no longer authenticates. You **cannot revoke the key currently being used** to make this call — that would lock you out. Use a different `tenant:admin` key.
740
+ Soft-deletes (sets `revoked_at`) on the named key. The row stays for audit purposes; the key no longer authenticates. You **cannot revoke the key currently being used** to make this call, that would lock you out. Use a different `tenant:admin` key.
741
741
 
742
742
  :param id: (required)
743
743
  :type id: UUID
@@ -59,7 +59,7 @@ class DomainsApi:
59
59
  ) -> Domain:
60
60
  """Register a domain
61
61
 
62
- Registers a new domain for the calling tenant. Generates a DKIM keypair and verification token. Returns DNS instructions the tenant must publish under their own DNS (verification TXT, SPF include, DKIM TXT, MX records to `mx1`/`mx2.lockally.com`, DMARC seed). **Idempotent** — re-posting the same domain returns the existing record with the same DKIM keys and token (regenerating would break the tenant's published DNS). Returns 200 on idempotent hit, 201 on first create. Returns 409 if the domain is already claimed by a different tenant.
62
+ Registers a new domain for the calling tenant. Generates a DKIM keypair and verification token. Returns DNS instructions the tenant must publish under their own DNS (verification TXT, SPF include, DKIM TXT, MX records to `mx1`/`mx2.lockally.com`, DMARC seed). **Idempotent**, re-posting the same domain returns the existing record with the same DKIM keys and token (regenerating would break the tenant's published DNS). Returns 200 on idempotent hit, 201 on first create. Returns 409 if the domain is already claimed by a different tenant.
63
63
 
64
64
  :param create_domain_request: (required)
65
65
  :type create_domain_request: CreateDomainRequest
@@ -131,7 +131,7 @@ class DomainsApi:
131
131
  ) -> ApiResponse[Domain]:
132
132
  """Register a domain
133
133
 
134
- Registers a new domain for the calling tenant. Generates a DKIM keypair and verification token. Returns DNS instructions the tenant must publish under their own DNS (verification TXT, SPF include, DKIM TXT, MX records to `mx1`/`mx2.lockally.com`, DMARC seed). **Idempotent** — re-posting the same domain returns the existing record with the same DKIM keys and token (regenerating would break the tenant's published DNS). Returns 200 on idempotent hit, 201 on first create. Returns 409 if the domain is already claimed by a different tenant.
134
+ Registers a new domain for the calling tenant. Generates a DKIM keypair and verification token. Returns DNS instructions the tenant must publish under their own DNS (verification TXT, SPF include, DKIM TXT, MX records to `mx1`/`mx2.lockally.com`, DMARC seed). **Idempotent**, re-posting the same domain returns the existing record with the same DKIM keys and token (regenerating would break the tenant's published DNS). Returns 200 on idempotent hit, 201 on first create. Returns 409 if the domain is already claimed by a different tenant.
135
135
 
136
136
  :param create_domain_request: (required)
137
137
  :type create_domain_request: CreateDomainRequest
@@ -203,7 +203,7 @@ class DomainsApi:
203
203
  ) -> RESTResponseType:
204
204
  """Register a domain
205
205
 
206
- Registers a new domain for the calling tenant. Generates a DKIM keypair and verification token. Returns DNS instructions the tenant must publish under their own DNS (verification TXT, SPF include, DKIM TXT, MX records to `mx1`/`mx2.lockally.com`, DMARC seed). **Idempotent** — re-posting the same domain returns the existing record with the same DKIM keys and token (regenerating would break the tenant's published DNS). Returns 200 on idempotent hit, 201 on first create. Returns 409 if the domain is already claimed by a different tenant.
206
+ Registers a new domain for the calling tenant. Generates a DKIM keypair and verification token. Returns DNS instructions the tenant must publish under their own DNS (verification TXT, SPF include, DKIM TXT, MX records to `mx1`/`mx2.lockally.com`, DMARC seed). **Idempotent**, re-posting the same domain returns the existing record with the same DKIM keys and token (regenerating would break the tenant's published DNS). Returns 200 on idempotent hit, 201 on first create. Returns 409 if the domain is already claimed by a different tenant.
207
207
 
208
208
  :param create_domain_request: (required)
209
209
  :type create_domain_request: CreateDomainRequest
@@ -349,7 +349,7 @@ class DomainsApi:
349
349
  ) -> None:
350
350
  """Delete a domain
351
351
 
352
- Removes the domain registration. Refuses with 409 if any mailbox is still attached — delete the mailboxes first.
352
+ Removes the domain registration. Refuses with 409 if any mailbox is still attached, delete the mailboxes first.
353
353
 
354
354
  :param domain: (required)
355
355
  :type domain: str
@@ -420,7 +420,7 @@ class DomainsApi:
420
420
  ) -> ApiResponse[None]:
421
421
  """Delete a domain
422
422
 
423
- Removes the domain registration. Refuses with 409 if any mailbox is still attached — delete the mailboxes first.
423
+ Removes the domain registration. Refuses with 409 if any mailbox is still attached, delete the mailboxes first.
424
424
 
425
425
  :param domain: (required)
426
426
  :type domain: str
@@ -491,7 +491,7 @@ class DomainsApi:
491
491
  ) -> RESTResponseType:
492
492
  """Delete a domain
493
493
 
494
- Removes the domain registration. Refuses with 409 if any mailbox is still attached — delete the mailboxes first.
494
+ Removes the domain registration. Refuses with 409 if any mailbox is still attached, delete the mailboxes first.
495
495
 
496
496
  :param domain: (required)
497
497
  :type domain: str
@@ -1958,7 +1958,7 @@ class DomainsApi:
1958
1958
  ) -> Domain:
1959
1959
  """Force-poll DNS verification
1960
1960
 
1961
- Synchronously checks the `_lockally-verify.<domain>` TXT record against the stored verification token. Returns 200 either way: the returned `verified` boolean tells you whether DNS now confirms. Caller polls until `verified: true`. In v2 a background worker auto-polls and fires a `domain.verified` webhook.
1961
+ Synchronously checks the `_lockally-verify.<domain>` TXT record against the stored verification token. Returns 200 either way: the returned `verified` boolean tells you whether DNS now confirms. Caller polls until `verified: true`. A later version may have the platform auto-polls and fires a `domain.verified` webhook.
1962
1962
 
1963
1963
  :param domain: (required)
1964
1964
  :type domain: str
@@ -2029,7 +2029,7 @@ class DomainsApi:
2029
2029
  ) -> ApiResponse[Domain]:
2030
2030
  """Force-poll DNS verification
2031
2031
 
2032
- Synchronously checks the `_lockally-verify.<domain>` TXT record against the stored verification token. Returns 200 either way: the returned `verified` boolean tells you whether DNS now confirms. Caller polls until `verified: true`. In v2 a background worker auto-polls and fires a `domain.verified` webhook.
2032
+ Synchronously checks the `_lockally-verify.<domain>` TXT record against the stored verification token. Returns 200 either way: the returned `verified` boolean tells you whether DNS now confirms. Caller polls until `verified: true`. A later version may have the platform auto-polls and fires a `domain.verified` webhook.
2033
2033
 
2034
2034
  :param domain: (required)
2035
2035
  :type domain: str
@@ -2100,7 +2100,7 @@ class DomainsApi:
2100
2100
  ) -> RESTResponseType:
2101
2101
  """Force-poll DNS verification
2102
2102
 
2103
- Synchronously checks the `_lockally-verify.<domain>` TXT record against the stored verification token. Returns 200 either way: the returned `verified` boolean tells you whether DNS now confirms. Caller polls until `verified: true`. In v2 a background worker auto-polls and fires a `domain.verified` webhook.
2103
+ Synchronously checks the `_lockally-verify.<domain>` TXT record against the stored verification token. Returns 200 either way: the returned `verified` boolean tells you whether DNS now confirms. Caller polls until `verified: true`. A later version may have the platform auto-polls and fires a `domain.verified` webhook.
2104
2104
 
2105
2105
  :param domain: (required)
2106
2106
  :type domain: str
@@ -370,7 +370,7 @@ class MailboxesApi:
370
370
  ) -> Mailbox:
371
371
  """Create a mailbox
372
372
 
373
- 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.
373
+ 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.
374
374
 
375
375
  :param create_mailbox_request: (required)
376
376
  :type create_mailbox_request: CreateMailboxRequest
@@ -442,7 +442,7 @@ class MailboxesApi:
442
442
  ) -> ApiResponse[Mailbox]:
443
443
  """Create a mailbox
444
444
 
445
- 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.
445
+ 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.
446
446
 
447
447
  :param create_mailbox_request: (required)
448
448
  :type create_mailbox_request: CreateMailboxRequest
@@ -514,7 +514,7 @@ class MailboxesApi:
514
514
  ) -> RESTResponseType:
515
515
  """Create a mailbox
516
516
 
517
- 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.
517
+ 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.
518
518
 
519
519
  :param create_mailbox_request: (required)
520
520
  :type create_mailbox_request: CreateMailboxRequest
@@ -930,7 +930,7 @@ class MailboxesApi:
930
930
  ) -> None:
931
931
  """Remove the vacation responder
932
932
 
933
- Idempotent — 204 whether or not a row existed.
933
+ Idempotent, 204 whether or not a row existed.
934
934
 
935
935
  :param email: (required)
936
936
  :type email: str
@@ -999,7 +999,7 @@ class MailboxesApi:
999
999
  ) -> ApiResponse[None]:
1000
1000
  """Remove the vacation responder
1001
1001
 
1002
- Idempotent — 204 whether or not a row existed.
1002
+ Idempotent, 204 whether or not a row existed.
1003
1003
 
1004
1004
  :param email: (required)
1005
1005
  :type email: str
@@ -1068,7 +1068,7 @@ class MailboxesApi:
1068
1068
  ) -> RESTResponseType:
1069
1069
  """Remove the vacation responder
1070
1070
 
1071
- Idempotent — 204 whether or not a row existed.
1071
+ Idempotent, 204 whether or not a row existed.
1072
1072
 
1073
1073
  :param email: (required)
1074
1074
  :type email: str
@@ -1198,7 +1198,7 @@ class MailboxesApi:
1198
1198
  ) -> bytes:
1199
1199
  """Download a previously-issued mailbox export
1200
1200
 
1201
- 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.
1201
+ 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.
1202
1202
 
1203
1203
  :param email: (required)
1204
1204
  :type email: str
@@ -1272,7 +1272,7 @@ class MailboxesApi:
1272
1272
  ) -> ApiResponse[bytes]:
1273
1273
  """Download a previously-issued mailbox export
1274
1274
 
1275
- 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.
1275
+ 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.
1276
1276
 
1277
1277
  :param email: (required)
1278
1278
  :type email: str
@@ -1346,7 +1346,7 @@ class MailboxesApi:
1346
1346
  ) -> RESTResponseType:
1347
1347
  """Download a previously-issued mailbox export
1348
1348
 
1349
- 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.
1349
+ 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.
1350
1350
 
1351
1351
  :param email: (required)
1352
1352
  :type email: str
@@ -1484,7 +1484,7 @@ class MailboxesApi:
1484
1484
  ) -> ExportMailbox201Response:
1485
1485
  """Request a mailbox export
1486
1486
 
1487
- 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. **Scope changed:** this used to accept `mailboxes:read`. It takes any mailbox in the tenant and returns that mailbox's mail, so it now requires `tenant:admin`, matching `POST /v1/ediscovery/export`. A key scoped `mailboxes:read` gets 403 and has to be reissued; admin console sessions are unaffected.
1487
+ 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 (sent mail only). A later version will cover received mail for full inbox + folder structure + flags. The endpoint contract stays unchanged. **Scope changed:** this used to accept `mailboxes:read`. It takes any mailbox in the tenant and returns that mailbox's mail, so it now requires `tenant:admin`, matching `POST /v1/ediscovery/export`. A key scoped `mailboxes:read` gets 403 and has to be reissued; admin console sessions are unaffected.
1488
1488
 
1489
1489
  :param email: (required)
1490
1490
  :type email: str
@@ -1554,7 +1554,7 @@ class MailboxesApi:
1554
1554
  ) -> ApiResponse[ExportMailbox201Response]:
1555
1555
  """Request a mailbox export
1556
1556
 
1557
- 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. **Scope changed:** this used to accept `mailboxes:read`. It takes any mailbox in the tenant and returns that mailbox's mail, so it now requires `tenant:admin`, matching `POST /v1/ediscovery/export`. A key scoped `mailboxes:read` gets 403 and has to be reissued; admin console sessions are unaffected.
1557
+ 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 (sent mail only). A later version will cover received mail for full inbox + folder structure + flags. The endpoint contract stays unchanged. **Scope changed:** this used to accept `mailboxes:read`. It takes any mailbox in the tenant and returns that mailbox's mail, so it now requires `tenant:admin`, matching `POST /v1/ediscovery/export`. A key scoped `mailboxes:read` gets 403 and has to be reissued; admin console sessions are unaffected.
1558
1558
 
1559
1559
  :param email: (required)
1560
1560
  :type email: str
@@ -1624,7 +1624,7 @@ class MailboxesApi:
1624
1624
  ) -> RESTResponseType:
1625
1625
  """Request a mailbox export
1626
1626
 
1627
- 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. **Scope changed:** this used to accept `mailboxes:read`. It takes any mailbox in the tenant and returns that mailbox's mail, so it now requires `tenant:admin`, matching `POST /v1/ediscovery/export`. A key scoped `mailboxes:read` gets 403 and has to be reissued; admin console sessions are unaffected.
1627
+ 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 (sent mail only). A later version will cover received mail for full inbox + folder structure + flags. The endpoint contract stays unchanged. **Scope changed:** this used to accept `mailboxes:read`. It takes any mailbox in the tenant and returns that mailbox's mail, so it now requires `tenant:admin`, matching `POST /v1/ediscovery/export`. A key scoped `mailboxes:read` gets 403 and has to be reissued; admin console sessions are unaffected.
1628
1628
 
1629
1629
  :param email: (required)
1630
1630
  :type email: str
@@ -2294,7 +2294,7 @@ class MailboxesApi:
2294
2294
  ) -> ListMailboxes200Response:
2295
2295
  """List mailboxes
2296
2296
 
2297
- Returns mailboxes under the calling tenant — active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
2297
+ Returns mailboxes under the calling tenant, active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
2298
2298
 
2299
2299
  :param limit:
2300
2300
  :type limit: int
@@ -2363,7 +2363,7 @@ class MailboxesApi:
2363
2363
  ) -> ApiResponse[ListMailboxes200Response]:
2364
2364
  """List mailboxes
2365
2365
 
2366
- Returns mailboxes under the calling tenant — active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
2366
+ Returns mailboxes under the calling tenant, active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
2367
2367
 
2368
2368
  :param limit:
2369
2369
  :type limit: int
@@ -2432,7 +2432,7 @@ class MailboxesApi:
2432
2432
  ) -> RESTResponseType:
2433
2433
  """List mailboxes
2434
2434
 
2435
- Returns mailboxes under the calling tenant — active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
2435
+ Returns mailboxes under the calling tenant, active and soft-deleted. `?limit=N` between 1 and 200 (default 50).
2436
2436
 
2437
2437
  :param limit:
2438
2438
  :type limit: int
@@ -3368,7 +3368,7 @@ class MailboxesApi:
3368
3368
  ) -> VacationResponder:
3369
3369
  """Set the vacation responder
3370
3370
 
3371
- 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.
3371
+ Upsert, same endpoint creates or replaces the rule. Clears `synced_at`; the rule is staged until a later sync pushes it to the mail server.
3372
3372
 
3373
3373
  :param email: (required)
3374
3374
  :type email: str
@@ -3443,7 +3443,7 @@ class MailboxesApi:
3443
3443
  ) -> ApiResponse[VacationResponder]:
3444
3444
  """Set the vacation responder
3445
3445
 
3446
- 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.
3446
+ Upsert, same endpoint creates or replaces the rule. Clears `synced_at`; the rule is staged until a later sync pushes it to the mail server.
3447
3447
 
3448
3448
  :param email: (required)
3449
3449
  :type email: str
@@ -3518,7 +3518,7 @@ class MailboxesApi:
3518
3518
  ) -> RESTResponseType:
3519
3519
  """Set the vacation responder
3520
3520
 
3521
- 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.
3521
+ Upsert, same endpoint creates or replaces the rule. Clears `synced_at`; the rule is staged until a later sync pushes it to the mail server.
3522
3522
 
3523
3523
  :param email: (required)
3524
3524
  :type email: str