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,50 @@
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
+
7
+ class Assistant(Service):
8
+
9
+ def __init__(self, client) -> None:
10
+ super(Assistant, self).__init__(client)
11
+
12
+ def chat(
13
+ self,
14
+ prompt: str
15
+ ) -> Dict[str, Any]:
16
+ """
17
+ Send a prompt to the AI assistant and receive a response. This endpoint allows you to interact with Appwrite's AI assistant by sending questions or prompts and receiving helpful responses in real-time through a server-sent events stream.
18
+
19
+ Parameters
20
+ ----------
21
+ prompt : str
22
+ Prompt. A string containing questions asked to the AI assistant.
23
+
24
+ Returns
25
+ -------
26
+ Dict[str, Any]
27
+ API response as a dictionary
28
+
29
+ Raises
30
+ ------
31
+ AppwriteException
32
+ If API request fails
33
+ """
34
+
35
+ api_path = '/console/assistant'
36
+ api_params = {}
37
+ if prompt is None:
38
+ raise AppwriteException('Missing required parameter: "prompt"')
39
+
40
+
41
+ api_params['prompt'] = self._normalize_value(prompt)
42
+
43
+ response = self.client.call('post', api_path, {
44
+ 'X-Appwrite-Project': self.client.get_config('project'),
45
+ 'content-type': 'application/json',
46
+ 'accept': 'text/plain',
47
+ }, api_params)
48
+
49
+ return response
50
+
@@ -0,0 +1,531 @@
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 ..enums.browser import Browser
7
+ from ..enums.credit_card import CreditCard
8
+ from ..enums.flag import Flag
9
+ from ..enums.browser_theme import BrowserTheme
10
+ from ..enums.timezone import Timezone
11
+ from ..enums.browser_permission import BrowserPermission
12
+ from ..enums.image_format import ImageFormat
13
+
14
+ class Avatars(Service):
15
+
16
+ def __init__(self, client) -> None:
17
+ super(Avatars, self).__init__(client)
18
+
19
+ def get_browser(
20
+ self,
21
+ code: Browser,
22
+ width: Optional[float] = None,
23
+ height: Optional[float] = None,
24
+ quality: Optional[float] = None
25
+ ) -> bytes:
26
+ """
27
+ You can use this endpoint to show different browser icons to your users. The code argument receives the browser code as it appears in your user [GET /account/sessions](https://appwrite.io/docs/references/cloud/client-web/account#getSessions) endpoint. Use width, height and quality arguments to change the output settings.
28
+
29
+ When one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.
30
+
31
+ Parameters
32
+ ----------
33
+ code : Browser
34
+ Browser Code.
35
+ width : Optional[float]
36
+ Image width. Pass an integer between 0 to 2000. Defaults to 100.
37
+ height : Optional[float]
38
+ Image height. Pass an integer between 0 to 2000. Defaults to 100.
39
+ quality : Optional[float]
40
+ Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.
41
+
42
+ Returns
43
+ -------
44
+ bytes
45
+ Response as bytes
46
+
47
+ Raises
48
+ ------
49
+ AppwriteException
50
+ If API request fails
51
+ """
52
+
53
+ api_path = '/avatars/browsers/{code}'
54
+ api_params = {}
55
+ if code is None:
56
+ raise AppwriteException('Missing required parameter: "code"')
57
+
58
+ api_path = api_path.replace('{code}', str(self._normalize_value(code)))
59
+
60
+ if width is not None:
61
+ api_params['width'] = self._normalize_value(width)
62
+ if height is not None:
63
+ api_params['height'] = self._normalize_value(height)
64
+ if quality is not None:
65
+ api_params['quality'] = self._normalize_value(quality)
66
+
67
+ response = self.client.call('get', api_path, {
68
+ 'X-Appwrite-Project': self.client.get_config('project'),
69
+ 'accept': 'image/png',
70
+ }, api_params)
71
+
72
+ return response
73
+
74
+
75
+ def get_credit_card(
76
+ self,
77
+ code: CreditCard,
78
+ width: Optional[float] = None,
79
+ height: Optional[float] = None,
80
+ quality: Optional[float] = None
81
+ ) -> bytes:
82
+ """
83
+ The credit card endpoint will return you the icon of the credit card provider you need. Use width, height and quality arguments to change the output settings.
84
+
85
+ When one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.
86
+
87
+
88
+ Parameters
89
+ ----------
90
+ code : CreditCard
91
+ Credit Card Code. Possible values: amex, argencard, cabal, cencosud, diners, discover, elo, hipercard, jcb, mastercard, naranja, targeta-shopping, unionpay, visa, mir, maestro, rupay.
92
+ width : Optional[float]
93
+ Image width. Pass an integer between 0 to 2000. Defaults to 100.
94
+ height : Optional[float]
95
+ Image height. Pass an integer between 0 to 2000. Defaults to 100.
96
+ quality : Optional[float]
97
+ Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.
98
+
99
+ Returns
100
+ -------
101
+ bytes
102
+ Response as bytes
103
+
104
+ Raises
105
+ ------
106
+ AppwriteException
107
+ If API request fails
108
+ """
109
+
110
+ api_path = '/avatars/credit-cards/{code}'
111
+ api_params = {}
112
+ if code is None:
113
+ raise AppwriteException('Missing required parameter: "code"')
114
+
115
+ api_path = api_path.replace('{code}', str(self._normalize_value(code)))
116
+
117
+ if width is not None:
118
+ api_params['width'] = self._normalize_value(width)
119
+ if height is not None:
120
+ api_params['height'] = self._normalize_value(height)
121
+ if quality is not None:
122
+ api_params['quality'] = self._normalize_value(quality)
123
+
124
+ response = self.client.call('get', api_path, {
125
+ 'X-Appwrite-Project': self.client.get_config('project'),
126
+ 'accept': 'image/png',
127
+ }, api_params)
128
+
129
+ return response
130
+
131
+
132
+ def get_favicon(
133
+ self,
134
+ url: str
135
+ ) -> bytes:
136
+ """
137
+ Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.
138
+
139
+ This endpoint does not follow HTTP redirects.
140
+
141
+ Parameters
142
+ ----------
143
+ url : str
144
+ Website URL which you want to fetch the favicon from.
145
+
146
+ Returns
147
+ -------
148
+ bytes
149
+ Response as bytes
150
+
151
+ Raises
152
+ ------
153
+ AppwriteException
154
+ If API request fails
155
+ """
156
+
157
+ api_path = '/avatars/favicon'
158
+ api_params = {}
159
+ if url is None:
160
+ raise AppwriteException('Missing required parameter: "url"')
161
+
162
+
163
+ api_params['url'] = self._normalize_value(url)
164
+
165
+ response = self.client.call('get', api_path, {
166
+ 'X-Appwrite-Project': self.client.get_config('project'),
167
+ 'accept': 'image/*',
168
+ }, api_params)
169
+
170
+ return response
171
+
172
+
173
+ def get_flag(
174
+ self,
175
+ code: Flag,
176
+ width: Optional[float] = None,
177
+ height: Optional[float] = None,
178
+ quality: Optional[float] = None
179
+ ) -> bytes:
180
+ """
181
+ You can use this endpoint to show different country flags icons to your users. The code argument receives the 2 letter country code. Use width, height and quality arguments to change the output settings. Country codes follow the [ISO 3166-1](https://en.wikipedia.org/wiki/ISO_3166-1) standard.
182
+
183
+ When one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.
184
+
185
+
186
+ Parameters
187
+ ----------
188
+ code : Flag
189
+ Country Code. ISO Alpha-2 country code format.
190
+ width : Optional[float]
191
+ Image width. Pass an integer between 0 to 2000. Defaults to 100.
192
+ height : Optional[float]
193
+ Image height. Pass an integer between 0 to 2000. Defaults to 100.
194
+ quality : Optional[float]
195
+ Image quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.
196
+
197
+ Returns
198
+ -------
199
+ bytes
200
+ Response as bytes
201
+
202
+ Raises
203
+ ------
204
+ AppwriteException
205
+ If API request fails
206
+ """
207
+
208
+ api_path = '/avatars/flags/{code}'
209
+ api_params = {}
210
+ if code is None:
211
+ raise AppwriteException('Missing required parameter: "code"')
212
+
213
+ api_path = api_path.replace('{code}', str(self._normalize_value(code)))
214
+
215
+ if width is not None:
216
+ api_params['width'] = self._normalize_value(width)
217
+ if height is not None:
218
+ api_params['height'] = self._normalize_value(height)
219
+ if quality is not None:
220
+ api_params['quality'] = self._normalize_value(quality)
221
+
222
+ response = self.client.call('get', api_path, {
223
+ 'X-Appwrite-Project': self.client.get_config('project'),
224
+ 'accept': 'image/png',
225
+ }, api_params)
226
+
227
+ return response
228
+
229
+
230
+ def get_image(
231
+ self,
232
+ url: str,
233
+ width: Optional[float] = None,
234
+ height: Optional[float] = None
235
+ ) -> bytes:
236
+ """
237
+ Use this endpoint to fetch a remote image URL and crop it to any image size you want. This endpoint is very useful if you need to crop and display remote images in your app or in case you want to make sure a 3rd party image is properly served using a TLS protocol.
238
+
239
+ When one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 400x400px.
240
+
241
+ This endpoint does not follow HTTP redirects.
242
+
243
+ Parameters
244
+ ----------
245
+ url : str
246
+ Image URL which you want to crop.
247
+ width : Optional[float]
248
+ Resize preview image width, Pass an integer between 0 to 2000. Defaults to 400.
249
+ height : Optional[float]
250
+ Resize preview image height, Pass an integer between 0 to 2000. Defaults to 400.
251
+
252
+ Returns
253
+ -------
254
+ bytes
255
+ Response as bytes
256
+
257
+ Raises
258
+ ------
259
+ AppwriteException
260
+ If API request fails
261
+ """
262
+
263
+ api_path = '/avatars/image'
264
+ api_params = {}
265
+ if url is None:
266
+ raise AppwriteException('Missing required parameter: "url"')
267
+
268
+
269
+ api_params['url'] = self._normalize_value(url)
270
+ if width is not None:
271
+ api_params['width'] = self._normalize_value(width)
272
+ if height is not None:
273
+ api_params['height'] = self._normalize_value(height)
274
+
275
+ response = self.client.call('get', api_path, {
276
+ 'X-Appwrite-Project': self.client.get_config('project'),
277
+ 'accept': 'image/*',
278
+ }, api_params)
279
+
280
+ return response
281
+
282
+
283
+ def get_initials(
284
+ self,
285
+ name: Optional[str] = None,
286
+ width: Optional[float] = None,
287
+ height: Optional[float] = None,
288
+ background: Optional[str] = None
289
+ ) -> bytes:
290
+ """
291
+ Use this endpoint to show your user initials avatar icon on your website or app. By default, this route will try to print your logged-in user name or email initials. You can also overwrite the user name if you pass the 'name' parameter. If no name is given and no user is logged, an empty avatar will be returned.
292
+
293
+ You can use the color and background params to change the avatar colors. By default, a random theme will be selected. The random theme will persist for the user's initials when reloading the same theme will always return for the same initials.
294
+
295
+ When one dimension is specified and the other is 0, the image is scaled with preserved aspect ratio. If both dimensions are 0, the API provides an image at source quality. If dimensions are not specified, the default size of image returned is 100x100px.
296
+
297
+
298
+ Parameters
299
+ ----------
300
+ name : Optional[str]
301
+ Full Name. When empty, current user name or email will be used. Max length: 128 chars.
302
+ width : Optional[float]
303
+ Image width. Pass an integer between 0 to 2000. Defaults to 100.
304
+ height : Optional[float]
305
+ Image height. Pass an integer between 0 to 2000. Defaults to 100.
306
+ background : Optional[str]
307
+ Changes background color. By default a random color will be picked and stay will persistent to the given name.
308
+
309
+ Returns
310
+ -------
311
+ bytes
312
+ Response as bytes
313
+
314
+ Raises
315
+ ------
316
+ AppwriteException
317
+ If API request fails
318
+ """
319
+
320
+ api_path = '/avatars/initials'
321
+ api_params = {}
322
+
323
+ if name is not None:
324
+ api_params['name'] = self._normalize_value(name)
325
+ if width is not None:
326
+ api_params['width'] = self._normalize_value(width)
327
+ if height is not None:
328
+ api_params['height'] = self._normalize_value(height)
329
+ if background is not None:
330
+ api_params['background'] = self._normalize_value(background)
331
+
332
+ response = self.client.call('get', api_path, {
333
+ 'X-Appwrite-Project': self.client.get_config('project'),
334
+ 'accept': 'image/png',
335
+ }, api_params)
336
+
337
+ return response
338
+
339
+
340
+ def get_qr(
341
+ self,
342
+ text: str,
343
+ size: Optional[float] = None,
344
+ margin: Optional[float] = None,
345
+ download: Optional[bool] = None
346
+ ) -> bytes:
347
+ """
348
+ Converts a given plain text to a QR code image. You can use the query parameters to change the size and style of the resulting image.
349
+
350
+
351
+ Parameters
352
+ ----------
353
+ text : str
354
+ Plain text to be converted to QR code image.
355
+ size : Optional[float]
356
+ QR code size. Pass an integer between 1 to 1000. Defaults to 400.
357
+ margin : Optional[float]
358
+ Margin from edge. Pass an integer between 0 to 10. Defaults to 1.
359
+ download : Optional[bool]
360
+ Return resulting image with 'Content-Disposition: attachment ' headers for the browser to start downloading it. Pass 0 for no header, or 1 for otherwise. Default value is set to 0.
361
+
362
+ Returns
363
+ -------
364
+ bytes
365
+ Response as bytes
366
+
367
+ Raises
368
+ ------
369
+ AppwriteException
370
+ If API request fails
371
+ """
372
+
373
+ api_path = '/avatars/qr'
374
+ api_params = {}
375
+ if text is None:
376
+ raise AppwriteException('Missing required parameter: "text"')
377
+
378
+
379
+ api_params['text'] = self._normalize_value(text)
380
+ if size is not None:
381
+ api_params['size'] = self._normalize_value(size)
382
+ if margin is not None:
383
+ api_params['margin'] = self._normalize_value(margin)
384
+ if download is not None:
385
+ api_params['download'] = self._normalize_value(download)
386
+
387
+ response = self.client.call('get', api_path, {
388
+ 'X-Appwrite-Project': self.client.get_config('project'),
389
+ 'accept': 'image/png',
390
+ }, api_params)
391
+
392
+ return response
393
+
394
+
395
+ def get_screenshot(
396
+ self,
397
+ url: str,
398
+ headers: Optional[Dict[str, Any]] = None,
399
+ viewport_width: Optional[float] = None,
400
+ viewport_height: Optional[float] = None,
401
+ scale: Optional[float] = None,
402
+ theme: Optional[BrowserTheme] = None,
403
+ user_agent: Optional[str] = None,
404
+ fullpage: Optional[bool] = None,
405
+ locale: Optional[str] = None,
406
+ timezone: Optional[Timezone] = None,
407
+ latitude: Optional[float] = None,
408
+ longitude: Optional[float] = None,
409
+ accuracy: Optional[float] = None,
410
+ touch: Optional[bool] = None,
411
+ permissions: Optional[List[BrowserPermission]] = None,
412
+ sleep: Optional[float] = None,
413
+ width: Optional[float] = None,
414
+ height: Optional[float] = None,
415
+ quality: Optional[float] = None,
416
+ output: Optional[ImageFormat] = None
417
+ ) -> bytes:
418
+ """
419
+ Use this endpoint to capture a screenshot of any website URL. This endpoint uses a headless browser to render the webpage and capture it as an image.
420
+
421
+ You can configure the browser viewport size, theme, user agent, geolocation, permissions, and more. Capture either just the viewport or the full page scroll.
422
+
423
+ When width and height are specified, the image is resized accordingly. If both dimensions are 0, the API provides an image at original size. If dimensions are not specified, the default viewport size is 1280x720px.
424
+
425
+ Parameters
426
+ ----------
427
+ url : str
428
+ Website URL which you want to capture.
429
+ headers : Optional[Dict[str, Any]]
430
+ HTTP headers to send with the browser request. Defaults to empty.
431
+ viewport_width : Optional[float]
432
+ Browser viewport width. Pass an integer between 1 to 1920. Defaults to 1280.
433
+ viewport_height : Optional[float]
434
+ Browser viewport height. Pass an integer between 1 to 1080. Defaults to 720.
435
+ scale : Optional[float]
436
+ Browser scale factor. Pass a number between 0.1 to 3. Defaults to 1.
437
+ theme : Optional[BrowserTheme]
438
+ Browser theme. Pass "light" or "dark". Defaults to "light".
439
+ user_agent : Optional[str]
440
+ Custom user agent string. Defaults to browser default.
441
+ fullpage : Optional[bool]
442
+ Capture full page scroll. Pass 0 for viewport only, or 1 for full page. Defaults to 0.
443
+ locale : Optional[str]
444
+ Browser locale (e.g., "en-US", "fr-FR"). Defaults to browser default.
445
+ timezone : Optional[Timezone]
446
+ IANA timezone identifier (e.g., "America/New_York", "Europe/London"). Defaults to browser default.
447
+ latitude : Optional[float]
448
+ Geolocation latitude. Pass a number between -90 to 90. Defaults to 0.
449
+ longitude : Optional[float]
450
+ Geolocation longitude. Pass a number between -180 to 180. Defaults to 0.
451
+ accuracy : Optional[float]
452
+ Geolocation accuracy in meters. Pass a number between 0 to 100000. Defaults to 0.
453
+ touch : Optional[bool]
454
+ Enable touch support. Pass 0 for no touch, or 1 for touch enabled. Defaults to 0.
455
+ permissions : Optional[List[BrowserPermission]]
456
+ Browser permissions to grant. Pass an array of permission names like ["geolocation", "camera", "microphone"]. Defaults to empty.
457
+ sleep : Optional[float]
458
+ Wait time in seconds before taking the screenshot. Pass an integer between 0 to 10. Defaults to 0.
459
+ width : Optional[float]
460
+ Output image width. Pass 0 to use original width, or an integer between 1 to 2000. Defaults to 0 (original width).
461
+ height : Optional[float]
462
+ Output image height. Pass 0 to use original height, or an integer between 1 to 2000. Defaults to 0 (original height).
463
+ quality : Optional[float]
464
+ Screenshot quality. Pass an integer between 0 to 100. Defaults to keep existing image quality.
465
+ output : Optional[ImageFormat]
466
+ Output format type (jpeg, jpg, png, gif and webp).
467
+
468
+ Returns
469
+ -------
470
+ bytes
471
+ Response as bytes
472
+
473
+ Raises
474
+ ------
475
+ AppwriteException
476
+ If API request fails
477
+ """
478
+
479
+ api_path = '/avatars/screenshots'
480
+ api_params = {}
481
+ if url is None:
482
+ raise AppwriteException('Missing required parameter: "url"')
483
+
484
+
485
+ api_params['url'] = self._normalize_value(url)
486
+ if headers is not None:
487
+ api_params['headers'] = self._normalize_value(headers)
488
+ if viewport_width is not None:
489
+ api_params['viewportWidth'] = self._normalize_value(viewport_width)
490
+ if viewport_height is not None:
491
+ api_params['viewportHeight'] = self._normalize_value(viewport_height)
492
+ if scale is not None:
493
+ api_params['scale'] = self._normalize_value(scale)
494
+ if theme is not None:
495
+ api_params['theme'] = self._normalize_value(theme)
496
+ if user_agent is not None:
497
+ api_params['userAgent'] = self._normalize_value(user_agent)
498
+ if fullpage is not None:
499
+ api_params['fullpage'] = self._normalize_value(fullpage)
500
+ if locale is not None:
501
+ api_params['locale'] = self._normalize_value(locale)
502
+ if timezone is not None:
503
+ api_params['timezone'] = self._normalize_value(timezone)
504
+ if latitude is not None:
505
+ api_params['latitude'] = self._normalize_value(latitude)
506
+ if longitude is not None:
507
+ api_params['longitude'] = self._normalize_value(longitude)
508
+ if accuracy is not None:
509
+ api_params['accuracy'] = self._normalize_value(accuracy)
510
+ if touch is not None:
511
+ api_params['touch'] = self._normalize_value(touch)
512
+ if permissions is not None:
513
+ api_params['permissions'] = self._normalize_value(permissions)
514
+ if sleep is not None:
515
+ api_params['sleep'] = self._normalize_value(sleep)
516
+ if width is not None:
517
+ api_params['width'] = self._normalize_value(width)
518
+ if height is not None:
519
+ api_params['height'] = self._normalize_value(height)
520
+ if quality is not None:
521
+ api_params['quality'] = self._normalize_value(quality)
522
+ if output is not None:
523
+ api_params['output'] = self._normalize_value(output)
524
+
525
+ response = self.client.call('get', api_path, {
526
+ 'X-Appwrite-Project': self.client.get_config('project'),
527
+ 'accept': 'image/png',
528
+ }, api_params)
529
+
530
+ return response
531
+