appwrite-console 0.1.0__py3-none-any.whl

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 (552) hide show
  1. appwrite_console/__init__.py +1 -0
  2. appwrite_console/client.py +371 -0
  3. appwrite_console/encoders/__init__.py +1 -0
  4. appwrite_console/encoders/value_class_encoder.py +373 -0
  5. appwrite_console/enums/__init__.py +1 -0
  6. appwrite_console/enums/account_key_scopes.py +6 -0
  7. appwrite_console/enums/adapter.py +5 -0
  8. appwrite_console/enums/addon.py +7 -0
  9. appwrite_console/enums/appwrite_migration_resource.py +42 -0
  10. appwrite_console/enums/attribute_status.py +8 -0
  11. appwrite_console/enums/authentication_factor.py +7 -0
  12. appwrite_console/enums/authenticator_type.py +4 -0
  13. appwrite_console/enums/backup_services.py +10 -0
  14. appwrite_console/enums/billing_plan_group.py +6 -0
  15. appwrite_console/enums/block_mode.py +5 -0
  16. appwrite_console/enums/block_resource_type.py +12 -0
  17. appwrite_console/enums/browser.py +17 -0
  18. appwrite_console/enums/browser_permission.py +23 -0
  19. appwrite_console/enums/browser_theme.py +5 -0
  20. appwrite_console/enums/build_runtime.py +95 -0
  21. appwrite_console/enums/cache_database.py +6 -0
  22. appwrite_console/enums/cache_target.py +9 -0
  23. appwrite_console/enums/column_status.py +8 -0
  24. appwrite_console/enums/compression.py +6 -0
  25. appwrite_console/enums/console_resource_type.py +4 -0
  26. appwrite_console/enums/credit_card.py +20 -0
  27. appwrite_console/enums/database_status.py +17 -0
  28. appwrite_console/enums/database_type.py +10 -0
  29. appwrite_console/enums/databases_index_type.py +7 -0
  30. appwrite_console/enums/deployment_download_type.py +5 -0
  31. appwrite_console/enums/deployment_status.py +9 -0
  32. appwrite_console/enums/detection_framework_type.py +4 -0
  33. appwrite_console/enums/detection_runtime_type.py +4 -0
  34. appwrite_console/enums/documents_db_index_type.py +6 -0
  35. appwrite_console/enums/domain_purchase_status.py +7 -0
  36. appwrite_console/enums/domain_registration_type.py +7 -0
  37. appwrite_console/enums/domain_suggestion_type.py +5 -0
  38. appwrite_console/enums/domain_transfer_status_enum.py +11 -0
  39. appwrite_console/enums/embedding_model.py +7 -0
  40. appwrite_console/enums/execution_method.py +10 -0
  41. appwrite_console/enums/execution_status.py +8 -0
  42. appwrite_console/enums/execution_trigger.py +6 -0
  43. appwrite_console/enums/firebase_migration_resource.py +13 -0
  44. appwrite_console/enums/flag.py +198 -0
  45. appwrite_console/enums/framework.py +18 -0
  46. appwrite_console/enums/function_template_use_case.py +10 -0
  47. appwrite_console/enums/image_format.py +10 -0
  48. appwrite_console/enums/image_gravity.py +12 -0
  49. appwrite_console/enums/index_status.py +8 -0
  50. appwrite_console/enums/message_priority.py +5 -0
  51. appwrite_console/enums/message_status.py +8 -0
  52. appwrite_console/enums/messaging_provider_type.py +6 -0
  53. appwrite_console/enums/n_host_migration_resource.py +14 -0
  54. appwrite_console/enums/o_auth2_google_prompt.py +6 -0
  55. appwrite_console/enums/o_auth2_oidc_prompt.py +7 -0
  56. appwrite_console/enums/o_auth_provider.py +47 -0
  57. appwrite_console/enums/on_duplicate.py +6 -0
  58. appwrite_console/enums/order_by.py +5 -0
  59. appwrite_console/enums/organization_key_scopes.py +19 -0
  60. appwrite_console/enums/password_hash.py +14 -0
  61. appwrite_console/enums/platform.py +5 -0
  62. appwrite_console/enums/platform_type.py +8 -0
  63. appwrite_console/enums/project_auth_method_id.py +10 -0
  64. appwrite_console/enums/project_email_template_id.py +10 -0
  65. appwrite_console/enums/project_email_template_locale.py +134 -0
  66. appwrite_console/enums/project_key_scopes.py +107 -0
  67. appwrite_console/enums/project_o_auth2_google_prompt.py +6 -0
  68. appwrite_console/enums/project_o_auth2_oidc_prompt.py +7 -0
  69. appwrite_console/enums/project_o_auth_provider_id.py +47 -0
  70. appwrite_console/enums/project_policy_id.py +17 -0
  71. appwrite_console/enums/project_protocol_id.py +6 -0
  72. appwrite_console/enums/project_service_id.py +22 -0
  73. appwrite_console/enums/project_smtp_secure.py +5 -0
  74. appwrite_console/enums/project_usage_range.py +5 -0
  75. appwrite_console/enums/proxy_resource_type.py +5 -0
  76. appwrite_console/enums/proxy_rule_deployment_resource_type.py +5 -0
  77. appwrite_console/enums/proxy_rule_status.py +6 -0
  78. appwrite_console/enums/query_suggestion_resource.py +97 -0
  79. appwrite_console/enums/region.py +9 -0
  80. appwrite_console/enums/relation_mutate.py +6 -0
  81. appwrite_console/enums/relationship_type.py +7 -0
  82. appwrite_console/enums/runtime.py +95 -0
  83. appwrite_console/enums/schedule_resource_type.py +7 -0
  84. appwrite_console/enums/site_template_use_case.py +12 -0
  85. appwrite_console/enums/smtp_encryption.py +6 -0
  86. appwrite_console/enums/status.py +4 -0
  87. appwrite_console/enums/status_code.py +7 -0
  88. appwrite_console/enums/supabase_migration_resource.py +14 -0
  89. appwrite_console/enums/tables_db_index_type.py +7 -0
  90. appwrite_console/enums/template_reference_type.py +6 -0
  91. appwrite_console/enums/timezone.py +422 -0
  92. appwrite_console/enums/usage_range.py +6 -0
  93. appwrite_console/enums/vcs_detection_type.py +5 -0
  94. appwrite_console/enums/vcs_reference_type.py +6 -0
  95. appwrite_console/enums/vectors_db_index_type.py +9 -0
  96. appwrite_console/enums/waf_rule_action.py +8 -0
  97. appwrite_console/exception.py +7 -0
  98. appwrite_console/id.py +26 -0
  99. appwrite_console/input_file.py +21 -0
  100. appwrite_console/models/__init__.py +803 -0
  101. appwrite_console/models/activity_event.py +99 -0
  102. appwrite_console/models/activity_event_list.py +19 -0
  103. appwrite_console/models/additional_resource.py +30 -0
  104. appwrite_console/models/addon.py +42 -0
  105. appwrite_console/models/addon_list.py +19 -0
  106. appwrite_console/models/addon_price.py +36 -0
  107. appwrite_console/models/aggregation_breakdown.py +28 -0
  108. appwrite_console/models/aggregation_team.py +101 -0
  109. appwrite_console/models/aggregation_team_list.py +19 -0
  110. appwrite_console/models/algo_argon2.py +24 -0
  111. appwrite_console/models/algo_bcrypt.py +15 -0
  112. appwrite_console/models/algo_md5.py +15 -0
  113. appwrite_console/models/algo_phpass.py +15 -0
  114. appwrite_console/models/algo_scrypt.py +27 -0
  115. appwrite_console/models/algo_scrypt_modified.py +24 -0
  116. appwrite_console/models/algo_sha.py +15 -0
  117. appwrite_console/models/app.py +91 -0
  118. appwrite_console/models/app_installation.py +42 -0
  119. appwrite_console/models/app_installation_list.py +19 -0
  120. appwrite_console/models/app_key.py +39 -0
  121. appwrite_console/models/app_key_list.py +19 -0
  122. appwrite_console/models/app_scope.py +27 -0
  123. appwrite_console/models/app_scope_list.py +19 -0
  124. appwrite_console/models/app_secret.py +39 -0
  125. appwrite_console/models/app_secret_list.py +19 -0
  126. appwrite_console/models/app_secret_plaintext.py +39 -0
  127. appwrite_console/models/apps_list.py +19 -0
  128. appwrite_console/models/attribute_bigint.py +46 -0
  129. appwrite_console/models/attribute_boolean.py +40 -0
  130. appwrite_console/models/attribute_datetime.py +43 -0
  131. appwrite_console/models/attribute_email.py +43 -0
  132. appwrite_console/models/attribute_enum.py +46 -0
  133. appwrite_console/models/attribute_float.py +46 -0
  134. appwrite_console/models/attribute_integer.py +46 -0
  135. appwrite_console/models/attribute_ip.py +43 -0
  136. appwrite_console/models/attribute_line.py +40 -0
  137. appwrite_console/models/attribute_list.py +36 -0
  138. appwrite_console/models/attribute_longtext.py +43 -0
  139. appwrite_console/models/attribute_mediumtext.py +43 -0
  140. appwrite_console/models/attribute_object.py +37 -0
  141. appwrite_console/models/attribute_point.py +40 -0
  142. appwrite_console/models/attribute_polygon.py +40 -0
  143. appwrite_console/models/attribute_relationship.py +55 -0
  144. appwrite_console/models/attribute_string.py +46 -0
  145. appwrite_console/models/attribute_text.py +43 -0
  146. appwrite_console/models/attribute_url.py +43 -0
  147. appwrite_console/models/attribute_varchar.py +46 -0
  148. appwrite_console/models/attribute_vector.py +40 -0
  149. appwrite_console/models/backup_archive.py +48 -0
  150. appwrite_console/models/backup_archive_list.py +19 -0
  151. appwrite_console/models/backup_policy.py +48 -0
  152. appwrite_console/models/backup_policy_list.py +19 -0
  153. appwrite_console/models/backup_restoration.py +45 -0
  154. appwrite_console/models/backup_restoration_list.py +19 -0
  155. appwrite_console/models/base_model.py +27 -0
  156. appwrite_console/models/billing_address.py +36 -0
  157. appwrite_console/models/billing_address_list.py +19 -0
  158. appwrite_console/models/billing_limits.py +36 -0
  159. appwrite_console/models/billing_plan.py +226 -0
  160. appwrite_console/models/billing_plan_addon.py +19 -0
  161. appwrite_console/models/billing_plan_addon_details.py +36 -0
  162. appwrite_console/models/billing_plan_dedicated_database_limits.py +69 -0
  163. appwrite_console/models/billing_plan_limits.py +18 -0
  164. appwrite_console/models/billing_plan_list.py +19 -0
  165. appwrite_console/models/billing_plan_supported_addons.py +21 -0
  166. appwrite_console/models/block.py +45 -0
  167. appwrite_console/models/block_delete.py +19 -0
  168. appwrite_console/models/block_list.py +19 -0
  169. appwrite_console/models/branch.py +15 -0
  170. appwrite_console/models/branch_list.py +19 -0
  171. appwrite_console/models/bucket.py +54 -0
  172. appwrite_console/models/bucket_list.py +19 -0
  173. appwrite_console/models/campaign.py +49 -0
  174. appwrite_console/models/collection.py +67 -0
  175. appwrite_console/models/collection_list.py +19 -0
  176. appwrite_console/models/column_bigint.py +46 -0
  177. appwrite_console/models/column_boolean.py +40 -0
  178. appwrite_console/models/column_datetime.py +43 -0
  179. appwrite_console/models/column_email.py +43 -0
  180. appwrite_console/models/column_enum.py +46 -0
  181. appwrite_console/models/column_float.py +46 -0
  182. appwrite_console/models/column_index.py +42 -0
  183. appwrite_console/models/column_index_list.py +19 -0
  184. appwrite_console/models/column_integer.py +46 -0
  185. appwrite_console/models/column_ip.py +43 -0
  186. appwrite_console/models/column_line.py +40 -0
  187. appwrite_console/models/column_list.py +36 -0
  188. appwrite_console/models/column_longtext.py +43 -0
  189. appwrite_console/models/column_mediumtext.py +43 -0
  190. appwrite_console/models/column_point.py +40 -0
  191. appwrite_console/models/column_polygon.py +40 -0
  192. appwrite_console/models/column_relationship.py +55 -0
  193. appwrite_console/models/column_string.py +46 -0
  194. appwrite_console/models/column_text.py +43 -0
  195. appwrite_console/models/column_url.py +43 -0
  196. appwrite_console/models/column_varchar.py +46 -0
  197. appwrite_console/models/console_key_scope.py +24 -0
  198. appwrite_console/models/console_key_scope_list.py +19 -0
  199. appwrite_console/models/console_o_auth2_provider.py +19 -0
  200. appwrite_console/models/console_o_auth2_provider_list.py +19 -0
  201. appwrite_console/models/console_o_auth2_provider_parameter.py +24 -0
  202. appwrite_console/models/console_region.py +30 -0
  203. appwrite_console/models/console_region_list.py +19 -0
  204. appwrite_console/models/console_variables.py +96 -0
  205. appwrite_console/models/continent.py +18 -0
  206. appwrite_console/models/continent_list.py +19 -0
  207. appwrite_console/models/country.py +18 -0
  208. appwrite_console/models/country_list.py +19 -0
  209. appwrite_console/models/coupon.py +36 -0
  210. appwrite_console/models/credit.py +45 -0
  211. appwrite_console/models/credit_available.py +15 -0
  212. appwrite_console/models/credit_list.py +22 -0
  213. appwrite_console/models/currency.py +33 -0
  214. appwrite_console/models/currency_list.py +19 -0
  215. appwrite_console/models/database.py +52 -0
  216. appwrite_console/models/database_list.py +19 -0
  217. appwrite_console/models/database_migration.py +57 -0
  218. appwrite_console/models/database_migration_list.py +19 -0
  219. appwrite_console/models/database_status.py +57 -0
  220. appwrite_console/models/database_status_connections.py +18 -0
  221. appwrite_console/models/database_status_replica.py +24 -0
  222. appwrite_console/models/database_status_volume.py +24 -0
  223. appwrite_console/models/dedicated_database.py +159 -0
  224. appwrite_console/models/dedicated_database_backup.py +63 -0
  225. appwrite_console/models/dedicated_database_backup_list.py +19 -0
  226. appwrite_console/models/dedicated_database_backup_storage.py +27 -0
  227. appwrite_console/models/dedicated_database_branch.py +48 -0
  228. appwrite_console/models/dedicated_database_branch_list.py +16 -0
  229. appwrite_console/models/dedicated_database_execution.py +31 -0
  230. appwrite_console/models/dedicated_database_execution_column.py +18 -0
  231. appwrite_console/models/dedicated_database_extensions.py +22 -0
  232. appwrite_console/models/dedicated_database_list.py +19 -0
  233. appwrite_console/models/dedicated_database_member.py +24 -0
  234. appwrite_console/models/dedicated_database_operation.py +45 -0
  235. appwrite_console/models/dedicated_database_operation_list.py +19 -0
  236. appwrite_console/models/dedicated_database_pitr_windows.py +18 -0
  237. appwrite_console/models/dedicated_database_pooler.py +42 -0
  238. appwrite_console/models/dedicated_database_replicas.py +37 -0
  239. appwrite_console/models/dedicated_database_restoration.py +45 -0
  240. appwrite_console/models/dedicated_database_restoration_list.py +19 -0
  241. appwrite_console/models/dedicated_database_specification.py +39 -0
  242. appwrite_console/models/dedicated_database_specification_list.py +23 -0
  243. appwrite_console/models/dedicated_database_specification_pricing.py +27 -0
  244. appwrite_console/models/deployment.py +94 -0
  245. appwrite_console/models/deployment_list.py +19 -0
  246. appwrite_console/models/detection_framework.py +32 -0
  247. appwrite_console/models/detection_runtime.py +29 -0
  248. appwrite_console/models/detection_variable.py +18 -0
  249. appwrite_console/models/dev_key.py +36 -0
  250. appwrite_console/models/dev_key_list.py +19 -0
  251. appwrite_console/models/dns_record.py +48 -0
  252. appwrite_console/models/dns_records_list.py +19 -0
  253. appwrite_console/models/document.py +80 -0
  254. appwrite_console/models/document_list.py +32 -0
  255. appwrite_console/models/domain.py +53 -0
  256. appwrite_console/models/domain_price.py +30 -0
  257. appwrite_console/models/domain_purchase.py +43 -0
  258. appwrite_console/models/domain_suggestion.py +24 -0
  259. appwrite_console/models/domain_suggestions_list.py +19 -0
  260. appwrite_console/models/domain_transfer_out.py +15 -0
  261. appwrite_console/models/domain_transfer_status.py +22 -0
  262. appwrite_console/models/domains_list.py +19 -0
  263. appwrite_console/models/downgrade_feedback.py +42 -0
  264. appwrite_console/models/email_template.py +36 -0
  265. appwrite_console/models/email_template_list.py +19 -0
  266. appwrite_console/models/embedding.py +24 -0
  267. appwrite_console/models/embedding_list.py +19 -0
  268. appwrite_console/models/ephemeral_key.py +39 -0
  269. appwrite_console/models/estimation.py +37 -0
  270. appwrite_console/models/estimation_delete_organization.py +16 -0
  271. appwrite_console/models/estimation_item.py +18 -0
  272. appwrite_console/models/estimation_plan_change.py +29 -0
  273. appwrite_console/models/estimation_update_plan.py +40 -0
  274. appwrite_console/models/execution.py +69 -0
  275. appwrite_console/models/execution_list.py +19 -0
  276. appwrite_console/models/file.py +60 -0
  277. appwrite_console/models/file_list.py +19 -0
  278. appwrite_console/models/framework.py +28 -0
  279. appwrite_console/models/framework_adapter.py +27 -0
  280. appwrite_console/models/framework_list.py +19 -0
  281. appwrite_console/models/function.py +109 -0
  282. appwrite_console/models/function_list.py +19 -0
  283. appwrite_console/models/headers.py +18 -0
  284. appwrite_console/models/identity.py +42 -0
  285. appwrite_console/models/identity_list.py +19 -0
  286. appwrite_console/models/index.py +43 -0
  287. appwrite_console/models/index_list.py +19 -0
  288. appwrite_console/models/insight.py +64 -0
  289. appwrite_console/models/insight_cta.py +24 -0
  290. appwrite_console/models/insight_list.py +19 -0
  291. appwrite_console/models/installation.py +30 -0
  292. appwrite_console/models/installation_list.py +19 -0
  293. appwrite_console/models/invoice.py +82 -0
  294. appwrite_console/models/invoice_list.py +19 -0
  295. appwrite_console/models/jwt.py +15 -0
  296. appwrite_console/models/key.py +39 -0
  297. appwrite_console/models/key_list.py +19 -0
  298. appwrite_console/models/language.py +21 -0
  299. appwrite_console/models/language_list.py +19 -0
  300. appwrite_console/models/locale.py +66 -0
  301. appwrite_console/models/locale_code.py +18 -0
  302. appwrite_console/models/locale_code_list.py +19 -0
  303. appwrite_console/models/log.py +78 -0
  304. appwrite_console/models/log_list.py +19 -0
  305. appwrite_console/models/membership.py +57 -0
  306. appwrite_console/models/membership_list.py +19 -0
  307. appwrite_console/models/message.py +52 -0
  308. appwrite_console/models/message_list.py +19 -0
  309. appwrite_console/models/metric.py +18 -0
  310. appwrite_console/models/metric_breakdown.py +24 -0
  311. appwrite_console/models/mfa_challenge.py +24 -0
  312. appwrite_console/models/mfa_factors.py +24 -0
  313. appwrite_console/models/mfa_recovery_codes.py +15 -0
  314. appwrite_console/models/mfa_type.py +18 -0
  315. appwrite_console/models/migration.py +75 -0
  316. appwrite_console/models/migration_list.py +19 -0
  317. appwrite_console/models/migration_report.py +96 -0
  318. appwrite_console/models/mock_number.py +24 -0
  319. appwrite_console/models/mock_number_list.py +19 -0
  320. appwrite_console/models/notification.py +60 -0
  321. appwrite_console/models/notification_list.py +19 -0
  322. appwrite_console/models/o_auth2_amazon.py +24 -0
  323. appwrite_console/models/o_auth2_apple.py +30 -0
  324. appwrite_console/models/o_auth2_appwrite.py +24 -0
  325. appwrite_console/models/o_auth2_auth0.py +27 -0
  326. appwrite_console/models/o_auth2_authentik.py +27 -0
  327. appwrite_console/models/o_auth2_autodesk.py +24 -0
  328. appwrite_console/models/o_auth2_bitbucket.py +24 -0
  329. appwrite_console/models/o_auth2_bitly.py +24 -0
  330. appwrite_console/models/o_auth2_box.py +24 -0
  331. appwrite_console/models/o_auth2_dailymotion.py +24 -0
  332. appwrite_console/models/o_auth2_discord.py +24 -0
  333. appwrite_console/models/o_auth2_disqus.py +24 -0
  334. appwrite_console/models/o_auth2_dropbox.py +24 -0
  335. appwrite_console/models/o_auth2_etsy.py +24 -0
  336. appwrite_console/models/o_auth2_facebook.py +24 -0
  337. appwrite_console/models/o_auth2_figma.py +24 -0
  338. appwrite_console/models/o_auth2_fusion_auth.py +27 -0
  339. appwrite_console/models/o_auth2_github.py +24 -0
  340. appwrite_console/models/o_auth2_gitlab.py +27 -0
  341. appwrite_console/models/o_auth2_google.py +28 -0
  342. appwrite_console/models/o_auth2_keycloak.py +30 -0
  343. appwrite_console/models/o_auth2_kick.py +24 -0
  344. appwrite_console/models/o_auth2_linkedin.py +24 -0
  345. appwrite_console/models/o_auth2_microsoft.py +27 -0
  346. appwrite_console/models/o_auth2_notion.py +24 -0
  347. appwrite_console/models/o_auth2_oidc.py +43 -0
  348. appwrite_console/models/o_auth2_okta.py +30 -0
  349. appwrite_console/models/o_auth2_paypal.py +24 -0
  350. appwrite_console/models/o_auth2_podio.py +24 -0
  351. appwrite_console/models/o_auth2_provider_list.py +59 -0
  352. appwrite_console/models/o_auth2_salesforce.py +24 -0
  353. appwrite_console/models/o_auth2_slack.py +24 -0
  354. appwrite_console/models/o_auth2_spotify.py +24 -0
  355. appwrite_console/models/o_auth2_stripe.py +24 -0
  356. appwrite_console/models/o_auth2_tradeshift.py +24 -0
  357. appwrite_console/models/o_auth2_twitch.py +24 -0
  358. appwrite_console/models/o_auth2_word_press.py +24 -0
  359. appwrite_console/models/o_auth2_x.py +24 -0
  360. appwrite_console/models/o_auth2_yahoo.py +24 -0
  361. appwrite_console/models/o_auth2_yandex.py +24 -0
  362. appwrite_console/models/o_auth2_zoho.py +24 -0
  363. appwrite_console/models/o_auth2_zoom.py +24 -0
  364. appwrite_console/models/oauth2_approve.py +15 -0
  365. appwrite_console/models/oauth2_authorize.py +18 -0
  366. appwrite_console/models/oauth2_consent.py +42 -0
  367. appwrite_console/models/oauth2_consent_list.py +19 -0
  368. appwrite_console/models/oauth2_consent_token.py +45 -0
  369. appwrite_console/models/oauth2_consent_token_list.py +19 -0
  370. appwrite_console/models/oauth2_device_authorization.py +30 -0
  371. appwrite_console/models/oauth2_grant.py +48 -0
  372. appwrite_console/models/oauth2_organization.py +15 -0
  373. appwrite_console/models/oauth2_organization_list.py +19 -0
  374. appwrite_console/models/oauth2_par.py +18 -0
  375. appwrite_console/models/oauth2_project.py +21 -0
  376. appwrite_console/models/oauth2_project_list.py +19 -0
  377. appwrite_console/models/oauth2_reject.py +15 -0
  378. appwrite_console/models/oauth2_token.py +33 -0
  379. appwrite_console/models/organization.py +132 -0
  380. appwrite_console/models/organization_list.py +32 -0
  381. appwrite_console/models/payment_authentication.py +30 -0
  382. appwrite_console/models/payment_method.py +72 -0
  383. appwrite_console/models/payment_method_list.py +19 -0
  384. appwrite_console/models/phone.py +21 -0
  385. appwrite_console/models/phone_list.py +19 -0
  386. appwrite_console/models/plan_change_estimation_details.py +39 -0
  387. appwrite_console/models/plan_change_limits.py +28 -0
  388. appwrite_console/models/plan_change_project_compliance.py +28 -0
  389. appwrite_console/models/plan_change_resource_compliance.py +30 -0
  390. appwrite_console/models/platform_android.py +31 -0
  391. appwrite_console/models/platform_apple.py +31 -0
  392. appwrite_console/models/platform_linux.py +31 -0
  393. appwrite_console/models/platform_list.py +23 -0
  394. appwrite_console/models/platform_web.py +31 -0
  395. appwrite_console/models/platform_windows.py +31 -0
  396. appwrite_console/models/policy_deny_aliased_email.py +18 -0
  397. appwrite_console/models/policy_deny_corporate_email.py +18 -0
  398. appwrite_console/models/policy_deny_disposable_email.py +18 -0
  399. appwrite_console/models/policy_deny_free_email.py +18 -0
  400. appwrite_console/models/policy_list.py +32 -0
  401. appwrite_console/models/policy_membership_privacy.py +33 -0
  402. appwrite_console/models/policy_password_dictionary.py +18 -0
  403. appwrite_console/models/policy_password_history.py +18 -0
  404. appwrite_console/models/policy_password_personal_data.py +18 -0
  405. appwrite_console/models/policy_password_strength.py +30 -0
  406. appwrite_console/models/policy_session_alert.py +18 -0
  407. appwrite_console/models/policy_session_duration.py +18 -0
  408. appwrite_console/models/policy_session_invalidation.py +18 -0
  409. appwrite_console/models/policy_session_limit.py +18 -0
  410. appwrite_console/models/policy_user_limit.py +18 -0
  411. appwrite_console/models/postgres_extension.py +24 -0
  412. appwrite_console/models/postgres_extension_list.py +19 -0
  413. appwrite_console/models/preferences.py +52 -0
  414. appwrite_console/models/presence.py +39 -0
  415. appwrite_console/models/presence_list.py +19 -0
  416. appwrite_console/models/program.py +39 -0
  417. appwrite_console/models/project.py +153 -0
  418. appwrite_console/models/project_auth_method.py +19 -0
  419. appwrite_console/models/project_list.py +19 -0
  420. appwrite_console/models/project_protocol.py +19 -0
  421. appwrite_console/models/project_service.py +19 -0
  422. appwrite_console/models/provider.py +39 -0
  423. appwrite_console/models/provider_list.py +19 -0
  424. appwrite_console/models/provider_repository.py +42 -0
  425. appwrite_console/models/provider_repository_framework.py +45 -0
  426. appwrite_console/models/provider_repository_framework_list.py +22 -0
  427. appwrite_console/models/provider_repository_runtime.py +45 -0
  428. appwrite_console/models/provider_repository_runtime_list.py +22 -0
  429. appwrite_console/models/proxy_rule.py +59 -0
  430. appwrite_console/models/proxy_rule_list.py +19 -0
  431. appwrite_console/models/report.py +49 -0
  432. appwrite_console/models/report_list.py +19 -0
  433. appwrite_console/models/resource_token.py +33 -0
  434. appwrite_console/models/resource_token_list.py +19 -0
  435. appwrite_console/models/review.py +24 -0
  436. appwrite_console/models/roles.py +18 -0
  437. appwrite_console/models/row.py +80 -0
  438. appwrite_console/models/row_list.py +32 -0
  439. appwrite_console/models/runtime.py +36 -0
  440. appwrite_console/models/runtime_list.py +19 -0
  441. appwrite_console/models/schedule.py +45 -0
  442. appwrite_console/models/schedule_list.py +19 -0
  443. appwrite_console/models/session.py +99 -0
  444. appwrite_console/models/session_list.py +19 -0
  445. appwrite_console/models/site.py +115 -0
  446. appwrite_console/models/site_list.py +19 -0
  447. appwrite_console/models/specification.py +24 -0
  448. appwrite_console/models/specification_list.py +19 -0
  449. appwrite_console/models/stage.py +27 -0
  450. appwrite_console/models/stage_list.py +16 -0
  451. appwrite_console/models/subscriber.py +40 -0
  452. appwrite_console/models/subscriber_list.py +19 -0
  453. appwrite_console/models/table.py +67 -0
  454. appwrite_console/models/table_list.py +19 -0
  455. appwrite_console/models/target.py +39 -0
  456. appwrite_console/models/target_list.py +19 -0
  457. appwrite_console/models/team.py +43 -0
  458. appwrite_console/models/team_list.py +32 -0
  459. appwrite_console/models/template_framework.py +39 -0
  460. appwrite_console/models/template_function.py +65 -0
  461. appwrite_console/models/template_function_list.py +19 -0
  462. appwrite_console/models/template_runtime.py +24 -0
  463. appwrite_console/models/template_site.py +53 -0
  464. appwrite_console/models/template_site_list.py +19 -0
  465. appwrite_console/models/template_variable.py +33 -0
  466. appwrite_console/models/token.py +30 -0
  467. appwrite_console/models/topic.py +36 -0
  468. appwrite_console/models/topic_list.py +19 -0
  469. appwrite_console/models/transaction.py +30 -0
  470. appwrite_console/models/transaction_list.py +19 -0
  471. appwrite_console/models/usage_billing_plan.py +46 -0
  472. appwrite_console/models/usage_data_point.py +99 -0
  473. appwrite_console/models/usage_event_list.py +19 -0
  474. appwrite_console/models/usage_gauge_list.py +19 -0
  475. appwrite_console/models/usage_metric.py +19 -0
  476. appwrite_console/models/usage_organization.py +104 -0
  477. appwrite_console/models/usage_organization_project.py +73 -0
  478. appwrite_console/models/usage_presence.py +22 -0
  479. appwrite_console/models/usage_project.py +218 -0
  480. appwrite_console/models/usage_resources.py +36 -0
  481. appwrite_console/models/usage_users.py +28 -0
  482. appwrite_console/models/user.py +111 -0
  483. appwrite_console/models/user_list.py +32 -0
  484. appwrite_console/models/variable.py +36 -0
  485. appwrite_console/models/variable_list.py +19 -0
  486. appwrite_console/models/vcs_content.py +21 -0
  487. appwrite_console/models/vcs_content_list.py +19 -0
  488. appwrite_console/models/vcs_namespace.py +27 -0
  489. appwrite_console/models/vcs_namespace_list.py +19 -0
  490. appwrite_console/models/vectorsdb_collection.py +54 -0
  491. appwrite_console/models/vectorsdb_collection_list.py +19 -0
  492. appwrite_console/models/waf_rule.py +55 -0
  493. appwrite_console/models/waf_rule_bypass.py +55 -0
  494. appwrite_console/models/waf_rule_challenge.py +64 -0
  495. appwrite_console/models/waf_rule_deny.py +55 -0
  496. appwrite_console/models/waf_rule_list.py +19 -0
  497. appwrite_console/models/waf_rule_rate_limit.py +64 -0
  498. appwrite_console/models/waf_rule_redirect.py +61 -0
  499. appwrite_console/models/webhook.py +51 -0
  500. appwrite_console/models/webhook_list.py +19 -0
  501. appwrite_console/operator.py +150 -0
  502. appwrite_console/permission.py +21 -0
  503. appwrite_console/query.py +293 -0
  504. appwrite_console/role.py +111 -0
  505. appwrite_console/service.py +50 -0
  506. appwrite_console/services/__init__.py +1 -0
  507. appwrite_console/services/account.py +3328 -0
  508. appwrite_console/services/activities.py +89 -0
  509. appwrite_console/services/advisor.py +234 -0
  510. appwrite_console/services/apps.py +1156 -0
  511. appwrite_console/services/assistant.py +50 -0
  512. appwrite_console/services/avatars.py +531 -0
  513. appwrite_console/services/backups.py +572 -0
  514. appwrite_console/services/console.py +807 -0
  515. appwrite_console/services/databases.py +4976 -0
  516. appwrite_console/services/documents_db.py +2052 -0
  517. appwrite_console/services/domains.py +3047 -0
  518. appwrite_console/services/functions.py +1659 -0
  519. appwrite_console/services/graphql.py +92 -0
  520. appwrite_console/services/locale.py +243 -0
  521. appwrite_console/services/manager.py +301 -0
  522. appwrite_console/services/messaging.py +3137 -0
  523. appwrite_console/services/migrations.py +1036 -0
  524. appwrite_console/services/mongo.py +1683 -0
  525. appwrite_console/services/mysql.py +1861 -0
  526. appwrite_console/services/notifications.py +98 -0
  527. appwrite_console/services/oauth2.py +914 -0
  528. appwrite_console/services/organization.py +1039 -0
  529. appwrite_console/services/organizations.py +2245 -0
  530. appwrite_console/services/postgresql.py +1995 -0
  531. appwrite_console/services/presences.py +309 -0
  532. appwrite_console/services/project.py +5271 -0
  533. appwrite_console/services/projects.py +885 -0
  534. appwrite_console/services/proxy.py +394 -0
  535. appwrite_console/services/sites.py +1593 -0
  536. appwrite_console/services/storage.py +818 -0
  537. appwrite_console/services/tables_db.py +5189 -0
  538. appwrite_console/services/teams.py +993 -0
  539. appwrite_console/services/tokens.py +243 -0
  540. appwrite_console/services/usage.py +194 -0
  541. appwrite_console/services/users.py +2314 -0
  542. appwrite_console/services/vcs.py +599 -0
  543. appwrite_console/services/vectors_db.py +2054 -0
  544. appwrite_console/services/waf.py +1014 -0
  545. appwrite_console/services/webhooks.py +344 -0
  546. appwrite_console/utils/__init__.py +1 -0
  547. appwrite_console/utils/deprecated.py +51 -0
  548. appwrite_console-0.1.0.dist-info/METADATA +189 -0
  549. appwrite_console-0.1.0.dist-info/RECORD +552 -0
  550. appwrite_console-0.1.0.dist-info/WHEEL +5 -0
  551. appwrite_console-0.1.0.dist-info/licenses/LICENSE +12 -0
  552. appwrite_console-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,885 @@
1
+ from ..service import Service
2
+ from urllib.parse import quote
3
+ from typing import Any, Dict, List, Optional, Union
4
+ from ..exception import AppwriteException
5
+ from appwrite_console.utils.deprecated import deprecated
6
+ from ..models.addon_list import AddonList
7
+ from ..models.addon import Addon
8
+ from ..models.addon_price import AddonPrice
9
+ from ..models.dev_key_list import DevKeyList
10
+ from ..models.dev_key import DevKey
11
+ from ..models.schedule_list import ScheduleList
12
+ from ..enums.schedule_resource_type import ScheduleResourceType
13
+ from ..models.schedule import Schedule
14
+ from ..models.stage_list import StageList
15
+ from ..models.stage import Stage
16
+ from ..enums.status import Status
17
+ from ..models.project import Project
18
+
19
+ class Projects(Service):
20
+
21
+ def __init__(self, client) -> None:
22
+ super(Projects, self).__init__(client)
23
+
24
+ def list_addons(
25
+ self,
26
+ project_id: str
27
+ ) -> AddonList:
28
+ """
29
+ List all billing addons for a project.
30
+
31
+
32
+ Parameters
33
+ ----------
34
+ project_id : str
35
+ Project ID
36
+
37
+ Returns
38
+ -------
39
+ AddonList
40
+ API response as a typed Pydantic model
41
+
42
+ Raises
43
+ ------
44
+ AppwriteException
45
+ If API request fails
46
+ """
47
+
48
+ api_path = '/projects/{projectId}/addons'
49
+ api_params = {}
50
+ if project_id is None:
51
+ raise AppwriteException('Missing required parameter: "project_id"')
52
+
53
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
54
+
55
+
56
+ response = self.client.call('get', api_path, {
57
+ 'X-Appwrite-Project': self.client.get_config('project'),
58
+ 'accept': 'application/json',
59
+ }, api_params)
60
+
61
+ return self._parse_response(response, model=AddonList)
62
+
63
+
64
+ def create_premium_geo_db_addon(
65
+ self,
66
+ project_id: str
67
+ ) -> Addon:
68
+ """
69
+ Create a Premium Geo DB addon for a project.
70
+
71
+
72
+ Parameters
73
+ ----------
74
+ project_id : str
75
+ Project ID
76
+
77
+ Returns
78
+ -------
79
+ Addon
80
+ API response as a typed Pydantic model
81
+
82
+ Raises
83
+ ------
84
+ AppwriteException
85
+ If API request fails
86
+ """
87
+
88
+ api_path = '/projects/{projectId}/addons/premium-geo-db'
89
+ api_params = {}
90
+ if project_id is None:
91
+ raise AppwriteException('Missing required parameter: "project_id"')
92
+
93
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
94
+
95
+
96
+ response = self.client.call('post', api_path, {
97
+ 'X-Appwrite-Project': self.client.get_config('project'),
98
+ 'content-type': 'application/json',
99
+ 'accept': 'application/json',
100
+ }, api_params)
101
+
102
+ return self._parse_response(response, model=Addon)
103
+
104
+
105
+ def get_addon(
106
+ self,
107
+ project_id: str,
108
+ addon_id: str
109
+ ) -> Addon:
110
+ """
111
+ Get the details of a billing addon for a project.
112
+
113
+
114
+ Parameters
115
+ ----------
116
+ project_id : str
117
+ Project ID
118
+ addon_id : str
119
+ Addon ID
120
+
121
+ Returns
122
+ -------
123
+ Addon
124
+ API response as a typed Pydantic model
125
+
126
+ Raises
127
+ ------
128
+ AppwriteException
129
+ If API request fails
130
+ """
131
+
132
+ api_path = '/projects/{projectId}/addons/{addonId}'
133
+ api_params = {}
134
+ if project_id is None:
135
+ raise AppwriteException('Missing required parameter: "project_id"')
136
+
137
+ if addon_id is None:
138
+ raise AppwriteException('Missing required parameter: "addon_id"')
139
+
140
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
141
+ api_path = api_path.replace('{addonId}', str(self._normalize_value(addon_id)))
142
+
143
+
144
+ response = self.client.call('get', api_path, {
145
+ 'X-Appwrite-Project': self.client.get_config('project'),
146
+ 'accept': 'application/json',
147
+ }, api_params)
148
+
149
+ return self._parse_response(response, model=Addon)
150
+
151
+
152
+ def delete_addon(
153
+ self,
154
+ project_id: str,
155
+ addon_id: str
156
+ ) -> Dict[str, Any]:
157
+ """
158
+ Delete a billing addon for a project.
159
+
160
+
161
+ Parameters
162
+ ----------
163
+ project_id : str
164
+ Project ID
165
+ addon_id : str
166
+ Addon ID
167
+
168
+ Returns
169
+ -------
170
+ Dict[str, Any]
171
+ API response as a dictionary
172
+
173
+ Raises
174
+ ------
175
+ AppwriteException
176
+ If API request fails
177
+ """
178
+
179
+ api_path = '/projects/{projectId}/addons/{addonId}'
180
+ api_params = {}
181
+ if project_id is None:
182
+ raise AppwriteException('Missing required parameter: "project_id"')
183
+
184
+ if addon_id is None:
185
+ raise AppwriteException('Missing required parameter: "addon_id"')
186
+
187
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
188
+ api_path = api_path.replace('{addonId}', str(self._normalize_value(addon_id)))
189
+
190
+
191
+ response = self.client.call('delete', api_path, {
192
+ 'X-Appwrite-Project': self.client.get_config('project'),
193
+ 'content-type': 'application/json',
194
+ 'accept': 'application/json',
195
+ }, api_params)
196
+
197
+ return response
198
+
199
+
200
+ def confirm_addon_payment(
201
+ self,
202
+ project_id: str,
203
+ addon_id: str
204
+ ) -> Addon:
205
+ """
206
+ Confirm payment for a billing addon for a project.
207
+
208
+
209
+ Parameters
210
+ ----------
211
+ project_id : str
212
+ Project ID
213
+ addon_id : str
214
+ Addon ID
215
+
216
+ Returns
217
+ -------
218
+ Addon
219
+ API response as a typed Pydantic model
220
+
221
+ Raises
222
+ ------
223
+ AppwriteException
224
+ If API request fails
225
+ """
226
+
227
+ api_path = '/projects/{projectId}/addons/{addonId}/confirmations'
228
+ api_params = {}
229
+ if project_id is None:
230
+ raise AppwriteException('Missing required parameter: "project_id"')
231
+
232
+ if addon_id is None:
233
+ raise AppwriteException('Missing required parameter: "addon_id"')
234
+
235
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
236
+ api_path = api_path.replace('{addonId}', str(self._normalize_value(addon_id)))
237
+
238
+
239
+ response = self.client.call('post', api_path, {
240
+ 'X-Appwrite-Project': self.client.get_config('project'),
241
+ 'content-type': 'application/json',
242
+ 'accept': 'application/json',
243
+ }, api_params)
244
+
245
+ return self._parse_response(response, model=Addon)
246
+
247
+
248
+ def get_addon_price(
249
+ self,
250
+ project_id: str,
251
+ addon: str
252
+ ) -> AddonPrice:
253
+ """
254
+ Get the price details for a billing addon for a project, including the prorated amount for the remaining days in the current billing cycle.
255
+
256
+
257
+ Parameters
258
+ ----------
259
+ project_id : str
260
+ Project ID
261
+ addon : str
262
+ Addon key identifier (e.g. premiumGeoDB).
263
+
264
+ Returns
265
+ -------
266
+ AddonPrice
267
+ API response as a typed Pydantic model
268
+
269
+ Raises
270
+ ------
271
+ AppwriteException
272
+ If API request fails
273
+ """
274
+
275
+ api_path = '/projects/{projectId}/addons/{addon}/price'
276
+ api_params = {}
277
+ if project_id is None:
278
+ raise AppwriteException('Missing required parameter: "project_id"')
279
+
280
+ if addon is None:
281
+ raise AppwriteException('Missing required parameter: "addon"')
282
+
283
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
284
+ api_path = api_path.replace('{addon}', str(self._normalize_value(addon)))
285
+
286
+
287
+ response = self.client.call('get', api_path, {
288
+ 'X-Appwrite-Project': self.client.get_config('project'),
289
+ 'accept': 'application/json',
290
+ }, api_params)
291
+
292
+ return self._parse_response(response, model=AddonPrice)
293
+
294
+
295
+ def update_console_access(
296
+ self,
297
+ project_id: str
298
+ ) -> Dict[str, Any]:
299
+ """
300
+ Record console access to a project. This endpoint updates the last accessed timestamp for the project to track console activity.
301
+
302
+
303
+ Parameters
304
+ ----------
305
+ project_id : str
306
+ Project ID
307
+
308
+ Returns
309
+ -------
310
+ Dict[str, Any]
311
+ API response as a dictionary
312
+
313
+ Raises
314
+ ------
315
+ AppwriteException
316
+ If API request fails
317
+ """
318
+
319
+ api_path = '/projects/{projectId}/console-access'
320
+ api_params = {}
321
+ if project_id is None:
322
+ raise AppwriteException('Missing required parameter: "project_id"')
323
+
324
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
325
+
326
+
327
+ response = self.client.call('patch', api_path, {
328
+ 'X-Appwrite-Project': self.client.get_config('project'),
329
+ 'content-type': 'application/json',
330
+ 'accept': 'application/json',
331
+ }, api_params)
332
+
333
+ return response
334
+
335
+
336
+ def list_dev_keys(
337
+ self,
338
+ project_id: str,
339
+ queries: Optional[List[str]] = None
340
+ ) -> DevKeyList:
341
+ """
342
+ List all the project\'s dev keys. Dev keys are project specific and allow you to bypass rate limits and get better error logging during development.'
343
+
344
+ Parameters
345
+ ----------
346
+ project_id : str
347
+ Project unique ID.
348
+ queries : Optional[List[str]]
349
+ Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: accessedAt, expire
350
+
351
+ Returns
352
+ -------
353
+ DevKeyList
354
+ API response as a typed Pydantic model
355
+
356
+ Raises
357
+ ------
358
+ AppwriteException
359
+ If API request fails
360
+ """
361
+
362
+ api_path = '/projects/{projectId}/dev-keys'
363
+ api_params = {}
364
+ if project_id is None:
365
+ raise AppwriteException('Missing required parameter: "project_id"')
366
+
367
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
368
+
369
+ if queries is not None:
370
+ api_params['queries'] = self._normalize_value(queries)
371
+
372
+ response = self.client.call('get', api_path, {
373
+ 'X-Appwrite-Project': self.client.get_config('project'),
374
+ 'accept': 'application/json',
375
+ }, api_params)
376
+
377
+ return self._parse_response(response, model=DevKeyList)
378
+
379
+
380
+ def get_dev_key(
381
+ self,
382
+ project_id: str,
383
+ key_id: str
384
+ ) -> DevKey:
385
+ """
386
+ Get a project\'s dev key by its unique ID. Dev keys are project specific and allow you to bypass rate limits and get better error logging during development.
387
+
388
+ Parameters
389
+ ----------
390
+ project_id : str
391
+ Project unique ID.
392
+ key_id : str
393
+ Key unique ID.
394
+
395
+ Returns
396
+ -------
397
+ DevKey
398
+ API response as a typed Pydantic model
399
+
400
+ Raises
401
+ ------
402
+ AppwriteException
403
+ If API request fails
404
+ """
405
+
406
+ api_path = '/projects/{projectId}/dev-keys/{keyId}'
407
+ api_params = {}
408
+ if project_id is None:
409
+ raise AppwriteException('Missing required parameter: "project_id"')
410
+
411
+ if key_id is None:
412
+ raise AppwriteException('Missing required parameter: "key_id"')
413
+
414
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
415
+ api_path = api_path.replace('{keyId}', str(self._normalize_value(key_id)))
416
+
417
+
418
+ response = self.client.call('get', api_path, {
419
+ 'X-Appwrite-Project': self.client.get_config('project'),
420
+ 'accept': 'application/json',
421
+ }, api_params)
422
+
423
+ return self._parse_response(response, model=DevKey)
424
+
425
+
426
+ def update_dev_key(
427
+ self,
428
+ project_id: str,
429
+ key_id: str,
430
+ name: str,
431
+ expire: str
432
+ ) -> DevKey:
433
+ """
434
+ Update a project\'s dev key by its unique ID. Use this endpoint to update a project\'s dev key name or expiration time.'
435
+
436
+ Parameters
437
+ ----------
438
+ project_id : str
439
+ Project unique ID.
440
+ key_id : str
441
+ Key unique ID.
442
+ name : str
443
+ Key name. Max length: 128 chars.
444
+ expire : str
445
+ Expiration time in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format.
446
+
447
+ Returns
448
+ -------
449
+ DevKey
450
+ API response as a typed Pydantic model
451
+
452
+ Raises
453
+ ------
454
+ AppwriteException
455
+ If API request fails
456
+ """
457
+
458
+ api_path = '/projects/{projectId}/dev-keys/{keyId}'
459
+ api_params = {}
460
+ if project_id is None:
461
+ raise AppwriteException('Missing required parameter: "project_id"')
462
+
463
+ if key_id is None:
464
+ raise AppwriteException('Missing required parameter: "key_id"')
465
+
466
+ if name is None:
467
+ raise AppwriteException('Missing required parameter: "name"')
468
+
469
+ if expire is None:
470
+ raise AppwriteException('Missing required parameter: "expire"')
471
+
472
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
473
+ api_path = api_path.replace('{keyId}', str(self._normalize_value(key_id)))
474
+
475
+ api_params['name'] = self._normalize_value(name)
476
+ api_params['expire'] = self._normalize_value(expire)
477
+
478
+ response = self.client.call('put', api_path, {
479
+ 'X-Appwrite-Project': self.client.get_config('project'),
480
+ 'content-type': 'application/json',
481
+ 'accept': 'application/json',
482
+ }, api_params)
483
+
484
+ return self._parse_response(response, model=DevKey)
485
+
486
+
487
+ def delete_dev_key(
488
+ self,
489
+ project_id: str,
490
+ key_id: str
491
+ ) -> Dict[str, Any]:
492
+ """
493
+ Delete a project\'s dev key by its unique ID. Once deleted, the key will no longer allow bypassing of rate limits and better logging of errors.
494
+
495
+ Parameters
496
+ ----------
497
+ project_id : str
498
+ Project unique ID.
499
+ key_id : str
500
+ Key unique ID.
501
+
502
+ Returns
503
+ -------
504
+ Dict[str, Any]
505
+ API response as a dictionary
506
+
507
+ Raises
508
+ ------
509
+ AppwriteException
510
+ If API request fails
511
+ """
512
+
513
+ api_path = '/projects/{projectId}/dev-keys/{keyId}'
514
+ api_params = {}
515
+ if project_id is None:
516
+ raise AppwriteException('Missing required parameter: "project_id"')
517
+
518
+ if key_id is None:
519
+ raise AppwriteException('Missing required parameter: "key_id"')
520
+
521
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
522
+ api_path = api_path.replace('{keyId}', str(self._normalize_value(key_id)))
523
+
524
+
525
+ response = self.client.call('delete', api_path, {
526
+ 'X-Appwrite-Project': self.client.get_config('project'),
527
+ 'content-type': 'application/json',
528
+ }, api_params)
529
+
530
+ return response
531
+
532
+
533
+ def list_schedules(
534
+ self,
535
+ project_id: str,
536
+ queries: Optional[List[str]] = None,
537
+ total: Optional[bool] = None
538
+ ) -> ScheduleList:
539
+ """
540
+ Get a list of all the project's schedules. You can use the query params to filter your results.
541
+
542
+ Parameters
543
+ ----------
544
+ project_id : str
545
+ Project unique ID.
546
+ queries : Optional[List[str]]
547
+ Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: resourceType, resourceId, projectId, schedule, active, region
548
+ total : Optional[bool]
549
+ When set to false, the total count returned will be 0 and will not be calculated.
550
+
551
+ Returns
552
+ -------
553
+ ScheduleList
554
+ API response as a typed Pydantic model
555
+
556
+ Raises
557
+ ------
558
+ AppwriteException
559
+ If API request fails
560
+ """
561
+
562
+ api_path = '/projects/{projectId}/schedules'
563
+ api_params = {}
564
+ if project_id is None:
565
+ raise AppwriteException('Missing required parameter: "project_id"')
566
+
567
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
568
+
569
+ if queries is not None:
570
+ api_params['queries'] = self._normalize_value(queries)
571
+ if total is not None:
572
+ api_params['total'] = self._normalize_value(total)
573
+
574
+ response = self.client.call('get', api_path, {
575
+ 'X-Appwrite-Project': self.client.get_config('project'),
576
+ 'accept': 'application/json',
577
+ }, api_params)
578
+
579
+ return self._parse_response(response, model=ScheduleList)
580
+
581
+
582
+ def create_schedule(
583
+ self,
584
+ project_id: str,
585
+ resource_type: ScheduleResourceType,
586
+ resource_id: str,
587
+ schedule: str,
588
+ active: Optional[bool] = None,
589
+ data: Optional[Dict[str, Any]] = None
590
+ ) -> Schedule:
591
+ """
592
+ Create a new schedule for a resource.
593
+
594
+ Parameters
595
+ ----------
596
+ project_id : str
597
+ Project unique ID.
598
+ resource_type : ScheduleResourceType
599
+ The resource type for the schedule. Possible values: function, execution, message, backup.
600
+ resource_id : str
601
+ The resource ID to associate with this schedule.
602
+ schedule : str
603
+ Schedule CRON expression.
604
+ active : Optional[bool]
605
+ Whether the schedule is active.
606
+ data : Optional[Dict[str, Any]]
607
+ Schedule data as a JSON string. Used to store resource-specific context needed for execution.
608
+
609
+ Returns
610
+ -------
611
+ Schedule
612
+ API response as a typed Pydantic model
613
+
614
+ Raises
615
+ ------
616
+ AppwriteException
617
+ If API request fails
618
+ """
619
+
620
+ api_path = '/projects/{projectId}/schedules'
621
+ api_params = {}
622
+ if project_id is None:
623
+ raise AppwriteException('Missing required parameter: "project_id"')
624
+
625
+ if resource_type is None:
626
+ raise AppwriteException('Missing required parameter: "resource_type"')
627
+
628
+ if resource_id is None:
629
+ raise AppwriteException('Missing required parameter: "resource_id"')
630
+
631
+ if schedule is None:
632
+ raise AppwriteException('Missing required parameter: "schedule"')
633
+
634
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
635
+
636
+ api_params['resourceType'] = self._normalize_value(resource_type)
637
+ api_params['resourceId'] = self._normalize_value(resource_id)
638
+ api_params['schedule'] = self._normalize_value(schedule)
639
+ if active is not None:
640
+ api_params['active'] = self._normalize_value(active)
641
+ if data is not None:
642
+ api_params['data'] = self._normalize_value(data)
643
+
644
+ response = self.client.call('post', api_path, {
645
+ 'X-Appwrite-Project': self.client.get_config('project'),
646
+ 'content-type': 'application/json',
647
+ 'accept': 'application/json',
648
+ }, api_params)
649
+
650
+ return self._parse_response(response, model=Schedule)
651
+
652
+
653
+ def get_schedule(
654
+ self,
655
+ project_id: str,
656
+ schedule_id: str
657
+ ) -> Schedule:
658
+ """
659
+ Get a schedule by its unique ID.
660
+
661
+ Parameters
662
+ ----------
663
+ project_id : str
664
+ Project unique ID.
665
+ schedule_id : str
666
+ Schedule ID.
667
+
668
+ Returns
669
+ -------
670
+ Schedule
671
+ API response as a typed Pydantic model
672
+
673
+ Raises
674
+ ------
675
+ AppwriteException
676
+ If API request fails
677
+ """
678
+
679
+ api_path = '/projects/{projectId}/schedules/{scheduleId}'
680
+ api_params = {}
681
+ if project_id is None:
682
+ raise AppwriteException('Missing required parameter: "project_id"')
683
+
684
+ if schedule_id is None:
685
+ raise AppwriteException('Missing required parameter: "schedule_id"')
686
+
687
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
688
+ api_path = api_path.replace('{scheduleId}', str(self._normalize_value(schedule_id)))
689
+
690
+
691
+ response = self.client.call('get', api_path, {
692
+ 'X-Appwrite-Project': self.client.get_config('project'),
693
+ 'accept': 'application/json',
694
+ }, api_params)
695
+
696
+ return self._parse_response(response, model=Schedule)
697
+
698
+
699
+ def list_stages(
700
+ self,
701
+ project_id: str
702
+ ) -> StageList:
703
+ """
704
+ Get the onboarding stages for the current project, including each stage’s SDK method key and status (for example pending, completed, or skipped).
705
+
706
+
707
+ Parameters
708
+ ----------
709
+ project_id : str
710
+ Project unique ID.
711
+
712
+ Returns
713
+ -------
714
+ StageList
715
+ API response as a typed Pydantic model
716
+
717
+ Raises
718
+ ------
719
+ AppwriteException
720
+ If API request fails
721
+ """
722
+
723
+ api_path = '/projects/{projectId}/stages'
724
+ api_params = {}
725
+ if project_id is None:
726
+ raise AppwriteException('Missing required parameter: "project_id"')
727
+
728
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
729
+
730
+
731
+ response = self.client.call('get', api_path, {
732
+ 'X-Appwrite-Project': self.client.get_config('project'),
733
+ 'accept': 'application/json',
734
+ }, api_params)
735
+
736
+ return self._parse_response(response, model=StageList)
737
+
738
+
739
+ def update_stage(
740
+ self,
741
+ project_id: str,
742
+ stage_id: str,
743
+ skip: Optional[bool] = None
744
+ ) -> Stage:
745
+ """
746
+ Update an onboarding stage for the current project. Use this endpoint to skip a stage or leave it unchanged without performing the related API action.
747
+
748
+
749
+ Parameters
750
+ ----------
751
+ project_id : str
752
+ Project unique ID.
753
+ stage_id : str
754
+ SDK method key (namespace.method).
755
+ skip : Optional[bool]
756
+ Mark the stage as skipped.
757
+
758
+ Returns
759
+ -------
760
+ Stage
761
+ API response as a typed Pydantic model
762
+
763
+ Raises
764
+ ------
765
+ AppwriteException
766
+ If API request fails
767
+ """
768
+
769
+ api_path = '/projects/{projectId}/stages/{stageId}'
770
+ api_params = {}
771
+ if project_id is None:
772
+ raise AppwriteException('Missing required parameter: "project_id"')
773
+
774
+ if stage_id is None:
775
+ raise AppwriteException('Missing required parameter: "stage_id"')
776
+
777
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
778
+ api_path = api_path.replace('{stageId}', str(self._normalize_value(stage_id)))
779
+
780
+ if skip is not None:
781
+ api_params['skip'] = self._normalize_value(skip)
782
+
783
+ response = self.client.call('patch', api_path, {
784
+ 'X-Appwrite-Project': self.client.get_config('project'),
785
+ 'content-type': 'application/json',
786
+ 'accept': 'application/json',
787
+ }, api_params)
788
+
789
+ return self._parse_response(response, model=Stage)
790
+
791
+
792
+ def update_status(
793
+ self,
794
+ project_id: str,
795
+ status: Status
796
+ ) -> Dict[str, Any]:
797
+ """
798
+ Update the status of a project. Can be used to archive/restore projects, and to restore paused projects. When restoring a paused project, the console fingerprint header must be provided and the project must not be blocked for any reason other than inactivity.
799
+
800
+
801
+ Parameters
802
+ ----------
803
+ project_id : str
804
+ Project ID
805
+ status : Status
806
+ New status for the project
807
+
808
+ Returns
809
+ -------
810
+ Dict[str, Any]
811
+ API response as a dictionary
812
+
813
+ Raises
814
+ ------
815
+ AppwriteException
816
+ If API request fails
817
+ """
818
+
819
+ api_path = '/projects/{projectId}/status'
820
+ api_params = {}
821
+ if project_id is None:
822
+ raise AppwriteException('Missing required parameter: "project_id"')
823
+
824
+ if status is None:
825
+ raise AppwriteException('Missing required parameter: "status"')
826
+
827
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
828
+
829
+ api_params['status'] = self._normalize_value(status)
830
+
831
+ response = self.client.call('patch', api_path, {
832
+ 'X-Appwrite-Project': self.client.get_config('project'),
833
+ 'content-type': 'application/json',
834
+ 'accept': 'application/json',
835
+ }, api_params)
836
+
837
+ return response
838
+
839
+
840
+ def update_team(
841
+ self,
842
+ project_id: str,
843
+ team_id: str
844
+ ) -> Project:
845
+ """
846
+ Update the team ID of a project allowing for it to be transferred to another team.
847
+
848
+ Parameters
849
+ ----------
850
+ project_id : str
851
+ Project unique ID.
852
+ team_id : str
853
+ Team ID of the team to transfer project to.
854
+
855
+ Returns
856
+ -------
857
+ Project
858
+ API response as a typed Pydantic model
859
+
860
+ Raises
861
+ ------
862
+ AppwriteException
863
+ If API request fails
864
+ """
865
+
866
+ api_path = '/projects/{projectId}/team'
867
+ api_params = {}
868
+ if project_id is None:
869
+ raise AppwriteException('Missing required parameter: "project_id"')
870
+
871
+ if team_id is None:
872
+ raise AppwriteException('Missing required parameter: "team_id"')
873
+
874
+ api_path = api_path.replace('{projectId}', str(self._normalize_value(project_id)))
875
+
876
+ api_params['teamId'] = self._normalize_value(team_id)
877
+
878
+ response = self.client.call('patch', api_path, {
879
+ 'X-Appwrite-Project': self.client.get_config('project'),
880
+ 'content-type': 'application/json',
881
+ 'accept': 'application/json',
882
+ }, api_params)
883
+
884
+ return self._parse_response(response, model=Project)
885
+