frameio 0.0.28__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (385) hide show
  1. frameio/__init__.py +1158 -0
  2. frameio/account_permissions/__init__.py +4 -0
  3. frameio/account_permissions/client.py +193 -0
  4. frameio/account_permissions/raw_client.py +333 -0
  5. frameio/accounts/__init__.py +4 -0
  6. frameio/accounts/client.py +162 -0
  7. frameio/accounts/raw_client.py +309 -0
  8. frameio/client.py +439 -0
  9. frameio/comments/__init__.py +38 -0
  10. frameio/comments/client.py +654 -0
  11. frameio/comments/raw_client.py +1316 -0
  12. frameio/comments/types/__init__.py +40 -0
  13. frameio/comments/types/comments_show_request_include.py +5 -0
  14. frameio/comments/types/create_comment_params_data.py +33 -0
  15. frameio/comments/types/update_comment_params_data.py +33 -0
  16. frameio/core/__init__.py +122 -0
  17. frameio/core/api_error.py +23 -0
  18. frameio/core/client_wrapper.py +95 -0
  19. frameio/core/custom_pagination.py +152 -0
  20. frameio/core/datetime_utils.py +28 -0
  21. frameio/core/file.py +67 -0
  22. frameio/core/force_multipart.py +18 -0
  23. frameio/core/http_client.py +663 -0
  24. frameio/core/http_response.py +55 -0
  25. frameio/core/http_sse/__init__.py +42 -0
  26. frameio/core/http_sse/_api.py +112 -0
  27. frameio/core/http_sse/_decoders.py +61 -0
  28. frameio/core/http_sse/_exceptions.py +7 -0
  29. frameio/core/http_sse/_models.py +17 -0
  30. frameio/core/jsonable_encoder.py +100 -0
  31. frameio/core/pagination.py +82 -0
  32. frameio/core/pydantic_utilities.py +361 -0
  33. frameio/core/query_encoder.py +58 -0
  34. frameio/core/remove_none_from_dict.py +11 -0
  35. frameio/core/request_options.py +35 -0
  36. frameio/core/serialization.py +276 -0
  37. frameio/core/unchecked_base_model.py +376 -0
  38. frameio/environment.py +7 -0
  39. frameio/errors/__init__.py +53 -0
  40. frameio/errors/bad_request_error.py +11 -0
  41. frameio/errors/forbidden_error.py +11 -0
  42. frameio/errors/not_found_error.py +11 -0
  43. frameio/errors/too_many_requests_error.py +11 -0
  44. frameio/errors/unauthorized_error.py +11 -0
  45. frameio/errors/unprocessable_entity_error.py +10 -0
  46. frameio/files/__init__.py +58 -0
  47. frameio/files/client.py +1171 -0
  48. frameio/files/raw_client.py +2517 -0
  49. frameio/files/types/__init__.py +56 -0
  50. frameio/files/types/file_copy_params_data.py +15 -0
  51. frameio/files/types/file_create_local_upload_params_data.py +20 -0
  52. frameio/files/types/file_create_params_data.py +31 -0
  53. frameio/files/types/file_create_remote_upload_params_data.py +20 -0
  54. frameio/files/types/file_move_params_data.py +15 -0
  55. frameio/files/types/file_update_params_data.py +15 -0
  56. frameio/files/types/files_copy_request_copy_comments.py +5 -0
  57. frameio/folders/__init__.py +39 -0
  58. frameio/folders/client.py +1004 -0
  59. frameio/folders/raw_client.py +2074 -0
  60. frameio/folders/types/__init__.py +42 -0
  61. frameio/folders/types/folder_copy_params_data.py +15 -0
  62. frameio/folders/types/folder_create_params_data.py +15 -0
  63. frameio/folders/types/folder_move_params_data.py +15 -0
  64. frameio/folders/types/folder_update_params_data.py +15 -0
  65. frameio/metadata/__init__.py +37 -0
  66. frameio/metadata/client.py +293 -0
  67. frameio/metadata/raw_client.py +509 -0
  68. frameio/metadata/types/__init__.py +38 -0
  69. frameio/metadata/types/bulk_update_metadata_params_data.py +23 -0
  70. frameio/metadata/types/bulk_update_metadata_params_data_values_item.py +13 -0
  71. frameio/metadata_fields/__init__.py +103 -0
  72. frameio/metadata_fields/client.py +536 -0
  73. frameio/metadata_fields/raw_client.py +996 -0
  74. frameio/metadata_fields/types/__init__.py +105 -0
  75. frameio/metadata_fields/types/create_field_definition_params_data.py +112 -0
  76. frameio/metadata_fields/types/update_field_definition_params_data.py +118 -0
  77. frameio/project_permissions/__init__.py +4 -0
  78. frameio/project_permissions/client.py +426 -0
  79. frameio/project_permissions/raw_client.py +824 -0
  80. frameio/projects/__init__.py +38 -0
  81. frameio/projects/client.py +604 -0
  82. frameio/projects/raw_client.py +1286 -0
  83. frameio/projects/types/__init__.py +40 -0
  84. frameio/projects/types/project_params_data.py +20 -0
  85. frameio/projects/types/project_update_params_data.py +26 -0
  86. frameio/projects/types/project_update_params_data_status.py +5 -0
  87. frameio/py.typed +0 -0
  88. frameio/shares/__init__.py +64 -0
  89. frameio/shares/client.py +1217 -0
  90. frameio/shares/raw_client.py +2511 -0
  91. frameio/shares/types/__init__.py +61 -0
  92. frameio/shares/types/add_asset_params_data.py +15 -0
  93. frameio/shares/types/add_reviewers_to_share_params_data.py +18 -0
  94. frameio/shares/types/add_reviewers_to_share_params_data_reviewers.py +27 -0
  95. frameio/shares/types/create_share_params_data.py +26 -0
  96. frameio/shares/types/remove_reviewer_params_data.py +13 -0
  97. frameio/shares/types/remove_reviewer_params_data_reviewers.py +27 -0
  98. frameio/shares/types/update_share_params_data.py +34 -0
  99. frameio/shares/types/update_share_params_data_access.py +5 -0
  100. frameio/types/__init__.py +983 -0
  101. frameio/types/account.py +70 -0
  102. frameio/types/account_roles_item.py +5 -0
  103. frameio/types/account_user_role.py +23 -0
  104. frameio/types/account_user_role_role.py +5 -0
  105. frameio/types/account_user_roles_response.py +27 -0
  106. frameio/types/accounts_response.py +23 -0
  107. frameio/types/add_asset_response.py +13 -0
  108. frameio/types/add_asset_response_data.py +15 -0
  109. frameio/types/asset_common.py +48 -0
  110. frameio/types/asset_common_type.py +5 -0
  111. frameio/types/asset_common_with_includes.py +58 -0
  112. frameio/types/asset_common_with_includes_type.py +5 -0
  113. frameio/types/asset_include.py +5 -0
  114. frameio/types/asset_share_params.py +39 -0
  115. frameio/types/asset_share_params_access.py +5 -0
  116. frameio/types/asset_with_includes.py +76 -0
  117. frameio/types/assets_with_includes_response.py +23 -0
  118. frameio/types/bad_request.py +13 -0
  119. frameio/types/bad_request_errors_item.py +15 -0
  120. frameio/types/bad_request_errors_item_source.py +12 -0
  121. frameio/types/boolean_value.py +12 -0
  122. frameio/types/children_type.py +3 -0
  123. frameio/types/comment.py +59 -0
  124. frameio/types/comment_include.py +5 -0
  125. frameio/types/comment_response.py +13 -0
  126. frameio/types/comment_with_includes.py +17 -0
  127. frameio/types/comment_with_includes_response.py +13 -0
  128. frameio/types/comments_with_includes_response.py +23 -0
  129. frameio/types/date_definition.py +49 -0
  130. frameio/types/date_definition_field_configuration.py +21 -0
  131. frameio/types/date_definition_field_configuration_display_format.py +7 -0
  132. frameio/types/date_definition_field_configuration_time_format.py +5 -0
  133. frameio/types/date_definition_field_type.py +10 -0
  134. frameio/types/date_definition_params.py +17 -0
  135. frameio/types/date_definition_params_field_configuration.py +23 -0
  136. frameio/types/date_definition_params_field_configuration_display_format.py +7 -0
  137. frameio/types/date_definition_params_field_configuration_time_format.py +7 -0
  138. frameio/types/date_definition_with_includes.py +13 -0
  139. frameio/types/date_value.py +12 -0
  140. frameio/types/email.py +3 -0
  141. frameio/types/empty_json.py +5 -0
  142. frameio/types/field_definition.py +167 -0
  143. frameio/types/field_definition_include.py +5 -0
  144. frameio/types/field_definition_response.py +13 -0
  145. frameio/types/field_definition_with_includes.py +178 -0
  146. frameio/types/field_definitions_with_includes_response.py +27 -0
  147. frameio/types/field_value_common.py +29 -0
  148. frameio/types/file.py +60 -0
  149. frameio/types/file_copy_response.py +13 -0
  150. frameio/types/file_remote_upload_response.py +17 -0
  151. frameio/types/file_response.py +13 -0
  152. frameio/types/file_status.py +5 -0
  153. frameio/types/file_upload_status.py +41 -0
  154. frameio/types/file_upload_status_response.py +13 -0
  155. frameio/types/file_with_includes.py +25 -0
  156. frameio/types/file_with_includes_response.py +13 -0
  157. frameio/types/file_with_includes_status.py +5 -0
  158. frameio/types/file_with_media_links_include.py +19 -0
  159. frameio/types/file_with_upload_urls.py +16 -0
  160. frameio/types/file_with_upload_urls_response.py +13 -0
  161. frameio/types/folder.py +15 -0
  162. frameio/types/folder_copy_response.py +13 -0
  163. frameio/types/folder_response.py +13 -0
  164. frameio/types/folder_with_includes.py +63 -0
  165. frameio/types/folder_with_includes_response.py +13 -0
  166. frameio/types/folders_with_includes_response.py +23 -0
  167. frameio/types/forbidden.py +13 -0
  168. frameio/types/forbidden_errors_item.py +15 -0
  169. frameio/types/forbidden_errors_item_source.py +12 -0
  170. frameio/types/include.py +5 -0
  171. frameio/types/include_total_count.py +3 -0
  172. frameio/types/integer_value.py +12 -0
  173. frameio/types/json_error_response.py +13 -0
  174. frameio/types/json_error_response_errors_item.py +15 -0
  175. frameio/types/json_error_response_errors_item_source.py +12 -0
  176. frameio/types/links.py +22 -0
  177. frameio/types/long_text_definition.py +49 -0
  178. frameio/types/long_text_definition_field_configuration.py +10 -0
  179. frameio/types/long_text_definition_field_type.py +10 -0
  180. frameio/types/long_text_definition_params.py +15 -0
  181. frameio/types/long_text_definition_with_includes.py +13 -0
  182. frameio/types/media_link_common.py +17 -0
  183. frameio/types/media_links_collection.py +24 -0
  184. frameio/types/metadata_field.py +149 -0
  185. frameio/types/metadata_response.py +13 -0
  186. frameio/types/metadata_with_definition.py +21 -0
  187. frameio/types/multi_select_value.py +14 -0
  188. frameio/types/multi_user_value.py +20 -0
  189. frameio/types/multi_user_value_member_options_type.py +5 -0
  190. frameio/types/no_content.py +3 -0
  191. frameio/types/not_found.py +13 -0
  192. frameio/types/not_found_errors_item.py +15 -0
  193. frameio/types/not_found_errors_item_source.py +12 -0
  194. frameio/types/number_definition.py +43 -0
  195. frameio/types/number_definition_field_configuration.py +21 -0
  196. frameio/types/number_definition_field_configuration_number_format.py +7 -0
  197. frameio/types/number_definition_params.py +17 -0
  198. frameio/types/number_definition_params_field_configuration.py +23 -0
  199. frameio/types/number_definition_params_field_configuration_number_format.py +7 -0
  200. frameio/types/number_definition_with_includes.py +13 -0
  201. frameio/types/number_value.py +12 -0
  202. frameio/types/original_media_link.py +16 -0
  203. frameio/types/profile.py +34 -0
  204. frameio/types/profile_response.py +17 -0
  205. frameio/types/project.py +66 -0
  206. frameio/types/project_include.py +5 -0
  207. frameio/types/project_response.py +17 -0
  208. frameio/types/project_status.py +5 -0
  209. frameio/types/project_with_includes.py +18 -0
  210. frameio/types/project_with_includes_response.py +17 -0
  211. frameio/types/projects_with_includes_response.py +27 -0
  212. frameio/types/rating_definition.py +43 -0
  213. frameio/types/rating_definition_field_configuration.py +22 -0
  214. frameio/types/rating_definition_field_configuration_style.py +5 -0
  215. frameio/types/rating_definition_params.py +17 -0
  216. frameio/types/rating_definition_params_field_configuration.py +22 -0
  217. frameio/types/rating_definition_params_field_configuration_style.py +5 -0
  218. frameio/types/rating_definition_with_includes.py +13 -0
  219. frameio/types/remove_asset_response.py +13 -0
  220. frameio/types/remove_asset_response_data.py +15 -0
  221. frameio/types/rendition_media_link.py +19 -0
  222. frameio/types/request_after_opaque_cursor.py +5 -0
  223. frameio/types/request_page_size.py +3 -0
  224. frameio/types/select_definition.py +43 -0
  225. frameio/types/select_definition_field_configuration.py +18 -0
  226. frameio/types/select_definition_field_configuration_options_item.py +22 -0
  227. frameio/types/select_definition_params.py +17 -0
  228. frameio/types/select_definition_params_field_configuration.py +20 -0
  229. frameio/types/select_definition_params_field_configuration_options_item.py +20 -0
  230. frameio/types/select_definition_with_includes.py +13 -0
  231. frameio/types/select_multi_definition.py +49 -0
  232. frameio/types/select_multi_definition_field_configuration.py +18 -0
  233. frameio/types/select_multi_definition_field_configuration_options_item.py +22 -0
  234. frameio/types/select_multi_definition_field_type.py +10 -0
  235. frameio/types/select_multi_definition_params.py +17 -0
  236. frameio/types/select_multi_definition_params_field_configuration.py +20 -0
  237. frameio/types/select_multi_definition_params_field_configuration_options_item.py +20 -0
  238. frameio/types/select_multi_definition_with_includes.py +13 -0
  239. frameio/types/select_option.py +20 -0
  240. frameio/types/select_value.py +14 -0
  241. frameio/types/share.py +66 -0
  242. frameio/types/share_access.py +5 -0
  243. frameio/types/share_response.py +13 -0
  244. frameio/types/share_reviewers_response.py +27 -0
  245. frameio/types/shares_response.py +27 -0
  246. frameio/types/single_user_value.py +20 -0
  247. frameio/types/single_user_value_member_options_type.py +5 -0
  248. frameio/types/text_definition.py +49 -0
  249. frameio/types/text_definition_field_configuration.py +10 -0
  250. frameio/types/text_definition_field_type.py +10 -0
  251. frameio/types/text_definition_params.py +15 -0
  252. frameio/types/text_definition_with_includes.py +13 -0
  253. frameio/types/text_value.py +12 -0
  254. frameio/types/time_stamp.py +5 -0
  255. frameio/types/toggle_definition.py +43 -0
  256. frameio/types/toggle_definition_field_configuration.py +15 -0
  257. frameio/types/toggle_definition_params.py +17 -0
  258. frameio/types/toggle_definition_params_field_configuration.py +15 -0
  259. frameio/types/toggle_definition_with_includes.py +13 -0
  260. frameio/types/too_many_requests.py +13 -0
  261. frameio/types/too_many_requests_errors_item.py +15 -0
  262. frameio/types/too_many_requests_errors_item_source.py +12 -0
  263. frameio/types/unauthorized.py +13 -0
  264. frameio/types/unauthorized_errors_item.py +15 -0
  265. frameio/types/unauthorized_errors_item_source.py +12 -0
  266. frameio/types/unprocessable_entity.py +13 -0
  267. frameio/types/unprocessable_entity_errors_item.py +15 -0
  268. frameio/types/unprocessable_entity_errors_item_source.py +12 -0
  269. frameio/types/update_date_definition_params.py +17 -0
  270. frameio/types/update_date_definition_params_field_configuration.py +25 -0
  271. frameio/types/update_date_definition_params_field_configuration_display_format.py +7 -0
  272. frameio/types/update_date_definition_params_field_configuration_time_format.py +7 -0
  273. frameio/types/update_long_text_definition_params.py +15 -0
  274. frameio/types/update_number_definition_params.py +17 -0
  275. frameio/types/update_number_definition_params_field_configuration.py +25 -0
  276. frameio/types/update_number_definition_params_field_configuration_number_format.py +7 -0
  277. frameio/types/update_rating_definition_params.py +17 -0
  278. frameio/types/update_rating_definition_params_field_configuration.py +24 -0
  279. frameio/types/update_rating_definition_params_field_configuration_style.py +7 -0
  280. frameio/types/update_select_definition_params.py +17 -0
  281. frameio/types/update_select_definition_params_field_configuration.py +20 -0
  282. frameio/types/update_select_definition_params_field_configuration_options_item.py +20 -0
  283. frameio/types/update_select_multi_definition_params.py +19 -0
  284. frameio/types/update_select_multi_definition_params_field_configuration.py +20 -0
  285. frameio/types/update_select_multi_definition_params_field_configuration_options_item.py +20 -0
  286. frameio/types/update_text_definition_params.py +15 -0
  287. frameio/types/update_toggle_definition_params.py +17 -0
  288. frameio/types/update_toggle_definition_params_field_configuration.py +15 -0
  289. frameio/types/update_user_multi_definition_params.py +17 -0
  290. frameio/types/update_user_multi_definition_params_field_configuration.py +25 -0
  291. frameio/types/update_user_multi_definition_params_field_configuration_custom_members_item.py +20 -0
  292. frameio/types/update_user_multi_definition_params_field_configuration_custom_members_item_type.py +7 -0
  293. frameio/types/update_user_multi_definition_params_field_configuration_member_options_type.py +7 -0
  294. frameio/types/update_user_roles_params.py +17 -0
  295. frameio/types/update_user_roles_params_data.py +13 -0
  296. frameio/types/update_user_roles_params_data_role.py +7 -0
  297. frameio/types/update_user_roles_response.py +13 -0
  298. frameio/types/update_user_roles_response_data.py +13 -0
  299. frameio/types/update_user_roles_response_data_role.py +7 -0
  300. frameio/types/update_user_single_definition_params.py +17 -0
  301. frameio/types/update_user_single_definition_params_field_configuration.py +25 -0
  302. frameio/types/update_user_single_definition_params_field_configuration_custom_members_item.py +20 -0
  303. frameio/types/update_user_single_definition_params_field_configuration_custom_members_item_type.py +7 -0
  304. frameio/types/update_user_single_definition_params_field_configuration_member_options_type.py +7 -0
  305. frameio/types/upload_url.py +20 -0
  306. frameio/types/user.py +44 -0
  307. frameio/types/user_multi_definition.py +49 -0
  308. frameio/types/user_multi_definition_field_configuration.py +23 -0
  309. frameio/types/user_multi_definition_field_configuration_custom_members_item.py +20 -0
  310. frameio/types/user_multi_definition_field_configuration_custom_members_item_type.py +7 -0
  311. frameio/types/user_multi_definition_field_configuration_member_options_type.py +7 -0
  312. frameio/types/user_multi_definition_field_type.py +10 -0
  313. frameio/types/user_multi_definition_params.py +17 -0
  314. frameio/types/user_multi_definition_params_field_configuration.py +23 -0
  315. frameio/types/user_multi_definition_params_field_configuration_custom_members_item.py +20 -0
  316. frameio/types/user_multi_definition_params_field_configuration_custom_members_item_type.py +7 -0
  317. frameio/types/user_multi_definition_params_field_configuration_member_options_type.py +7 -0
  318. frameio/types/user_multi_definition_with_includes.py +13 -0
  319. frameio/types/user_role.py +19 -0
  320. frameio/types/user_role_role.py +7 -0
  321. frameio/types/user_roles_response.py +27 -0
  322. frameio/types/user_single_definition.py +49 -0
  323. frameio/types/user_single_definition_field_configuration.py +23 -0
  324. frameio/types/user_single_definition_field_configuration_custom_members_item.py +20 -0
  325. frameio/types/user_single_definition_field_configuration_custom_members_item_type.py +7 -0
  326. frameio/types/user_single_definition_field_configuration_member_options_type.py +7 -0
  327. frameio/types/user_single_definition_field_type.py +10 -0
  328. frameio/types/user_single_definition_params.py +17 -0
  329. frameio/types/user_single_definition_params_field_configuration.py +23 -0
  330. frameio/types/user_single_definition_params_field_configuration_custom_members_item.py +20 -0
  331. frameio/types/user_single_definition_params_field_configuration_custom_members_item_type.py +7 -0
  332. frameio/types/user_single_definition_params_field_configuration_member_options_type.py +7 -0
  333. frameio/types/user_single_definition_with_includes.py +13 -0
  334. frameio/types/user_value.py +18 -0
  335. frameio/types/user_value_type.py +5 -0
  336. frameio/types/uuid_.py +3 -0
  337. frameio/types/version_stack.py +50 -0
  338. frameio/types/version_stack_copy_response.py +13 -0
  339. frameio/types/version_stack_response.py +13 -0
  340. frameio/types/version_stack_with_includes.py +60 -0
  341. frameio/types/version_stack_with_includes_response.py +13 -0
  342. frameio/types/version_stacks_with_includes_response.py +19 -0
  343. frameio/types/webhook.py +36 -0
  344. frameio/types/webhook_create_response.py +17 -0
  345. frameio/types/webhook_create_response_data.py +15 -0
  346. frameio/types/webhook_events.py +5 -0
  347. frameio/types/webhook_response.py +13 -0
  348. frameio/types/webhook_with_includes.py +13 -0
  349. frameio/types/webhook_with_includes_response.py +13 -0
  350. frameio/types/webhooks_with_includes_response.py +23 -0
  351. frameio/types/workspace.py +40 -0
  352. frameio/types/workspace_include.py +5 -0
  353. frameio/types/workspace_params.py +17 -0
  354. frameio/types/workspace_params_data.py +15 -0
  355. frameio/types/workspace_response.py +17 -0
  356. frameio/types/workspace_with_includes.py +13 -0
  357. frameio/types/workspace_with_includes_response.py +17 -0
  358. frameio/types/workspaces_with_includes_response.py +27 -0
  359. frameio/users/__init__.py +4 -0
  360. frameio/users/client.py +100 -0
  361. frameio/users/raw_client.py +234 -0
  362. frameio/version.py +3 -0
  363. frameio/version_stacks/__init__.py +49 -0
  364. frameio/version_stacks/client.py +818 -0
  365. frameio/version_stacks/raw_client.py +1614 -0
  366. frameio/version_stacks/types/__init__.py +47 -0
  367. frameio/version_stacks/types/version_stack_copy_params_data.py +15 -0
  368. frameio/version_stacks/types/version_stack_create_params_data.py +19 -0
  369. frameio/version_stacks/types/version_stack_move_params_data.py +15 -0
  370. frameio/version_stacks/types/version_stacks_show_request_include.py +19 -0
  371. frameio/webhooks/__init__.py +34 -0
  372. frameio/webhooks/client.py +793 -0
  373. frameio/webhooks/raw_client.py +1347 -0
  374. frameio/webhooks/types/__init__.py +38 -0
  375. frameio/webhooks/types/webhook_create_params_data.py +18 -0
  376. frameio/webhooks/types/webhook_update_params_data.py +23 -0
  377. frameio/workspace_permissions/__init__.py +4 -0
  378. frameio/workspace_permissions/client.py +430 -0
  379. frameio/workspace_permissions/raw_client.py +824 -0
  380. frameio/workspaces/__init__.py +4 -0
  381. frameio/workspaces/client.py +563 -0
  382. frameio/workspaces/raw_client.py +1259 -0
  383. frameio-0.0.28.dist-info/METADATA +259 -0
  384. frameio-0.0.28.dist-info/RECORD +385 -0
  385. frameio-0.0.28.dist-info/WHEEL +4 -0
@@ -0,0 +1,49 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import datetime as dt
4
+ import typing
5
+
6
+ import pydantic
7
+ from ..core.unchecked_base_model import UncheckedBaseModel
8
+ from .date_definition_field_configuration import DateDefinitionFieldConfiguration
9
+ from .date_definition_field_type import DateDefinitionFieldType
10
+
11
+
12
+ class DateDefinition(UncheckedBaseModel):
13
+ created_at: dt.datetime = pydantic.Field()
14
+ """
15
+ Created Timestamp
16
+ """
17
+
18
+ creator_id: str = pydantic.Field()
19
+ """
20
+ Field definition creator ID
21
+ """
22
+
23
+ field_configuration: DateDefinitionFieldConfiguration
24
+ field_type: DateDefinitionFieldType = pydantic.Field()
25
+ """
26
+ Field type
27
+ """
28
+
29
+ id: str = pydantic.Field()
30
+ """
31
+ Field definition ID
32
+ """
33
+
34
+ mutable: bool = pydantic.Field()
35
+ """
36
+ Field definition mutability. System fields cannot be updated.
37
+ """
38
+
39
+ name: str = pydantic.Field()
40
+ """
41
+ FieldDefinition Name
42
+ """
43
+
44
+ updated_at: dt.datetime = pydantic.Field()
45
+ """
46
+ Updated Timestamp
47
+ """
48
+
49
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,21 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.unchecked_base_model import UncheckedBaseModel
7
+ from .date_definition_field_configuration_display_format import DateDefinitionFieldConfigurationDisplayFormat
8
+ from .date_definition_field_configuration_time_format import DateDefinitionFieldConfigurationTimeFormat
9
+
10
+
11
+ class DateDefinitionFieldConfiguration(UncheckedBaseModel):
12
+ display_format: DateDefinitionFieldConfigurationDisplayFormat
13
+ display_timezone: typing.Optional[bool] = None
14
+ include_time: typing.Optional[bool] = pydantic.Field(default=None)
15
+ """
16
+
17
+ """
18
+
19
+ time_format: typing.Optional[DateDefinitionFieldConfigurationTimeFormat] = None
20
+
21
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ DateDefinitionFieldConfigurationDisplayFormat = typing.Union[
6
+ typing.Literal["local", "friendly", "usa", "euro", "iso"], typing.Any
7
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ DateDefinitionFieldConfigurationTimeFormat = typing.Union[typing.Literal["twelve_hour", "twenty_four_hour"], typing.Any]
@@ -0,0 +1,10 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ DateDefinitionFieldType = typing.Union[
6
+ typing.Literal[
7
+ "text", "long_text", "select", "select_multi", "rating", "number", "toggle", "user_single", "user_multi", "date"
8
+ ],
9
+ typing.Any,
10
+ ]
@@ -0,0 +1,17 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.unchecked_base_model import UncheckedBaseModel
7
+ from .date_definition_params_field_configuration import DateDefinitionParamsFieldConfiguration
8
+
9
+
10
+ class DateDefinitionParams(UncheckedBaseModel):
11
+ field_configuration: DateDefinitionParamsFieldConfiguration
12
+ name: str = pydantic.Field()
13
+ """
14
+ Field definition name
15
+ """
16
+
17
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,23 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.unchecked_base_model import UncheckedBaseModel
7
+ from .date_definition_params_field_configuration_display_format import (
8
+ DateDefinitionParamsFieldConfigurationDisplayFormat,
9
+ )
10
+ from .date_definition_params_field_configuration_time_format import DateDefinitionParamsFieldConfigurationTimeFormat
11
+
12
+
13
+ class DateDefinitionParamsFieldConfiguration(UncheckedBaseModel):
14
+ display_format: DateDefinitionParamsFieldConfigurationDisplayFormat
15
+ display_timezone: typing.Optional[bool] = None
16
+ include_time: typing.Optional[bool] = pydantic.Field(default=None)
17
+ """
18
+
19
+ """
20
+
21
+ time_format: typing.Optional[DateDefinitionParamsFieldConfigurationTimeFormat] = None
22
+
23
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ DateDefinitionParamsFieldConfigurationDisplayFormat = typing.Union[
6
+ typing.Literal["local", "friendly", "usa", "euro", "iso"], typing.Any
7
+ ]
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ DateDefinitionParamsFieldConfigurationTimeFormat = typing.Union[
6
+ typing.Literal["twelve_hour", "twenty_four_hour"], typing.Any
7
+ ]
@@ -0,0 +1,13 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from .date_definition import DateDefinition
7
+ from .user import User
8
+
9
+
10
+ class DateDefinitionWithIncludes(DateDefinition):
11
+ creator: typing.Optional[User] = None
12
+
13
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,12 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from .field_value_common import FieldValueCommon
7
+
8
+
9
+ class DateValue(FieldValueCommon):
10
+ value: typing.Optional[str] = None
11
+
12
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
frameio/types/email.py ADDED
@@ -0,0 +1,3 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ Email = str
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ EmptyJson = typing.Dict[str, typing.Any]
@@ -0,0 +1,167 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime as dt
6
+ import typing
7
+
8
+ import pydantic
9
+ import typing_extensions
10
+ from ..core.unchecked_base_model import UncheckedBaseModel, UnionMetadata
11
+ from .date_definition_field_configuration import DateDefinitionFieldConfiguration
12
+ from .long_text_definition_field_configuration import LongTextDefinitionFieldConfiguration
13
+ from .number_definition_field_configuration import NumberDefinitionFieldConfiguration
14
+ from .rating_definition_field_configuration import RatingDefinitionFieldConfiguration
15
+ from .select_definition_field_configuration import SelectDefinitionFieldConfiguration
16
+ from .select_multi_definition_field_configuration import SelectMultiDefinitionFieldConfiguration
17
+ from .text_definition_field_configuration import TextDefinitionFieldConfiguration
18
+ from .toggle_definition_field_configuration import ToggleDefinitionFieldConfiguration
19
+ from .user_multi_definition_field_configuration import UserMultiDefinitionFieldConfiguration
20
+ from .user_single_definition_field_configuration import UserSingleDefinitionFieldConfiguration
21
+
22
+
23
+ class FieldDefinition_Date(UncheckedBaseModel):
24
+ field_type: typing.Literal["date"] = "date"
25
+ created_at: dt.datetime
26
+ creator_id: str
27
+ field_configuration: DateDefinitionFieldConfiguration
28
+ id: str
29
+ mutable: bool
30
+ name: str
31
+ updated_at: dt.datetime
32
+
33
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
34
+
35
+
36
+ class FieldDefinition_LongText(UncheckedBaseModel):
37
+ field_type: typing.Literal["long_text"] = "long_text"
38
+ created_at: dt.datetime
39
+ creator_id: str
40
+ field_configuration: LongTextDefinitionFieldConfiguration
41
+ id: str
42
+ mutable: bool
43
+ name: str
44
+ updated_at: dt.datetime
45
+
46
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
47
+
48
+
49
+ class FieldDefinition_Number(UncheckedBaseModel):
50
+ field_type: typing.Literal["number"] = "number"
51
+ created_at: dt.datetime
52
+ creator_id: str
53
+ field_configuration: NumberDefinitionFieldConfiguration
54
+ id: str
55
+ mutable: bool
56
+ name: str
57
+ updated_at: dt.datetime
58
+
59
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
60
+
61
+
62
+ class FieldDefinition_Rating(UncheckedBaseModel):
63
+ field_type: typing.Literal["rating"] = "rating"
64
+ created_at: dt.datetime
65
+ creator_id: str
66
+ field_configuration: RatingDefinitionFieldConfiguration
67
+ id: str
68
+ mutable: bool
69
+ name: str
70
+ updated_at: dt.datetime
71
+
72
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
73
+
74
+
75
+ class FieldDefinition_Select(UncheckedBaseModel):
76
+ field_type: typing.Literal["select"] = "select"
77
+ created_at: dt.datetime
78
+ creator_id: str
79
+ field_configuration: SelectDefinitionFieldConfiguration
80
+ id: str
81
+ mutable: bool
82
+ name: str
83
+ updated_at: dt.datetime
84
+
85
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
86
+
87
+
88
+ class FieldDefinition_SelectMulti(UncheckedBaseModel):
89
+ field_type: typing.Literal["select_multi"] = "select_multi"
90
+ created_at: dt.datetime
91
+ creator_id: str
92
+ field_configuration: SelectMultiDefinitionFieldConfiguration
93
+ id: str
94
+ mutable: bool
95
+ name: str
96
+ updated_at: dt.datetime
97
+
98
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
99
+
100
+
101
+ class FieldDefinition_Text(UncheckedBaseModel):
102
+ field_type: typing.Literal["text"] = "text"
103
+ created_at: dt.datetime
104
+ creator_id: str
105
+ field_configuration: TextDefinitionFieldConfiguration
106
+ id: str
107
+ mutable: bool
108
+ name: str
109
+ updated_at: dt.datetime
110
+
111
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
112
+
113
+
114
+ class FieldDefinition_Toggle(UncheckedBaseModel):
115
+ field_type: typing.Literal["toggle"] = "toggle"
116
+ created_at: dt.datetime
117
+ creator_id: str
118
+ field_configuration: ToggleDefinitionFieldConfiguration
119
+ id: str
120
+ mutable: bool
121
+ name: str
122
+ updated_at: dt.datetime
123
+
124
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
125
+
126
+
127
+ class FieldDefinition_UserMulti(UncheckedBaseModel):
128
+ field_type: typing.Literal["user_multi"] = "user_multi"
129
+ created_at: dt.datetime
130
+ creator_id: str
131
+ field_configuration: UserMultiDefinitionFieldConfiguration
132
+ id: str
133
+ mutable: bool
134
+ name: str
135
+ updated_at: dt.datetime
136
+
137
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
138
+
139
+
140
+ class FieldDefinition_UserSingle(UncheckedBaseModel):
141
+ field_type: typing.Literal["user_single"] = "user_single"
142
+ created_at: dt.datetime
143
+ creator_id: str
144
+ field_configuration: UserSingleDefinitionFieldConfiguration
145
+ id: str
146
+ mutable: bool
147
+ name: str
148
+ updated_at: dt.datetime
149
+
150
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
151
+
152
+
153
+ FieldDefinition = typing_extensions.Annotated[
154
+ typing.Union[
155
+ FieldDefinition_Date,
156
+ FieldDefinition_LongText,
157
+ FieldDefinition_Number,
158
+ FieldDefinition_Rating,
159
+ FieldDefinition_Select,
160
+ FieldDefinition_SelectMulti,
161
+ FieldDefinition_Text,
162
+ FieldDefinition_Toggle,
163
+ FieldDefinition_UserMulti,
164
+ FieldDefinition_UserSingle,
165
+ ],
166
+ UnionMetadata(discriminant="field_type"),
167
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ FieldDefinitionInclude = typing.Literal["creator"]
@@ -0,0 +1,13 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.unchecked_base_model import UncheckedBaseModel
7
+ from .field_definition import FieldDefinition
8
+
9
+
10
+ class FieldDefinitionResponse(UncheckedBaseModel):
11
+ data: FieldDefinition
12
+
13
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,178 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime as dt
6
+ import typing
7
+
8
+ import pydantic
9
+ import typing_extensions
10
+ from ..core.unchecked_base_model import UncheckedBaseModel, UnionMetadata
11
+ from .date_definition_field_configuration import DateDefinitionFieldConfiguration
12
+ from .long_text_definition_field_configuration import LongTextDefinitionFieldConfiguration
13
+ from .number_definition_field_configuration import NumberDefinitionFieldConfiguration
14
+ from .rating_definition_field_configuration import RatingDefinitionFieldConfiguration
15
+ from .select_definition_field_configuration import SelectDefinitionFieldConfiguration
16
+ from .select_multi_definition_field_configuration import SelectMultiDefinitionFieldConfiguration
17
+ from .text_definition_field_configuration import TextDefinitionFieldConfiguration
18
+ from .toggle_definition_field_configuration import ToggleDefinitionFieldConfiguration
19
+ from .user import User
20
+ from .user_multi_definition_field_configuration import UserMultiDefinitionFieldConfiguration
21
+ from .user_single_definition_field_configuration import UserSingleDefinitionFieldConfiguration
22
+
23
+
24
+ class FieldDefinitionWithIncludes_Date(UncheckedBaseModel):
25
+ field_type: typing.Literal["date"] = "date"
26
+ creator: typing.Optional[User] = None
27
+ created_at: dt.datetime
28
+ creator_id: str
29
+ field_configuration: DateDefinitionFieldConfiguration
30
+ id: str
31
+ mutable: bool
32
+ name: str
33
+ updated_at: dt.datetime
34
+
35
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
36
+
37
+
38
+ class FieldDefinitionWithIncludes_LongText(UncheckedBaseModel):
39
+ field_type: typing.Literal["long_text"] = "long_text"
40
+ creator: typing.Optional[User] = None
41
+ created_at: dt.datetime
42
+ creator_id: str
43
+ field_configuration: LongTextDefinitionFieldConfiguration
44
+ id: str
45
+ mutable: bool
46
+ name: str
47
+ updated_at: dt.datetime
48
+
49
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
50
+
51
+
52
+ class FieldDefinitionWithIncludes_Number(UncheckedBaseModel):
53
+ field_type: typing.Literal["number"] = "number"
54
+ creator: typing.Optional[User] = None
55
+ created_at: dt.datetime
56
+ creator_id: str
57
+ field_configuration: NumberDefinitionFieldConfiguration
58
+ id: str
59
+ mutable: bool
60
+ name: str
61
+ updated_at: dt.datetime
62
+
63
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
64
+
65
+
66
+ class FieldDefinitionWithIncludes_Rating(UncheckedBaseModel):
67
+ field_type: typing.Literal["rating"] = "rating"
68
+ creator: typing.Optional[User] = None
69
+ created_at: dt.datetime
70
+ creator_id: str
71
+ field_configuration: RatingDefinitionFieldConfiguration
72
+ id: str
73
+ mutable: bool
74
+ name: str
75
+ updated_at: dt.datetime
76
+
77
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
78
+
79
+
80
+ class FieldDefinitionWithIncludes_Select(UncheckedBaseModel):
81
+ field_type: typing.Literal["select"] = "select"
82
+ creator: typing.Optional[User] = None
83
+ created_at: dt.datetime
84
+ creator_id: str
85
+ field_configuration: SelectDefinitionFieldConfiguration
86
+ id: str
87
+ mutable: bool
88
+ name: str
89
+ updated_at: dt.datetime
90
+
91
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
92
+
93
+
94
+ class FieldDefinitionWithIncludes_SelectMulti(UncheckedBaseModel):
95
+ field_type: typing.Literal["select_multi"] = "select_multi"
96
+ creator: typing.Optional[User] = None
97
+ created_at: dt.datetime
98
+ creator_id: str
99
+ field_configuration: SelectMultiDefinitionFieldConfiguration
100
+ id: str
101
+ mutable: bool
102
+ name: str
103
+ updated_at: dt.datetime
104
+
105
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
106
+
107
+
108
+ class FieldDefinitionWithIncludes_Text(UncheckedBaseModel):
109
+ field_type: typing.Literal["text"] = "text"
110
+ creator: typing.Optional[User] = None
111
+ created_at: dt.datetime
112
+ creator_id: str
113
+ field_configuration: TextDefinitionFieldConfiguration
114
+ id: str
115
+ mutable: bool
116
+ name: str
117
+ updated_at: dt.datetime
118
+
119
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
120
+
121
+
122
+ class FieldDefinitionWithIncludes_Toggle(UncheckedBaseModel):
123
+ field_type: typing.Literal["toggle"] = "toggle"
124
+ creator: typing.Optional[User] = None
125
+ created_at: dt.datetime
126
+ creator_id: str
127
+ field_configuration: ToggleDefinitionFieldConfiguration
128
+ id: str
129
+ mutable: bool
130
+ name: str
131
+ updated_at: dt.datetime
132
+
133
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
134
+
135
+
136
+ class FieldDefinitionWithIncludes_UserMulti(UncheckedBaseModel):
137
+ field_type: typing.Literal["user_multi"] = "user_multi"
138
+ creator: typing.Optional[User] = None
139
+ created_at: dt.datetime
140
+ creator_id: str
141
+ field_configuration: UserMultiDefinitionFieldConfiguration
142
+ id: str
143
+ mutable: bool
144
+ name: str
145
+ updated_at: dt.datetime
146
+
147
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
148
+
149
+
150
+ class FieldDefinitionWithIncludes_UserSingle(UncheckedBaseModel):
151
+ field_type: typing.Literal["user_single"] = "user_single"
152
+ creator: typing.Optional[User] = None
153
+ created_at: dt.datetime
154
+ creator_id: str
155
+ field_configuration: UserSingleDefinitionFieldConfiguration
156
+ id: str
157
+ mutable: bool
158
+ name: str
159
+ updated_at: dt.datetime
160
+
161
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
162
+
163
+
164
+ FieldDefinitionWithIncludes = typing_extensions.Annotated[
165
+ typing.Union[
166
+ FieldDefinitionWithIncludes_Date,
167
+ FieldDefinitionWithIncludes_LongText,
168
+ FieldDefinitionWithIncludes_Number,
169
+ FieldDefinitionWithIncludes_Rating,
170
+ FieldDefinitionWithIncludes_Select,
171
+ FieldDefinitionWithIncludes_SelectMulti,
172
+ FieldDefinitionWithIncludes_Text,
173
+ FieldDefinitionWithIncludes_Toggle,
174
+ FieldDefinitionWithIncludes_UserMulti,
175
+ FieldDefinitionWithIncludes_UserSingle,
176
+ ],
177
+ UnionMetadata(discriminant="field_type"),
178
+ ]
@@ -0,0 +1,27 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.unchecked_base_model import UncheckedBaseModel
7
+ from .field_definition_with_includes import FieldDefinitionWithIncludes
8
+ from .links import Links
9
+
10
+
11
+ class FieldDefinitionsWithIncludesResponse(UncheckedBaseModel):
12
+ """
13
+ Account field definitions
14
+ """
15
+
16
+ data: typing.List[FieldDefinitionWithIncludes] = pydantic.Field()
17
+ """
18
+ Field definitions
19
+ """
20
+
21
+ links: Links
22
+ total_count: typing.Optional[int] = pydantic.Field(default=None)
23
+ """
24
+ Total count
25
+ """
26
+
27
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
@@ -0,0 +1,29 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.unchecked_base_model import UncheckedBaseModel
7
+
8
+
9
+ class FieldValueCommon(UncheckedBaseModel):
10
+ """
11
+ Metadata field value
12
+ """
13
+
14
+ field_definition_id: str = pydantic.Field()
15
+ """
16
+ Field definition ID
17
+ """
18
+
19
+ field_definition_name: str = pydantic.Field()
20
+ """
21
+ Field definition name
22
+ """
23
+
24
+ mutable: bool = pydantic.Field()
25
+ """
26
+ Metadata mutability. System field values cannot be updated.
27
+ """
28
+
29
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)
frameio/types/file.py ADDED
@@ -0,0 +1,60 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import datetime as dt
4
+ import typing
5
+
6
+ import pydantic
7
+ from ..core.unchecked_base_model import UncheckedBaseModel
8
+ from .asset_common_type import AssetCommonType
9
+ from .file_status import FileStatus
10
+
11
+
12
+ class File(UncheckedBaseModel):
13
+ id: typing.Optional[str] = pydantic.Field(default=None)
14
+ """
15
+ File ID
16
+ """
17
+
18
+ name: typing.Optional[str] = pydantic.Field(default=None)
19
+ """
20
+ File Name
21
+ """
22
+
23
+ file_size: int = pydantic.Field()
24
+ """
25
+ File size in bytes
26
+ """
27
+
28
+ media_type: str = pydantic.Field()
29
+ """
30
+ File media type
31
+ """
32
+
33
+ status: FileStatus
34
+ created_at: dt.datetime = pydantic.Field()
35
+ """
36
+ Creation timestamp
37
+ """
38
+
39
+ parent_id: typing.Optional[str] = pydantic.Field(default=None)
40
+ """
41
+ Parent Folder or Version Stack ID
42
+ """
43
+
44
+ project_id: str = pydantic.Field()
45
+ """
46
+ Project ID
47
+ """
48
+
49
+ type: AssetCommonType
50
+ updated_at: dt.datetime = pydantic.Field()
51
+ """
52
+ Update timestamp
53
+ """
54
+
55
+ view_url: str = pydantic.Field()
56
+ """
57
+ URL to view the asset in the Frame.io web application
58
+ """
59
+
60
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True)