frameio 0.0.23__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (363) hide show
  1. frameio-0.0.23/PKG-INFO +255 -0
  2. frameio-0.0.23/README.md +228 -0
  3. frameio-0.0.23/pyproject.toml +84 -0
  4. frameio-0.0.23/src/frameio/__init__.py +1115 -0
  5. frameio-0.0.23/src/frameio/account_permissions/__init__.py +4 -0
  6. frameio-0.0.23/src/frameio/account_permissions/client.py +182 -0
  7. frameio-0.0.23/src/frameio/account_permissions/raw_client.py +301 -0
  8. frameio-0.0.23/src/frameio/accounts/__init__.py +4 -0
  9. frameio-0.0.23/src/frameio/accounts/client.py +151 -0
  10. frameio-0.0.23/src/frameio/accounts/raw_client.py +281 -0
  11. frameio-0.0.23/src/frameio/client.py +439 -0
  12. frameio-0.0.23/src/frameio/comments/__init__.py +34 -0
  13. frameio-0.0.23/src/frameio/comments/client.py +596 -0
  14. frameio-0.0.23/src/frameio/comments/raw_client.py +1252 -0
  15. frameio-0.0.23/src/frameio/comments/types/__init__.py +38 -0
  16. frameio-0.0.23/src/frameio/comments/types/create_comment_params_data.py +25 -0
  17. frameio-0.0.23/src/frameio/comments/types/update_comment_params_data.py +25 -0
  18. frameio-0.0.23/src/frameio/core/__init__.py +110 -0
  19. frameio-0.0.23/src/frameio/core/api_error.py +23 -0
  20. frameio-0.0.23/src/frameio/core/client_wrapper.py +87 -0
  21. frameio-0.0.23/src/frameio/core/datetime_utils.py +28 -0
  22. frameio-0.0.23/src/frameio/core/file.py +67 -0
  23. frameio-0.0.23/src/frameio/core/force_multipart.py +18 -0
  24. frameio-0.0.23/src/frameio/core/http_client.py +543 -0
  25. frameio-0.0.23/src/frameio/core/http_response.py +55 -0
  26. frameio-0.0.23/src/frameio/core/jsonable_encoder.py +100 -0
  27. frameio-0.0.23/src/frameio/core/pagination.py +82 -0
  28. frameio-0.0.23/src/frameio/core/pydantic_utilities.py +258 -0
  29. frameio-0.0.23/src/frameio/core/query_encoder.py +58 -0
  30. frameio-0.0.23/src/frameio/core/remove_none_from_dict.py +11 -0
  31. frameio-0.0.23/src/frameio/core/request_options.py +35 -0
  32. frameio-0.0.23/src/frameio/core/serialization.py +276 -0
  33. frameio-0.0.23/src/frameio/environment.py +7 -0
  34. frameio-0.0.23/src/frameio/errors/__init__.py +53 -0
  35. frameio-0.0.23/src/frameio/errors/bad_request_error.py +11 -0
  36. frameio-0.0.23/src/frameio/errors/forbidden_error.py +11 -0
  37. frameio-0.0.23/src/frameio/errors/not_found_error.py +11 -0
  38. frameio-0.0.23/src/frameio/errors/too_many_requests_error.py +11 -0
  39. frameio-0.0.23/src/frameio/errors/unauthorized_error.py +11 -0
  40. frameio-0.0.23/src/frameio/errors/unprocessable_entity_error.py +10 -0
  41. frameio-0.0.23/src/frameio/files/__init__.py +55 -0
  42. frameio-0.0.23/src/frameio/files/client.py +1136 -0
  43. frameio-0.0.23/src/frameio/files/raw_client.py +2492 -0
  44. frameio-0.0.23/src/frameio/files/types/__init__.py +53 -0
  45. frameio-0.0.23/src/frameio/files/types/file_copy_params_data.py +15 -0
  46. frameio-0.0.23/src/frameio/files/types/file_create_local_upload_params_data.py +20 -0
  47. frameio-0.0.23/src/frameio/files/types/file_create_params_data.py +31 -0
  48. frameio-0.0.23/src/frameio/files/types/file_create_remote_upload_params_data.py +20 -0
  49. frameio-0.0.23/src/frameio/files/types/file_move_params_data.py +15 -0
  50. frameio-0.0.23/src/frameio/files/types/file_update_params_data.py +15 -0
  51. frameio-0.0.23/src/frameio/folders/__init__.py +39 -0
  52. frameio-0.0.23/src/frameio/folders/client.py +988 -0
  53. frameio-0.0.23/src/frameio/folders/raw_client.py +2058 -0
  54. frameio-0.0.23/src/frameio/folders/types/__init__.py +42 -0
  55. frameio-0.0.23/src/frameio/folders/types/folder_copy_params_data.py +15 -0
  56. frameio-0.0.23/src/frameio/folders/types/folder_create_params_data.py +15 -0
  57. frameio-0.0.23/src/frameio/folders/types/folder_move_params_data.py +15 -0
  58. frameio-0.0.23/src/frameio/folders/types/folder_update_params_data.py +15 -0
  59. frameio-0.0.23/src/frameio/metadata/__init__.py +37 -0
  60. frameio-0.0.23/src/frameio/metadata/client.py +291 -0
  61. frameio-0.0.23/src/frameio/metadata/raw_client.py +509 -0
  62. frameio-0.0.23/src/frameio/metadata/types/__init__.py +38 -0
  63. frameio-0.0.23/src/frameio/metadata/types/bulk_update_metadata_params_data.py +23 -0
  64. frameio-0.0.23/src/frameio/metadata/types/bulk_update_metadata_params_data_values_item.py +13 -0
  65. frameio-0.0.23/src/frameio/metadata_fields/__init__.py +103 -0
  66. frameio-0.0.23/src/frameio/metadata_fields/client.py +536 -0
  67. frameio-0.0.23/src/frameio/metadata_fields/raw_client.py +996 -0
  68. frameio-0.0.23/src/frameio/metadata_fields/types/__init__.py +105 -0
  69. frameio-0.0.23/src/frameio/metadata_fields/types/create_field_definition_params_data.py +108 -0
  70. frameio-0.0.23/src/frameio/metadata_fields/types/update_field_definition_params_data.py +114 -0
  71. frameio-0.0.23/src/frameio/project_permissions/__init__.py +4 -0
  72. frameio-0.0.23/src/frameio/project_permissions/client.py +415 -0
  73. frameio-0.0.23/src/frameio/project_permissions/raw_client.py +789 -0
  74. frameio-0.0.23/src/frameio/projects/__init__.py +4 -0
  75. frameio-0.0.23/src/frameio/projects/client.py +582 -0
  76. frameio-0.0.23/src/frameio/projects/raw_client.py +1250 -0
  77. frameio-0.0.23/src/frameio/py.typed +0 -0
  78. frameio-0.0.23/src/frameio/shares/__init__.py +64 -0
  79. frameio-0.0.23/src/frameio/shares/client.py +1192 -0
  80. frameio-0.0.23/src/frameio/shares/raw_client.py +2446 -0
  81. frameio-0.0.23/src/frameio/shares/types/__init__.py +61 -0
  82. frameio-0.0.23/src/frameio/shares/types/add_asset_params_data.py +15 -0
  83. frameio-0.0.23/src/frameio/shares/types/add_reviewers_to_share_params_data.py +18 -0
  84. frameio-0.0.23/src/frameio/shares/types/add_reviewers_to_share_params_data_reviewers.py +27 -0
  85. frameio-0.0.23/src/frameio/shares/types/create_share_params_data.py +25 -0
  86. frameio-0.0.23/src/frameio/shares/types/remove_reviewer_params_data.py +13 -0
  87. frameio-0.0.23/src/frameio/shares/types/remove_reviewer_params_data_reviewers.py +27 -0
  88. frameio-0.0.23/src/frameio/shares/types/update_share_params_data.py +33 -0
  89. frameio-0.0.23/src/frameio/shares/types/update_share_params_data_access.py +5 -0
  90. frameio-0.0.23/src/frameio/types/__init__.py +959 -0
  91. frameio-0.0.23/src/frameio/types/account.py +65 -0
  92. frameio-0.0.23/src/frameio/types/account_roles_item.py +5 -0
  93. frameio-0.0.23/src/frameio/types/account_user_role.py +23 -0
  94. frameio-0.0.23/src/frameio/types/account_user_role_role.py +5 -0
  95. frameio-0.0.23/src/frameio/types/account_user_roles_response.py +27 -0
  96. frameio-0.0.23/src/frameio/types/accounts_response.py +23 -0
  97. frameio-0.0.23/src/frameio/types/add_asset_response.py +13 -0
  98. frameio-0.0.23/src/frameio/types/add_asset_response_data.py +15 -0
  99. frameio-0.0.23/src/frameio/types/asset_common.py +48 -0
  100. frameio-0.0.23/src/frameio/types/asset_common_type.py +5 -0
  101. frameio-0.0.23/src/frameio/types/asset_common_with_includes.py +56 -0
  102. frameio-0.0.23/src/frameio/types/asset_include.py +5 -0
  103. frameio-0.0.23/src/frameio/types/asset_share_params.py +38 -0
  104. frameio-0.0.23/src/frameio/types/asset_share_params_access.py +5 -0
  105. frameio-0.0.23/src/frameio/types/asset_with_includes.py +72 -0
  106. frameio-0.0.23/src/frameio/types/assets_with_includes_response.py +23 -0
  107. frameio-0.0.23/src/frameio/types/bad_request.py +13 -0
  108. frameio-0.0.23/src/frameio/types/bad_request_errors_item.py +15 -0
  109. frameio-0.0.23/src/frameio/types/bad_request_errors_item_source.py +12 -0
  110. frameio-0.0.23/src/frameio/types/boolean_value.py +12 -0
  111. frameio-0.0.23/src/frameio/types/children_type.py +3 -0
  112. frameio-0.0.23/src/frameio/types/comment.py +52 -0
  113. frameio-0.0.23/src/frameio/types/comment_include.py +5 -0
  114. frameio-0.0.23/src/frameio/types/comment_response.py +13 -0
  115. frameio-0.0.23/src/frameio/types/comment_with_includes.py +17 -0
  116. frameio-0.0.23/src/frameio/types/comment_with_includes_response.py +13 -0
  117. frameio-0.0.23/src/frameio/types/comments_with_includes_response.py +23 -0
  118. frameio-0.0.23/src/frameio/types/date_definition.py +43 -0
  119. frameio-0.0.23/src/frameio/types/date_definition_field_configuration.py +21 -0
  120. frameio-0.0.23/src/frameio/types/date_definition_field_configuration_display_format.py +7 -0
  121. frameio-0.0.23/src/frameio/types/date_definition_field_configuration_time_format.py +5 -0
  122. frameio-0.0.23/src/frameio/types/date_definition_params.py +17 -0
  123. frameio-0.0.23/src/frameio/types/date_definition_params_field_configuration.py +23 -0
  124. frameio-0.0.23/src/frameio/types/date_definition_params_field_configuration_display_format.py +7 -0
  125. frameio-0.0.23/src/frameio/types/date_definition_params_field_configuration_time_format.py +7 -0
  126. frameio-0.0.23/src/frameio/types/date_definition_with_includes.py +13 -0
  127. frameio-0.0.23/src/frameio/types/date_value.py +12 -0
  128. frameio-0.0.23/src/frameio/types/email.py +3 -0
  129. frameio-0.0.23/src/frameio/types/field_definition.py +163 -0
  130. frameio-0.0.23/src/frameio/types/field_definition_include.py +5 -0
  131. frameio-0.0.23/src/frameio/types/field_definition_response.py +13 -0
  132. frameio-0.0.23/src/frameio/types/field_definition_with_includes.py +174 -0
  133. frameio-0.0.23/src/frameio/types/field_definitions_with_includes_response.py +27 -0
  134. frameio-0.0.23/src/frameio/types/field_value_common.py +29 -0
  135. frameio-0.0.23/src/frameio/types/file.py +60 -0
  136. frameio-0.0.23/src/frameio/types/file_copy_response.py +13 -0
  137. frameio-0.0.23/src/frameio/types/file_remote_upload_response.py +17 -0
  138. frameio-0.0.23/src/frameio/types/file_response.py +13 -0
  139. frameio-0.0.23/src/frameio/types/file_status.py +5 -0
  140. frameio-0.0.23/src/frameio/types/file_upload_status.py +41 -0
  141. frameio-0.0.23/src/frameio/types/file_upload_status_response.py +13 -0
  142. frameio-0.0.23/src/frameio/types/file_with_includes.py +25 -0
  143. frameio-0.0.23/src/frameio/types/file_with_includes_response.py +13 -0
  144. frameio-0.0.23/src/frameio/types/file_with_includes_status.py +5 -0
  145. frameio-0.0.23/src/frameio/types/file_with_media_links_include.py +19 -0
  146. frameio-0.0.23/src/frameio/types/file_with_upload_urls.py +16 -0
  147. frameio-0.0.23/src/frameio/types/file_with_upload_urls_response.py +13 -0
  148. frameio-0.0.23/src/frameio/types/folder.py +15 -0
  149. frameio-0.0.23/src/frameio/types/folder_copy_response.py +13 -0
  150. frameio-0.0.23/src/frameio/types/folder_response.py +13 -0
  151. frameio-0.0.23/src/frameio/types/folder_with_includes.py +61 -0
  152. frameio-0.0.23/src/frameio/types/folder_with_includes_response.py +13 -0
  153. frameio-0.0.23/src/frameio/types/folders_with_includes_response.py +23 -0
  154. frameio-0.0.23/src/frameio/types/forbidden.py +13 -0
  155. frameio-0.0.23/src/frameio/types/forbidden_errors_item.py +15 -0
  156. frameio-0.0.23/src/frameio/types/forbidden_errors_item_source.py +12 -0
  157. frameio-0.0.23/src/frameio/types/include.py +5 -0
  158. frameio-0.0.23/src/frameio/types/include_total_count.py +3 -0
  159. frameio-0.0.23/src/frameio/types/integer_value.py +12 -0
  160. frameio-0.0.23/src/frameio/types/json_error_response.py +13 -0
  161. frameio-0.0.23/src/frameio/types/json_error_response_errors_item.py +15 -0
  162. frameio-0.0.23/src/frameio/types/json_error_response_errors_item_source.py +12 -0
  163. frameio-0.0.23/src/frameio/types/links.py +22 -0
  164. frameio-0.0.23/src/frameio/types/long_text_definition.py +43 -0
  165. frameio-0.0.23/src/frameio/types/long_text_definition_field_configuration.py +10 -0
  166. frameio-0.0.23/src/frameio/types/long_text_definition_params.py +15 -0
  167. frameio-0.0.23/src/frameio/types/long_text_definition_with_includes.py +13 -0
  168. frameio-0.0.23/src/frameio/types/media_link_common.py +17 -0
  169. frameio-0.0.23/src/frameio/types/media_links_collection.py +23 -0
  170. frameio-0.0.23/src/frameio/types/metadata_field.py +145 -0
  171. frameio-0.0.23/src/frameio/types/metadata_response.py +13 -0
  172. frameio-0.0.23/src/frameio/types/metadata_with_definition.py +21 -0
  173. frameio-0.0.23/src/frameio/types/multi_select_value.py +14 -0
  174. frameio-0.0.23/src/frameio/types/multi_user_value.py +20 -0
  175. frameio-0.0.23/src/frameio/types/multi_user_value_member_options_type.py +5 -0
  176. frameio-0.0.23/src/frameio/types/no_content.py +3 -0
  177. frameio-0.0.23/src/frameio/types/not_found.py +13 -0
  178. frameio-0.0.23/src/frameio/types/not_found_errors_item.py +15 -0
  179. frameio-0.0.23/src/frameio/types/not_found_errors_item_source.py +12 -0
  180. frameio-0.0.23/src/frameio/types/number_definition.py +43 -0
  181. frameio-0.0.23/src/frameio/types/number_definition_field_configuration.py +21 -0
  182. frameio-0.0.23/src/frameio/types/number_definition_field_configuration_number_format.py +7 -0
  183. frameio-0.0.23/src/frameio/types/number_definition_params.py +17 -0
  184. frameio-0.0.23/src/frameio/types/number_definition_params_field_configuration.py +23 -0
  185. frameio-0.0.23/src/frameio/types/number_definition_params_field_configuration_number_format.py +7 -0
  186. frameio-0.0.23/src/frameio/types/number_definition_with_includes.py +13 -0
  187. frameio-0.0.23/src/frameio/types/number_value.py +12 -0
  188. frameio-0.0.23/src/frameio/types/original_media_link.py +16 -0
  189. frameio-0.0.23/src/frameio/types/profile.py +34 -0
  190. frameio-0.0.23/src/frameio/types/profile_response.py +17 -0
  191. frameio-0.0.23/src/frameio/types/project.py +55 -0
  192. frameio-0.0.23/src/frameio/types/project_include.py +5 -0
  193. frameio-0.0.23/src/frameio/types/project_params.py +17 -0
  194. frameio-0.0.23/src/frameio/types/project_params_data.py +15 -0
  195. frameio-0.0.23/src/frameio/types/project_response.py +17 -0
  196. frameio-0.0.23/src/frameio/types/project_with_includes.py +18 -0
  197. frameio-0.0.23/src/frameio/types/project_with_includes_response.py +17 -0
  198. frameio-0.0.23/src/frameio/types/projects_with_includes_response.py +27 -0
  199. frameio-0.0.23/src/frameio/types/rating_definition.py +43 -0
  200. frameio-0.0.23/src/frameio/types/rating_definition_field_configuration.py +22 -0
  201. frameio-0.0.23/src/frameio/types/rating_definition_field_configuration_style.py +5 -0
  202. frameio-0.0.23/src/frameio/types/rating_definition_params.py +17 -0
  203. frameio-0.0.23/src/frameio/types/rating_definition_params_field_configuration.py +22 -0
  204. frameio-0.0.23/src/frameio/types/rating_definition_params_field_configuration_style.py +5 -0
  205. frameio-0.0.23/src/frameio/types/rating_definition_with_includes.py +13 -0
  206. frameio-0.0.23/src/frameio/types/remove_asset_response.py +13 -0
  207. frameio-0.0.23/src/frameio/types/remove_asset_response_data.py +15 -0
  208. frameio-0.0.23/src/frameio/types/rendition_media_link.py +19 -0
  209. frameio-0.0.23/src/frameio/types/request_after_opaque_cursor.py +5 -0
  210. frameio-0.0.23/src/frameio/types/request_page_size.py +3 -0
  211. frameio-0.0.23/src/frameio/types/select_definition.py +43 -0
  212. frameio-0.0.23/src/frameio/types/select_definition_field_configuration.py +18 -0
  213. frameio-0.0.23/src/frameio/types/select_definition_field_configuration_options_item.py +22 -0
  214. frameio-0.0.23/src/frameio/types/select_definition_params.py +17 -0
  215. frameio-0.0.23/src/frameio/types/select_definition_params_field_configuration.py +20 -0
  216. frameio-0.0.23/src/frameio/types/select_definition_params_field_configuration_options_item.py +20 -0
  217. frameio-0.0.23/src/frameio/types/select_definition_with_includes.py +13 -0
  218. frameio-0.0.23/src/frameio/types/select_multi_definition.py +43 -0
  219. frameio-0.0.23/src/frameio/types/select_multi_definition_field_configuration.py +18 -0
  220. frameio-0.0.23/src/frameio/types/select_multi_definition_field_configuration_options_item.py +22 -0
  221. frameio-0.0.23/src/frameio/types/select_multi_definition_params.py +17 -0
  222. frameio-0.0.23/src/frameio/types/select_multi_definition_params_field_configuration.py +20 -0
  223. frameio-0.0.23/src/frameio/types/select_multi_definition_params_field_configuration_options_item.py +20 -0
  224. frameio-0.0.23/src/frameio/types/select_multi_definition_with_includes.py +13 -0
  225. frameio-0.0.23/src/frameio/types/select_option.py +20 -0
  226. frameio-0.0.23/src/frameio/types/select_value.py +14 -0
  227. frameio-0.0.23/src/frameio/types/share.py +66 -0
  228. frameio-0.0.23/src/frameio/types/share_access.py +5 -0
  229. frameio-0.0.23/src/frameio/types/share_response.py +13 -0
  230. frameio-0.0.23/src/frameio/types/share_reviewers_response.py +27 -0
  231. frameio-0.0.23/src/frameio/types/shares_response.py +27 -0
  232. frameio-0.0.23/src/frameio/types/single_user_value.py +20 -0
  233. frameio-0.0.23/src/frameio/types/single_user_value_member_options_type.py +5 -0
  234. frameio-0.0.23/src/frameio/types/text_definition.py +43 -0
  235. frameio-0.0.23/src/frameio/types/text_definition_field_configuration.py +10 -0
  236. frameio-0.0.23/src/frameio/types/text_definition_params.py +15 -0
  237. frameio-0.0.23/src/frameio/types/text_definition_with_includes.py +13 -0
  238. frameio-0.0.23/src/frameio/types/text_value.py +12 -0
  239. frameio-0.0.23/src/frameio/types/toggle_definition.py +43 -0
  240. frameio-0.0.23/src/frameio/types/toggle_definition_field_configuration.py +15 -0
  241. frameio-0.0.23/src/frameio/types/toggle_definition_params.py +17 -0
  242. frameio-0.0.23/src/frameio/types/toggle_definition_params_field_configuration.py +15 -0
  243. frameio-0.0.23/src/frameio/types/toggle_definition_with_includes.py +13 -0
  244. frameio-0.0.23/src/frameio/types/too_many_requests.py +13 -0
  245. frameio-0.0.23/src/frameio/types/too_many_requests_errors_item.py +15 -0
  246. frameio-0.0.23/src/frameio/types/too_many_requests_errors_item_source.py +12 -0
  247. frameio-0.0.23/src/frameio/types/unauthorized.py +13 -0
  248. frameio-0.0.23/src/frameio/types/unauthorized_errors_item.py +15 -0
  249. frameio-0.0.23/src/frameio/types/unauthorized_errors_item_source.py +12 -0
  250. frameio-0.0.23/src/frameio/types/unprocessable_entity.py +13 -0
  251. frameio-0.0.23/src/frameio/types/unprocessable_entity_errors_item.py +15 -0
  252. frameio-0.0.23/src/frameio/types/unprocessable_entity_errors_item_source.py +12 -0
  253. frameio-0.0.23/src/frameio/types/update_date_definition_params.py +17 -0
  254. frameio-0.0.23/src/frameio/types/update_date_definition_params_field_configuration.py +25 -0
  255. frameio-0.0.23/src/frameio/types/update_date_definition_params_field_configuration_display_format.py +7 -0
  256. frameio-0.0.23/src/frameio/types/update_date_definition_params_field_configuration_time_format.py +7 -0
  257. frameio-0.0.23/src/frameio/types/update_long_text_definition_params.py +15 -0
  258. frameio-0.0.23/src/frameio/types/update_number_definition_params.py +17 -0
  259. frameio-0.0.23/src/frameio/types/update_number_definition_params_field_configuration.py +25 -0
  260. frameio-0.0.23/src/frameio/types/update_number_definition_params_field_configuration_number_format.py +7 -0
  261. frameio-0.0.23/src/frameio/types/update_rating_definition_params.py +17 -0
  262. frameio-0.0.23/src/frameio/types/update_rating_definition_params_field_configuration.py +24 -0
  263. frameio-0.0.23/src/frameio/types/update_rating_definition_params_field_configuration_style.py +7 -0
  264. frameio-0.0.23/src/frameio/types/update_select_definition_params.py +17 -0
  265. frameio-0.0.23/src/frameio/types/update_select_definition_params_field_configuration.py +20 -0
  266. frameio-0.0.23/src/frameio/types/update_select_definition_params_field_configuration_options_item.py +20 -0
  267. frameio-0.0.23/src/frameio/types/update_select_multi_definition_params.py +19 -0
  268. frameio-0.0.23/src/frameio/types/update_select_multi_definition_params_field_configuration.py +20 -0
  269. frameio-0.0.23/src/frameio/types/update_select_multi_definition_params_field_configuration_options_item.py +20 -0
  270. frameio-0.0.23/src/frameio/types/update_text_definition_params.py +15 -0
  271. frameio-0.0.23/src/frameio/types/update_toggle_definition_params.py +17 -0
  272. frameio-0.0.23/src/frameio/types/update_toggle_definition_params_field_configuration.py +15 -0
  273. frameio-0.0.23/src/frameio/types/update_user_multi_definition_params.py +17 -0
  274. frameio-0.0.23/src/frameio/types/update_user_multi_definition_params_field_configuration.py +25 -0
  275. frameio-0.0.23/src/frameio/types/update_user_multi_definition_params_field_configuration_custom_members_item.py +20 -0
  276. frameio-0.0.23/src/frameio/types/update_user_multi_definition_params_field_configuration_custom_members_item_type.py +7 -0
  277. frameio-0.0.23/src/frameio/types/update_user_multi_definition_params_field_configuration_member_options_type.py +7 -0
  278. frameio-0.0.23/src/frameio/types/update_user_roles_params.py +17 -0
  279. frameio-0.0.23/src/frameio/types/update_user_roles_params_data.py +13 -0
  280. frameio-0.0.23/src/frameio/types/update_user_roles_params_data_role.py +7 -0
  281. frameio-0.0.23/src/frameio/types/update_user_roles_response.py +13 -0
  282. frameio-0.0.23/src/frameio/types/update_user_roles_response_data.py +13 -0
  283. frameio-0.0.23/src/frameio/types/update_user_roles_response_data_role.py +7 -0
  284. frameio-0.0.23/src/frameio/types/update_user_single_definition_params.py +17 -0
  285. frameio-0.0.23/src/frameio/types/update_user_single_definition_params_field_configuration.py +25 -0
  286. frameio-0.0.23/src/frameio/types/update_user_single_definition_params_field_configuration_custom_members_item.py +20 -0
  287. frameio-0.0.23/src/frameio/types/update_user_single_definition_params_field_configuration_custom_members_item_type.py +7 -0
  288. frameio-0.0.23/src/frameio/types/update_user_single_definition_params_field_configuration_member_options_type.py +7 -0
  289. frameio-0.0.23/src/frameio/types/upload_url.py +20 -0
  290. frameio-0.0.23/src/frameio/types/user.py +44 -0
  291. frameio-0.0.23/src/frameio/types/user_multi_definition.py +43 -0
  292. frameio-0.0.23/src/frameio/types/user_multi_definition_field_configuration.py +23 -0
  293. frameio-0.0.23/src/frameio/types/user_multi_definition_field_configuration_custom_members_item.py +20 -0
  294. frameio-0.0.23/src/frameio/types/user_multi_definition_field_configuration_custom_members_item_type.py +7 -0
  295. frameio-0.0.23/src/frameio/types/user_multi_definition_field_configuration_member_options_type.py +7 -0
  296. frameio-0.0.23/src/frameio/types/user_multi_definition_params.py +17 -0
  297. frameio-0.0.23/src/frameio/types/user_multi_definition_params_field_configuration.py +23 -0
  298. frameio-0.0.23/src/frameio/types/user_multi_definition_params_field_configuration_custom_members_item.py +20 -0
  299. frameio-0.0.23/src/frameio/types/user_multi_definition_params_field_configuration_custom_members_item_type.py +7 -0
  300. frameio-0.0.23/src/frameio/types/user_multi_definition_params_field_configuration_member_options_type.py +7 -0
  301. frameio-0.0.23/src/frameio/types/user_multi_definition_with_includes.py +13 -0
  302. frameio-0.0.23/src/frameio/types/user_role.py +19 -0
  303. frameio-0.0.23/src/frameio/types/user_role_role.py +7 -0
  304. frameio-0.0.23/src/frameio/types/user_roles_response.py +27 -0
  305. frameio-0.0.23/src/frameio/types/user_single_definition.py +43 -0
  306. frameio-0.0.23/src/frameio/types/user_single_definition_field_configuration.py +23 -0
  307. frameio-0.0.23/src/frameio/types/user_single_definition_field_configuration_custom_members_item.py +20 -0
  308. frameio-0.0.23/src/frameio/types/user_single_definition_field_configuration_custom_members_item_type.py +7 -0
  309. frameio-0.0.23/src/frameio/types/user_single_definition_field_configuration_member_options_type.py +7 -0
  310. frameio-0.0.23/src/frameio/types/user_single_definition_params.py +17 -0
  311. frameio-0.0.23/src/frameio/types/user_single_definition_params_field_configuration.py +23 -0
  312. frameio-0.0.23/src/frameio/types/user_single_definition_params_field_configuration_custom_members_item.py +20 -0
  313. frameio-0.0.23/src/frameio/types/user_single_definition_params_field_configuration_custom_members_item_type.py +7 -0
  314. frameio-0.0.23/src/frameio/types/user_single_definition_params_field_configuration_member_options_type.py +7 -0
  315. frameio-0.0.23/src/frameio/types/user_single_definition_with_includes.py +13 -0
  316. frameio-0.0.23/src/frameio/types/user_value.py +18 -0
  317. frameio-0.0.23/src/frameio/types/user_value_type.py +5 -0
  318. frameio-0.0.23/src/frameio/types/uuid_.py +3 -0
  319. frameio-0.0.23/src/frameio/types/version_stack.py +50 -0
  320. frameio-0.0.23/src/frameio/types/version_stack_copy_response.py +13 -0
  321. frameio-0.0.23/src/frameio/types/version_stack_response.py +13 -0
  322. frameio-0.0.23/src/frameio/types/version_stack_with_includes.py +58 -0
  323. frameio-0.0.23/src/frameio/types/version_stack_with_includes_response.py +13 -0
  324. frameio-0.0.23/src/frameio/types/version_stacks_with_includes_response.py +19 -0
  325. frameio-0.0.23/src/frameio/types/webhook.py +36 -0
  326. frameio-0.0.23/src/frameio/types/webhook_create_response.py +17 -0
  327. frameio-0.0.23/src/frameio/types/webhook_create_response_data.py +15 -0
  328. frameio-0.0.23/src/frameio/types/webhook_events.py +5 -0
  329. frameio-0.0.23/src/frameio/types/webhook_response.py +13 -0
  330. frameio-0.0.23/src/frameio/types/webhook_with_includes.py +13 -0
  331. frameio-0.0.23/src/frameio/types/webhook_with_includes_response.py +13 -0
  332. frameio-0.0.23/src/frameio/types/webhooks_with_includes_response.py +23 -0
  333. frameio-0.0.23/src/frameio/types/workspace.py +40 -0
  334. frameio-0.0.23/src/frameio/types/workspace_include.py +5 -0
  335. frameio-0.0.23/src/frameio/types/workspace_params.py +17 -0
  336. frameio-0.0.23/src/frameio/types/workspace_params_data.py +15 -0
  337. frameio-0.0.23/src/frameio/types/workspace_response.py +17 -0
  338. frameio-0.0.23/src/frameio/types/workspace_with_includes.py +13 -0
  339. frameio-0.0.23/src/frameio/types/workspace_with_includes_response.py +17 -0
  340. frameio-0.0.23/src/frameio/types/workspaces_with_includes_response.py +27 -0
  341. frameio-0.0.23/src/frameio/users/__init__.py +4 -0
  342. frameio-0.0.23/src/frameio/users/client.py +100 -0
  343. frameio-0.0.23/src/frameio/users/raw_client.py +234 -0
  344. frameio-0.0.23/src/frameio/version.py +3 -0
  345. frameio-0.0.23/src/frameio/version_stacks/__init__.py +38 -0
  346. frameio-0.0.23/src/frameio/version_stacks/client.py +699 -0
  347. frameio-0.0.23/src/frameio/version_stacks/raw_client.py +1359 -0
  348. frameio-0.0.23/src/frameio/version_stacks/types/__init__.py +40 -0
  349. frameio-0.0.23/src/frameio/version_stacks/types/version_stack_copy_params_data.py +15 -0
  350. frameio-0.0.23/src/frameio/version_stacks/types/version_stack_create_params_data.py +19 -0
  351. frameio-0.0.23/src/frameio/version_stacks/types/version_stack_move_params_data.py +15 -0
  352. frameio-0.0.23/src/frameio/webhooks/__init__.py +34 -0
  353. frameio-0.0.23/src/frameio/webhooks/client.py +782 -0
  354. frameio-0.0.23/src/frameio/webhooks/raw_client.py +1312 -0
  355. frameio-0.0.23/src/frameio/webhooks/types/__init__.py +38 -0
  356. frameio-0.0.23/src/frameio/webhooks/types/webhook_create_params_data.py +18 -0
  357. frameio-0.0.23/src/frameio/webhooks/types/webhook_update_params_data.py +23 -0
  358. frameio-0.0.23/src/frameio/workspace_permissions/__init__.py +4 -0
  359. frameio-0.0.23/src/frameio/workspace_permissions/client.py +419 -0
  360. frameio-0.0.23/src/frameio/workspace_permissions/raw_client.py +789 -0
  361. frameio-0.0.23/src/frameio/workspaces/__init__.py +4 -0
  362. frameio-0.0.23/src/frameio/workspaces/client.py +552 -0
  363. frameio-0.0.23/src/frameio/workspaces/raw_client.py +1226 -0
@@ -0,0 +1,255 @@
1
+ Metadata-Version: 2.1
2
+ Name: frameio
3
+ Version: 0.0.23
4
+ Summary:
5
+ Requires-Python: >=3.8,<4.0
6
+ Classifier: Intended Audience :: Developers
7
+ Classifier: Operating System :: MacOS
8
+ Classifier: Operating System :: Microsoft :: Windows
9
+ Classifier: Operating System :: OS Independent
10
+ Classifier: Operating System :: POSIX
11
+ Classifier: Operating System :: POSIX :: Linux
12
+ Classifier: Programming Language :: Python
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.8
15
+ Classifier: Programming Language :: Python :: 3.9
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
20
+ Classifier: Typing :: Typed
21
+ Requires-Dist: httpx (>=0.21.2)
22
+ Requires-Dist: pydantic (>=2.0.0)
23
+ Requires-Dist: pydantic-core (>=2.18.2)
24
+ Requires-Dist: typing_extensions (>=4.0.0)
25
+ Description-Content-Type: text/markdown
26
+
27
+ # Frameio Python Library
28
+
29
+ [![fern shield](https://img.shields.io/badge/%F0%9F%8C%BF-Built%20with%20Fern-brightgreen)](https://buildwithfern.com?utm_source=github&utm_medium=github&utm_campaign=readme&utm_source=https%3A%2F%2Fgithub.com%2FFrameio%2Fpython-sdk)
30
+ [![pypi](https://img.shields.io/pypi/v/frameio)](https://pypi.python.org/pypi/frameio)
31
+
32
+ The Frameio Python library provides convenient access to the Frameio APIs from Python.
33
+
34
+ ## Installation
35
+
36
+ ```sh
37
+ pip install frameio
38
+ ```
39
+
40
+ ## Reference
41
+
42
+ A full reference for this library is available [here](https://github.com/Frameio/python-sdk/blob/HEAD/./reference.md).
43
+
44
+ ## Usage
45
+
46
+ Instantiate and use the client with the following:
47
+
48
+ ```python
49
+ from frameio import (
50
+ Frameio,
51
+ SelectDefinitionParamsFieldConfiguration,
52
+ SelectDefinitionParamsFieldConfigurationOptionsItem,
53
+ )
54
+ from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
55
+
56
+ client = Frameio(
57
+ token="YOUR_TOKEN",
58
+ )
59
+ client.metadata_fields.metadata_field_definitions_create(
60
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
61
+ data=CreateFieldDefinitionParamsData_Select(
62
+ field_configuration=SelectDefinitionParamsFieldConfiguration(
63
+ enable_add_new=False,
64
+ options=[
65
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
66
+ display_name="Option 1",
67
+ ),
68
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
69
+ display_name="Option 2",
70
+ ),
71
+ ],
72
+ ),
73
+ name="Fields definition name",
74
+ ),
75
+ )
76
+ ```
77
+
78
+ ## Async Client
79
+
80
+ The SDK also exports an `async` client so that you can make non-blocking calls to our API. Note that if you are constructing an Async httpx client class to pass into this client, use `httpx.AsyncClient()` instead of `httpx.Client()` (e.g. for the `httpx_client` parameter of this client).
81
+
82
+ ```python
83
+ import asyncio
84
+
85
+ from frameio import (
86
+ AsyncFrameio,
87
+ SelectDefinitionParamsFieldConfiguration,
88
+ SelectDefinitionParamsFieldConfigurationOptionsItem,
89
+ )
90
+ from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
91
+
92
+ client = AsyncFrameio(
93
+ token="YOUR_TOKEN",
94
+ )
95
+
96
+
97
+ async def main() -> None:
98
+ await client.metadata_fields.metadata_field_definitions_create(
99
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
100
+ data=CreateFieldDefinitionParamsData_Select(
101
+ field_configuration=SelectDefinitionParamsFieldConfiguration(
102
+ enable_add_new=False,
103
+ options=[
104
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
105
+ display_name="Option 1",
106
+ ),
107
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
108
+ display_name="Option 2",
109
+ ),
110
+ ],
111
+ ),
112
+ name="Fields definition name",
113
+ ),
114
+ )
115
+
116
+
117
+ asyncio.run(main())
118
+ ```
119
+
120
+ ## Exception Handling
121
+
122
+ When the API returns a non-success status code (4xx or 5xx response), a subclass of the following error
123
+ will be thrown.
124
+
125
+ ```python
126
+ from frameio.core.api_error import ApiError
127
+
128
+ try:
129
+ client.metadata_fields.metadata_field_definitions_create(...)
130
+ except ApiError as e:
131
+ print(e.status_code)
132
+ print(e.body)
133
+ ```
134
+
135
+ ## Pagination
136
+
137
+ Paginated requests will return a `SyncPager` or `AsyncPager`, which can be used as generators for the underlying object.
138
+
139
+ ```python
140
+ from frameio import Frameio
141
+
142
+ client = Frameio(
143
+ token="YOUR_TOKEN",
144
+ )
145
+ response = client.project_permissions.index(
146
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
147
+ project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
148
+ page_size=10,
149
+ include_total_count=False,
150
+ )
151
+ for item in response:
152
+ yield item
153
+ # alternatively, you can paginate page-by-page
154
+ for page in response.iter_pages():
155
+ yield page
156
+ ```
157
+
158
+ ## Advanced
159
+
160
+ ### Access Raw Response Data
161
+
162
+ The SDK provides access to raw response data, including headers, through the `.with_raw_response` property.
163
+ The `.with_raw_response` property returns a "raw" client that can be used to access the `.headers` and `.data` attributes.
164
+
165
+ ```python
166
+ from frameio import Frameio
167
+
168
+ client = Frameio(
169
+ ...,
170
+ )
171
+ response = (
172
+ client.metadata_fields.with_raw_response.metadata_field_definitions_create(
173
+ ...
174
+ )
175
+ )
176
+ print(response.headers) # access the response headers
177
+ print(response.data) # access the underlying object
178
+ pager = client.project_permissions.index(...)
179
+ print(pager.response.headers) # access the response headers for the first page
180
+ for item in pager:
181
+ print(item) # access the underlying object(s)
182
+ for page in pager.iter_pages():
183
+ print(page.response.headers) # access the response headers for each page
184
+ for item in page:
185
+ print(item) # access the underlying object(s)
186
+ ```
187
+
188
+ ### Retries
189
+
190
+ The SDK is instrumented with automatic retries with exponential backoff. A request will be retried as long
191
+ as the request is deemed retryable and the number of retry attempts has not grown larger than the configured
192
+ retry limit (default: 2).
193
+
194
+ A request is deemed retryable when any of the following HTTP status codes is returned:
195
+
196
+ - [408](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408) (Timeout)
197
+ - [429](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429) (Too Many Requests)
198
+ - [5XX](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) (Internal Server Errors)
199
+
200
+ Use the `max_retries` request option to configure this behavior.
201
+
202
+ ```python
203
+ client.metadata_fields.metadata_field_definitions_create(..., request_options={
204
+ "max_retries": 1
205
+ })
206
+ ```
207
+
208
+ ### Timeouts
209
+
210
+ The SDK defaults to a 60 second timeout. You can configure this with a timeout option at the client or request level.
211
+
212
+ ```python
213
+
214
+ from frameio import Frameio
215
+
216
+ client = Frameio(
217
+ ...,
218
+ timeout=20.0,
219
+ )
220
+
221
+
222
+ # Override timeout for a specific method
223
+ client.metadata_fields.metadata_field_definitions_create(..., request_options={
224
+ "timeout_in_seconds": 1
225
+ })
226
+ ```
227
+
228
+ ### Custom Client
229
+
230
+ You can override the `httpx` client to customize it for your use-case. Some common use-cases include support for proxies
231
+ and transports.
232
+
233
+ ```python
234
+ import httpx
235
+ from frameio import Frameio
236
+
237
+ client = Frameio(
238
+ ...,
239
+ httpx_client=httpx.Client(
240
+ proxy="http://my.test.proxy.example.com",
241
+ transport=httpx.HTTPTransport(local_address="0.0.0.0"),
242
+ ),
243
+ )
244
+ ```
245
+
246
+ ## Contributing
247
+
248
+ While we value open-source contributions to this SDK, this library is generated programmatically.
249
+ Additions made directly to this library would have to be moved over to our generation code,
250
+ otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
251
+ a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
252
+ an issue first to discuss with us!
253
+
254
+ On the other hand, contributions to the README are always very welcome!
255
+
@@ -0,0 +1,228 @@
1
+ # Frameio Python Library
2
+
3
+ [![fern shield](https://img.shields.io/badge/%F0%9F%8C%BF-Built%20with%20Fern-brightgreen)](https://buildwithfern.com?utm_source=github&utm_medium=github&utm_campaign=readme&utm_source=https%3A%2F%2Fgithub.com%2FFrameio%2Fpython-sdk)
4
+ [![pypi](https://img.shields.io/pypi/v/frameio)](https://pypi.python.org/pypi/frameio)
5
+
6
+ The Frameio Python library provides convenient access to the Frameio APIs from Python.
7
+
8
+ ## Installation
9
+
10
+ ```sh
11
+ pip install frameio
12
+ ```
13
+
14
+ ## Reference
15
+
16
+ A full reference for this library is available [here](https://github.com/Frameio/python-sdk/blob/HEAD/./reference.md).
17
+
18
+ ## Usage
19
+
20
+ Instantiate and use the client with the following:
21
+
22
+ ```python
23
+ from frameio import (
24
+ Frameio,
25
+ SelectDefinitionParamsFieldConfiguration,
26
+ SelectDefinitionParamsFieldConfigurationOptionsItem,
27
+ )
28
+ from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
29
+
30
+ client = Frameio(
31
+ token="YOUR_TOKEN",
32
+ )
33
+ client.metadata_fields.metadata_field_definitions_create(
34
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
35
+ data=CreateFieldDefinitionParamsData_Select(
36
+ field_configuration=SelectDefinitionParamsFieldConfiguration(
37
+ enable_add_new=False,
38
+ options=[
39
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
40
+ display_name="Option 1",
41
+ ),
42
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
43
+ display_name="Option 2",
44
+ ),
45
+ ],
46
+ ),
47
+ name="Fields definition name",
48
+ ),
49
+ )
50
+ ```
51
+
52
+ ## Async Client
53
+
54
+ The SDK also exports an `async` client so that you can make non-blocking calls to our API. Note that if you are constructing an Async httpx client class to pass into this client, use `httpx.AsyncClient()` instead of `httpx.Client()` (e.g. for the `httpx_client` parameter of this client).
55
+
56
+ ```python
57
+ import asyncio
58
+
59
+ from frameio import (
60
+ AsyncFrameio,
61
+ SelectDefinitionParamsFieldConfiguration,
62
+ SelectDefinitionParamsFieldConfigurationOptionsItem,
63
+ )
64
+ from frameio.metadata_fields import CreateFieldDefinitionParamsData_Select
65
+
66
+ client = AsyncFrameio(
67
+ token="YOUR_TOKEN",
68
+ )
69
+
70
+
71
+ async def main() -> None:
72
+ await client.metadata_fields.metadata_field_definitions_create(
73
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
74
+ data=CreateFieldDefinitionParamsData_Select(
75
+ field_configuration=SelectDefinitionParamsFieldConfiguration(
76
+ enable_add_new=False,
77
+ options=[
78
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
79
+ display_name="Option 1",
80
+ ),
81
+ SelectDefinitionParamsFieldConfigurationOptionsItem(
82
+ display_name="Option 2",
83
+ ),
84
+ ],
85
+ ),
86
+ name="Fields definition name",
87
+ ),
88
+ )
89
+
90
+
91
+ asyncio.run(main())
92
+ ```
93
+
94
+ ## Exception Handling
95
+
96
+ When the API returns a non-success status code (4xx or 5xx response), a subclass of the following error
97
+ will be thrown.
98
+
99
+ ```python
100
+ from frameio.core.api_error import ApiError
101
+
102
+ try:
103
+ client.metadata_fields.metadata_field_definitions_create(...)
104
+ except ApiError as e:
105
+ print(e.status_code)
106
+ print(e.body)
107
+ ```
108
+
109
+ ## Pagination
110
+
111
+ Paginated requests will return a `SyncPager` or `AsyncPager`, which can be used as generators for the underlying object.
112
+
113
+ ```python
114
+ from frameio import Frameio
115
+
116
+ client = Frameio(
117
+ token="YOUR_TOKEN",
118
+ )
119
+ response = client.project_permissions.index(
120
+ account_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
121
+ project_id="b2702c44-c6da-4bb6-8bbd-be6e547ccf1b",
122
+ page_size=10,
123
+ include_total_count=False,
124
+ )
125
+ for item in response:
126
+ yield item
127
+ # alternatively, you can paginate page-by-page
128
+ for page in response.iter_pages():
129
+ yield page
130
+ ```
131
+
132
+ ## Advanced
133
+
134
+ ### Access Raw Response Data
135
+
136
+ The SDK provides access to raw response data, including headers, through the `.with_raw_response` property.
137
+ The `.with_raw_response` property returns a "raw" client that can be used to access the `.headers` and `.data` attributes.
138
+
139
+ ```python
140
+ from frameio import Frameio
141
+
142
+ client = Frameio(
143
+ ...,
144
+ )
145
+ response = (
146
+ client.metadata_fields.with_raw_response.metadata_field_definitions_create(
147
+ ...
148
+ )
149
+ )
150
+ print(response.headers) # access the response headers
151
+ print(response.data) # access the underlying object
152
+ pager = client.project_permissions.index(...)
153
+ print(pager.response.headers) # access the response headers for the first page
154
+ for item in pager:
155
+ print(item) # access the underlying object(s)
156
+ for page in pager.iter_pages():
157
+ print(page.response.headers) # access the response headers for each page
158
+ for item in page:
159
+ print(item) # access the underlying object(s)
160
+ ```
161
+
162
+ ### Retries
163
+
164
+ The SDK is instrumented with automatic retries with exponential backoff. A request will be retried as long
165
+ as the request is deemed retryable and the number of retry attempts has not grown larger than the configured
166
+ retry limit (default: 2).
167
+
168
+ A request is deemed retryable when any of the following HTTP status codes is returned:
169
+
170
+ - [408](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408) (Timeout)
171
+ - [429](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429) (Too Many Requests)
172
+ - [5XX](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) (Internal Server Errors)
173
+
174
+ Use the `max_retries` request option to configure this behavior.
175
+
176
+ ```python
177
+ client.metadata_fields.metadata_field_definitions_create(..., request_options={
178
+ "max_retries": 1
179
+ })
180
+ ```
181
+
182
+ ### Timeouts
183
+
184
+ The SDK defaults to a 60 second timeout. You can configure this with a timeout option at the client or request level.
185
+
186
+ ```python
187
+
188
+ from frameio import Frameio
189
+
190
+ client = Frameio(
191
+ ...,
192
+ timeout=20.0,
193
+ )
194
+
195
+
196
+ # Override timeout for a specific method
197
+ client.metadata_fields.metadata_field_definitions_create(..., request_options={
198
+ "timeout_in_seconds": 1
199
+ })
200
+ ```
201
+
202
+ ### Custom Client
203
+
204
+ You can override the `httpx` client to customize it for your use-case. Some common use-cases include support for proxies
205
+ and transports.
206
+
207
+ ```python
208
+ import httpx
209
+ from frameio import Frameio
210
+
211
+ client = Frameio(
212
+ ...,
213
+ httpx_client=httpx.Client(
214
+ proxy="http://my.test.proxy.example.com",
215
+ transport=httpx.HTTPTransport(local_address="0.0.0.0"),
216
+ ),
217
+ )
218
+ ```
219
+
220
+ ## Contributing
221
+
222
+ While we value open-source contributions to this SDK, this library is generated programmatically.
223
+ Additions made directly to this library would have to be moved over to our generation code,
224
+ otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
225
+ a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
226
+ an issue first to discuss with us!
227
+
228
+ On the other hand, contributions to the README are always very welcome!
@@ -0,0 +1,84 @@
1
+ [project]
2
+ name = "frameio"
3
+
4
+ [tool.poetry]
5
+ name = "frameio"
6
+ version = "v0.0.23"
7
+ description = ""
8
+ readme = "README.md"
9
+ authors = []
10
+ keywords = []
11
+
12
+ classifiers = [
13
+ "Intended Audience :: Developers",
14
+ "Programming Language :: Python",
15
+ "Programming Language :: Python :: 3",
16
+ "Programming Language :: Python :: 3.8",
17
+ "Programming Language :: Python :: 3.9",
18
+ "Programming Language :: Python :: 3.10",
19
+ "Programming Language :: Python :: 3.11",
20
+ "Programming Language :: Python :: 3.12",
21
+ "Operating System :: OS Independent",
22
+ "Operating System :: POSIX",
23
+ "Operating System :: MacOS",
24
+ "Operating System :: POSIX :: Linux",
25
+ "Operating System :: Microsoft :: Windows",
26
+ "Topic :: Software Development :: Libraries :: Python Modules",
27
+ "Typing :: Typed"
28
+ ]
29
+ packages = [
30
+ { include = "frameio", from = "src"}
31
+ ]
32
+
33
+ [project.urls]
34
+ Repository = 'https://github.com/Frameio/python-sdk'
35
+
36
+ [tool.poetry.dependencies]
37
+ python = "^3.8"
38
+ httpx = ">=0.21.2"
39
+ pydantic = ">= 2.0.0"
40
+ pydantic-core = ">=2.18.2"
41
+ typing_extensions = ">= 4.0.0"
42
+
43
+ [tool.poetry.group.dev.dependencies]
44
+ mypy = "==1.13.0"
45
+ pytest = "^7.4.0"
46
+ pytest-asyncio = "^0.23.5"
47
+ python-dateutil = "^2.9.0"
48
+ types-python-dateutil = "^2.9.0.20240316"
49
+ ruff = "==0.11.5"
50
+
51
+ [tool.pytest.ini_options]
52
+ testpaths = [ "tests" ]
53
+ asyncio_mode = "auto"
54
+
55
+ [tool.mypy]
56
+ plugins = ["pydantic.mypy"]
57
+
58
+ [tool.ruff]
59
+ line-length = 120
60
+
61
+ [tool.ruff.lint]
62
+ select = [
63
+ "E", # pycodestyle errors
64
+ "F", # pyflakes
65
+ "I", # isort
66
+ ]
67
+ ignore = [
68
+ "E402", # Module level import not at top of file
69
+ "E501", # Line too long
70
+ "E711", # Comparison to `None` should be `cond is not None`
71
+ "E712", # Avoid equality comparisons to `True`; use `if ...:` checks
72
+ "E721", # Use `is` and `is not` for type comparisons, or `isinstance()` for insinstance checks
73
+ "E722", # Do not use bare `except`
74
+ "E731", # Do not assign a `lambda` expression, use a `def`
75
+ "F821", # Undefined name
76
+ "F841" # Local variable ... is assigned to but never used
77
+ ]
78
+
79
+ [tool.ruff.lint.isort]
80
+ section-order = ["future", "standard-library", "third-party", "first-party"]
81
+
82
+ [build-system]
83
+ requires = ["poetry-core"]
84
+ build-backend = "poetry.core.masonry.api"