frameio 0.0.23__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.

Potentially problematic release.


This version of frameio might be problematic. Click here for more details.

Files changed (363) hide show
  1. frameio/__init__.py +1115 -0
  2. frameio/account_permissions/__init__.py +4 -0
  3. frameio/account_permissions/client.py +182 -0
  4. frameio/account_permissions/raw_client.py +301 -0
  5. frameio/accounts/__init__.py +4 -0
  6. frameio/accounts/client.py +151 -0
  7. frameio/accounts/raw_client.py +281 -0
  8. frameio/client.py +439 -0
  9. frameio/comments/__init__.py +34 -0
  10. frameio/comments/client.py +596 -0
  11. frameio/comments/raw_client.py +1252 -0
  12. frameio/comments/types/__init__.py +38 -0
  13. frameio/comments/types/create_comment_params_data.py +25 -0
  14. frameio/comments/types/update_comment_params_data.py +25 -0
  15. frameio/core/__init__.py +110 -0
  16. frameio/core/api_error.py +23 -0
  17. frameio/core/client_wrapper.py +87 -0
  18. frameio/core/datetime_utils.py +28 -0
  19. frameio/core/file.py +67 -0
  20. frameio/core/force_multipart.py +18 -0
  21. frameio/core/http_client.py +543 -0
  22. frameio/core/http_response.py +55 -0
  23. frameio/core/jsonable_encoder.py +100 -0
  24. frameio/core/pagination.py +82 -0
  25. frameio/core/pydantic_utilities.py +258 -0
  26. frameio/core/query_encoder.py +58 -0
  27. frameio/core/remove_none_from_dict.py +11 -0
  28. frameio/core/request_options.py +35 -0
  29. frameio/core/serialization.py +276 -0
  30. frameio/environment.py +7 -0
  31. frameio/errors/__init__.py +53 -0
  32. frameio/errors/bad_request_error.py +11 -0
  33. frameio/errors/forbidden_error.py +11 -0
  34. frameio/errors/not_found_error.py +11 -0
  35. frameio/errors/too_many_requests_error.py +11 -0
  36. frameio/errors/unauthorized_error.py +11 -0
  37. frameio/errors/unprocessable_entity_error.py +10 -0
  38. frameio/files/__init__.py +55 -0
  39. frameio/files/client.py +1136 -0
  40. frameio/files/raw_client.py +2492 -0
  41. frameio/files/types/__init__.py +53 -0
  42. frameio/files/types/file_copy_params_data.py +15 -0
  43. frameio/files/types/file_create_local_upload_params_data.py +20 -0
  44. frameio/files/types/file_create_params_data.py +31 -0
  45. frameio/files/types/file_create_remote_upload_params_data.py +20 -0
  46. frameio/files/types/file_move_params_data.py +15 -0
  47. frameio/files/types/file_update_params_data.py +15 -0
  48. frameio/folders/__init__.py +39 -0
  49. frameio/folders/client.py +988 -0
  50. frameio/folders/raw_client.py +2058 -0
  51. frameio/folders/types/__init__.py +42 -0
  52. frameio/folders/types/folder_copy_params_data.py +15 -0
  53. frameio/folders/types/folder_create_params_data.py +15 -0
  54. frameio/folders/types/folder_move_params_data.py +15 -0
  55. frameio/folders/types/folder_update_params_data.py +15 -0
  56. frameio/metadata/__init__.py +37 -0
  57. frameio/metadata/client.py +291 -0
  58. frameio/metadata/raw_client.py +509 -0
  59. frameio/metadata/types/__init__.py +38 -0
  60. frameio/metadata/types/bulk_update_metadata_params_data.py +23 -0
  61. frameio/metadata/types/bulk_update_metadata_params_data_values_item.py +13 -0
  62. frameio/metadata_fields/__init__.py +103 -0
  63. frameio/metadata_fields/client.py +536 -0
  64. frameio/metadata_fields/raw_client.py +996 -0
  65. frameio/metadata_fields/types/__init__.py +105 -0
  66. frameio/metadata_fields/types/create_field_definition_params_data.py +108 -0
  67. frameio/metadata_fields/types/update_field_definition_params_data.py +114 -0
  68. frameio/project_permissions/__init__.py +4 -0
  69. frameio/project_permissions/client.py +415 -0
  70. frameio/project_permissions/raw_client.py +789 -0
  71. frameio/projects/__init__.py +4 -0
  72. frameio/projects/client.py +582 -0
  73. frameio/projects/raw_client.py +1250 -0
  74. frameio/py.typed +0 -0
  75. frameio/shares/__init__.py +64 -0
  76. frameio/shares/client.py +1192 -0
  77. frameio/shares/raw_client.py +2446 -0
  78. frameio/shares/types/__init__.py +61 -0
  79. frameio/shares/types/add_asset_params_data.py +15 -0
  80. frameio/shares/types/add_reviewers_to_share_params_data.py +18 -0
  81. frameio/shares/types/add_reviewers_to_share_params_data_reviewers.py +27 -0
  82. frameio/shares/types/create_share_params_data.py +25 -0
  83. frameio/shares/types/remove_reviewer_params_data.py +13 -0
  84. frameio/shares/types/remove_reviewer_params_data_reviewers.py +27 -0
  85. frameio/shares/types/update_share_params_data.py +33 -0
  86. frameio/shares/types/update_share_params_data_access.py +5 -0
  87. frameio/types/__init__.py +959 -0
  88. frameio/types/account.py +65 -0
  89. frameio/types/account_roles_item.py +5 -0
  90. frameio/types/account_user_role.py +23 -0
  91. frameio/types/account_user_role_role.py +5 -0
  92. frameio/types/account_user_roles_response.py +27 -0
  93. frameio/types/accounts_response.py +23 -0
  94. frameio/types/add_asset_response.py +13 -0
  95. frameio/types/add_asset_response_data.py +15 -0
  96. frameio/types/asset_common.py +48 -0
  97. frameio/types/asset_common_type.py +5 -0
  98. frameio/types/asset_common_with_includes.py +56 -0
  99. frameio/types/asset_include.py +5 -0
  100. frameio/types/asset_share_params.py +38 -0
  101. frameio/types/asset_share_params_access.py +5 -0
  102. frameio/types/asset_with_includes.py +72 -0
  103. frameio/types/assets_with_includes_response.py +23 -0
  104. frameio/types/bad_request.py +13 -0
  105. frameio/types/bad_request_errors_item.py +15 -0
  106. frameio/types/bad_request_errors_item_source.py +12 -0
  107. frameio/types/boolean_value.py +12 -0
  108. frameio/types/children_type.py +3 -0
  109. frameio/types/comment.py +52 -0
  110. frameio/types/comment_include.py +5 -0
  111. frameio/types/comment_response.py +13 -0
  112. frameio/types/comment_with_includes.py +17 -0
  113. frameio/types/comment_with_includes_response.py +13 -0
  114. frameio/types/comments_with_includes_response.py +23 -0
  115. frameio/types/date_definition.py +43 -0
  116. frameio/types/date_definition_field_configuration.py +21 -0
  117. frameio/types/date_definition_field_configuration_display_format.py +7 -0
  118. frameio/types/date_definition_field_configuration_time_format.py +5 -0
  119. frameio/types/date_definition_params.py +17 -0
  120. frameio/types/date_definition_params_field_configuration.py +23 -0
  121. frameio/types/date_definition_params_field_configuration_display_format.py +7 -0
  122. frameio/types/date_definition_params_field_configuration_time_format.py +7 -0
  123. frameio/types/date_definition_with_includes.py +13 -0
  124. frameio/types/date_value.py +12 -0
  125. frameio/types/email.py +3 -0
  126. frameio/types/field_definition.py +163 -0
  127. frameio/types/field_definition_include.py +5 -0
  128. frameio/types/field_definition_response.py +13 -0
  129. frameio/types/field_definition_with_includes.py +174 -0
  130. frameio/types/field_definitions_with_includes_response.py +27 -0
  131. frameio/types/field_value_common.py +29 -0
  132. frameio/types/file.py +60 -0
  133. frameio/types/file_copy_response.py +13 -0
  134. frameio/types/file_remote_upload_response.py +17 -0
  135. frameio/types/file_response.py +13 -0
  136. frameio/types/file_status.py +5 -0
  137. frameio/types/file_upload_status.py +41 -0
  138. frameio/types/file_upload_status_response.py +13 -0
  139. frameio/types/file_with_includes.py +25 -0
  140. frameio/types/file_with_includes_response.py +13 -0
  141. frameio/types/file_with_includes_status.py +5 -0
  142. frameio/types/file_with_media_links_include.py +19 -0
  143. frameio/types/file_with_upload_urls.py +16 -0
  144. frameio/types/file_with_upload_urls_response.py +13 -0
  145. frameio/types/folder.py +15 -0
  146. frameio/types/folder_copy_response.py +13 -0
  147. frameio/types/folder_response.py +13 -0
  148. frameio/types/folder_with_includes.py +61 -0
  149. frameio/types/folder_with_includes_response.py +13 -0
  150. frameio/types/folders_with_includes_response.py +23 -0
  151. frameio/types/forbidden.py +13 -0
  152. frameio/types/forbidden_errors_item.py +15 -0
  153. frameio/types/forbidden_errors_item_source.py +12 -0
  154. frameio/types/include.py +5 -0
  155. frameio/types/include_total_count.py +3 -0
  156. frameio/types/integer_value.py +12 -0
  157. frameio/types/json_error_response.py +13 -0
  158. frameio/types/json_error_response_errors_item.py +15 -0
  159. frameio/types/json_error_response_errors_item_source.py +12 -0
  160. frameio/types/links.py +22 -0
  161. frameio/types/long_text_definition.py +43 -0
  162. frameio/types/long_text_definition_field_configuration.py +10 -0
  163. frameio/types/long_text_definition_params.py +15 -0
  164. frameio/types/long_text_definition_with_includes.py +13 -0
  165. frameio/types/media_link_common.py +17 -0
  166. frameio/types/media_links_collection.py +23 -0
  167. frameio/types/metadata_field.py +145 -0
  168. frameio/types/metadata_response.py +13 -0
  169. frameio/types/metadata_with_definition.py +21 -0
  170. frameio/types/multi_select_value.py +14 -0
  171. frameio/types/multi_user_value.py +20 -0
  172. frameio/types/multi_user_value_member_options_type.py +5 -0
  173. frameio/types/no_content.py +3 -0
  174. frameio/types/not_found.py +13 -0
  175. frameio/types/not_found_errors_item.py +15 -0
  176. frameio/types/not_found_errors_item_source.py +12 -0
  177. frameio/types/number_definition.py +43 -0
  178. frameio/types/number_definition_field_configuration.py +21 -0
  179. frameio/types/number_definition_field_configuration_number_format.py +7 -0
  180. frameio/types/number_definition_params.py +17 -0
  181. frameio/types/number_definition_params_field_configuration.py +23 -0
  182. frameio/types/number_definition_params_field_configuration_number_format.py +7 -0
  183. frameio/types/number_definition_with_includes.py +13 -0
  184. frameio/types/number_value.py +12 -0
  185. frameio/types/original_media_link.py +16 -0
  186. frameio/types/profile.py +34 -0
  187. frameio/types/profile_response.py +17 -0
  188. frameio/types/project.py +55 -0
  189. frameio/types/project_include.py +5 -0
  190. frameio/types/project_params.py +17 -0
  191. frameio/types/project_params_data.py +15 -0
  192. frameio/types/project_response.py +17 -0
  193. frameio/types/project_with_includes.py +18 -0
  194. frameio/types/project_with_includes_response.py +17 -0
  195. frameio/types/projects_with_includes_response.py +27 -0
  196. frameio/types/rating_definition.py +43 -0
  197. frameio/types/rating_definition_field_configuration.py +22 -0
  198. frameio/types/rating_definition_field_configuration_style.py +5 -0
  199. frameio/types/rating_definition_params.py +17 -0
  200. frameio/types/rating_definition_params_field_configuration.py +22 -0
  201. frameio/types/rating_definition_params_field_configuration_style.py +5 -0
  202. frameio/types/rating_definition_with_includes.py +13 -0
  203. frameio/types/remove_asset_response.py +13 -0
  204. frameio/types/remove_asset_response_data.py +15 -0
  205. frameio/types/rendition_media_link.py +19 -0
  206. frameio/types/request_after_opaque_cursor.py +5 -0
  207. frameio/types/request_page_size.py +3 -0
  208. frameio/types/select_definition.py +43 -0
  209. frameio/types/select_definition_field_configuration.py +18 -0
  210. frameio/types/select_definition_field_configuration_options_item.py +22 -0
  211. frameio/types/select_definition_params.py +17 -0
  212. frameio/types/select_definition_params_field_configuration.py +20 -0
  213. frameio/types/select_definition_params_field_configuration_options_item.py +20 -0
  214. frameio/types/select_definition_with_includes.py +13 -0
  215. frameio/types/select_multi_definition.py +43 -0
  216. frameio/types/select_multi_definition_field_configuration.py +18 -0
  217. frameio/types/select_multi_definition_field_configuration_options_item.py +22 -0
  218. frameio/types/select_multi_definition_params.py +17 -0
  219. frameio/types/select_multi_definition_params_field_configuration.py +20 -0
  220. frameio/types/select_multi_definition_params_field_configuration_options_item.py +20 -0
  221. frameio/types/select_multi_definition_with_includes.py +13 -0
  222. frameio/types/select_option.py +20 -0
  223. frameio/types/select_value.py +14 -0
  224. frameio/types/share.py +66 -0
  225. frameio/types/share_access.py +5 -0
  226. frameio/types/share_response.py +13 -0
  227. frameio/types/share_reviewers_response.py +27 -0
  228. frameio/types/shares_response.py +27 -0
  229. frameio/types/single_user_value.py +20 -0
  230. frameio/types/single_user_value_member_options_type.py +5 -0
  231. frameio/types/text_definition.py +43 -0
  232. frameio/types/text_definition_field_configuration.py +10 -0
  233. frameio/types/text_definition_params.py +15 -0
  234. frameio/types/text_definition_with_includes.py +13 -0
  235. frameio/types/text_value.py +12 -0
  236. frameio/types/toggle_definition.py +43 -0
  237. frameio/types/toggle_definition_field_configuration.py +15 -0
  238. frameio/types/toggle_definition_params.py +17 -0
  239. frameio/types/toggle_definition_params_field_configuration.py +15 -0
  240. frameio/types/toggle_definition_with_includes.py +13 -0
  241. frameio/types/too_many_requests.py +13 -0
  242. frameio/types/too_many_requests_errors_item.py +15 -0
  243. frameio/types/too_many_requests_errors_item_source.py +12 -0
  244. frameio/types/unauthorized.py +13 -0
  245. frameio/types/unauthorized_errors_item.py +15 -0
  246. frameio/types/unauthorized_errors_item_source.py +12 -0
  247. frameio/types/unprocessable_entity.py +13 -0
  248. frameio/types/unprocessable_entity_errors_item.py +15 -0
  249. frameio/types/unprocessable_entity_errors_item_source.py +12 -0
  250. frameio/types/update_date_definition_params.py +17 -0
  251. frameio/types/update_date_definition_params_field_configuration.py +25 -0
  252. frameio/types/update_date_definition_params_field_configuration_display_format.py +7 -0
  253. frameio/types/update_date_definition_params_field_configuration_time_format.py +7 -0
  254. frameio/types/update_long_text_definition_params.py +15 -0
  255. frameio/types/update_number_definition_params.py +17 -0
  256. frameio/types/update_number_definition_params_field_configuration.py +25 -0
  257. frameio/types/update_number_definition_params_field_configuration_number_format.py +7 -0
  258. frameio/types/update_rating_definition_params.py +17 -0
  259. frameio/types/update_rating_definition_params_field_configuration.py +24 -0
  260. frameio/types/update_rating_definition_params_field_configuration_style.py +7 -0
  261. frameio/types/update_select_definition_params.py +17 -0
  262. frameio/types/update_select_definition_params_field_configuration.py +20 -0
  263. frameio/types/update_select_definition_params_field_configuration_options_item.py +20 -0
  264. frameio/types/update_select_multi_definition_params.py +19 -0
  265. frameio/types/update_select_multi_definition_params_field_configuration.py +20 -0
  266. frameio/types/update_select_multi_definition_params_field_configuration_options_item.py +20 -0
  267. frameio/types/update_text_definition_params.py +15 -0
  268. frameio/types/update_toggle_definition_params.py +17 -0
  269. frameio/types/update_toggle_definition_params_field_configuration.py +15 -0
  270. frameio/types/update_user_multi_definition_params.py +17 -0
  271. frameio/types/update_user_multi_definition_params_field_configuration.py +25 -0
  272. frameio/types/update_user_multi_definition_params_field_configuration_custom_members_item.py +20 -0
  273. frameio/types/update_user_multi_definition_params_field_configuration_custom_members_item_type.py +7 -0
  274. frameio/types/update_user_multi_definition_params_field_configuration_member_options_type.py +7 -0
  275. frameio/types/update_user_roles_params.py +17 -0
  276. frameio/types/update_user_roles_params_data.py +13 -0
  277. frameio/types/update_user_roles_params_data_role.py +7 -0
  278. frameio/types/update_user_roles_response.py +13 -0
  279. frameio/types/update_user_roles_response_data.py +13 -0
  280. frameio/types/update_user_roles_response_data_role.py +7 -0
  281. frameio/types/update_user_single_definition_params.py +17 -0
  282. frameio/types/update_user_single_definition_params_field_configuration.py +25 -0
  283. frameio/types/update_user_single_definition_params_field_configuration_custom_members_item.py +20 -0
  284. frameio/types/update_user_single_definition_params_field_configuration_custom_members_item_type.py +7 -0
  285. frameio/types/update_user_single_definition_params_field_configuration_member_options_type.py +7 -0
  286. frameio/types/upload_url.py +20 -0
  287. frameio/types/user.py +44 -0
  288. frameio/types/user_multi_definition.py +43 -0
  289. frameio/types/user_multi_definition_field_configuration.py +23 -0
  290. frameio/types/user_multi_definition_field_configuration_custom_members_item.py +20 -0
  291. frameio/types/user_multi_definition_field_configuration_custom_members_item_type.py +7 -0
  292. frameio/types/user_multi_definition_field_configuration_member_options_type.py +7 -0
  293. frameio/types/user_multi_definition_params.py +17 -0
  294. frameio/types/user_multi_definition_params_field_configuration.py +23 -0
  295. frameio/types/user_multi_definition_params_field_configuration_custom_members_item.py +20 -0
  296. frameio/types/user_multi_definition_params_field_configuration_custom_members_item_type.py +7 -0
  297. frameio/types/user_multi_definition_params_field_configuration_member_options_type.py +7 -0
  298. frameio/types/user_multi_definition_with_includes.py +13 -0
  299. frameio/types/user_role.py +19 -0
  300. frameio/types/user_role_role.py +7 -0
  301. frameio/types/user_roles_response.py +27 -0
  302. frameio/types/user_single_definition.py +43 -0
  303. frameio/types/user_single_definition_field_configuration.py +23 -0
  304. frameio/types/user_single_definition_field_configuration_custom_members_item.py +20 -0
  305. frameio/types/user_single_definition_field_configuration_custom_members_item_type.py +7 -0
  306. frameio/types/user_single_definition_field_configuration_member_options_type.py +7 -0
  307. frameio/types/user_single_definition_params.py +17 -0
  308. frameio/types/user_single_definition_params_field_configuration.py +23 -0
  309. frameio/types/user_single_definition_params_field_configuration_custom_members_item.py +20 -0
  310. frameio/types/user_single_definition_params_field_configuration_custom_members_item_type.py +7 -0
  311. frameio/types/user_single_definition_params_field_configuration_member_options_type.py +7 -0
  312. frameio/types/user_single_definition_with_includes.py +13 -0
  313. frameio/types/user_value.py +18 -0
  314. frameio/types/user_value_type.py +5 -0
  315. frameio/types/uuid_.py +3 -0
  316. frameio/types/version_stack.py +50 -0
  317. frameio/types/version_stack_copy_response.py +13 -0
  318. frameio/types/version_stack_response.py +13 -0
  319. frameio/types/version_stack_with_includes.py +58 -0
  320. frameio/types/version_stack_with_includes_response.py +13 -0
  321. frameio/types/version_stacks_with_includes_response.py +19 -0
  322. frameio/types/webhook.py +36 -0
  323. frameio/types/webhook_create_response.py +17 -0
  324. frameio/types/webhook_create_response_data.py +15 -0
  325. frameio/types/webhook_events.py +5 -0
  326. frameio/types/webhook_response.py +13 -0
  327. frameio/types/webhook_with_includes.py +13 -0
  328. frameio/types/webhook_with_includes_response.py +13 -0
  329. frameio/types/webhooks_with_includes_response.py +23 -0
  330. frameio/types/workspace.py +40 -0
  331. frameio/types/workspace_include.py +5 -0
  332. frameio/types/workspace_params.py +17 -0
  333. frameio/types/workspace_params_data.py +15 -0
  334. frameio/types/workspace_response.py +17 -0
  335. frameio/types/workspace_with_includes.py +13 -0
  336. frameio/types/workspace_with_includes_response.py +17 -0
  337. frameio/types/workspaces_with_includes_response.py +27 -0
  338. frameio/users/__init__.py +4 -0
  339. frameio/users/client.py +100 -0
  340. frameio/users/raw_client.py +234 -0
  341. frameio/version.py +3 -0
  342. frameio/version_stacks/__init__.py +38 -0
  343. frameio/version_stacks/client.py +699 -0
  344. frameio/version_stacks/raw_client.py +1359 -0
  345. frameio/version_stacks/types/__init__.py +40 -0
  346. frameio/version_stacks/types/version_stack_copy_params_data.py +15 -0
  347. frameio/version_stacks/types/version_stack_create_params_data.py +19 -0
  348. frameio/version_stacks/types/version_stack_move_params_data.py +15 -0
  349. frameio/webhooks/__init__.py +34 -0
  350. frameio/webhooks/client.py +782 -0
  351. frameio/webhooks/raw_client.py +1312 -0
  352. frameio/webhooks/types/__init__.py +38 -0
  353. frameio/webhooks/types/webhook_create_params_data.py +18 -0
  354. frameio/webhooks/types/webhook_update_params_data.py +23 -0
  355. frameio/workspace_permissions/__init__.py +4 -0
  356. frameio/workspace_permissions/client.py +419 -0
  357. frameio/workspace_permissions/raw_client.py +789 -0
  358. frameio/workspaces/__init__.py +4 -0
  359. frameio/workspaces/client.py +552 -0
  360. frameio/workspaces/raw_client.py +1226 -0
  361. frameio-0.0.23.dist-info/METADATA +255 -0
  362. frameio-0.0.23.dist-info/RECORD +363 -0
  363. frameio-0.0.23.dist-info/WHEEL +4 -0
@@ -0,0 +1,1192 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
6
+ from ..core.request_options import RequestOptions
7
+ from ..types.add_asset_response import AddAssetResponse
8
+ from ..types.include_total_count import IncludeTotalCount
9
+ from ..types.remove_asset_response import RemoveAssetResponse
10
+ from ..types.request_after_opaque_cursor import RequestAfterOpaqueCursor
11
+ from ..types.request_page_size import RequestPageSize
12
+ from ..types.share_response import ShareResponse
13
+ from ..types.share_reviewers_response import ShareReviewersResponse
14
+ from ..types.shares_response import SharesResponse
15
+ from ..types.uuid_ import Uuid
16
+ from .raw_client import AsyncRawSharesClient, RawSharesClient
17
+ from .types.add_asset_params_data import AddAssetParamsData
18
+ from .types.add_reviewers_to_share_params_data import AddReviewersToShareParamsData
19
+ from .types.create_share_params_data import CreateShareParamsData
20
+ from .types.remove_reviewer_params_data import RemoveReviewerParamsData
21
+ from .types.update_share_params_data import UpdateShareParamsData
22
+
23
+ # this is used as the default value for optional parameters
24
+ OMIT = typing.cast(typing.Any, ...)
25
+
26
+
27
+ class SharesClient:
28
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
29
+ self._raw_client = RawSharesClient(client_wrapper=client_wrapper)
30
+
31
+ @property
32
+ def with_raw_response(self) -> RawSharesClient:
33
+ """
34
+ Retrieves a raw implementation of this client that returns raw responses.
35
+
36
+ Returns
37
+ -------
38
+ RawSharesClient
39
+ """
40
+ return self._raw_client
41
+
42
+ def show(
43
+ self, account_id: Uuid, share_id: Uuid, *, request_options: typing.Optional[RequestOptions] = None
44
+ ) -> ShareResponse:
45
+ """
46
+ Show a single Share. <br><br>Rate Limits: 100 calls per 1.00 minute(s) per account
47
+
48
+ Parameters
49
+ ----------
50
+ account_id : Uuid
51
+
52
+
53
+ share_id : Uuid
54
+
55
+
56
+ request_options : typing.Optional[RequestOptions]
57
+ Request-specific configuration.
58
+
59
+ Returns
60
+ -------
61
+ ShareResponse
62
+ OK
63
+
64
+ Examples
65
+ --------
66
+ from frameio import Frameio
67
+
68
+ client = Frameio(
69
+ token="YOUR_TOKEN",
70
+ )
71
+ client.shares.show(
72
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
73
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
74
+ )
75
+ """
76
+ _response = self._raw_client.show(account_id, share_id, request_options=request_options)
77
+ return _response.data
78
+
79
+ def delete(
80
+ self, account_id: Uuid, share_id: Uuid, *, request_options: typing.Optional[RequestOptions] = None
81
+ ) -> None:
82
+ """
83
+ Delete a share. <br><br>Rate Limits: 60 calls per 1.00 minute(s) per account
84
+
85
+ Parameters
86
+ ----------
87
+ account_id : Uuid
88
+
89
+
90
+ share_id : Uuid
91
+
92
+
93
+ request_options : typing.Optional[RequestOptions]
94
+ Request-specific configuration.
95
+
96
+ Returns
97
+ -------
98
+ None
99
+
100
+ Examples
101
+ --------
102
+ from frameio import Frameio
103
+
104
+ client = Frameio(
105
+ token="YOUR_TOKEN",
106
+ )
107
+ client.shares.delete(
108
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
109
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
110
+ )
111
+ """
112
+ _response = self._raw_client.delete(account_id, share_id, request_options=request_options)
113
+ return _response.data
114
+
115
+ def update(
116
+ self,
117
+ account_id: Uuid,
118
+ share_id: Uuid,
119
+ *,
120
+ data: UpdateShareParamsData,
121
+ request_options: typing.Optional[RequestOptions] = None,
122
+ ) -> ShareResponse:
123
+ """
124
+ Update share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
125
+
126
+ Parameters
127
+ ----------
128
+ account_id : Uuid
129
+
130
+
131
+ share_id : Uuid
132
+
133
+
134
+ data : UpdateShareParamsData
135
+
136
+ request_options : typing.Optional[RequestOptions]
137
+ Request-specific configuration.
138
+
139
+ Returns
140
+ -------
141
+ ShareResponse
142
+ OK
143
+
144
+ Examples
145
+ --------
146
+ import datetime
147
+
148
+ from frameio import Frameio
149
+ from frameio.shares import UpdateShareParamsData
150
+
151
+ client = Frameio(
152
+ token="YOUR_TOKEN",
153
+ )
154
+ client.shares.update(
155
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
156
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
157
+ data=UpdateShareParamsData(
158
+ access="public",
159
+ description="A descriptive summary of the share",
160
+ expiration=datetime.datetime.fromisoformat(
161
+ "2025-09-24 00:35:53+00:00",
162
+ ),
163
+ name="Share Name",
164
+ passphrase="as!dfj39sd(*",
165
+ ),
166
+ )
167
+ """
168
+ _response = self._raw_client.update(account_id, share_id, data=data, request_options=request_options)
169
+ return _response.data
170
+
171
+ def list_reviewers(
172
+ self,
173
+ account_id: Uuid,
174
+ share_id: Uuid,
175
+ *,
176
+ after: typing.Optional[RequestAfterOpaqueCursor] = None,
177
+ page_size: typing.Optional[RequestPageSize] = None,
178
+ include_total_count: typing.Optional[IncludeTotalCount] = None,
179
+ request_options: typing.Optional[RequestOptions] = None,
180
+ ) -> ShareReviewersResponse:
181
+ """
182
+ List share reviewers. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
183
+
184
+ Parameters
185
+ ----------
186
+ account_id : Uuid
187
+
188
+
189
+ share_id : Uuid
190
+
191
+
192
+ after : typing.Optional[RequestAfterOpaqueCursor]
193
+ Opaque Cursor query param for requests returning paginated results.
194
+ <br/>
195
+ NOTE: this value is auto-generated and included as part of links from a previous response. It is not intended to be human readable.
196
+
197
+ page_size : typing.Optional[RequestPageSize]
198
+
199
+
200
+ include_total_count : typing.Optional[IncludeTotalCount]
201
+
202
+
203
+ request_options : typing.Optional[RequestOptions]
204
+ Request-specific configuration.
205
+
206
+ Returns
207
+ -------
208
+ ShareReviewersResponse
209
+ OK
210
+
211
+ Examples
212
+ --------
213
+ from frameio import Frameio
214
+
215
+ client = Frameio(
216
+ token="YOUR_TOKEN",
217
+ )
218
+ client.shares.list_reviewers(
219
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
220
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
221
+ after="<opaque_cursor>",
222
+ page_size=10,
223
+ include_total_count=False,
224
+ )
225
+ """
226
+ _response = self._raw_client.list_reviewers(
227
+ account_id,
228
+ share_id,
229
+ after=after,
230
+ page_size=page_size,
231
+ include_total_count=include_total_count,
232
+ request_options=request_options,
233
+ )
234
+ return _response.data
235
+
236
+ def add_reviewers(
237
+ self,
238
+ account_id: Uuid,
239
+ share_id: Uuid,
240
+ *,
241
+ data: AddReviewersToShareParamsData,
242
+ request_options: typing.Optional[RequestOptions] = None,
243
+ ) -> None:
244
+ """
245
+ Add reviewers to secure share by three identifier types: `adobe_user_id`, `email`, and `user_id`.
246
+ <br><br>
247
+ A request can only include one identifier type parameter.
248
+ <br><br>
249
+ `email` is the only identifier able to add reviewers to a Share who don't have a Frame account member on the account where the Share belongs.
250
+ <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
251
+
252
+ Parameters
253
+ ----------
254
+ account_id : Uuid
255
+
256
+
257
+ share_id : Uuid
258
+
259
+
260
+ data : AddReviewersToShareParamsData
261
+
262
+ request_options : typing.Optional[RequestOptions]
263
+ Request-specific configuration.
264
+
265
+ Returns
266
+ -------
267
+ None
268
+
269
+ Examples
270
+ --------
271
+ from frameio import Frameio
272
+ from frameio.shares import (
273
+ AddReviewersToShareParamsData,
274
+ AddReviewersToShareParamsDataReviewers,
275
+ )
276
+
277
+ client = Frameio(
278
+ token="YOUR_TOKEN",
279
+ )
280
+ client.shares.add_reviewers(
281
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
282
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
283
+ data=AddReviewersToShareParamsData(
284
+ message="Please join my share!",
285
+ reviewers=AddReviewersToShareParamsDataReviewers(
286
+ emails=["email1@domain.com", "email2@domain.com"],
287
+ ),
288
+ ),
289
+ )
290
+ """
291
+ _response = self._raw_client.add_reviewers(account_id, share_id, data=data, request_options=request_options)
292
+ return _response.data
293
+
294
+ def remove_reviewers(
295
+ self,
296
+ account_id: Uuid,
297
+ share_id: Uuid,
298
+ *,
299
+ data: RemoveReviewerParamsData,
300
+ request_options: typing.Optional[RequestOptions] = None,
301
+ ) -> None:
302
+ """
303
+ Removes reviewers from secure Share by three identifier types: `adobe_user_id`, `email`, and `user_id`.
304
+ <br><br>
305
+ A request can only include one identifier type parameter.
306
+ <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
307
+
308
+ Parameters
309
+ ----------
310
+ account_id : Uuid
311
+
312
+
313
+ share_id : Uuid
314
+
315
+
316
+ data : RemoveReviewerParamsData
317
+
318
+ request_options : typing.Optional[RequestOptions]
319
+ Request-specific configuration.
320
+
321
+ Returns
322
+ -------
323
+ None
324
+
325
+ Examples
326
+ --------
327
+ from frameio import Frameio
328
+ from frameio.shares import (
329
+ RemoveReviewerParamsData,
330
+ RemoveReviewerParamsDataReviewers,
331
+ )
332
+
333
+ client = Frameio(
334
+ token="YOUR_TOKEN",
335
+ )
336
+ client.shares.remove_reviewers(
337
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
338
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
339
+ data=RemoveReviewerParamsData(
340
+ reviewers=RemoveReviewerParamsDataReviewers(
341
+ adobe_user_ids=[
342
+ "2A3C1A3D66C621B20A494021@176719f5667c82b4499999.e"
343
+ ],
344
+ ),
345
+ ),
346
+ )
347
+ """
348
+ _response = self._raw_client.remove_reviewers(account_id, share_id, data=data, request_options=request_options)
349
+ return _response.data
350
+
351
+ def remove_asset(
352
+ self,
353
+ account_id: Uuid,
354
+ share_id: Uuid,
355
+ asset_id: Uuid,
356
+ *,
357
+ request_options: typing.Optional[RequestOptions] = None,
358
+ ) -> RemoveAssetResponse:
359
+ """
360
+ Remove an asset currently in the share from that share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
361
+
362
+ Parameters
363
+ ----------
364
+ account_id : Uuid
365
+
366
+
367
+ share_id : Uuid
368
+
369
+
370
+ asset_id : Uuid
371
+
372
+
373
+ request_options : typing.Optional[RequestOptions]
374
+ Request-specific configuration.
375
+
376
+ Returns
377
+ -------
378
+ RemoveAssetResponse
379
+ OK
380
+
381
+ Examples
382
+ --------
383
+ from frameio import Frameio
384
+
385
+ client = Frameio(
386
+ token="YOUR_TOKEN",
387
+ )
388
+ client.shares.remove_asset(
389
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
390
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
391
+ asset_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
392
+ )
393
+ """
394
+ _response = self._raw_client.remove_asset(account_id, share_id, asset_id, request_options=request_options)
395
+ return _response.data
396
+
397
+ def add_asset(
398
+ self,
399
+ account_id: Uuid,
400
+ share_id: Uuid,
401
+ *,
402
+ data: AddAssetParamsData,
403
+ request_options: typing.Optional[RequestOptions] = None,
404
+ ) -> AddAssetResponse:
405
+ """
406
+ Add new asset share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
407
+
408
+ Parameters
409
+ ----------
410
+ account_id : Uuid
411
+
412
+
413
+ share_id : Uuid
414
+
415
+
416
+ data : AddAssetParamsData
417
+
418
+ request_options : typing.Optional[RequestOptions]
419
+ Request-specific configuration.
420
+
421
+ Returns
422
+ -------
423
+ AddAssetResponse
424
+ OK
425
+
426
+ Examples
427
+ --------
428
+ from frameio import Frameio
429
+ from frameio.shares import AddAssetParamsData
430
+
431
+ client = Frameio(
432
+ token="YOUR_TOKEN",
433
+ )
434
+ client.shares.add_asset(
435
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
436
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
437
+ data=AddAssetParamsData(
438
+ asset_id="246c7f46-b3c5-432d-8c54-e3b9d81abf41",
439
+ ),
440
+ )
441
+ """
442
+ _response = self._raw_client.add_asset(account_id, share_id, data=data, request_options=request_options)
443
+ return _response.data
444
+
445
+ def index(
446
+ self,
447
+ account_id: Uuid,
448
+ project_id: Uuid,
449
+ *,
450
+ after: typing.Optional[RequestAfterOpaqueCursor] = None,
451
+ page_size: typing.Optional[RequestPageSize] = None,
452
+ include_total_count: typing.Optional[IncludeTotalCount] = None,
453
+ request_options: typing.Optional[RequestOptions] = None,
454
+ ) -> SharesResponse:
455
+ """
456
+ List shares on a project. <br><br>Rate Limits: 100 calls per 1.00 minute(s) per account
457
+
458
+ Parameters
459
+ ----------
460
+ account_id : Uuid
461
+
462
+
463
+ project_id : Uuid
464
+
465
+
466
+ after : typing.Optional[RequestAfterOpaqueCursor]
467
+ Opaque Cursor query param for requests returning paginated results.
468
+ <br/>
469
+ NOTE: this value is auto-generated and included as part of links from a previous response. It is not intended to be human readable.
470
+
471
+ page_size : typing.Optional[RequestPageSize]
472
+
473
+
474
+ include_total_count : typing.Optional[IncludeTotalCount]
475
+
476
+
477
+ request_options : typing.Optional[RequestOptions]
478
+ Request-specific configuration.
479
+
480
+ Returns
481
+ -------
482
+ SharesResponse
483
+ OK
484
+
485
+ Examples
486
+ --------
487
+ from frameio import Frameio
488
+
489
+ client = Frameio(
490
+ token="YOUR_TOKEN",
491
+ )
492
+ client.shares.index(
493
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
494
+ project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
495
+ after="<opaque_cursor>",
496
+ page_size=10,
497
+ include_total_count=False,
498
+ )
499
+ """
500
+ _response = self._raw_client.index(
501
+ account_id,
502
+ project_id,
503
+ after=after,
504
+ page_size=page_size,
505
+ include_total_count=include_total_count,
506
+ request_options=request_options,
507
+ )
508
+ return _response.data
509
+
510
+ def create(
511
+ self,
512
+ account_id: Uuid,
513
+ project_id: Uuid,
514
+ *,
515
+ data: CreateShareParamsData,
516
+ request_options: typing.Optional[RequestOptions] = None,
517
+ ) -> ShareResponse:
518
+ """
519
+ Create share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
520
+
521
+ Parameters
522
+ ----------
523
+ account_id : Uuid
524
+
525
+
526
+ project_id : Uuid
527
+
528
+
529
+ data : CreateShareParamsData
530
+
531
+ request_options : typing.Optional[RequestOptions]
532
+ Request-specific configuration.
533
+
534
+ Returns
535
+ -------
536
+ ShareResponse
537
+ Created
538
+
539
+ Examples
540
+ --------
541
+ import datetime
542
+
543
+ from frameio import Frameio
544
+ from frameio.shares import CreateShareParamsData_Asset
545
+
546
+ client = Frameio(
547
+ token="YOUR_TOKEN",
548
+ )
549
+ client.shares.create(
550
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
551
+ project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
552
+ data=CreateShareParamsData_Asset(
553
+ access="public",
554
+ asset_ids=[
555
+ "302354e6-dfe6-47ed-9f81-cfb8d98137a5",
556
+ "f379ade6-8779-414c-9014-269aaaa14e98",
557
+ ],
558
+ expiration=datetime.datetime.fromisoformat(
559
+ "2025-09-24 00:35:53+00:00",
560
+ ),
561
+ name="Share Name",
562
+ passphrase="as!dfj39sd(*",
563
+ ),
564
+ )
565
+ """
566
+ _response = self._raw_client.create(account_id, project_id, data=data, request_options=request_options)
567
+ return _response.data
568
+
569
+
570
+ class AsyncSharesClient:
571
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
572
+ self._raw_client = AsyncRawSharesClient(client_wrapper=client_wrapper)
573
+
574
+ @property
575
+ def with_raw_response(self) -> AsyncRawSharesClient:
576
+ """
577
+ Retrieves a raw implementation of this client that returns raw responses.
578
+
579
+ Returns
580
+ -------
581
+ AsyncRawSharesClient
582
+ """
583
+ return self._raw_client
584
+
585
+ async def show(
586
+ self, account_id: Uuid, share_id: Uuid, *, request_options: typing.Optional[RequestOptions] = None
587
+ ) -> ShareResponse:
588
+ """
589
+ Show a single Share. <br><br>Rate Limits: 100 calls per 1.00 minute(s) per account
590
+
591
+ Parameters
592
+ ----------
593
+ account_id : Uuid
594
+
595
+
596
+ share_id : Uuid
597
+
598
+
599
+ request_options : typing.Optional[RequestOptions]
600
+ Request-specific configuration.
601
+
602
+ Returns
603
+ -------
604
+ ShareResponse
605
+ OK
606
+
607
+ Examples
608
+ --------
609
+ import asyncio
610
+
611
+ from frameio import AsyncFrameio
612
+
613
+ client = AsyncFrameio(
614
+ token="YOUR_TOKEN",
615
+ )
616
+
617
+
618
+ async def main() -> None:
619
+ await client.shares.show(
620
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
621
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
622
+ )
623
+
624
+
625
+ asyncio.run(main())
626
+ """
627
+ _response = await self._raw_client.show(account_id, share_id, request_options=request_options)
628
+ return _response.data
629
+
630
+ async def delete(
631
+ self, account_id: Uuid, share_id: Uuid, *, request_options: typing.Optional[RequestOptions] = None
632
+ ) -> None:
633
+ """
634
+ Delete a share. <br><br>Rate Limits: 60 calls per 1.00 minute(s) per account
635
+
636
+ Parameters
637
+ ----------
638
+ account_id : Uuid
639
+
640
+
641
+ share_id : Uuid
642
+
643
+
644
+ request_options : typing.Optional[RequestOptions]
645
+ Request-specific configuration.
646
+
647
+ Returns
648
+ -------
649
+ None
650
+
651
+ Examples
652
+ --------
653
+ import asyncio
654
+
655
+ from frameio import AsyncFrameio
656
+
657
+ client = AsyncFrameio(
658
+ token="YOUR_TOKEN",
659
+ )
660
+
661
+
662
+ async def main() -> None:
663
+ await client.shares.delete(
664
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
665
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
666
+ )
667
+
668
+
669
+ asyncio.run(main())
670
+ """
671
+ _response = await self._raw_client.delete(account_id, share_id, request_options=request_options)
672
+ return _response.data
673
+
674
+ async def update(
675
+ self,
676
+ account_id: Uuid,
677
+ share_id: Uuid,
678
+ *,
679
+ data: UpdateShareParamsData,
680
+ request_options: typing.Optional[RequestOptions] = None,
681
+ ) -> ShareResponse:
682
+ """
683
+ Update share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
684
+
685
+ Parameters
686
+ ----------
687
+ account_id : Uuid
688
+
689
+
690
+ share_id : Uuid
691
+
692
+
693
+ data : UpdateShareParamsData
694
+
695
+ request_options : typing.Optional[RequestOptions]
696
+ Request-specific configuration.
697
+
698
+ Returns
699
+ -------
700
+ ShareResponse
701
+ OK
702
+
703
+ Examples
704
+ --------
705
+ import asyncio
706
+ import datetime
707
+
708
+ from frameio import AsyncFrameio
709
+ from frameio.shares import UpdateShareParamsData
710
+
711
+ client = AsyncFrameio(
712
+ token="YOUR_TOKEN",
713
+ )
714
+
715
+
716
+ async def main() -> None:
717
+ await client.shares.update(
718
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
719
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
720
+ data=UpdateShareParamsData(
721
+ access="public",
722
+ description="A descriptive summary of the share",
723
+ expiration=datetime.datetime.fromisoformat(
724
+ "2025-09-24 00:35:53+00:00",
725
+ ),
726
+ name="Share Name",
727
+ passphrase="as!dfj39sd(*",
728
+ ),
729
+ )
730
+
731
+
732
+ asyncio.run(main())
733
+ """
734
+ _response = await self._raw_client.update(account_id, share_id, data=data, request_options=request_options)
735
+ return _response.data
736
+
737
+ async def list_reviewers(
738
+ self,
739
+ account_id: Uuid,
740
+ share_id: Uuid,
741
+ *,
742
+ after: typing.Optional[RequestAfterOpaqueCursor] = None,
743
+ page_size: typing.Optional[RequestPageSize] = None,
744
+ include_total_count: typing.Optional[IncludeTotalCount] = None,
745
+ request_options: typing.Optional[RequestOptions] = None,
746
+ ) -> ShareReviewersResponse:
747
+ """
748
+ List share reviewers. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
749
+
750
+ Parameters
751
+ ----------
752
+ account_id : Uuid
753
+
754
+
755
+ share_id : Uuid
756
+
757
+
758
+ after : typing.Optional[RequestAfterOpaqueCursor]
759
+ Opaque Cursor query param for requests returning paginated results.
760
+ <br/>
761
+ NOTE: this value is auto-generated and included as part of links from a previous response. It is not intended to be human readable.
762
+
763
+ page_size : typing.Optional[RequestPageSize]
764
+
765
+
766
+ include_total_count : typing.Optional[IncludeTotalCount]
767
+
768
+
769
+ request_options : typing.Optional[RequestOptions]
770
+ Request-specific configuration.
771
+
772
+ Returns
773
+ -------
774
+ ShareReviewersResponse
775
+ OK
776
+
777
+ Examples
778
+ --------
779
+ import asyncio
780
+
781
+ from frameio import AsyncFrameio
782
+
783
+ client = AsyncFrameio(
784
+ token="YOUR_TOKEN",
785
+ )
786
+
787
+
788
+ async def main() -> None:
789
+ await client.shares.list_reviewers(
790
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
791
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
792
+ after="<opaque_cursor>",
793
+ page_size=10,
794
+ include_total_count=False,
795
+ )
796
+
797
+
798
+ asyncio.run(main())
799
+ """
800
+ _response = await self._raw_client.list_reviewers(
801
+ account_id,
802
+ share_id,
803
+ after=after,
804
+ page_size=page_size,
805
+ include_total_count=include_total_count,
806
+ request_options=request_options,
807
+ )
808
+ return _response.data
809
+
810
+ async def add_reviewers(
811
+ self,
812
+ account_id: Uuid,
813
+ share_id: Uuid,
814
+ *,
815
+ data: AddReviewersToShareParamsData,
816
+ request_options: typing.Optional[RequestOptions] = None,
817
+ ) -> None:
818
+ """
819
+ Add reviewers to secure share by three identifier types: `adobe_user_id`, `email`, and `user_id`.
820
+ <br><br>
821
+ A request can only include one identifier type parameter.
822
+ <br><br>
823
+ `email` is the only identifier able to add reviewers to a Share who don't have a Frame account member on the account where the Share belongs.
824
+ <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
825
+
826
+ Parameters
827
+ ----------
828
+ account_id : Uuid
829
+
830
+
831
+ share_id : Uuid
832
+
833
+
834
+ data : AddReviewersToShareParamsData
835
+
836
+ request_options : typing.Optional[RequestOptions]
837
+ Request-specific configuration.
838
+
839
+ Returns
840
+ -------
841
+ None
842
+
843
+ Examples
844
+ --------
845
+ import asyncio
846
+
847
+ from frameio import AsyncFrameio
848
+ from frameio.shares import (
849
+ AddReviewersToShareParamsData,
850
+ AddReviewersToShareParamsDataReviewers,
851
+ )
852
+
853
+ client = AsyncFrameio(
854
+ token="YOUR_TOKEN",
855
+ )
856
+
857
+
858
+ async def main() -> None:
859
+ await client.shares.add_reviewers(
860
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
861
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
862
+ data=AddReviewersToShareParamsData(
863
+ message="Please join my share!",
864
+ reviewers=AddReviewersToShareParamsDataReviewers(
865
+ emails=["email1@domain.com", "email2@domain.com"],
866
+ ),
867
+ ),
868
+ )
869
+
870
+
871
+ asyncio.run(main())
872
+ """
873
+ _response = await self._raw_client.add_reviewers(
874
+ account_id, share_id, data=data, request_options=request_options
875
+ )
876
+ return _response.data
877
+
878
+ async def remove_reviewers(
879
+ self,
880
+ account_id: Uuid,
881
+ share_id: Uuid,
882
+ *,
883
+ data: RemoveReviewerParamsData,
884
+ request_options: typing.Optional[RequestOptions] = None,
885
+ ) -> None:
886
+ """
887
+ Removes reviewers from secure Share by three identifier types: `adobe_user_id`, `email`, and `user_id`.
888
+ <br><br>
889
+ A request can only include one identifier type parameter.
890
+ <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
891
+
892
+ Parameters
893
+ ----------
894
+ account_id : Uuid
895
+
896
+
897
+ share_id : Uuid
898
+
899
+
900
+ data : RemoveReviewerParamsData
901
+
902
+ request_options : typing.Optional[RequestOptions]
903
+ Request-specific configuration.
904
+
905
+ Returns
906
+ -------
907
+ None
908
+
909
+ Examples
910
+ --------
911
+ import asyncio
912
+
913
+ from frameio import AsyncFrameio
914
+ from frameio.shares import (
915
+ RemoveReviewerParamsData,
916
+ RemoveReviewerParamsDataReviewers,
917
+ )
918
+
919
+ client = AsyncFrameio(
920
+ token="YOUR_TOKEN",
921
+ )
922
+
923
+
924
+ async def main() -> None:
925
+ await client.shares.remove_reviewers(
926
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
927
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
928
+ data=RemoveReviewerParamsData(
929
+ reviewers=RemoveReviewerParamsDataReviewers(
930
+ adobe_user_ids=[
931
+ "2A3C1A3D66C621B20A494021@176719f5667c82b4499999.e"
932
+ ],
933
+ ),
934
+ ),
935
+ )
936
+
937
+
938
+ asyncio.run(main())
939
+ """
940
+ _response = await self._raw_client.remove_reviewers(
941
+ account_id, share_id, data=data, request_options=request_options
942
+ )
943
+ return _response.data
944
+
945
+ async def remove_asset(
946
+ self,
947
+ account_id: Uuid,
948
+ share_id: Uuid,
949
+ asset_id: Uuid,
950
+ *,
951
+ request_options: typing.Optional[RequestOptions] = None,
952
+ ) -> RemoveAssetResponse:
953
+ """
954
+ Remove an asset currently in the share from that share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
955
+
956
+ Parameters
957
+ ----------
958
+ account_id : Uuid
959
+
960
+
961
+ share_id : Uuid
962
+
963
+
964
+ asset_id : Uuid
965
+
966
+
967
+ request_options : typing.Optional[RequestOptions]
968
+ Request-specific configuration.
969
+
970
+ Returns
971
+ -------
972
+ RemoveAssetResponse
973
+ OK
974
+
975
+ Examples
976
+ --------
977
+ import asyncio
978
+
979
+ from frameio import AsyncFrameio
980
+
981
+ client = AsyncFrameio(
982
+ token="YOUR_TOKEN",
983
+ )
984
+
985
+
986
+ async def main() -> None:
987
+ await client.shares.remove_asset(
988
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
989
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
990
+ asset_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
991
+ )
992
+
993
+
994
+ asyncio.run(main())
995
+ """
996
+ _response = await self._raw_client.remove_asset(account_id, share_id, asset_id, request_options=request_options)
997
+ return _response.data
998
+
999
+ async def add_asset(
1000
+ self,
1001
+ account_id: Uuid,
1002
+ share_id: Uuid,
1003
+ *,
1004
+ data: AddAssetParamsData,
1005
+ request_options: typing.Optional[RequestOptions] = None,
1006
+ ) -> AddAssetResponse:
1007
+ """
1008
+ Add new asset share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
1009
+
1010
+ Parameters
1011
+ ----------
1012
+ account_id : Uuid
1013
+
1014
+
1015
+ share_id : Uuid
1016
+
1017
+
1018
+ data : AddAssetParamsData
1019
+
1020
+ request_options : typing.Optional[RequestOptions]
1021
+ Request-specific configuration.
1022
+
1023
+ Returns
1024
+ -------
1025
+ AddAssetResponse
1026
+ OK
1027
+
1028
+ Examples
1029
+ --------
1030
+ import asyncio
1031
+
1032
+ from frameio import AsyncFrameio
1033
+ from frameio.shares import AddAssetParamsData
1034
+
1035
+ client = AsyncFrameio(
1036
+ token="YOUR_TOKEN",
1037
+ )
1038
+
1039
+
1040
+ async def main() -> None:
1041
+ await client.shares.add_asset(
1042
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
1043
+ share_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
1044
+ data=AddAssetParamsData(
1045
+ asset_id="246c7f46-b3c5-432d-8c54-e3b9d81abf41",
1046
+ ),
1047
+ )
1048
+
1049
+
1050
+ asyncio.run(main())
1051
+ """
1052
+ _response = await self._raw_client.add_asset(account_id, share_id, data=data, request_options=request_options)
1053
+ return _response.data
1054
+
1055
+ async def index(
1056
+ self,
1057
+ account_id: Uuid,
1058
+ project_id: Uuid,
1059
+ *,
1060
+ after: typing.Optional[RequestAfterOpaqueCursor] = None,
1061
+ page_size: typing.Optional[RequestPageSize] = None,
1062
+ include_total_count: typing.Optional[IncludeTotalCount] = None,
1063
+ request_options: typing.Optional[RequestOptions] = None,
1064
+ ) -> SharesResponse:
1065
+ """
1066
+ List shares on a project. <br><br>Rate Limits: 100 calls per 1.00 minute(s) per account
1067
+
1068
+ Parameters
1069
+ ----------
1070
+ account_id : Uuid
1071
+
1072
+
1073
+ project_id : Uuid
1074
+
1075
+
1076
+ after : typing.Optional[RequestAfterOpaqueCursor]
1077
+ Opaque Cursor query param for requests returning paginated results.
1078
+ <br/>
1079
+ NOTE: this value is auto-generated and included as part of links from a previous response. It is not intended to be human readable.
1080
+
1081
+ page_size : typing.Optional[RequestPageSize]
1082
+
1083
+
1084
+ include_total_count : typing.Optional[IncludeTotalCount]
1085
+
1086
+
1087
+ request_options : typing.Optional[RequestOptions]
1088
+ Request-specific configuration.
1089
+
1090
+ Returns
1091
+ -------
1092
+ SharesResponse
1093
+ OK
1094
+
1095
+ Examples
1096
+ --------
1097
+ import asyncio
1098
+
1099
+ from frameio import AsyncFrameio
1100
+
1101
+ client = AsyncFrameio(
1102
+ token="YOUR_TOKEN",
1103
+ )
1104
+
1105
+
1106
+ async def main() -> None:
1107
+ await client.shares.index(
1108
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
1109
+ project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
1110
+ after="<opaque_cursor>",
1111
+ page_size=10,
1112
+ include_total_count=False,
1113
+ )
1114
+
1115
+
1116
+ asyncio.run(main())
1117
+ """
1118
+ _response = await self._raw_client.index(
1119
+ account_id,
1120
+ project_id,
1121
+ after=after,
1122
+ page_size=page_size,
1123
+ include_total_count=include_total_count,
1124
+ request_options=request_options,
1125
+ )
1126
+ return _response.data
1127
+
1128
+ async def create(
1129
+ self,
1130
+ account_id: Uuid,
1131
+ project_id: Uuid,
1132
+ *,
1133
+ data: CreateShareParamsData,
1134
+ request_options: typing.Optional[RequestOptions] = None,
1135
+ ) -> ShareResponse:
1136
+ """
1137
+ Create share. <br><br>Rate Limits: 10 calls per 1.00 minute(s) per account
1138
+
1139
+ Parameters
1140
+ ----------
1141
+ account_id : Uuid
1142
+
1143
+
1144
+ project_id : Uuid
1145
+
1146
+
1147
+ data : CreateShareParamsData
1148
+
1149
+ request_options : typing.Optional[RequestOptions]
1150
+ Request-specific configuration.
1151
+
1152
+ Returns
1153
+ -------
1154
+ ShareResponse
1155
+ Created
1156
+
1157
+ Examples
1158
+ --------
1159
+ import asyncio
1160
+ import datetime
1161
+
1162
+ from frameio import AsyncFrameio
1163
+ from frameio.shares import CreateShareParamsData_Asset
1164
+
1165
+ client = AsyncFrameio(
1166
+ token="YOUR_TOKEN",
1167
+ )
1168
+
1169
+
1170
+ async def main() -> None:
1171
+ await client.shares.create(
1172
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
1173
+ project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
1174
+ data=CreateShareParamsData_Asset(
1175
+ access="public",
1176
+ asset_ids=[
1177
+ "302354e6-dfe6-47ed-9f81-cfb8d98137a5",
1178
+ "f379ade6-8779-414c-9014-269aaaa14e98",
1179
+ ],
1180
+ expiration=datetime.datetime.fromisoformat(
1181
+ "2025-09-24 00:35:53+00:00",
1182
+ ),
1183
+ name="Share Name",
1184
+ passphrase="as!dfj39sd(*",
1185
+ ),
1186
+ )
1187
+
1188
+
1189
+ asyncio.run(main())
1190
+ """
1191
+ _response = await self._raw_client.create(account_id, project_id, data=data, request_options=request_options)
1192
+ return _response.data