holder-python 0.2.5__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 (391) hide show
  1. holder/__init__.py +21 -0
  2. holder/client.py +182 -0
  3. holder/collections.py +70 -0
  4. holder/events.py +238 -0
  5. holder/exceptions.py +35 -0
  6. holder/generated/__init__.py +8 -0
  7. holder/generated/api/__init__.py +1 -0
  8. holder/generated/api/default/__init__.py +1 -0
  9. holder/generated/api/default/delete_ai_messages_message_id.py +166 -0
  10. holder/generated/api/default/delete_ai_messages_message_id_links.py +205 -0
  11. holder/generated/api/default/delete_ai_providers_credentials_provider.py +168 -0
  12. holder/generated/api/default/delete_ai_threads_thread_id.py +166 -0
  13. holder/generated/api/default/delete_cards_card_id.py +225 -0
  14. holder/generated/api/default/delete_cards_card_id_links.py +205 -0
  15. holder/generated/api/default/delete_cards_card_id_milestones_milestone_id.py +175 -0
  16. holder/generated/api/default/delete_cards_card_id_resources.py +197 -0
  17. holder/generated/api/default/delete_cards_card_id_tags.py +197 -0
  18. holder/generated/api/default/delete_locations_location_id.py +105 -0
  19. holder/generated/api/default/delete_locations_location_id_binding.py +102 -0
  20. holder/generated/api/default/delete_projects_project_id.py +187 -0
  21. holder/generated/api/default/delete_resources_resource_id.py +161 -0
  22. holder/generated/api/default/delete_trash.py +181 -0
  23. holder/generated/api/default/delete_trash_type_id.py +175 -0
  24. holder/generated/api/default/get_ai_capabilities.py +166 -0
  25. holder/generated/api/default/get_ai_catalog_json.py +134 -0
  26. holder/generated/api/default/get_ai_catalog_yaml.py +132 -0
  27. holder/generated/api/default/get_ai_local_models_config.py +134 -0
  28. holder/generated/api/default/get_ai_messages.py +186 -0
  29. holder/generated/api/default/get_ai_messages_message_id.py +166 -0
  30. holder/generated/api/default/get_ai_messages_message_id_backlinks.py +194 -0
  31. holder/generated/api/default/get_ai_messages_message_id_links.py +194 -0
  32. holder/generated/api/default/get_ai_providers_catalog.py +139 -0
  33. holder/generated/api/default/get_ai_providers_credentials.py +136 -0
  34. holder/generated/api/default/get_ai_runner_pull_job_id.py +171 -0
  35. holder/generated/api/default/get_ai_runner_pull_job_id_events.py +218 -0
  36. holder/generated/api/default/get_ai_runs.py +186 -0
  37. holder/generated/api/default/get_ai_runs_run_id.py +166 -0
  38. holder/generated/api/default/get_ai_runs_run_id_events.py +213 -0
  39. holder/generated/api/default/get_ai_status.py +134 -0
  40. holder/generated/api/default/get_ai_threads.py +171 -0
  41. holder/generated/api/default/get_ai_threads_thread_id.py +166 -0
  42. holder/generated/api/default/get_calendar.py +221 -0
  43. holder/generated/api/default/get_cards.py +286 -0
  44. holder/generated/api/default/get_cards_card_id.py +166 -0
  45. holder/generated/api/default/get_cards_card_id_backlinks.py +194 -0
  46. holder/generated/api/default/get_cards_card_id_links.py +194 -0
  47. holder/generated/api/default/get_cards_card_id_milestones.py +173 -0
  48. holder/generated/api/default/get_cards_context.py +226 -0
  49. holder/generated/api/default/get_event_cursor.py +198 -0
  50. holder/generated/api/default/get_git_providers_json.py +134 -0
  51. holder/generated/api/default/get_git_providers_yaml.py +132 -0
  52. holder/generated/api/default/get_health.py +134 -0
  53. holder/generated/api/default/get_imports_job_id.py +159 -0
  54. holder/generated/api/default/get_locations.py +160 -0
  55. holder/generated/api/default/get_locations_location_id.py +157 -0
  56. holder/generated/api/default/get_openapi_yaml.py +132 -0
  57. holder/generated/api/default/get_ping.py +128 -0
  58. holder/generated/api/default/get_projects.py +261 -0
  59. holder/generated/api/default/get_projects_project_id.py +166 -0
  60. holder/generated/api/default/get_projects_project_id_cards.py +321 -0
  61. holder/generated/api/default/get_projects_project_id_encryption_check.py +166 -0
  62. holder/generated/api/default/get_projects_project_id_git_sync_status.py +171 -0
  63. holder/generated/api/default/get_projects_project_id_history.py +246 -0
  64. holder/generated/api/default/get_projects_project_id_history_cards_card_id.py +243 -0
  65. holder/generated/api/default/get_projects_project_id_history_cards_card_id_compare.py +286 -0
  66. holder/generated/api/default/get_projects_project_id_history_cards_card_id_snapshot.py +225 -0
  67. holder/generated/api/default/get_projects_project_id_tags.py +171 -0
  68. holder/generated/api/default/get_resources.py +242 -0
  69. holder/generated/api/default/get_resources_resource_id.py +161 -0
  70. holder/generated/api/default/get_resources_resource_id_assets_asset_id_content.py +247 -0
  71. holder/generated/api/default/get_search_ai.py +216 -0
  72. holder/generated/api/default/get_search_cards.py +216 -0
  73. holder/generated/api/default/get_trash.py +181 -0
  74. holder/generated/api/default/patch_ai_messages_message_id.py +192 -0
  75. holder/generated/api/default/patch_ai_threads_thread_id.py +192 -0
  76. holder/generated/api/default/patch_cards_card_id.py +192 -0
  77. holder/generated/api/default/patch_cards_card_id_milestones_milestone_id.py +214 -0
  78. holder/generated/api/default/patch_locations_location_id.py +117 -0
  79. holder/generated/api/default/patch_projects_project_id.py +192 -0
  80. holder/generated/api/default/patch_resources_resource_id.py +192 -0
  81. holder/generated/api/default/post_ai_messages.py +176 -0
  82. holder/generated/api/default/post_ai_messages_capture.py +181 -0
  83. holder/generated/api/default/post_ai_messages_message_id_links.py +192 -0
  84. holder/generated/api/default/post_ai_messages_message_id_restore.py +166 -0
  85. holder/generated/api/default/post_ai_runner_pull.py +181 -0
  86. holder/generated/api/default/post_ai_runner_retry.py +139 -0
  87. holder/generated/api/default/post_ai_runs.py +194 -0
  88. holder/generated/api/default/post_ai_threads.py +176 -0
  89. holder/generated/api/default/post_bye.py +166 -0
  90. holder/generated/api/default/post_card_references_resolve.py +181 -0
  91. holder/generated/api/default/post_cards.py +176 -0
  92. holder/generated/api/default/post_cards_card_id_links.py +192 -0
  93. holder/generated/api/default/post_cards_card_id_milestones.py +199 -0
  94. holder/generated/api/default/post_cards_card_id_move.py +222 -0
  95. holder/generated/api/default/post_cards_card_id_resources.py +197 -0
  96. holder/generated/api/default/post_cards_card_id_restore.py +186 -0
  97. holder/generated/api/default/post_cards_card_id_tags.py +197 -0
  98. holder/generated/api/default/post_imports.py +160 -0
  99. holder/generated/api/default/post_locations.py +160 -0
  100. holder/generated/api/default/post_locations_location_id_test.py +105 -0
  101. holder/generated/api/default/post_projects.py +171 -0
  102. holder/generated/api/default/post_projects_project_id_git_pull.py +211 -0
  103. holder/generated/api/default/post_projects_project_id_git_push.py +193 -0
  104. holder/generated/api/default/post_projects_project_id_git_sync.py +207 -0
  105. holder/generated/api/default/post_projects_project_id_git_test_remote.py +205 -0
  106. holder/generated/api/default/post_projects_project_id_history_cards_card_id_restore.py +240 -0
  107. holder/generated/api/default/post_projects_project_id_recovery_token_export.py +196 -0
  108. holder/generated/api/default/post_projects_project_id_recovery_token_import.py +196 -0
  109. holder/generated/api/default/post_projects_project_id_repair_hierarchy.py +240 -0
  110. holder/generated/api/default/post_rebuild.py +176 -0
  111. holder/generated/api/default/post_recovery_token_import.py +185 -0
  112. holder/generated/api/default/post_reindex.py +139 -0
  113. holder/generated/api/default/post_resources.py +176 -0
  114. holder/generated/api/default/put_ai_local_models_config.py +173 -0
  115. holder/generated/api/default/put_ai_providers_credentials.py +175 -0
  116. holder/generated/api/default/put_locations_location_id_binding.py +117 -0
  117. holder/generated/api/default/put_locations_preferred.py +107 -0
  118. holder/generated/api/default/stream_changes.py +256 -0
  119. holder/generated/client.py +280 -0
  120. holder/generated/errors.py +16 -0
  121. holder/generated/models/__init__.py +569 -0
  122. holder/generated/models/ai_local_model_config_data.py +111 -0
  123. holder/generated/models/ai_local_model_config_response.py +78 -0
  124. holder/generated/models/ai_local_model_config_update_request.py +134 -0
  125. holder/generated/models/ai_message.py +204 -0
  126. holder/generated/models/ai_message_capture_request.py +246 -0
  127. holder/generated/models/ai_message_capture_request_context_type_0.py +46 -0
  128. holder/generated/models/ai_message_capture_response.py +78 -0
  129. holder/generated/models/ai_message_capture_response_data.py +78 -0
  130. holder/generated/models/ai_message_create_request.py +186 -0
  131. holder/generated/models/ai_message_create_response.py +78 -0
  132. holder/generated/models/ai_message_create_response_data.py +62 -0
  133. holder/generated/models/ai_message_get_response.py +76 -0
  134. holder/generated/models/ai_message_list_response.py +84 -0
  135. holder/generated/models/ai_message_update_request.py +203 -0
  136. holder/generated/models/ai_message_update_response.py +78 -0
  137. holder/generated/models/ai_message_update_response_data.py +62 -0
  138. holder/generated/models/ai_provider_catalog_provider.py +265 -0
  139. holder/generated/models/ai_provider_catalog_provider_api_type_0.py +46 -0
  140. holder/generated/models/ai_provider_catalog_provider_auth_type_0.py +46 -0
  141. holder/generated/models/ai_provider_catalog_provider_models_item.py +46 -0
  142. holder/generated/models/ai_provider_catalog_response.py +78 -0
  143. holder/generated/models/ai_provider_catalog_response_data.py +100 -0
  144. holder/generated/models/ai_provider_credential.py +94 -0
  145. holder/generated/models/ai_provider_credential_delete_response.py +80 -0
  146. holder/generated/models/ai_provider_credential_delete_response_data.py +62 -0
  147. holder/generated/models/ai_provider_credential_upsert_request.py +92 -0
  148. holder/generated/models/ai_provider_credential_upsert_response.py +78 -0
  149. holder/generated/models/ai_provider_credentials_list_response.py +80 -0
  150. holder/generated/models/ai_provider_credentials_list_response_data.py +78 -0
  151. holder/generated/models/ai_run_create_request.py +133 -0
  152. holder/generated/models/ai_run_create_request_context.py +46 -0
  153. holder/generated/models/ai_run_event_data.py +146 -0
  154. holder/generated/models/ai_run_get_response.py +76 -0
  155. holder/generated/models/ai_run_item.py +328 -0
  156. holder/generated/models/ai_run_item_policy_trace_type_0.py +46 -0
  157. holder/generated/models/ai_run_list_response.py +84 -0
  158. holder/generated/models/ai_status_data.py +186 -0
  159. holder/generated/models/ai_status_pull_job.py +130 -0
  160. holder/generated/models/ai_status_response.py +76 -0
  161. holder/generated/models/ai_thread.py +116 -0
  162. holder/generated/models/ai_thread_create_request.py +119 -0
  163. holder/generated/models/ai_thread_create_response.py +78 -0
  164. holder/generated/models/ai_thread_create_response_data.py +62 -0
  165. holder/generated/models/ai_thread_get_response.py +76 -0
  166. holder/generated/models/ai_thread_list_response.py +84 -0
  167. holder/generated/models/ai_thread_patch_response.py +78 -0
  168. holder/generated/models/ai_thread_patch_response_data.py +62 -0
  169. holder/generated/models/ai_thread_update_request.py +104 -0
  170. holder/generated/models/asset_import_job.py +141 -0
  171. holder/generated/models/asset_import_job_response.py +76 -0
  172. holder/generated/models/asset_import_job_status.py +13 -0
  173. holder/generated/models/asset_import_request.py +86 -0
  174. holder/generated/models/asset_placement.py +96 -0
  175. holder/generated/models/asset_placement_encoding.py +9 -0
  176. holder/generated/models/bye_response.py +62 -0
  177. holder/generated/models/calendar_card_activity.py +86 -0
  178. holder/generated/models/card_context_breadcrumb.py +113 -0
  179. holder/generated/models/card_context_breadcrumb_type.py +9 -0
  180. holder/generated/models/card_context_card.py +161 -0
  181. holder/generated/models/card_context_data.py +124 -0
  182. holder/generated/models/card_context_data_project.py +70 -0
  183. holder/generated/models/card_context_response.py +76 -0
  184. holder/generated/models/card_create_request.py +147 -0
  185. holder/generated/models/card_create_response.py +78 -0
  186. holder/generated/models/card_create_response_data.py +70 -0
  187. holder/generated/models/card_data.py +160 -0
  188. holder/generated/models/card_get_response.py +76 -0
  189. holder/generated/models/card_history_author.py +70 -0
  190. holder/generated/models/card_history_comparison_data.py +110 -0
  191. holder/generated/models/card_history_comparison_response.py +78 -0
  192. holder/generated/models/card_history_diff_line.py +100 -0
  193. holder/generated/models/card_history_diff_line_origin.py +10 -0
  194. holder/generated/models/card_history_entry.py +172 -0
  195. holder/generated/models/card_history_entry_kind.py +16 -0
  196. holder/generated/models/card_history_entry_saves_item.py +94 -0
  197. holder/generated/models/card_history_page_data.py +114 -0
  198. holder/generated/models/card_history_page_response.py +76 -0
  199. holder/generated/models/card_history_restore_response.py +80 -0
  200. holder/generated/models/card_history_restore_response_data.py +108 -0
  201. holder/generated/models/card_history_snapshot_response.py +80 -0
  202. holder/generated/models/card_history_snapshot_response_data.py +76 -0
  203. holder/generated/models/card_history_version.py +86 -0
  204. holder/generated/models/card_link.py +116 -0
  205. holder/generated/models/card_link_create_request.py +111 -0
  206. holder/generated/models/card_link_create_response.py +76 -0
  207. holder/generated/models/card_link_delete_request.py +80 -0
  208. holder/generated/models/card_link_list_response.py +84 -0
  209. holder/generated/models/card_list_item.py +161 -0
  210. holder/generated/models/card_list_response.py +84 -0
  211. holder/generated/models/card_move_intent.py +15 -0
  212. holder/generated/models/card_move_request.py +134 -0
  213. holder/generated/models/card_move_response.py +76 -0
  214. holder/generated/models/card_move_result.py +114 -0
  215. holder/generated/models/card_page.py +90 -0
  216. holder/generated/models/card_page_item.py +170 -0
  217. holder/generated/models/card_page_response.py +76 -0
  218. holder/generated/models/card_patch_response.py +78 -0
  219. holder/generated/models/card_patch_response_data.py +62 -0
  220. holder/generated/models/card_reference_candidate.py +84 -0
  221. holder/generated/models/card_reference_resolve_data.py +129 -0
  222. holder/generated/models/card_reference_resolve_data_match_kind.py +10 -0
  223. holder/generated/models/card_reference_resolve_data_status.py +10 -0
  224. holder/generated/models/card_reference_resolve_request.py +82 -0
  225. holder/generated/models/card_reference_resolve_request_scope.py +10 -0
  226. holder/generated/models/card_reference_resolve_response.py +78 -0
  227. holder/generated/models/card_tag_mutation_request.py +70 -0
  228. holder/generated/models/card_tag_mutation_response.py +78 -0
  229. holder/generated/models/card_tag_mutation_result.py +88 -0
  230. holder/generated/models/card_tag_mutation_result_outcome.py +12 -0
  231. holder/generated/models/card_update_request.py +122 -0
  232. holder/generated/models/caste_info.py +85 -0
  233. holder/generated/models/caste_info_name.py +12 -0
  234. holder/generated/models/caste_recommended_model.py +143 -0
  235. holder/generated/models/caste_recommended_model_required_caste.py +12 -0
  236. holder/generated/models/change_event_data.py +109 -0
  237. holder/generated/models/change_event_data_entity.py +14 -0
  238. holder/generated/models/delete_cards_card_id_children.py +9 -0
  239. holder/generated/models/delete_cards_card_id_resources_body.py +70 -0
  240. holder/generated/models/error.py +70 -0
  241. holder/generated/models/error_response.py +76 -0
  242. holder/generated/models/event_checkpoint.py +92 -0
  243. holder/generated/models/event_checkpoint_git_revisions.py +66 -0
  244. holder/generated/models/event_checkpoint_history_urls.py +48 -0
  245. holder/generated/models/event_checkpoint_response.py +76 -0
  246. holder/generated/models/event_resync_data.py +116 -0
  247. holder/generated/models/event_resync_data_reason.py +9 -0
  248. holder/generated/models/get_ai_catalog_json_response_200.py +46 -0
  249. holder/generated/models/get_ai_messages_message_id_backlinks_include_deleted.py +9 -0
  250. holder/generated/models/get_ai_messages_message_id_links_include_deleted.py +9 -0
  251. holder/generated/models/get_cards_card_id_backlinks_include_deleted.py +9 -0
  252. holder/generated/models/get_cards_card_id_links_include_deleted.py +9 -0
  253. holder/generated/models/get_cards_context_order.py +10 -0
  254. holder/generated/models/get_cards_order.py +10 -0
  255. holder/generated/models/get_cards_view.py +9 -0
  256. holder/generated/models/get_git_providers_json_response_200.py +46 -0
  257. holder/generated/models/get_locations_location_id_response_200.py +46 -0
  258. holder/generated/models/get_ping_response_200.py +8 -0
  259. holder/generated/models/get_projects_order.py +13 -0
  260. holder/generated/models/get_projects_project_id_cards_order.py +9 -0
  261. holder/generated/models/get_projects_project_id_cards_parent_type_0.py +8 -0
  262. holder/generated/models/get_projects_project_id_history_cards_card_id_compare_mode.py +9 -0
  263. holder/generated/models/get_projects_project_id_history_kind.py +13 -0
  264. holder/generated/models/health_data.py +110 -0
  265. holder/generated/models/health_data_crypt_filter.py +78 -0
  266. holder/generated/models/health_response.py +76 -0
  267. holder/generated/models/hierarchy_repair.py +100 -0
  268. holder/generated/models/hierarchy_repair_move.py +76 -0
  269. holder/generated/models/hierarchy_repair_request.py +62 -0
  270. holder/generated/models/hierarchy_repair_response.py +76 -0
  271. holder/generated/models/local_model.py +91 -0
  272. holder/generated/models/location_binding_request.py +81 -0
  273. holder/generated/models/location_binding_request_values.py +46 -0
  274. holder/generated/models/milestone.py +177 -0
  275. holder/generated/models/milestone_create_request.py +135 -0
  276. holder/generated/models/milestone_list_response.py +84 -0
  277. holder/generated/models/milestone_remove_response.py +78 -0
  278. holder/generated/models/milestone_remove_result.py +79 -0
  279. holder/generated/models/milestone_response.py +76 -0
  280. holder/generated/models/milestone_update_request.py +116 -0
  281. holder/generated/models/patch_locations_location_id_body.py +90 -0
  282. holder/generated/models/patch_locations_location_id_body_configuration.py +46 -0
  283. holder/generated/models/post_ai_runner_pull_body.py +62 -0
  284. holder/generated/models/post_cards_card_id_resources_body.py +70 -0
  285. holder/generated/models/post_locations_response_201.py +46 -0
  286. holder/generated/models/project.py +197 -0
  287. holder/generated/models/project_calendar_response.py +78 -0
  288. holder/generated/models/project_calendar_response_data.py +136 -0
  289. holder/generated/models/project_create_request.py +177 -0
  290. holder/generated/models/project_create_request_privacy_mode.py +9 -0
  291. holder/generated/models/project_create_response.py +78 -0
  292. holder/generated/models/project_create_response_data.py +62 -0
  293. holder/generated/models/project_delete_response.py +78 -0
  294. holder/generated/models/project_delete_response_data.py +62 -0
  295. holder/generated/models/project_encryption_check.py +94 -0
  296. holder/generated/models/project_encryption_check_response.py +80 -0
  297. holder/generated/models/project_encryption_check_response_data.py +92 -0
  298. holder/generated/models/project_encryption_check_response_data_privacy_mode.py +9 -0
  299. holder/generated/models/project_get_response.py +76 -0
  300. holder/generated/models/project_git_push_request.py +95 -0
  301. holder/generated/models/project_git_push_response.py +78 -0
  302. holder/generated/models/project_git_push_response_data.py +199 -0
  303. holder/generated/models/project_git_push_response_data_status.py +15 -0
  304. holder/generated/models/project_git_sync_operation_response.py +80 -0
  305. holder/generated/models/project_git_sync_operation_response_data.py +163 -0
  306. holder/generated/models/project_git_sync_operation_response_data_pull.py +96 -0
  307. holder/generated/models/project_git_sync_operation_response_data_pull_status.py +11 -0
  308. holder/generated/models/project_git_sync_operation_response_data_push.py +118 -0
  309. holder/generated/models/project_git_sync_operation_response_data_push_status.py +15 -0
  310. holder/generated/models/project_git_sync_operation_response_data_status.py +9 -0
  311. holder/generated/models/project_git_sync_request.py +94 -0
  312. holder/generated/models/project_git_sync_status_response.py +80 -0
  313. holder/generated/models/project_git_sync_status_response_data.py +76 -0
  314. holder/generated/models/project_git_test_remote_request.py +96 -0
  315. holder/generated/models/project_git_test_remote_response.py +80 -0
  316. holder/generated/models/project_git_test_remote_response_data.py +151 -0
  317. holder/generated/models/project_git_test_remote_response_data_status.py +14 -0
  318. holder/generated/models/project_history_activity.py +138 -0
  319. holder/generated/models/project_history_affected_object.py +74 -0
  320. holder/generated/models/project_history_affected_object_kind.py +13 -0
  321. holder/generated/models/project_history_page_data.py +115 -0
  322. holder/generated/models/project_history_page_response.py +78 -0
  323. holder/generated/models/project_list_response.py +84 -0
  324. holder/generated/models/project_privacy_mode.py +9 -0
  325. holder/generated/models/project_recovery_token_export_request.py +62 -0
  326. holder/generated/models/project_recovery_token_export_response.py +80 -0
  327. holder/generated/models/project_recovery_token_export_response_data.py +78 -0
  328. holder/generated/models/project_recovery_token_import_request.py +70 -0
  329. holder/generated/models/project_recovery_token_import_response.py +80 -0
  330. holder/generated/models/project_recovery_token_import_response_data.py +62 -0
  331. holder/generated/models/project_sync.py +227 -0
  332. holder/generated/models/project_tag.py +70 -0
  333. holder/generated/models/project_tag_list_response.py +84 -0
  334. holder/generated/models/project_update_request.py +181 -0
  335. holder/generated/models/project_update_request_privacy_mode.py +9 -0
  336. holder/generated/models/project_update_response.py +78 -0
  337. holder/generated/models/project_update_response_data.py +75 -0
  338. holder/generated/models/put_locations_preferred_body.py +70 -0
  339. holder/generated/models/rebuild_data.py +94 -0
  340. holder/generated/models/rebuild_request.py +62 -0
  341. holder/generated/models/rebuild_response.py +76 -0
  342. holder/generated/models/recovery_token_import_auto_response.py +80 -0
  343. holder/generated/models/recovery_token_import_auto_response_data.py +141 -0
  344. holder/generated/models/recovery_token_import_auto_response_data_pull_status.py +10 -0
  345. holder/generated/models/reindex_data.py +62 -0
  346. holder/generated/models/reindex_response.py +76 -0
  347. holder/generated/models/resource.py +134 -0
  348. holder/generated/models/resource_asset.py +140 -0
  349. holder/generated/models/resource_attachment_response.py +80 -0
  350. holder/generated/models/resource_attachment_response_data.py +90 -0
  351. holder/generated/models/resource_attachment_response_data_outcome.py +11 -0
  352. holder/generated/models/resource_create_request.py +129 -0
  353. holder/generated/models/resource_delete_response.py +78 -0
  354. holder/generated/models/resource_delete_response_data.py +62 -0
  355. holder/generated/models/resource_list_response.py +134 -0
  356. holder/generated/models/resource_metadata.py +55 -0
  357. holder/generated/models/resource_response.py +76 -0
  358. holder/generated/models/resource_update_request.py +102 -0
  359. holder/generated/models/runner_capabilities_data.py +220 -0
  360. holder/generated/models/runner_capabilities_response.py +78 -0
  361. holder/generated/models/runner_pull_job.py +122 -0
  362. holder/generated/models/runner_pull_progress.py +86 -0
  363. holder/generated/models/runner_pull_start_response.py +78 -0
  364. holder/generated/models/runner_pull_start_response_data.py +78 -0
  365. holder/generated/models/runner_pull_status_response.py +76 -0
  366. holder/generated/models/search_card_item.py +102 -0
  367. holder/generated/models/search_cards_response.py +84 -0
  368. holder/generated/models/search_message_item.py +86 -0
  369. holder/generated/models/search_messages_response.py +84 -0
  370. holder/generated/models/storage_location.py +149 -0
  371. holder/generated/models/storage_location_configuration.py +48 -0
  372. holder/generated/models/storage_location_list_response.py +100 -0
  373. holder/generated/models/storage_location_provider.py +9 -0
  374. holder/generated/models/storage_location_request.py +118 -0
  375. holder/generated/models/storage_location_request_configuration.py +46 -0
  376. holder/generated/models/storage_location_request_provider.py +9 -0
  377. holder/generated/models/trash_delete_response.py +78 -0
  378. holder/generated/models/trash_delete_response_data.py +46 -0
  379. holder/generated/models/trash_item.py +211 -0
  380. holder/generated/models/trash_list_response.py +84 -0
  381. holder/generated/types.py +54 -0
  382. holder/library.py +15 -0
  383. holder/models/__init__.py +15 -0
  384. holder/models/card.py +272 -0
  385. holder/models/project.py +207 -0
  386. holder/models/search.py +66 -0
  387. holder/models/tag.py +117 -0
  388. holder/py.typed +0 -0
  389. holder_python-0.2.5.dist-info/METADATA +120 -0
  390. holder_python-0.2.5.dist-info/RECORD +391 -0
  391. holder_python-0.2.5.dist-info/WHEEL +4 -0
@@ -0,0 +1,286 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.card_history_comparison_response import CardHistoryComparisonResponse
10
+ from ...models.error_response import ErrorResponse
11
+ from ...models.get_projects_project_id_history_cards_card_id_compare_mode import (
12
+ GetProjectsProjectIdHistoryCardsCardIdCompareMode,
13
+ )
14
+ from ...types import UNSET, Response, Unset
15
+
16
+
17
+ def _get_kwargs(
18
+ project_id: str,
19
+ card_id: str,
20
+ *,
21
+ from_: str | Unset = UNSET,
22
+ to: str,
23
+ mode: GetProjectsProjectIdHistoryCardsCardIdCompareMode
24
+ | Unset = GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE,
25
+ ) -> dict[str, Any]:
26
+
27
+ params: dict[str, Any] = {}
28
+
29
+ params["from"] = from_
30
+
31
+ params["to"] = to
32
+
33
+ json_mode: str | Unset = UNSET
34
+ if not isinstance(mode, Unset):
35
+ json_mode = mode.value
36
+
37
+ params["mode"] = json_mode
38
+
39
+ params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
40
+
41
+ _kwargs: dict[str, Any] = {
42
+ "method": "get",
43
+ "url": "/projects/{project_id}/history/cards/{card_id}/compare".format(
44
+ project_id=quote(str(project_id), safe=""),
45
+ card_id=quote(str(card_id), safe=""),
46
+ ),
47
+ "params": params,
48
+ }
49
+
50
+ return _kwargs
51
+
52
+
53
+ def _parse_response(
54
+ *, client: AuthenticatedClient | Client, response: httpx.Response
55
+ ) -> CardHistoryComparisonResponse | ErrorResponse | None:
56
+ if response.status_code == 200:
57
+ response_200 = CardHistoryComparisonResponse.from_dict(response.json())
58
+
59
+ return response_200
60
+
61
+ if response.status_code == 400:
62
+ response_400 = ErrorResponse.from_dict(response.json())
63
+
64
+ return response_400
65
+
66
+ if response.status_code == 404:
67
+ response_404 = ErrorResponse.from_dict(response.json())
68
+
69
+ return response_404
70
+
71
+ if response.status_code == 409:
72
+ response_409 = ErrorResponse.from_dict(response.json())
73
+
74
+ return response_409
75
+
76
+ if response.status_code == 413:
77
+ response_413 = ErrorResponse.from_dict(response.json())
78
+
79
+ return response_413
80
+
81
+ if response.status_code == 503:
82
+ response_503 = ErrorResponse.from_dict(response.json())
83
+
84
+ return response_503
85
+
86
+ if client.raise_on_unexpected_status:
87
+ raise errors.UnexpectedStatus(response.status_code, response.content)
88
+ else:
89
+ return None
90
+
91
+
92
+ def _build_response(
93
+ *, client: AuthenticatedClient | Client, response: httpx.Response
94
+ ) -> Response[CardHistoryComparisonResponse | ErrorResponse]:
95
+ return Response(
96
+ status_code=HTTPStatus(response.status_code),
97
+ content=response.content,
98
+ headers=response.headers,
99
+ parsed=_parse_response(client=client, response=response),
100
+ )
101
+
102
+
103
+ def sync_detailed(
104
+ project_id: str,
105
+ card_id: str,
106
+ *,
107
+ client: AuthenticatedClient | Client,
108
+ from_: str | Unset = UNSET,
109
+ to: str,
110
+ mode: GetProjectsProjectIdHistoryCardsCardIdCompareMode
111
+ | Unset = GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE,
112
+ ) -> Response[CardHistoryComparisonResponse | ErrorResponse]:
113
+ """Compare saved card versions or the change introduced by one revision
114
+
115
+ In since mode, compares the explicitly selected from and to snapshots. In change mode, compares the
116
+ first parent of to with to; a root commit is compared with a previously nonexistent card. Merge
117
+ commits use only their first parent, not a combined multi-parent diff.
118
+
119
+ Args:
120
+ project_id (str):
121
+ card_id (str):
122
+ from_ (str | Unset): Full Git commit object ID or a unique leading commit-ID prefix.
123
+ Successful responses use the canonical full lowercase object ID.
124
+ to (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
125
+ responses use the canonical full lowercase object ID.
126
+ mode (GetProjectsProjectIdHistoryCardsCardIdCompareMode | Unset): Default:
127
+ GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE.
128
+
129
+ Raises:
130
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
131
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
132
+
133
+ Returns:
134
+ Response[CardHistoryComparisonResponse | ErrorResponse]
135
+ """
136
+
137
+ kwargs = _get_kwargs(
138
+ project_id=project_id,
139
+ card_id=card_id,
140
+ from_=from_,
141
+ to=to,
142
+ mode=mode,
143
+ )
144
+
145
+ response = client.get_httpx_client().request(
146
+ **kwargs,
147
+ )
148
+
149
+ return _build_response(client=client, response=response)
150
+
151
+
152
+ def sync(
153
+ project_id: str,
154
+ card_id: str,
155
+ *,
156
+ client: AuthenticatedClient | Client,
157
+ from_: str | Unset = UNSET,
158
+ to: str,
159
+ mode: GetProjectsProjectIdHistoryCardsCardIdCompareMode
160
+ | Unset = GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE,
161
+ ) -> CardHistoryComparisonResponse | ErrorResponse | None:
162
+ """Compare saved card versions or the change introduced by one revision
163
+
164
+ In since mode, compares the explicitly selected from and to snapshots. In change mode, compares the
165
+ first parent of to with to; a root commit is compared with a previously nonexistent card. Merge
166
+ commits use only their first parent, not a combined multi-parent diff.
167
+
168
+ Args:
169
+ project_id (str):
170
+ card_id (str):
171
+ from_ (str | Unset): Full Git commit object ID or a unique leading commit-ID prefix.
172
+ Successful responses use the canonical full lowercase object ID.
173
+ to (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
174
+ responses use the canonical full lowercase object ID.
175
+ mode (GetProjectsProjectIdHistoryCardsCardIdCompareMode | Unset): Default:
176
+ GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE.
177
+
178
+ Raises:
179
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
180
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
181
+
182
+ Returns:
183
+ CardHistoryComparisonResponse | ErrorResponse
184
+ """
185
+
186
+ return sync_detailed(
187
+ project_id=project_id,
188
+ card_id=card_id,
189
+ client=client,
190
+ from_=from_,
191
+ to=to,
192
+ mode=mode,
193
+ ).parsed
194
+
195
+
196
+ async def asyncio_detailed(
197
+ project_id: str,
198
+ card_id: str,
199
+ *,
200
+ client: AuthenticatedClient | Client,
201
+ from_: str | Unset = UNSET,
202
+ to: str,
203
+ mode: GetProjectsProjectIdHistoryCardsCardIdCompareMode
204
+ | Unset = GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE,
205
+ ) -> Response[CardHistoryComparisonResponse | ErrorResponse]:
206
+ """Compare saved card versions or the change introduced by one revision
207
+
208
+ In since mode, compares the explicitly selected from and to snapshots. In change mode, compares the
209
+ first parent of to with to; a root commit is compared with a previously nonexistent card. Merge
210
+ commits use only their first parent, not a combined multi-parent diff.
211
+
212
+ Args:
213
+ project_id (str):
214
+ card_id (str):
215
+ from_ (str | Unset): Full Git commit object ID or a unique leading commit-ID prefix.
216
+ Successful responses use the canonical full lowercase object ID.
217
+ to (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
218
+ responses use the canonical full lowercase object ID.
219
+ mode (GetProjectsProjectIdHistoryCardsCardIdCompareMode | Unset): Default:
220
+ GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE.
221
+
222
+ Raises:
223
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
224
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
225
+
226
+ Returns:
227
+ Response[CardHistoryComparisonResponse | ErrorResponse]
228
+ """
229
+
230
+ kwargs = _get_kwargs(
231
+ project_id=project_id,
232
+ card_id=card_id,
233
+ from_=from_,
234
+ to=to,
235
+ mode=mode,
236
+ )
237
+
238
+ response = await client.get_async_httpx_client().request(**kwargs)
239
+
240
+ return _build_response(client=client, response=response)
241
+
242
+
243
+ async def asyncio(
244
+ project_id: str,
245
+ card_id: str,
246
+ *,
247
+ client: AuthenticatedClient | Client,
248
+ from_: str | Unset = UNSET,
249
+ to: str,
250
+ mode: GetProjectsProjectIdHistoryCardsCardIdCompareMode
251
+ | Unset = GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE,
252
+ ) -> CardHistoryComparisonResponse | ErrorResponse | None:
253
+ """Compare saved card versions or the change introduced by one revision
254
+
255
+ In since mode, compares the explicitly selected from and to snapshots. In change mode, compares the
256
+ first parent of to with to; a root commit is compared with a previously nonexistent card. Merge
257
+ commits use only their first parent, not a combined multi-parent diff.
258
+
259
+ Args:
260
+ project_id (str):
261
+ card_id (str):
262
+ from_ (str | Unset): Full Git commit object ID or a unique leading commit-ID prefix.
263
+ Successful responses use the canonical full lowercase object ID.
264
+ to (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
265
+ responses use the canonical full lowercase object ID.
266
+ mode (GetProjectsProjectIdHistoryCardsCardIdCompareMode | Unset): Default:
267
+ GetProjectsProjectIdHistoryCardsCardIdCompareMode.SINCE.
268
+
269
+ Raises:
270
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
271
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
272
+
273
+ Returns:
274
+ CardHistoryComparisonResponse | ErrorResponse
275
+ """
276
+
277
+ return (
278
+ await asyncio_detailed(
279
+ project_id=project_id,
280
+ card_id=card_id,
281
+ client=client,
282
+ from_=from_,
283
+ to=to,
284
+ mode=mode,
285
+ )
286
+ ).parsed
@@ -0,0 +1,225 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.card_history_snapshot_response import CardHistorySnapshotResponse
10
+ from ...models.error_response import ErrorResponse
11
+ from ...types import UNSET, Response
12
+
13
+
14
+ def _get_kwargs(
15
+ project_id: str,
16
+ card_id: str,
17
+ *,
18
+ oid: str,
19
+ ) -> dict[str, Any]:
20
+
21
+ params: dict[str, Any] = {}
22
+
23
+ params["oid"] = oid
24
+
25
+ params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
26
+
27
+ _kwargs: dict[str, Any] = {
28
+ "method": "get",
29
+ "url": "/projects/{project_id}/history/cards/{card_id}/snapshot".format(
30
+ project_id=quote(str(project_id), safe=""),
31
+ card_id=quote(str(card_id), safe=""),
32
+ ),
33
+ "params": params,
34
+ }
35
+
36
+ return _kwargs
37
+
38
+
39
+ def _parse_response(
40
+ *, client: AuthenticatedClient | Client, response: httpx.Response
41
+ ) -> CardHistorySnapshotResponse | ErrorResponse | None:
42
+ if response.status_code == 200:
43
+ response_200 = CardHistorySnapshotResponse.from_dict(response.json())
44
+
45
+ return response_200
46
+
47
+ if response.status_code == 400:
48
+ response_400 = ErrorResponse.from_dict(response.json())
49
+
50
+ return response_400
51
+
52
+ if response.status_code == 401:
53
+ response_401 = ErrorResponse.from_dict(response.json())
54
+
55
+ return response_401
56
+
57
+ if response.status_code == 404:
58
+ response_404 = ErrorResponse.from_dict(response.json())
59
+
60
+ return response_404
61
+
62
+ if response.status_code == 409:
63
+ response_409 = ErrorResponse.from_dict(response.json())
64
+
65
+ return response_409
66
+
67
+ if response.status_code == 413:
68
+ response_413 = ErrorResponse.from_dict(response.json())
69
+
70
+ return response_413
71
+
72
+ if response.status_code == 503:
73
+ response_503 = ErrorResponse.from_dict(response.json())
74
+
75
+ return response_503
76
+
77
+ if client.raise_on_unexpected_status:
78
+ raise errors.UnexpectedStatus(response.status_code, response.content)
79
+ else:
80
+ return None
81
+
82
+
83
+ def _build_response(
84
+ *, client: AuthenticatedClient | Client, response: httpx.Response
85
+ ) -> Response[CardHistorySnapshotResponse | ErrorResponse]:
86
+ return Response(
87
+ status_code=HTTPStatus(response.status_code),
88
+ content=response.content,
89
+ headers=response.headers,
90
+ parsed=_parse_response(client=client, response=response),
91
+ )
92
+
93
+
94
+ def sync_detailed(
95
+ project_id: str,
96
+ card_id: str,
97
+ *,
98
+ client: AuthenticatedClient | Client,
99
+ oid: str,
100
+ ) -> Response[CardHistorySnapshotResponse | ErrorResponse]:
101
+ """Read a card snapshot at a selected revision
102
+
103
+ Args:
104
+ project_id (str):
105
+ card_id (str):
106
+ oid (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
107
+ responses use the canonical full lowercase object ID.
108
+
109
+ Raises:
110
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
111
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
112
+
113
+ Returns:
114
+ Response[CardHistorySnapshotResponse | ErrorResponse]
115
+ """
116
+
117
+ kwargs = _get_kwargs(
118
+ project_id=project_id,
119
+ card_id=card_id,
120
+ oid=oid,
121
+ )
122
+
123
+ response = client.get_httpx_client().request(
124
+ **kwargs,
125
+ )
126
+
127
+ return _build_response(client=client, response=response)
128
+
129
+
130
+ def sync(
131
+ project_id: str,
132
+ card_id: str,
133
+ *,
134
+ client: AuthenticatedClient | Client,
135
+ oid: str,
136
+ ) -> CardHistorySnapshotResponse | ErrorResponse | None:
137
+ """Read a card snapshot at a selected revision
138
+
139
+ Args:
140
+ project_id (str):
141
+ card_id (str):
142
+ oid (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
143
+ responses use the canonical full lowercase object ID.
144
+
145
+ Raises:
146
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
147
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
148
+
149
+ Returns:
150
+ CardHistorySnapshotResponse | ErrorResponse
151
+ """
152
+
153
+ return sync_detailed(
154
+ project_id=project_id,
155
+ card_id=card_id,
156
+ client=client,
157
+ oid=oid,
158
+ ).parsed
159
+
160
+
161
+ async def asyncio_detailed(
162
+ project_id: str,
163
+ card_id: str,
164
+ *,
165
+ client: AuthenticatedClient | Client,
166
+ oid: str,
167
+ ) -> Response[CardHistorySnapshotResponse | ErrorResponse]:
168
+ """Read a card snapshot at a selected revision
169
+
170
+ Args:
171
+ project_id (str):
172
+ card_id (str):
173
+ oid (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
174
+ responses use the canonical full lowercase object ID.
175
+
176
+ Raises:
177
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
178
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
179
+
180
+ Returns:
181
+ Response[CardHistorySnapshotResponse | ErrorResponse]
182
+ """
183
+
184
+ kwargs = _get_kwargs(
185
+ project_id=project_id,
186
+ card_id=card_id,
187
+ oid=oid,
188
+ )
189
+
190
+ response = await client.get_async_httpx_client().request(**kwargs)
191
+
192
+ return _build_response(client=client, response=response)
193
+
194
+
195
+ async def asyncio(
196
+ project_id: str,
197
+ card_id: str,
198
+ *,
199
+ client: AuthenticatedClient | Client,
200
+ oid: str,
201
+ ) -> CardHistorySnapshotResponse | ErrorResponse | None:
202
+ """Read a card snapshot at a selected revision
203
+
204
+ Args:
205
+ project_id (str):
206
+ card_id (str):
207
+ oid (str): Full Git commit object ID or a unique leading commit-ID prefix. Successful
208
+ responses use the canonical full lowercase object ID.
209
+
210
+ Raises:
211
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
212
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
213
+
214
+ Returns:
215
+ CardHistorySnapshotResponse | ErrorResponse
216
+ """
217
+
218
+ return (
219
+ await asyncio_detailed(
220
+ project_id=project_id,
221
+ card_id=card_id,
222
+ client=client,
223
+ oid=oid,
224
+ )
225
+ ).parsed
@@ -0,0 +1,171 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.error_response import ErrorResponse
10
+ from ...models.project_tag_list_response import ProjectTagListResponse
11
+ from ...types import Response
12
+
13
+
14
+ def _get_kwargs(
15
+ project_id: str,
16
+ ) -> dict[str, Any]:
17
+
18
+ _kwargs: dict[str, Any] = {
19
+ "method": "get",
20
+ "url": "/projects/{project_id}/tags".format(
21
+ project_id=quote(str(project_id), safe=""),
22
+ ),
23
+ }
24
+
25
+ return _kwargs
26
+
27
+
28
+ def _parse_response(
29
+ *, client: AuthenticatedClient | Client, response: httpx.Response
30
+ ) -> ErrorResponse | ProjectTagListResponse | None:
31
+ if response.status_code == 200:
32
+ response_200 = ProjectTagListResponse.from_dict(response.json())
33
+
34
+ return response_200
35
+
36
+ if response.status_code == 401:
37
+ response_401 = ErrorResponse.from_dict(response.json())
38
+
39
+ return response_401
40
+
41
+ if response.status_code == 404:
42
+ response_404 = ErrorResponse.from_dict(response.json())
43
+
44
+ return response_404
45
+
46
+ if response.status_code == 500:
47
+ response_500 = ErrorResponse.from_dict(response.json())
48
+
49
+ return response_500
50
+
51
+ if client.raise_on_unexpected_status:
52
+ raise errors.UnexpectedStatus(response.status_code, response.content)
53
+ else:
54
+ return None
55
+
56
+
57
+ def _build_response(
58
+ *, client: AuthenticatedClient | Client, response: httpx.Response
59
+ ) -> Response[ErrorResponse | ProjectTagListResponse]:
60
+ return Response(
61
+ status_code=HTTPStatus(response.status_code),
62
+ content=response.content,
63
+ headers=response.headers,
64
+ parsed=_parse_response(client=client, response=response),
65
+ )
66
+
67
+
68
+ def sync_detailed(
69
+ project_id: str,
70
+ *,
71
+ client: AuthenticatedClient | Client,
72
+ ) -> Response[ErrorResponse | ProjectTagListResponse]:
73
+ """List project tags with live-card counts
74
+
75
+ Args:
76
+ project_id (str):
77
+
78
+ Raises:
79
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
80
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
81
+
82
+ Returns:
83
+ Response[ErrorResponse | ProjectTagListResponse]
84
+ """
85
+
86
+ kwargs = _get_kwargs(
87
+ project_id=project_id,
88
+ )
89
+
90
+ response = client.get_httpx_client().request(
91
+ **kwargs,
92
+ )
93
+
94
+ return _build_response(client=client, response=response)
95
+
96
+
97
+ def sync(
98
+ project_id: str,
99
+ *,
100
+ client: AuthenticatedClient | Client,
101
+ ) -> ErrorResponse | ProjectTagListResponse | None:
102
+ """List project tags with live-card counts
103
+
104
+ Args:
105
+ project_id (str):
106
+
107
+ Raises:
108
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
109
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
110
+
111
+ Returns:
112
+ ErrorResponse | ProjectTagListResponse
113
+ """
114
+
115
+ return sync_detailed(
116
+ project_id=project_id,
117
+ client=client,
118
+ ).parsed
119
+
120
+
121
+ async def asyncio_detailed(
122
+ project_id: str,
123
+ *,
124
+ client: AuthenticatedClient | Client,
125
+ ) -> Response[ErrorResponse | ProjectTagListResponse]:
126
+ """List project tags with live-card counts
127
+
128
+ Args:
129
+ project_id (str):
130
+
131
+ Raises:
132
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
133
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
134
+
135
+ Returns:
136
+ Response[ErrorResponse | ProjectTagListResponse]
137
+ """
138
+
139
+ kwargs = _get_kwargs(
140
+ project_id=project_id,
141
+ )
142
+
143
+ response = await client.get_async_httpx_client().request(**kwargs)
144
+
145
+ return _build_response(client=client, response=response)
146
+
147
+
148
+ async def asyncio(
149
+ project_id: str,
150
+ *,
151
+ client: AuthenticatedClient | Client,
152
+ ) -> ErrorResponse | ProjectTagListResponse | None:
153
+ """List project tags with live-card counts
154
+
155
+ Args:
156
+ project_id (str):
157
+
158
+ Raises:
159
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
160
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
161
+
162
+ Returns:
163
+ ErrorResponse | ProjectTagListResponse
164
+ """
165
+
166
+ return (
167
+ await asyncio_detailed(
168
+ project_id=project_id,
169
+ client=client,
170
+ )
171
+ ).parsed