flywheel-sdk 21.2.0rc0__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 (772) hide show
  1. flywheel/__init__.py +784 -0
  2. flywheel/api/__init__.py +46 -0
  3. flywheel/api/acquisitions_api.py +5014 -0
  4. flywheel/api/analyses_api.py +3848 -0
  5. flywheel/api/audit_trail_api.py +568 -0
  6. flywheel/api/auth_api.py +121 -0
  7. flywheel/api/batch_api.py +630 -0
  8. flywheel/api/bulk_api.py +140 -0
  9. flywheel/api/change_log_api.py +254 -0
  10. flywheel/api/collections_api.py +3913 -0
  11. flywheel/api/config_api.py +299 -0
  12. flywheel/api/container_tasks_api.py +137 -0
  13. flywheel/api/container_type_api.py +137 -0
  14. flywheel/api/containers_api.py +4784 -0
  15. flywheel/api/custom_filters_api.py +466 -0
  16. flywheel/api/data_view_executions_api.py +549 -0
  17. flywheel/api/dataexplorer_api.py +1192 -0
  18. flywheel/api/devices_api.py +1071 -0
  19. flywheel/api/dimse_api.py +814 -0
  20. flywheel/api/download_api.py +261 -0
  21. flywheel/api/files_api.py +1868 -0
  22. flywheel/api/form_responses_api.py +703 -0
  23. flywheel/api/gears_api.py +1875 -0
  24. flywheel/api/groups_api.py +2829 -0
  25. flywheel/api/jobs_api.py +2320 -0
  26. flywheel/api/jupyterlab_servers_api.py +245 -0
  27. flywheel/api/modalities_api.py +562 -0
  28. flywheel/api/packfiles_api.py +121 -0
  29. flywheel/api/projects_api.py +7820 -0
  30. flywheel/api/protocols_api.py +757 -0
  31. flywheel/api/reports_api.py +1057 -0
  32. flywheel/api/resolve_api.py +276 -0
  33. flywheel/api/roles_api.py +563 -0
  34. flywheel/api/sessions_api.py +5296 -0
  35. flywheel/api/site_api.py +1552 -0
  36. flywheel/api/staffing_pools_api.py +677 -0
  37. flywheel/api/subjects_api.py +5349 -0
  38. flywheel/api/tasks_api.py +897 -0
  39. flywheel/api/tree_api.py +266 -0
  40. flywheel/api/uids_api.py +140 -0
  41. flywheel/api/upload_api.py +842 -0
  42. flywheel/api/users_api.py +2142 -0
  43. flywheel/api/views_api.py +1089 -0
  44. flywheel/api_client.py +748 -0
  45. flywheel/client.py +291 -0
  46. flywheel/configuration.py +308 -0
  47. flywheel/drone_login.py +65 -0
  48. flywheel/file_spec.py +67 -0
  49. flywheel/finder.py +168 -0
  50. flywheel/flywheel.py +9867 -0
  51. flywheel/gear_context.py +374 -0
  52. flywheel/models/__init__.py +726 -0
  53. flywheel/models/access_level.py +30 -0
  54. flywheel/models/access_permission.py +197 -0
  55. flywheel/models/access_permission_output.py +192 -0
  56. flywheel/models/access_permission_update.py +166 -0
  57. flywheel/models/access_type.py +54 -0
  58. flywheel/models/accumulator.py +33 -0
  59. flywheel/models/acquisition.py +25 -0
  60. flywheel/models/acquisition_container_output.py +34 -0
  61. flywheel/models/acquisition_copy_input.py +223 -0
  62. flywheel/models/acquisition_input.py +297 -0
  63. flywheel/models/acquisition_list_output.py +767 -0
  64. flywheel/models/acquisition_modify_input.py +299 -0
  65. flywheel/models/acquisition_node.py +35 -0
  66. flywheel/models/acquisition_output.py +767 -0
  67. flywheel/models/acquisition_parents.py +241 -0
  68. flywheel/models/acquisition_template_options.py +275 -0
  69. flywheel/models/acquisition_upsert_input.py +383 -0
  70. flywheel/models/acquisition_upsert_output.py +243 -0
  71. flywheel/models/action.py +91 -0
  72. flywheel/models/adhoc_analysis_input.py +247 -0
  73. flywheel/models/analysis.py +25 -0
  74. flywheel/models/analysis_container_output.py +34 -0
  75. flywheel/models/analysis_files_create_ticket_output.py +241 -0
  76. flywheel/models/analysis_input.py +310 -0
  77. flywheel/models/analysis_input_legacy.py +25 -0
  78. flywheel/models/analysis_list_output.py +680 -0
  79. flywheel/models/analysis_list_output_inflated_job.py +650 -0
  80. flywheel/models/analysis_modify_input.py +191 -0
  81. flywheel/models/analysis_node.py +35 -0
  82. flywheel/models/analysis_output.py +683 -0
  83. flywheel/models/analysis_output_inflated_job.py +674 -0
  84. flywheel/models/analysis_parents.py +270 -0
  85. flywheel/models/analysis_update.py +25 -0
  86. flywheel/models/api_key_input_with_optional_label.py +191 -0
  87. flywheel/models/api_key_output.py +297 -0
  88. flywheel/models/as_storage.py +298 -0
  89. flywheel/models/assignee.py +192 -0
  90. flywheel/models/assignee_type.py +29 -0
  91. flywheel/models/audit_trail_report.py +486 -0
  92. flywheel/models/audit_trail_report_status.py +32 -0
  93. flywheel/models/auth0_auth_out.py +323 -0
  94. flywheel/models/auth0_options_out.py +319 -0
  95. flywheel/models/auth_out.py +357 -0
  96. flywheel/models/auth_session_output.py +272 -0
  97. flywheel/models/avatars.py +218 -0
  98. flywheel/models/aws_creds.py +191 -0
  99. flywheel/models/aws_storage.py +354 -0
  100. flywheel/models/azure_creds.py +190 -0
  101. flywheel/models/base_aet.py +245 -0
  102. flywheel/models/base_compute.py +426 -0
  103. flywheel/models/batch.py +360 -0
  104. flywheel/models/batch_cancel_output.py +36 -0
  105. flywheel/models/batch_create_filters.py +220 -0
  106. flywheel/models/batch_job_analysis_input.py +281 -0
  107. flywheel/models/batch_jobs_proposal_input.py +36 -0
  108. flywheel/models/batch_proposal.py +25 -0
  109. flywheel/models/batch_proposal_detail.py +36 -0
  110. flywheel/models/batch_proposal_input.py +25 -0
  111. flywheel/models/body.py +36 -0
  112. flywheel/models/body_regenerate_key_api_devices_device_id_key_post.py +25 -0
  113. flywheel/models/body_region.py +46 -0
  114. flywheel/models/bookmark.py +189 -0
  115. flywheel/models/bulk_move_input.py +272 -0
  116. flywheel/models/bulk_move_sessions.py +25 -0
  117. flywheel/models/callbacks_virus_scan_input.py +36 -0
  118. flywheel/models/cancelled_batch_output.py +163 -0
  119. flywheel/models/catalog_list_output.py +407 -0
  120. flywheel/models/central_out.py +299 -0
  121. flywheel/models/change.py +379 -0
  122. flywheel/models/change_log_container_type.py +38 -0
  123. flywheel/models/change_log_document.py +245 -0
  124. flywheel/models/change_method.py +33 -0
  125. flywheel/models/classic_batch_job_output.py +352 -0
  126. flywheel/models/classic_batch_job_output_inflated_jobs.py +379 -0
  127. flywheel/models/classic_batch_proposal_input.py +388 -0
  128. flywheel/models/classic_batch_proposal_output.py +471 -0
  129. flywheel/models/classification_add_delete.py +36 -0
  130. flywheel/models/classification_replace.py +36 -0
  131. flywheel/models/classification_update_input.py +36 -0
  132. flywheel/models/cohort.py +29 -0
  133. flywheel/models/collection.py +25 -0
  134. flywheel/models/collection_container_output.py +32 -0
  135. flywheel/models/collection_input.py +217 -0
  136. flywheel/models/collection_input_with_contents.py +248 -0
  137. flywheel/models/collection_node.py +192 -0
  138. flywheel/models/collection_node_level.py +31 -0
  139. flywheel/models/collection_operation.py +193 -0
  140. flywheel/models/collection_operation_type.py +29 -0
  141. flywheel/models/collection_output.py +639 -0
  142. flywheel/models/collection_with_stats.py +637 -0
  143. flywheel/models/column.py +286 -0
  144. flywheel/models/column_type.py +32 -0
  145. flywheel/models/common_classification.py +135 -0
  146. flywheel/models/common_deleted_count.py +25 -0
  147. flywheel/models/common_editions.py +25 -0
  148. flywheel/models/common_info.py +135 -0
  149. flywheel/models/common_join_origins.py +25 -0
  150. flywheel/models/common_key.py +36 -0
  151. flywheel/models/common_modified_count.py +25 -0
  152. flywheel/models/common_object_created.py +36 -0
  153. flywheel/models/common_project_settings.py +25 -0
  154. flywheel/models/common_settings.py +36 -0
  155. flywheel/models/complete_multipart_upload_output.py +189 -0
  156. flywheel/models/complete_s3_multipart_upload_input.py +241 -0
  157. flywheel/models/config_feature_map.py +36 -0
  158. flywheel/models/config_out.py +381 -0
  159. flywheel/models/config_output.py +36 -0
  160. flywheel/models/config_site_config_output.py +36 -0
  161. flywheel/models/config_site_settings.py +36 -0
  162. flywheel/models/config_site_settings_input.py +36 -0
  163. flywheel/models/conflict_types.py +30 -0
  164. flywheel/models/container_delete_reason.py +39 -0
  165. flywheel/models/container_filter.py +193 -0
  166. flywheel/models/container_id_view_input.py +521 -0
  167. flywheel/models/container_id_view_input_execute_and_save.py +308 -0
  168. flywheel/models/container_modify.py +536 -0
  169. flywheel/models/container_new_output.py +25 -0
  170. flywheel/models/container_node_min.py +350 -0
  171. flywheel/models/container_output.py +36 -0
  172. flywheel/models/container_output_with_files.py +283 -0
  173. flywheel/models/container_parents.py +311 -0
  174. flywheel/models/container_pipeline_input.py +536 -0
  175. flywheel/models/container_project_parents.py +25 -0
  176. flywheel/models/container_reference.py +193 -0
  177. flywheel/models/container_reference_with_label.py +219 -0
  178. flywheel/models/container_session_parents.py +25 -0
  179. flywheel/models/container_subject_parents.py +25 -0
  180. flywheel/models/container_type.py +39 -0
  181. flywheel/models/container_uidcheck.py +253 -0
  182. flywheel/models/container_update.py +135 -0
  183. flywheel/models/context_input.py +217 -0
  184. flywheel/models/copy_filter.py +299 -0
  185. flywheel/models/copy_status.py +32 -0
  186. flywheel/models/core_models_api_key_api_key_input.py +190 -0
  187. flywheel/models/core_models_audit_trail_create_report_input.py +273 -0
  188. flywheel/models/core_models_audit_trail_modify_report_input.py +167 -0
  189. flywheel/models/core_models_common_source.py +189 -0
  190. flywheel/models/core_models_jobs_api_key_input.py +191 -0
  191. flywheel/models/core_models_search_parent_type.py +33 -0
  192. flywheel/models/core_workflows_form_responses_models_form_parents.py +163 -0
  193. flywheel/models/core_workflows_form_responses_models_form_response_output.py +440 -0
  194. flywheel/models/core_workflows_reader_models_reader_task_parents.py +295 -0
  195. flywheel/models/creds.py +135 -0
  196. flywheel/models/curator.py +221 -0
  197. flywheel/models/current_user_output.py +707 -0
  198. flywheel/models/custom_field.py +437 -0
  199. flywheel/models/custom_form.py +244 -0
  200. flywheel/models/cvat_info.py +275 -0
  201. flywheel/models/cvat_settings.py +272 -0
  202. flywheel/models/cvat_settings_input.py +272 -0
  203. flywheel/models/cvat_sync_state.py +30 -0
  204. flywheel/models/daily_report_usage.py +565 -0
  205. flywheel/models/data_strategy.py +29 -0
  206. flywheel/models/data_view.py +25 -0
  207. flywheel/models/data_view_analysis_file_spec.py +221 -0
  208. flywheel/models/data_view_analysis_filter_spec.py +221 -0
  209. flywheel/models/data_view_column_alias.py +337 -0
  210. flywheel/models/data_view_column_spec.py +286 -0
  211. flywheel/models/data_view_execution.py +505 -0
  212. flywheel/models/data_view_execution_state.py +31 -0
  213. flywheel/models/data_view_file_spec.py +392 -0
  214. flywheel/models/data_view_group_by.py +166 -0
  215. flywheel/models/data_view_group_by_column.py +194 -0
  216. flywheel/models/data_view_name_filter_spec.py +194 -0
  217. flywheel/models/data_view_output.py +25 -0
  218. flywheel/models/data_view_save_data_view_input.py +25 -0
  219. flywheel/models/data_view_zip_filter_spec.py +223 -0
  220. flywheel/models/default_flywheel_role.py +30 -0
  221. flywheel/models/deid_log_skip_reason.py +29 -0
  222. flywheel/models/delete_by_search_query.py +253 -0
  223. flywheel/models/deleted_file.py +514 -0
  224. flywheel/models/deleted_result.py +194 -0
  225. flywheel/models/deprecated_action.py +29 -0
  226. flywheel/models/destination_container_type.py +30 -0
  227. flywheel/models/device.py +437 -0
  228. flywheel/models/device_admin_update.py +194 -0
  229. flywheel/models/device_create.py +219 -0
  230. flywheel/models/device_self_update.py +272 -0
  231. flywheel/models/device_status.py +36 -0
  232. flywheel/models/device_status_entry.py +221 -0
  233. flywheel/models/device_storage_strategy_update.py +193 -0
  234. flywheel/models/dimse_project_input.py +36 -0
  235. flywheel/models/dimse_project_output.py +36 -0
  236. flywheel/models/dimse_service_input.py +36 -0
  237. flywheel/models/dimse_service_output.py +36 -0
  238. flywheel/models/download.py +249 -0
  239. flywheel/models/download_container_filter.py +167 -0
  240. flywheel/models/download_container_filter_definition.py +222 -0
  241. flywheel/models/download_filter.py +221 -0
  242. flywheel/models/download_filter_definition.py +195 -0
  243. flywheel/models/download_format.py +29 -0
  244. flywheel/models/download_input.py +25 -0
  245. flywheel/models/download_node.py +189 -0
  246. flywheel/models/download_strategy.py +31 -0
  247. flywheel/models/download_ticket.py +36 -0
  248. flywheel/models/download_ticket_stub.py +249 -0
  249. flywheel/models/download_ticket_with_summary.py +36 -0
  250. flywheel/models/e_signature.py +242 -0
  251. flywheel/models/edition.py +169 -0
  252. flywheel/models/egress_device.py +597 -0
  253. flywheel/models/egress_device_page.py +219 -0
  254. flywheel/models/egress_provider.py +408 -0
  255. flywheel/models/egress_provider_id.py +164 -0
  256. flywheel/models/exchange_storage.py +243 -0
  257. flywheel/models/executor_info.py +353 -0
  258. flywheel/models/export_templates.py +195 -0
  259. flywheel/models/features.py +1838 -0
  260. flywheel/models/field_change.py +271 -0
  261. flywheel/models/field_change_log_document.py +245 -0
  262. flywheel/models/field_type.py +37 -0
  263. flywheel/models/file.py +1139 -0
  264. flywheel/models/file_classification_delta.py +245 -0
  265. flywheel/models/file_container_type.py +34 -0
  266. flywheel/models/file_entry.py +740 -0
  267. flywheel/models/file_export_templates.py +272 -0
  268. flywheel/models/file_format.py +33 -0
  269. flywheel/models/file_gear_info.py +215 -0
  270. flywheel/models/file_group.py +29 -0
  271. flywheel/models/file_list_output.py +1115 -0
  272. flywheel/models/file_modify_input.py +191 -0
  273. flywheel/models/file_move_input.py +221 -0
  274. flywheel/models/file_node.py +1138 -0
  275. flywheel/models/file_node_min.py +321 -0
  276. flywheel/models/file_origin.py +283 -0
  277. flywheel/models/file_output.py +1135 -0
  278. flywheel/models/file_parents.py +297 -0
  279. flywheel/models/file_reference.py +221 -0
  280. flywheel/models/file_suggestion.py +241 -0
  281. flywheel/models/file_template_options.py +299 -0
  282. flywheel/models/file_upsert_input.py +612 -0
  283. flywheel/models/file_upsert_origin.py +36 -0
  284. flywheel/models/file_upsert_output.py +1154 -0
  285. flywheel/models/file_version.py +190 -0
  286. flywheel/models/file_version_copy_of.py +273 -0
  287. flywheel/models/file_version_output.py +325 -0
  288. flywheel/models/file_via.py +245 -0
  289. flywheel/models/file_zip_entry.py +25 -0
  290. flywheel/models/file_zip_info.py +25 -0
  291. flywheel/models/filter.py +350 -0
  292. flywheel/models/filter_input.py +218 -0
  293. flywheel/models/filter_values.py +195 -0
  294. flywheel/models/filter_view.py +28 -0
  295. flywheel/models/fixed_file_version_input.py +216 -0
  296. flywheel/models/fixed_input.py +299 -0
  297. flywheel/models/form_definition.py +163 -0
  298. flywheel/models/form_response_base.py +311 -0
  299. flywheel/models/form_response_create.py +193 -0
  300. flywheel/models/gcp_creds.py +397 -0
  301. flywheel/models/gcp_storage.py +298 -0
  302. flywheel/models/gear.py +619 -0
  303. flywheel/models/gear_category.py +32 -0
  304. flywheel/models/gear_config.py +138 -0
  305. flywheel/models/gear_context_input.py +164 -0
  306. flywheel/models/gear_context_lookup.py +25 -0
  307. flywheel/models/gear_context_lookup_item.py +36 -0
  308. flywheel/models/gear_context_value_output.py +272 -0
  309. flywheel/models/gear_context_value_output_unfound.py +164 -0
  310. flywheel/models/gear_custom.py +135 -0
  311. flywheel/models/gear_directive.py +135 -0
  312. flywheel/models/gear_doc.py +25 -0
  313. flywheel/models/gear_document.py +332 -0
  314. flywheel/models/gear_document_input.py +303 -0
  315. flywheel/models/gear_document_legacy_input.py +302 -0
  316. flywheel/models/gear_environment.py +135 -0
  317. flywheel/models/gear_exchange.py +221 -0
  318. flywheel/models/gear_file_input.py +192 -0
  319. flywheel/models/gear_id_output.py +170 -0
  320. flywheel/models/gear_info.py +251 -0
  321. flywheel/models/gear_input_item.py +231 -0
  322. flywheel/models/gear_inputs.py +140 -0
  323. flywheel/models/gear_invocation.py +138 -0
  324. flywheel/models/gear_key_input.py +191 -0
  325. flywheel/models/gear_manifest.py +624 -0
  326. flywheel/models/gear_mixin.py +218 -0
  327. flywheel/models/gear_node.py +355 -0
  328. flywheel/models/gear_output_configuration.py +164 -0
  329. flywheel/models/gear_permissions.py +191 -0
  330. flywheel/models/gear_permissions_input.py +163 -0
  331. flywheel/models/gear_permissions_type.py +29 -0
  332. flywheel/models/gear_return_ticket.py +25 -0
  333. flywheel/models/gear_rule.py +653 -0
  334. flywheel/models/gear_rule_condition.py +219 -0
  335. flywheel/models/gear_rule_condition_type.py +37 -0
  336. flywheel/models/gear_rule_input.py +517 -0
  337. flywheel/models/gear_rule_modify_input.py +492 -0
  338. flywheel/models/gear_rule_output.py +652 -0
  339. flywheel/models/gear_save_submission.py +221 -0
  340. flywheel/models/gear_series.py +298 -0
  341. flywheel/models/gear_series_update.py +163 -0
  342. flywheel/models/gear_suggestion_output.py +301 -0
  343. flywheel/models/gear_ticket.py +245 -0
  344. flywheel/models/gear_ticket_output.py +163 -0
  345. flywheel/models/google_auth_out.py +299 -0
  346. flywheel/models/graph_filter.py +329 -0
  347. flywheel/models/group.py +25 -0
  348. flywheel/models/group_by.py +163 -0
  349. flywheel/models/group_by_column.py +36 -0
  350. flywheel/models/group_container_output.py +33 -0
  351. flywheel/models/group_input.py +248 -0
  352. flywheel/models/group_metadata_input.py +36 -0
  353. flywheel/models/group_node.py +34 -0
  354. flywheel/models/group_output.py +471 -0
  355. flywheel/models/group_report.py +218 -0
  356. flywheel/models/group_role.py +163 -0
  357. flywheel/models/group_settings_output.py +249 -0
  358. flywheel/models/group_update.py +249 -0
  359. flywheel/models/header_feature.py +37 -0
  360. flywheel/models/hierarchy_export_templates.py +272 -0
  361. flywheel/models/http_validation_error.py +167 -0
  362. flywheel/models/info.py +218 -0
  363. flywheel/models/info_add_remove.py +36 -0
  364. flywheel/models/info_container_type.py +35 -0
  365. flywheel/models/info_replace.py +36 -0
  366. flywheel/models/info_update_input.py +36 -0
  367. flywheel/models/ingress_provider.py +299 -0
  368. flywheel/models/ingress_providers.py +272 -0
  369. flywheel/models/ingress_site_settings.py +305 -0
  370. flywheel/models/ingress_update_provider.py +218 -0
  371. flywheel/models/inline_response200.py +163 -0
  372. flywheel/models/inline_response2001.py +171 -0
  373. flywheel/models/inline_response2002.py +163 -0
  374. flywheel/models/inline_response2003.py +36 -0
  375. flywheel/models/inline_response2005.py +25 -0
  376. flywheel/models/input_filter.py +221 -0
  377. flywheel/models/input_job.py +521 -0
  378. flywheel/models/input_job_profile.py +275 -0
  379. flywheel/models/inserted_id.py +163 -0
  380. flywheel/models/job.py +841 -0
  381. flywheel/models/job_analysis_input.py +273 -0
  382. flywheel/models/job_ask.py +301 -0
  383. flywheel/models/job_ask_response.py +195 -0
  384. flywheel/models/job_ask_response_job.py +978 -0
  385. flywheel/models/job_ask_return.py +25 -0
  386. flywheel/models/job_ask_return_criteria.py +245 -0
  387. flywheel/models/job_ask_state.py +25 -0
  388. flywheel/models/job_ask_state_response.py +163 -0
  389. flywheel/models/job_complete.py +220 -0
  390. flywheel/models/job_completion_input.py +25 -0
  391. flywheel/models/job_completion_ticket.py +25 -0
  392. flywheel/models/job_config.py +135 -0
  393. flywheel/models/job_config_input.py +272 -0
  394. flywheel/models/job_config_inputs.py +25 -0
  395. flywheel/models/job_config_output.py +25 -0
  396. flywheel/models/job_container_detail.py +25 -0
  397. flywheel/models/job_destination.py +189 -0
  398. flywheel/models/job_detail.py +925 -0
  399. flywheel/models/job_detail_container.py +190 -0
  400. flywheel/models/job_detail_file_entry.py +194 -0
  401. flywheel/models/job_detail_group.py +190 -0
  402. flywheel/models/job_detail_parent_info.py +303 -0
  403. flywheel/models/job_executor_info.py +369 -0
  404. flywheel/models/job_file_input.py +247 -0
  405. flywheel/models/job_file_input_list_output.py +247 -0
  406. flywheel/models/job_file_object.py +435 -0
  407. flywheel/models/job_file_object_list_output.py +407 -0
  408. flywheel/models/job_gear_match.py +25 -0
  409. flywheel/models/job_inputs_array_item.py +305 -0
  410. flywheel/models/job_inputs_item.py +242 -0
  411. flywheel/models/job_inputs_object.py +138 -0
  412. flywheel/models/job_list_entry.py +25 -0
  413. flywheel/models/job_list_output.py +979 -0
  414. flywheel/models/job_list_output_config.py +220 -0
  415. flywheel/models/job_log.py +189 -0
  416. flywheel/models/job_log_column.py +40 -0
  417. flywheel/models/job_log_record.py +192 -0
  418. flywheel/models/job_modify.py +193 -0
  419. flywheel/models/job_origin.py +190 -0
  420. flywheel/models/job_output.py +1005 -0
  421. flywheel/models/job_output_config.py +247 -0
  422. flywheel/models/job_parents.py +297 -0
  423. flywheel/models/job_priority.py +31 -0
  424. flywheel/models/job_priority_update.py +192 -0
  425. flywheel/models/job_profile.py +427 -0
  426. flywheel/models/job_profile_input.py +25 -0
  427. flywheel/models/job_request.py +221 -0
  428. flywheel/models/job_request_item.py +246 -0
  429. flywheel/models/job_request_item_type.py +31 -0
  430. flywheel/models/job_request_target.py +270 -0
  431. flywheel/models/job_state.py +32 -0
  432. flywheel/models/job_state_counts.py +25 -0
  433. flywheel/models/job_stats_by_state.py +25 -0
  434. flywheel/models/job_ticket_output.py +165 -0
  435. flywheel/models/job_transition_times.py +253 -0
  436. flywheel/models/job_version_info.py +135 -0
  437. flywheel/models/jobs_by_state.py +272 -0
  438. flywheel/models/jobs_list.py +166 -0
  439. flywheel/models/join_origin_device.py +164 -0
  440. flywheel/models/join_origin_job.py +219 -0
  441. flywheel/models/join_origin_user.py +189 -0
  442. flywheel/models/join_origins.py +223 -0
  443. flywheel/models/join_type.py +28 -0
  444. flywheel/models/jupyterhub_workspace.py +163 -0
  445. flywheel/models/jupyterlab_server_modify.py +275 -0
  446. flywheel/models/jupyterlab_server_origin.py +25 -0
  447. flywheel/models/jupyterlab_server_output.py +25 -0
  448. flywheel/models/jupyterlab_server_response.py +415 -0
  449. flywheel/models/jupyterlab_server_update.py +25 -0
  450. flywheel/models/ldap_sync.py +36 -0
  451. flywheel/models/ldap_sync_config.py +163 -0
  452. flywheel/models/ldap_sync_input.py +36 -0
  453. flywheel/models/ldap_sync_status.py +250 -0
  454. flywheel/models/legacy_api_key_output.py +271 -0
  455. flywheel/models/legacy_input.py +244 -0
  456. flywheel/models/legacy_usage_report.py +309 -0
  457. flywheel/models/legacys_usage_project_entry.py +194 -0
  458. flywheel/models/libs_workflows_models_parent_type.py +33 -0
  459. flywheel/models/libs_workflows_models_task_status.py +32 -0
  460. flywheel/models/local_storage.py +217 -0
  461. flywheel/models/location.py +189 -0
  462. flywheel/models/locked.py +219 -0
  463. flywheel/models/master_subject_code_dob_input.py +279 -0
  464. flywheel/models/master_subject_code_input.py +281 -0
  465. flywheel/models/master_subject_code_output.py +166 -0
  466. flywheel/models/matched_acquisition_output.py +518 -0
  467. flywheel/models/mfa_channel.py +30 -0
  468. flywheel/models/mfa_settings.py +167 -0
  469. flywheel/models/mixins.py +794 -0
  470. flywheel/models/ml_set_filter.py +194 -0
  471. flywheel/models/ml_type.py +30 -0
  472. flywheel/models/modality.py +250 -0
  473. flywheel/models/modality_input.py +244 -0
  474. flywheel/models/modality_modify.py +218 -0
  475. flywheel/models/modality_output.py +271 -0
  476. flywheel/models/modified_result.py +190 -0
  477. flywheel/models/modify_user_input.py +466 -0
  478. flywheel/models/move_conflict.py +300 -0
  479. flywheel/models/note.py +391 -0
  480. flywheel/models/note_input.py +165 -0
  481. flywheel/models/optional_input_policy.py +30 -0
  482. flywheel/models/order.py +29 -0
  483. flywheel/models/organ_system.py +64 -0
  484. flywheel/models/origin.py +193 -0
  485. flywheel/models/origin_type.py +35 -0
  486. flywheel/models/orphaned_count.py +163 -0
  487. flywheel/models/output_user_page.py +219 -0
  488. flywheel/models/packfile_cleanup_output.py +166 -0
  489. flywheel/models/packfile_removed_output.py +189 -0
  490. flywheel/models/page.py +216 -0
  491. flywheel/models/page_generic_file_output.py +219 -0
  492. flywheel/models/page_generic_filter.py +219 -0
  493. flywheel/models/page_generic_form_response_output.py +219 -0
  494. flywheel/models/page_generic_protocol.py +244 -0
  495. flywheel/models/page_generic_reader_task_output.py +244 -0
  496. flywheel/models/page_generic_staffing_pool.py +244 -0
  497. flywheel/models/parsed_query_response.py +194 -0
  498. flywheel/models/permission_access_permission.py +25 -0
  499. flywheel/models/premade_jobs_batch_job_output.py +298 -0
  500. flywheel/models/premade_jobs_batch_job_output_inflated_jobs.py +299 -0
  501. flywheel/models/premade_jobs_batch_proposal.py +334 -0
  502. flywheel/models/premade_jobs_batch_proposal_detail.py +166 -0
  503. flywheel/models/premade_jobs_batch_proposal_input.py +166 -0
  504. flywheel/models/project.py +25 -0
  505. flywheel/models/project_acquisition_upsert_input.py +25 -0
  506. flywheel/models/project_acquisition_upsert_output.py +25 -0
  507. flywheel/models/project_aet.py +331 -0
  508. flywheel/models/project_aet_input.py +248 -0
  509. flywheel/models/project_catalog_list_output.py +25 -0
  510. flywheel/models/project_contact.py +194 -0
  511. flywheel/models/project_container_output.py +41 -0
  512. flywheel/models/project_copy_input.py +245 -0
  513. flywheel/models/project_copy_output.py +215 -0
  514. flywheel/models/project_counters.py +346 -0
  515. flywheel/models/project_hierarchy_input.py +278 -0
  516. flywheel/models/project_hierarchy_output.py +222 -0
  517. flywheel/models/project_hierarchy_upsert_input.py +25 -0
  518. flywheel/models/project_hierarchy_upsert_output.py +25 -0
  519. flywheel/models/project_input.py +384 -0
  520. flywheel/models/project_institution.py +194 -0
  521. flywheel/models/project_list_output.py +897 -0
  522. flywheel/models/project_locking_reason.py +32 -0
  523. flywheel/models/project_modify.py +413 -0
  524. flywheel/models/project_node.py +42 -0
  525. flywheel/models/project_output.py +899 -0
  526. flywheel/models/project_parents.py +168 -0
  527. flywheel/models/project_report.py +463 -0
  528. flywheel/models/project_report_list.py +167 -0
  529. flywheel/models/project_session_upsert_input.py +25 -0
  530. flywheel/models/project_session_upsert_output.py +25 -0
  531. flywheel/models/project_settings_input.py +333 -0
  532. flywheel/models/project_settings_output.py +333 -0
  533. flywheel/models/project_settings_sharing.py +327 -0
  534. flywheel/models/project_settings_sharing_input.py +334 -0
  535. flywheel/models/project_settings_workspaces.py +167 -0
  536. flywheel/models/project_settings_workspaces_input.py +167 -0
  537. flywheel/models/project_share_level.py +29 -0
  538. flywheel/models/project_sharing_settings_project_contact.py +25 -0
  539. flywheel/models/project_sharing_settings_project_counters.py +36 -0
  540. flywheel/models/project_sharing_settings_project_institution.py +25 -0
  541. flywheel/models/project_sharing_settings_project_settings_input.py +25 -0
  542. flywheel/models/project_sharing_settings_project_settings_output.py +25 -0
  543. flywheel/models/project_sharing_settings_project_settings_sharing.py +25 -0
  544. flywheel/models/project_sharing_settings_project_settings_sharing_input.py +25 -0
  545. flywheel/models/project_sharing_settings_project_stats.py +36 -0
  546. flywheel/models/project_stats.py +270 -0
  547. flywheel/models/project_subject_upsert_input.py +25 -0
  548. flywheel/models/project_subject_upsert_output.py +25 -0
  549. flywheel/models/project_template.py +195 -0
  550. flywheel/models/project_template_input.py +195 -0
  551. flywheel/models/project_template_list_input.py +166 -0
  552. flywheel/models/project_template_requirement.py +36 -0
  553. flywheel/models/project_template_session_template.py +36 -0
  554. flywheel/models/project_upsert_origin.py +36 -0
  555. flywheel/models/protocol.py +515 -0
  556. flywheel/models/protocol_e_signature_config.py +191 -0
  557. flywheel/models/protocol_input.py +354 -0
  558. flywheel/models/protocol_modify.py +277 -0
  559. flywheel/models/protocol_status.py +30 -0
  560. flywheel/models/provider.py +461 -0
  561. flywheel/models/provider_access_type.py +29 -0
  562. flywheel/models/provider_class.py +29 -0
  563. flywheel/models/provider_deletion_status.py +189 -0
  564. flywheel/models/provider_input.py +25 -0
  565. flywheel/models/provider_links.py +282 -0
  566. flywheel/models/provider_type.py +34 -0
  567. flywheel/models/providers.py +277 -0
  568. flywheel/models/reader_batch_create.py +463 -0
  569. flywheel/models/reader_task.py +725 -0
  570. flywheel/models/reader_task_config.py +189 -0
  571. flywheel/models/reader_task_create.py +543 -0
  572. flywheel/models/reader_task_modify.py +303 -0
  573. flywheel/models/reader_task_output.py +752 -0
  574. flywheel/models/reader_task_parent_details.py +322 -0
  575. flywheel/models/report_access_log_context.py +301 -0
  576. flywheel/models/report_access_log_context_entry.py +194 -0
  577. flywheel/models/report_access_log_context_file_entry.py +165 -0
  578. flywheel/models/report_access_log_entry.py +624 -0
  579. flywheel/models/report_access_log_origin.py +194 -0
  580. flywheel/models/report_availability_list.py +167 -0
  581. flywheel/models/report_daily_usage_entry.py +501 -0
  582. flywheel/models/report_demographics_grid.py +36 -0
  583. flywheel/models/report_ethnicity_grid.py +252 -0
  584. flywheel/models/report_gender_count.py +222 -0
  585. flywheel/models/report_group_report.py +217 -0
  586. flywheel/models/report_legacy_usage_entry.py +36 -0
  587. flywheel/models/report_legacy_usage_project_entry.py +36 -0
  588. flywheel/models/report_project.py +25 -0
  589. flywheel/models/report_site.py +192 -0
  590. flywheel/models/report_time_period.py +193 -0
  591. flywheel/models/report_usage.py +630 -0
  592. flywheel/models/report_usage_entry.py +25 -0
  593. flywheel/models/resolve_input.py +163 -0
  594. flywheel/models/resolve_output.py +194 -0
  595. flywheel/models/resolver_acquisition_node.py +36 -0
  596. flywheel/models/resolver_analysis_node.py +36 -0
  597. flywheel/models/resolver_file_node.py +36 -0
  598. flywheel/models/resolver_gear_node.py +36 -0
  599. flywheel/models/resolver_group_node.py +36 -0
  600. flywheel/models/resolver_input.py +25 -0
  601. flywheel/models/resolver_node.py +182 -0
  602. flywheel/models/resolver_output.py +25 -0
  603. flywheel/models/resolver_project_node.py +36 -0
  604. flywheel/models/resolver_session_node.py +36 -0
  605. flywheel/models/resolver_subject_node.py +36 -0
  606. flywheel/models/role_input.py +192 -0
  607. flywheel/models/role_output.py +273 -0
  608. flywheel/models/role_permission.py +194 -0
  609. flywheel/models/role_permission_output.py +189 -0
  610. flywheel/models/role_permission_update.py +163 -0
  611. flywheel/models/role_type.py +32 -0
  612. flywheel/models/role_update.py +194 -0
  613. flywheel/models/roles_backwards_compatible_role_assignment.py +36 -0
  614. flywheel/models/roles_group_role_pool_input.py +36 -0
  615. flywheel/models/roles_role.py +36 -0
  616. flywheel/models/roles_role_assignment.py +195 -0
  617. flywheel/models/roles_role_input.py +36 -0
  618. flywheel/models/rule.py +467 -0
  619. flywheel/models/rule_any.py +216 -0
  620. flywheel/models/s3_addressing_style.py +29 -0
  621. flywheel/models/s3_compat_storage.py +381 -0
  622. flywheel/models/save_search.py +298 -0
  623. flywheel/models/save_search_input.py +219 -0
  624. flywheel/models/save_search_output.py +301 -0
  625. flywheel/models/save_search_page.py +219 -0
  626. flywheel/models/save_search_parent.py +192 -0
  627. flywheel/models/save_search_update.py +194 -0
  628. flywheel/models/search_acquisition_response.py +252 -0
  629. flywheel/models/search_analysis_response.py +254 -0
  630. flywheel/models/search_collection_response.py +254 -0
  631. flywheel/models/search_file_response.py +312 -0
  632. flywheel/models/search_group_response.py +196 -0
  633. flywheel/models/search_parent_acquisition.py +47 -0
  634. flywheel/models/search_parent_analysis.py +47 -0
  635. flywheel/models/search_parent_collection.py +46 -0
  636. flywheel/models/search_parent_project.py +54 -0
  637. flywheel/models/search_parent_response.py +213 -0
  638. flywheel/models/search_parent_session.py +48 -0
  639. flywheel/models/search_parent_subject.py +48 -0
  640. flywheel/models/search_parse_error.py +252 -0
  641. flywheel/models/search_parse_search_query_result.py +36 -0
  642. flywheel/models/search_project_response.py +196 -0
  643. flywheel/models/search_query.py +337 -0
  644. flywheel/models/search_query_suggestions.py +36 -0
  645. flywheel/models/search_response.py +448 -0
  646. flywheel/models/search_return_type.py +33 -0
  647. flywheel/models/search_save_search.py +36 -0
  648. flywheel/models/search_save_search_input.py +36 -0
  649. flywheel/models/search_save_search_parent.py +36 -0
  650. flywheel/models/search_save_search_update.py +36 -0
  651. flywheel/models/search_session_response.py +252 -0
  652. flywheel/models/search_status.py +166 -0
  653. flywheel/models/search_structured_search_query.py +25 -0
  654. flywheel/models/search_subject_response.py +225 -0
  655. flywheel/models/search_suggestion.py +36 -0
  656. flywheel/models/select_item.py +190 -0
  657. flywheel/models/server_state.py +303 -0
  658. flywheel/models/service_aet.py +301 -0
  659. flywheel/models/service_aet_input.py +276 -0
  660. flywheel/models/session.py +25 -0
  661. flywheel/models/session_container_output.py +35 -0
  662. flywheel/models/session_copy_input.py +253 -0
  663. flywheel/models/session_embedded_subject.py +299 -0
  664. flywheel/models/session_input.py +431 -0
  665. flywheel/models/session_list_output.py +897 -0
  666. flywheel/models/session_metadata_input.py +36 -0
  667. flywheel/models/session_modify.py +464 -0
  668. flywheel/models/session_node.py +36 -0
  669. flywheel/models/session_output.py +897 -0
  670. flywheel/models/session_parents.py +220 -0
  671. flywheel/models/session_template_options.py +221 -0
  672. flywheel/models/session_template_recalc_output.py +165 -0
  673. flywheel/models/session_upsert_input.py +464 -0
  674. flywheel/models/session_upsert_output.py +243 -0
  675. flywheel/models/sharing_filter_options.py +345 -0
  676. flywheel/models/signed_fs_upload_output.py +189 -0
  677. flywheel/models/signed_url_cleanup_input.py +189 -0
  678. flywheel/models/signed_url_upload_input.py +190 -0
  679. flywheel/models/signed_url_upload_output.py +349 -0
  680. flywheel/models/site.py +623 -0
  681. flywheel/models/site_report.py +194 -0
  682. flywheel/models/site_settings.py +385 -0
  683. flywheel/models/sort.py +192 -0
  684. flywheel/models/stable_api_key_input.py +25 -0
  685. flywheel/models/staffing_pool.py +324 -0
  686. flywheel/models/staffing_pool_create.py +216 -0
  687. flywheel/models/staffing_pool_list.py +164 -0
  688. flywheel/models/staffing_pool_modify.py +218 -0
  689. flywheel/models/state.py +32 -0
  690. flywheel/models/static_compute.py +218 -0
  691. flywheel/models/status_transitions.py +245 -0
  692. flywheel/models/status_type.py +31 -0
  693. flywheel/models/status_value.py +31 -0
  694. flywheel/models/storage_strategy.py +30 -0
  695. flywheel/models/storage_strategy_config.py +194 -0
  696. flywheel/models/structured_query.py +165 -0
  697. flywheel/models/structured_query_suggestions.py +196 -0
  698. flywheel/models/structured_query_value_suggestion.py +247 -0
  699. flywheel/models/subject.py +34 -0
  700. flywheel/models/subject_container_output.py +36 -0
  701. flywheel/models/subject_copy_input.py +223 -0
  702. flywheel/models/subject_input.py +627 -0
  703. flywheel/models/subject_modify.py +684 -0
  704. flywheel/models/subject_node.py +37 -0
  705. flywheel/models/subject_output.py +1008 -0
  706. flywheel/models/subject_output_for_list.py +1005 -0
  707. flywheel/models/subject_parents.py +194 -0
  708. flywheel/models/subject_role_permission.py +194 -0
  709. flywheel/models/subject_state.py +30 -0
  710. flywheel/models/subject_template_options.py +191 -0
  711. flywheel/models/subject_upsert_input.py +573 -0
  712. flywheel/models/subject_upsert_output.py +216 -0
  713. flywheel/models/sync_user_input.py +322 -0
  714. flywheel/models/tag.py +165 -0
  715. flywheel/models/task_assign.py +194 -0
  716. flywheel/models/task_facet.py +29 -0
  717. flywheel/models/task_parent_ref.py +245 -0
  718. flywheel/models/task_parent_ref_input.py +219 -0
  719. flywheel/models/task_priority.py +31 -0
  720. flywheel/models/task_submission.py +189 -0
  721. flywheel/models/therapeutic_area.py +60 -0
  722. flywheel/models/transitions.py +272 -0
  723. flywheel/models/tree_container_request_spec.py +281 -0
  724. flywheel/models/tree_graph.py +142 -0
  725. flywheel/models/tree_graph_connection.py +244 -0
  726. flywheel/models/tree_graph_connections.py +142 -0
  727. flywheel/models/tree_graph_node.py +166 -0
  728. flywheel/models/tree_request.py +25 -0
  729. flywheel/models/tree_response_item.py +142 -0
  730. flywheel/models/type_str.py +31 -0
  731. flywheel/models/uid_check_input_acquisitions.py +244 -0
  732. flywheel/models/uid_check_input_sessions.py +244 -0
  733. flywheel/models/uid_check_output.py +191 -0
  734. flywheel/models/upload_complete_s3_multipart_input.py +25 -0
  735. flywheel/models/upload_complete_s3_multipart_output.py +25 -0
  736. flywheel/models/upload_signed_fs_file_upload_output.py +36 -0
  737. flywheel/models/upload_signed_upload_url_input.py +36 -0
  738. flywheel/models/upload_signed_upload_url_output.py +36 -0
  739. flywheel/models/upload_ticket_output.py +215 -0
  740. flywheel/models/upload_token_output.py +163 -0
  741. flywheel/models/upsert_result.py +31 -0
  742. flywheel/models/user.py +760 -0
  743. flywheel/models/user_api_key.py +220 -0
  744. flywheel/models/user_input.py +461 -0
  745. flywheel/models/user_jobs.py +219 -0
  746. flywheel/models/user_jobs_output.py +25 -0
  747. flywheel/models/user_output.py +36 -0
  748. flywheel/models/user_output_id.py +163 -0
  749. flywheel/models/user_preferences.py +135 -0
  750. flywheel/models/user_wechat.py +135 -0
  751. flywheel/models/validation_error.py +215 -0
  752. flywheel/models/validation_rule.py +190 -0
  753. flywheel/models/version.py +363 -0
  754. flywheel/models/version_output.py +25 -0
  755. flywheel/models/view_id_output.py +164 -0
  756. flywheel/models/view_output.py +440 -0
  757. flywheel/models/viewer_app.py +381 -0
  758. flywheel/models/viewer_app_input.py +382 -0
  759. flywheel/models/viewer_app_type.py +29 -0
  760. flywheel/models/virus_scan.py +166 -0
  761. flywheel/models/virus_scan_state.py +30 -0
  762. flywheel/models/work_in_progress_features.py +135 -0
  763. flywheel/models/zipfile_info.py +192 -0
  764. flywheel/models/zipfile_member_info.py +241 -0
  765. flywheel/partial_reader.py +50 -0
  766. flywheel/rest.py +352 -0
  767. flywheel/util.py +95 -0
  768. flywheel/view_builder.py +449 -0
  769. flywheel_sdk-21.2.0rc0.dist-info/METADATA +41 -0
  770. flywheel_sdk-21.2.0rc0.dist-info/RECORD +772 -0
  771. flywheel_sdk-21.2.0rc0.dist-info/WHEEL +4 -0
  772. flywheel_sdk-21.2.0rc0.dist-info/licenses/LICENSE.txt +18 -0
@@ -0,0 +1,1057 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Flywheel
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: 0.0.1
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+ """
12
+
13
+
14
+ from __future__ import absolute_import
15
+
16
+ import re # noqa: F401
17
+
18
+ # python 2 and python 3 compatibility library
19
+ import six
20
+
21
+ from flywheel.api_client import ApiClient
22
+ import flywheel.models
23
+ from flywheel.util import check_filename_params
24
+
25
+ # NOTE: This file is auto generated by the swagger code generator program.
26
+ # Do not edit the class manually.
27
+
28
+ class ReportsApi(object):
29
+ def __init__(self, api_client=None):
30
+ if api_client is None:
31
+ api_client = ApiClient()
32
+ self.api_client = api_client
33
+
34
+ def collect_usage(self, **kwargs): # noqa: E501
35
+ """Collect daily usage statistics.
36
+
37
+ Collects usage statistics for the selected day (or yesterday if no day is given)
38
+ This method makes a synchronous HTTP request by default.
39
+
40
+ :param int year: The year portion of the date
41
+ :param int month: The month portion of the date
42
+ :param int day: The day portion of the date
43
+ :param bool async_: Perform the request asynchronously
44
+ :return: None
45
+ """
46
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
47
+ kwargs['_return_http_data_only'] = True
48
+
49
+ if kwargs.get('async_'):
50
+ return self.collect_usage_with_http_info(**kwargs) # noqa: E501
51
+ else:
52
+ (data) = self.collect_usage_with_http_info(**kwargs) # noqa: E501
53
+ if (
54
+ data
55
+ and hasattr(data, 'return_value')
56
+ and not ignore_simplified_return_value
57
+ ):
58
+ return data.return_value()
59
+ return data
60
+
61
+
62
+ def collect_usage_with_http_info(self, **kwargs): # noqa: E501
63
+ """Collect daily usage statistics.
64
+
65
+ Collects usage statistics for the selected day (or yesterday if no day is given)
66
+ This method makes a synchronous HTTP request by default.
67
+
68
+ :param int year: The year portion of the date
69
+ :param int month: The month portion of the date
70
+ :param int day: The day portion of the date
71
+ :param bool async_: Perform the request asynchronously
72
+ :return: None
73
+ """
74
+
75
+ all_params = ['year','month','day',] # noqa: E501
76
+ all_params.append('async_')
77
+ all_params.append('_return_http_data_only')
78
+ all_params.append('_preload_content')
79
+ all_params.append('_request_timeout')
80
+ all_params.append('_request_out')
81
+
82
+ params = locals()
83
+ for key, val in six.iteritems(params['kwargs']):
84
+ if key not in all_params:
85
+ raise TypeError(
86
+ "Got an unexpected keyword argument '%s'"
87
+ " to method collect_usage" % key
88
+ )
89
+ params[key] = val
90
+ del params['kwargs']
91
+ check_filename_params(params)
92
+
93
+ collection_formats = {}
94
+
95
+ path_params = {}
96
+
97
+ query_params = []
98
+ if 'year' in params:
99
+ query_params.append(('year', params['year'])) # noqa: E501
100
+ if 'month' in params:
101
+ query_params.append(('month', params['month'])) # noqa: E501
102
+ if 'day' in params:
103
+ query_params.append(('day', params['day'])) # noqa: E501
104
+
105
+ header_params = {}
106
+
107
+ form_params = []
108
+ local_var_files = {}
109
+
110
+ body_params = None
111
+ # HTTP header `Accept`
112
+ header_params['Accept'] = self.api_client.select_header_accept(
113
+ ['application/json']) # noqa: E501
114
+
115
+ # Authentication setting
116
+ auth_settings = ['ApiKey'] # noqa: E501
117
+
118
+ return self.api_client.call_api(
119
+ '/report/usage/collect', 'GET',
120
+ path_params,
121
+ query_params,
122
+ header_params,
123
+ body=body_params,
124
+ post_params=form_params,
125
+ files=local_var_files,
126
+ response_type=None, # noqa: E501
127
+ auth_settings=auth_settings,
128
+ async_=params.get('async_'),
129
+ _return_http_data_only=params.get('_return_http_data_only'),
130
+ _preload_content=params.get('_preload_content', True),
131
+ _request_timeout=params.get('_request_timeout'),
132
+ _request_out=params.get('_request_out'),
133
+ collection_formats=collection_formats)
134
+
135
+ def get_access_log_report(self, **kwargs): # noqa: E501
136
+ """Get a report of access log entries for the given parameters
137
+
138
+ This method makes a synchronous HTTP request by default.
139
+
140
+ :param bool csv: Set to download a csv file instead of json
141
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
142
+ :param str sort: The sort fields and order.(e.g. label:asc,created:desc)
143
+ :param int limit: The maximum number of entries to return
144
+ :param int skip: The number of entries to skip
145
+ :param int page: The page number (i.e. skip limit*page entries)
146
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
147
+ :param datetime start_date: An ISO formatted timestamp for the start time of the report
148
+ :param datetime end_date: An ISO formatted timestamp for the end time of the report
149
+ :param str user: User id of the target user
150
+ :param str subject: Limit the report to the subject code of subject accessed
151
+ :param str project: Limit the report to the project id
152
+ :param list[AccessType] access_types: The list of access_types to filter logs
153
+ :param list[str] x_accept_feature:
154
+ :param bool async_: Perform the request asynchronously
155
+ :return: list[ReportAccessLogEntry]
156
+ """
157
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
158
+ kwargs['_return_http_data_only'] = True
159
+
160
+ if kwargs.get('async_'):
161
+ return self.get_access_log_report_with_http_info(**kwargs) # noqa: E501
162
+ else:
163
+ (data) = self.get_access_log_report_with_http_info(**kwargs) # noqa: E501
164
+ if (
165
+ data
166
+ and hasattr(data, 'return_value')
167
+ and not ignore_simplified_return_value
168
+ ):
169
+ return data.return_value()
170
+ return data
171
+
172
+
173
+ def get_access_log_report_with_http_info(self, **kwargs): # noqa: E501
174
+ """Get a report of access log entries for the given parameters
175
+
176
+ This method makes a synchronous HTTP request by default.
177
+
178
+ :param bool csv: Set to download a csv file instead of json
179
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
180
+ :param str sort: The sort fields and order.(e.g. label:asc,created:desc)
181
+ :param int limit: The maximum number of entries to return
182
+ :param int skip: The number of entries to skip
183
+ :param int page: The page number (i.e. skip limit*page entries)
184
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
185
+ :param datetime start_date: An ISO formatted timestamp for the start time of the report
186
+ :param datetime end_date: An ISO formatted timestamp for the end time of the report
187
+ :param str user: User id of the target user
188
+ :param str subject: Limit the report to the subject code of subject accessed
189
+ :param str project: Limit the report to the project id
190
+ :param list[AccessType] access_types: The list of access_types to filter logs
191
+ :param list[str] x_accept_feature:
192
+ :param bool async_: Perform the request asynchronously
193
+ :return: list[ReportAccessLogEntry]
194
+ """
195
+
196
+ all_params = ['csv','filter','sort','limit','skip','page','after_id','start_date','end_date','user','subject','project','access_types','x_accept_feature',] # noqa: E501
197
+ all_params.append('async_')
198
+ all_params.append('_return_http_data_only')
199
+ all_params.append('_preload_content')
200
+ all_params.append('_request_timeout')
201
+ all_params.append('_request_out')
202
+
203
+ params = locals()
204
+ for key, val in six.iteritems(params['kwargs']):
205
+ if key not in all_params:
206
+ raise TypeError(
207
+ "Got an unexpected keyword argument '%s'"
208
+ " to method get_access_log_report" % key
209
+ )
210
+ params[key] = val
211
+ del params['kwargs']
212
+ check_filename_params(params)
213
+
214
+ collection_formats = {}
215
+
216
+ path_params = {}
217
+
218
+ query_params = []
219
+ if 'csv' in params:
220
+ query_params.append(('csv', params['csv'])) # noqa: E501
221
+ if 'filter' in params:
222
+ query_params.append(('filter', params['filter'])) # noqa: E501
223
+ if 'sort' in params:
224
+ query_params.append(('sort', params['sort'])) # noqa: E501
225
+ if 'limit' in params:
226
+ query_params.append(('limit', params['limit'])) # noqa: E501
227
+ if 'skip' in params:
228
+ query_params.append(('skip', params['skip'])) # noqa: E501
229
+ if 'page' in params:
230
+ query_params.append(('page', params['page'])) # noqa: E501
231
+ if 'after_id' in params:
232
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
233
+ if 'start_date' in params:
234
+ query_params.append(('start_date', params['start_date'])) # noqa: E501
235
+ if 'end_date' in params:
236
+ query_params.append(('end_date', params['end_date'])) # noqa: E501
237
+ if 'user' in params:
238
+ query_params.append(('user', params['user'])) # noqa: E501
239
+ if 'subject' in params:
240
+ query_params.append(('subject', params['subject'])) # noqa: E501
241
+ if 'project' in params:
242
+ query_params.append(('project', params['project'])) # noqa: E501
243
+ if 'access_types' in params:
244
+ query_params.append(('access_types', params['access_types'])) # noqa: E501
245
+ collection_formats['access_types'] = 'multi' # noqa: E501
246
+
247
+ header_params = {}
248
+ if 'x_accept_feature' in params:
249
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
250
+ collection_formats['x-accept-feature'] = '' # noqa: E501
251
+
252
+ form_params = []
253
+ local_var_files = {}
254
+
255
+ body_params = None
256
+ # HTTP header `Accept`
257
+ header_params['Accept'] = self.api_client.select_header_accept(
258
+ ['application/json']) # noqa: E501
259
+
260
+ # Authentication setting
261
+ auth_settings = ['ApiKey'] # noqa: E501
262
+
263
+ return self.api_client.call_api(
264
+ '/report/accesslog', 'GET',
265
+ path_params,
266
+ query_params,
267
+ header_params,
268
+ body=body_params,
269
+ post_params=form_params,
270
+ files=local_var_files,
271
+ response_type='list[ReportAccessLogEntry]', # noqa: E501
272
+ auth_settings=auth_settings,
273
+ async_=params.get('async_'),
274
+ _return_http_data_only=params.get('_return_http_data_only'),
275
+ _preload_content=params.get('_preload_content', True),
276
+ _request_timeout=params.get('_request_timeout'),
277
+ _request_out=params.get('_request_out'),
278
+ collection_formats=collection_formats)
279
+
280
+ def get_access_log_types(self, **kwargs): # noqa: E501
281
+ """Get the list of types of access log entries
282
+
283
+ This method makes a synchronous HTTP request by default.
284
+
285
+ :param bool async_: Perform the request asynchronously
286
+ :return: list[str]
287
+ """
288
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
289
+ kwargs['_return_http_data_only'] = True
290
+
291
+ if kwargs.get('async_'):
292
+ return self.get_access_log_types_with_http_info(**kwargs) # noqa: E501
293
+ else:
294
+ (data) = self.get_access_log_types_with_http_info(**kwargs) # noqa: E501
295
+ if (
296
+ data
297
+ and hasattr(data, 'return_value')
298
+ and not ignore_simplified_return_value
299
+ ):
300
+ return data.return_value()
301
+ return data
302
+
303
+
304
+ def get_access_log_types_with_http_info(self, **kwargs): # noqa: E501
305
+ """Get the list of types of access log entries
306
+
307
+ This method makes a synchronous HTTP request by default.
308
+
309
+ :param bool async_: Perform the request asynchronously
310
+ :return: list[str]
311
+ """
312
+
313
+ all_params = [] # noqa: E501
314
+ all_params.append('async_')
315
+ all_params.append('_return_http_data_only')
316
+ all_params.append('_preload_content')
317
+ all_params.append('_request_timeout')
318
+ all_params.append('_request_out')
319
+
320
+ params = locals()
321
+ for key, val in six.iteritems(params['kwargs']):
322
+ if key not in all_params:
323
+ raise TypeError(
324
+ "Got an unexpected keyword argument '%s'"
325
+ " to method get_access_log_types" % key
326
+ )
327
+ params[key] = val
328
+ del params['kwargs']
329
+ check_filename_params(params)
330
+
331
+ collection_formats = {}
332
+
333
+ path_params = {}
334
+
335
+ query_params = []
336
+
337
+ header_params = {}
338
+
339
+ form_params = []
340
+ local_var_files = {}
341
+
342
+ body_params = None
343
+ # HTTP header `Accept`
344
+ header_params['Accept'] = self.api_client.select_header_accept(
345
+ ['application/json']) # noqa: E501
346
+
347
+ # Authentication setting
348
+ auth_settings = ['ApiKey'] # noqa: E501
349
+
350
+ return self.api_client.call_api(
351
+ '/report/accesslog/types', 'GET',
352
+ path_params,
353
+ query_params,
354
+ header_params,
355
+ body=body_params,
356
+ post_params=form_params,
357
+ files=local_var_files,
358
+ response_type='list[str]', # noqa: E501
359
+ auth_settings=auth_settings,
360
+ async_=params.get('async_'),
361
+ _return_http_data_only=params.get('_return_http_data_only'),
362
+ _preload_content=params.get('_preload_content', True),
363
+ _request_timeout=params.get('_request_timeout'),
364
+ _request_out=params.get('_request_out'),
365
+ collection_formats=collection_formats)
366
+
367
+ def get_daily_usage_range_report(self, **kwargs): # noqa: E501
368
+ """Get a daily usage report for a given range of dates.
369
+
370
+ This method makes a synchronous HTTP request by default.
371
+
372
+ :param datetime start_date: An ISO formatted timestamp for the start time of the report
373
+ :param datetime end_date: An ISO formatted timestamp for the end time of the report
374
+ :param str group: Limit the report to the given group id
375
+ :param str project: Limit the report to the given project id
376
+ :param bool async_: Perform the request asynchronously
377
+ :return: list[DailyReportUsage]
378
+ """
379
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
380
+ kwargs['_return_http_data_only'] = True
381
+
382
+ if kwargs.get('async_'):
383
+ return self.get_daily_usage_range_report_with_http_info(**kwargs) # noqa: E501
384
+ else:
385
+ (data) = self.get_daily_usage_range_report_with_http_info(**kwargs) # noqa: E501
386
+ if (
387
+ data
388
+ and hasattr(data, 'return_value')
389
+ and not ignore_simplified_return_value
390
+ ):
391
+ return data.return_value()
392
+ return data
393
+
394
+
395
+ def get_daily_usage_range_report_with_http_info(self, **kwargs): # noqa: E501
396
+ """Get a daily usage report for a given range of dates.
397
+
398
+ This method makes a synchronous HTTP request by default.
399
+
400
+ :param datetime start_date: An ISO formatted timestamp for the start time of the report
401
+ :param datetime end_date: An ISO formatted timestamp for the end time of the report
402
+ :param str group: Limit the report to the given group id
403
+ :param str project: Limit the report to the given project id
404
+ :param bool async_: Perform the request asynchronously
405
+ :return: list[DailyReportUsage]
406
+ """
407
+
408
+ all_params = ['start_date','end_date','group','project',] # noqa: E501
409
+ all_params.append('async_')
410
+ all_params.append('_return_http_data_only')
411
+ all_params.append('_preload_content')
412
+ all_params.append('_request_timeout')
413
+ all_params.append('_request_out')
414
+
415
+ params = locals()
416
+ for key, val in six.iteritems(params['kwargs']):
417
+ if key not in all_params:
418
+ raise TypeError(
419
+ "Got an unexpected keyword argument '%s'"
420
+ " to method get_daily_usage_range_report" % key
421
+ )
422
+ params[key] = val
423
+ del params['kwargs']
424
+ check_filename_params(params)
425
+
426
+ collection_formats = {}
427
+
428
+ path_params = {}
429
+
430
+ query_params = []
431
+ if 'start_date' in params:
432
+ query_params.append(('start_date', params['start_date'])) # noqa: E501
433
+ if 'end_date' in params:
434
+ query_params.append(('end_date', params['end_date'])) # noqa: E501
435
+ if 'group' in params:
436
+ query_params.append(('group', params['group'])) # noqa: E501
437
+ if 'project' in params:
438
+ query_params.append(('project', params['project'])) # noqa: E501
439
+
440
+ header_params = {}
441
+
442
+ form_params = []
443
+ local_var_files = {}
444
+
445
+ body_params = None
446
+ # HTTP header `Accept`
447
+ header_params['Accept'] = self.api_client.select_header_accept(
448
+ ['application/json']) # noqa: E501
449
+
450
+ # Authentication setting
451
+ auth_settings = ['ApiKey'] # noqa: E501
452
+
453
+ return self.api_client.call_api(
454
+ '/report/daily-usage-range', 'GET',
455
+ path_params,
456
+ query_params,
457
+ header_params,
458
+ body=body_params,
459
+ post_params=form_params,
460
+ files=local_var_files,
461
+ response_type='list[DailyReportUsage]', # noqa: E501
462
+ auth_settings=auth_settings,
463
+ async_=params.get('async_'),
464
+ _return_http_data_only=params.get('_return_http_data_only'),
465
+ _preload_content=params.get('_preload_content', True),
466
+ _request_timeout=params.get('_request_timeout'),
467
+ _request_out=params.get('_request_out'),
468
+ collection_formats=collection_formats)
469
+
470
+ def get_daily_usage_report(self, **kwargs): # noqa: E501
471
+ """Get a daily usage report for the given month.
472
+
473
+ If no year/month pair is given, the current month will be used.
474
+ This method makes a synchronous HTTP request by default.
475
+
476
+ :param int year: The year portion of the date
477
+ :param int month: The month portion of the date
478
+ :param str group: Limit the report to the given group id
479
+ :param str project: Limit the report to the given project id
480
+ :param bool async_: Perform the request asynchronously
481
+ :return: list[DailyReportUsage]
482
+ """
483
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
484
+ kwargs['_return_http_data_only'] = True
485
+
486
+ if kwargs.get('async_'):
487
+ return self.get_daily_usage_report_with_http_info(**kwargs) # noqa: E501
488
+ else:
489
+ (data) = self.get_daily_usage_report_with_http_info(**kwargs) # noqa: E501
490
+ if (
491
+ data
492
+ and hasattr(data, 'return_value')
493
+ and not ignore_simplified_return_value
494
+ ):
495
+ return data.return_value()
496
+ return data
497
+
498
+
499
+ def get_daily_usage_report_with_http_info(self, **kwargs): # noqa: E501
500
+ """Get a daily usage report for the given month.
501
+
502
+ If no year/month pair is given, the current month will be used.
503
+ This method makes a synchronous HTTP request by default.
504
+
505
+ :param int year: The year portion of the date
506
+ :param int month: The month portion of the date
507
+ :param str group: Limit the report to the given group id
508
+ :param str project: Limit the report to the given project id
509
+ :param bool async_: Perform the request asynchronously
510
+ :return: list[DailyReportUsage]
511
+ """
512
+
513
+ all_params = ['year','month','group','project',] # noqa: E501
514
+ all_params.append('async_')
515
+ all_params.append('_return_http_data_only')
516
+ all_params.append('_preload_content')
517
+ all_params.append('_request_timeout')
518
+ all_params.append('_request_out')
519
+
520
+ params = locals()
521
+ for key, val in six.iteritems(params['kwargs']):
522
+ if key not in all_params:
523
+ raise TypeError(
524
+ "Got an unexpected keyword argument '%s'"
525
+ " to method get_daily_usage_report" % key
526
+ )
527
+ params[key] = val
528
+ del params['kwargs']
529
+ check_filename_params(params)
530
+
531
+ collection_formats = {}
532
+
533
+ path_params = {}
534
+
535
+ query_params = []
536
+ if 'year' in params:
537
+ query_params.append(('year', params['year'])) # noqa: E501
538
+ if 'month' in params:
539
+ query_params.append(('month', params['month'])) # noqa: E501
540
+ if 'group' in params:
541
+ query_params.append(('group', params['group'])) # noqa: E501
542
+ if 'project' in params:
543
+ query_params.append(('project', params['project'])) # noqa: E501
544
+
545
+ header_params = {}
546
+
547
+ form_params = []
548
+ local_var_files = {}
549
+
550
+ body_params = None
551
+ # HTTP header `Accept`
552
+ header_params['Accept'] = self.api_client.select_header_accept(
553
+ ['application/json']) # noqa: E501
554
+
555
+ # Authentication setting
556
+ auth_settings = ['ApiKey'] # noqa: E501
557
+
558
+ return self.api_client.call_api(
559
+ '/report/daily-usage', 'GET',
560
+ path_params,
561
+ query_params,
562
+ header_params,
563
+ body=body_params,
564
+ post_params=form_params,
565
+ files=local_var_files,
566
+ response_type='list[DailyReportUsage]', # noqa: E501
567
+ auth_settings=auth_settings,
568
+ async_=params.get('async_'),
569
+ _return_http_data_only=params.get('_return_http_data_only'),
570
+ _preload_content=params.get('_preload_content', True),
571
+ _request_timeout=params.get('_request_timeout'),
572
+ _request_out=params.get('_request_out'),
573
+ collection_formats=collection_formats)
574
+
575
+ def get_legacy_usage_report(self, type, **kwargs): # noqa: E501
576
+ """Get a usage report for the site grouped by month or project
577
+
578
+ This report is DEPRECATED and will be removed in a future release
579
+ This method makes a synchronous HTTP request by default.
580
+
581
+ :param str type: The type of usage report to generate (required)
582
+ :param datetime start_date: An ISO formatted timestamp for the start time of the report
583
+ :param datetime end_date: An ISO formatted timestamp for the end time of the report
584
+ :param bool async_: Perform the request asynchronously
585
+ :return: list[LegacyUsageReport]
586
+ """
587
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
588
+ kwargs['_return_http_data_only'] = True
589
+
590
+ if kwargs.get('async_'):
591
+ return self.get_legacy_usage_report_with_http_info(type, **kwargs) # noqa: E501
592
+ else:
593
+ (data) = self.get_legacy_usage_report_with_http_info(type, **kwargs) # noqa: E501
594
+ if (
595
+ data
596
+ and hasattr(data, 'return_value')
597
+ and not ignore_simplified_return_value
598
+ ):
599
+ return data.return_value()
600
+ return data
601
+
602
+
603
+ def get_legacy_usage_report_with_http_info(self, type, **kwargs): # noqa: E501
604
+ """Get a usage report for the site grouped by month or project
605
+
606
+ This report is DEPRECATED and will be removed in a future release
607
+ This method makes a synchronous HTTP request by default.
608
+
609
+ :param str type: The type of usage report to generate (required)
610
+ :param datetime start_date: An ISO formatted timestamp for the start time of the report
611
+ :param datetime end_date: An ISO formatted timestamp for the end time of the report
612
+ :param bool async_: Perform the request asynchronously
613
+ :return: list[LegacyUsageReport]
614
+ """
615
+
616
+ all_params = ['type','start_date','end_date',] # noqa: E501
617
+ all_params.append('async_')
618
+ all_params.append('_return_http_data_only')
619
+ all_params.append('_preload_content')
620
+ all_params.append('_request_timeout')
621
+ all_params.append('_request_out')
622
+
623
+ params = locals()
624
+ for key, val in six.iteritems(params['kwargs']):
625
+ if key not in all_params:
626
+ raise TypeError(
627
+ "Got an unexpected keyword argument '%s'"
628
+ " to method get_legacy_usage_report" % key
629
+ )
630
+ params[key] = val
631
+ del params['kwargs']
632
+ # verify the required parameter 'type' is set
633
+ if ('type' not in params or
634
+ params['type'] is None):
635
+ raise ValueError("Missing the required parameter `type` when calling `get_legacy_usage_report`") # noqa: E501
636
+ check_filename_params(params)
637
+
638
+ collection_formats = {}
639
+
640
+ path_params = {}
641
+
642
+ query_params = []
643
+ if 'type' in params:
644
+ query_params.append(('type', params['type'])) # noqa: E501
645
+ if 'start_date' in params:
646
+ query_params.append(('start_date', params['start_date'])) # noqa: E501
647
+ if 'end_date' in params:
648
+ query_params.append(('end_date', params['end_date'])) # noqa: E501
649
+
650
+ header_params = {}
651
+
652
+ form_params = []
653
+ local_var_files = {}
654
+
655
+ body_params = None
656
+ # HTTP header `Accept`
657
+ header_params['Accept'] = self.api_client.select_header_accept(
658
+ ['application/json']) # noqa: E501
659
+
660
+ # Authentication setting
661
+ auth_settings = ['ApiKey'] # noqa: E501
662
+
663
+ return self.api_client.call_api(
664
+ '/report/legacy-usage', 'GET',
665
+ path_params,
666
+ query_params,
667
+ header_params,
668
+ body=body_params,
669
+ post_params=form_params,
670
+ files=local_var_files,
671
+ response_type='list[LegacyUsageReport]', # noqa: E501
672
+ auth_settings=auth_settings,
673
+ async_=params.get('async_'),
674
+ _return_http_data_only=params.get('_return_http_data_only'),
675
+ _preload_content=params.get('_preload_content', True),
676
+ _request_timeout=params.get('_request_timeout'),
677
+ _request_out=params.get('_request_out'),
678
+ collection_formats=collection_formats)
679
+
680
+ def get_project_report(self, **kwargs): # noqa: E501
681
+ """Get project report
682
+
683
+ Get project report
684
+ This method makes a synchronous HTTP request by default.
685
+
686
+ :param list[str] projects: Specify multiple times to include projects in the report
687
+ :param datetime start_date: Report start date
688
+ :param datetime end_date: Report end date
689
+ :param bool async_: Perform the request asynchronously
690
+ :return: ProjectReportList
691
+ """
692
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
693
+ kwargs['_return_http_data_only'] = True
694
+
695
+ if kwargs.get('async_'):
696
+ return self.get_project_report_with_http_info(**kwargs) # noqa: E501
697
+ else:
698
+ (data) = self.get_project_report_with_http_info(**kwargs) # noqa: E501
699
+ if (
700
+ data
701
+ and hasattr(data, 'return_value')
702
+ and not ignore_simplified_return_value
703
+ ):
704
+ return data.return_value()
705
+ return data
706
+
707
+
708
+ def get_project_report_with_http_info(self, **kwargs): # noqa: E501
709
+ """Get project report
710
+
711
+ Get project report
712
+ This method makes a synchronous HTTP request by default.
713
+
714
+ :param list[str] projects: Specify multiple times to include projects in the report
715
+ :param datetime start_date: Report start date
716
+ :param datetime end_date: Report end date
717
+ :param bool async_: Perform the request asynchronously
718
+ :return: ProjectReportList
719
+ """
720
+
721
+ all_params = ['projects','start_date','end_date',] # noqa: E501
722
+ all_params.append('async_')
723
+ all_params.append('_return_http_data_only')
724
+ all_params.append('_preload_content')
725
+ all_params.append('_request_timeout')
726
+ all_params.append('_request_out')
727
+
728
+ params = locals()
729
+ for key, val in six.iteritems(params['kwargs']):
730
+ if key not in all_params:
731
+ raise TypeError(
732
+ "Got an unexpected keyword argument '%s'"
733
+ " to method get_project_report" % key
734
+ )
735
+ params[key] = val
736
+ del params['kwargs']
737
+ check_filename_params(params)
738
+
739
+ collection_formats = {}
740
+
741
+ path_params = {}
742
+
743
+ query_params = []
744
+ if 'projects' in params:
745
+ query_params.append(('projects', params['projects'])) # noqa: E501
746
+ collection_formats['projects'] = 'multi' # noqa: E501
747
+ if 'start_date' in params:
748
+ query_params.append(('start_date', params['start_date'])) # noqa: E501
749
+ if 'end_date' in params:
750
+ query_params.append(('end_date', params['end_date'])) # noqa: E501
751
+
752
+ header_params = {}
753
+
754
+ form_params = []
755
+ local_var_files = {}
756
+
757
+ body_params = None
758
+ # HTTP header `Accept`
759
+ header_params['Accept'] = self.api_client.select_header_accept(
760
+ ['application/json']) # noqa: E501
761
+
762
+ # Authentication setting
763
+ auth_settings = ['ApiKey'] # noqa: E501
764
+
765
+ return self.api_client.call_api(
766
+ '/report/project', 'GET',
767
+ path_params,
768
+ query_params,
769
+ header_params,
770
+ body=body_params,
771
+ post_params=form_params,
772
+ files=local_var_files,
773
+ response_type='ProjectReportList', # noqa: E501
774
+ auth_settings=auth_settings,
775
+ async_=params.get('async_'),
776
+ _return_http_data_only=params.get('_return_http_data_only'),
777
+ _preload_content=params.get('_preload_content', True),
778
+ _request_timeout=params.get('_request_timeout'),
779
+ _request_out=params.get('_request_out'),
780
+ collection_formats=collection_formats)
781
+
782
+ def get_site_report(self, **kwargs): # noqa: E501
783
+ """Get the site report
784
+
785
+ This method makes a synchronous HTTP request by default.
786
+
787
+ :param bool async_: Perform the request asynchronously
788
+ :return: SiteReport
789
+ """
790
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
791
+ kwargs['_return_http_data_only'] = True
792
+
793
+ if kwargs.get('async_'):
794
+ return self.get_site_report_with_http_info(**kwargs) # noqa: E501
795
+ else:
796
+ (data) = self.get_site_report_with_http_info(**kwargs) # noqa: E501
797
+ if (
798
+ data
799
+ and hasattr(data, 'return_value')
800
+ and not ignore_simplified_return_value
801
+ ):
802
+ return data.return_value()
803
+ return data
804
+
805
+
806
+ def get_site_report_with_http_info(self, **kwargs): # noqa: E501
807
+ """Get the site report
808
+
809
+ This method makes a synchronous HTTP request by default.
810
+
811
+ :param bool async_: Perform the request asynchronously
812
+ :return: SiteReport
813
+ """
814
+
815
+ all_params = [] # noqa: E501
816
+ all_params.append('async_')
817
+ all_params.append('_return_http_data_only')
818
+ all_params.append('_preload_content')
819
+ all_params.append('_request_timeout')
820
+ all_params.append('_request_out')
821
+
822
+ params = locals()
823
+ for key, val in six.iteritems(params['kwargs']):
824
+ if key not in all_params:
825
+ raise TypeError(
826
+ "Got an unexpected keyword argument '%s'"
827
+ " to method get_site_report" % key
828
+ )
829
+ params[key] = val
830
+ del params['kwargs']
831
+ check_filename_params(params)
832
+
833
+ collection_formats = {}
834
+
835
+ path_params = {}
836
+
837
+ query_params = []
838
+
839
+ header_params = {}
840
+
841
+ form_params = []
842
+ local_var_files = {}
843
+
844
+ body_params = None
845
+ # HTTP header `Accept`
846
+ header_params['Accept'] = self.api_client.select_header_accept(
847
+ ['application/json']) # noqa: E501
848
+
849
+ # Authentication setting
850
+ auth_settings = ['ApiKey'] # noqa: E501
851
+
852
+ return self.api_client.call_api(
853
+ '/report/site', 'GET',
854
+ path_params,
855
+ query_params,
856
+ header_params,
857
+ body=body_params,
858
+ post_params=form_params,
859
+ files=local_var_files,
860
+ response_type='SiteReport', # noqa: E501
861
+ auth_settings=auth_settings,
862
+ async_=params.get('async_'),
863
+ _return_http_data_only=params.get('_return_http_data_only'),
864
+ _preload_content=params.get('_preload_content', True),
865
+ _request_timeout=params.get('_request_timeout'),
866
+ _request_out=params.get('_request_out'),
867
+ collection_formats=collection_formats)
868
+
869
+ def get_usage_availability(self, **kwargs): # noqa: E501
870
+ """Get year/month combinations where report data is available.
871
+
872
+ Get year/month combinations where report data is available. Returns: Returns the list of months where report data is available
873
+ This method makes a synchronous HTTP request by default.
874
+
875
+ :param bool async_: Perform the request asynchronously
876
+ :return: ReportAvailabilityList
877
+ """
878
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
879
+ kwargs['_return_http_data_only'] = True
880
+
881
+ if kwargs.get('async_'):
882
+ return self.get_usage_availability_with_http_info(**kwargs) # noqa: E501
883
+ else:
884
+ (data) = self.get_usage_availability_with_http_info(**kwargs) # noqa: E501
885
+ if (
886
+ data
887
+ and hasattr(data, 'return_value')
888
+ and not ignore_simplified_return_value
889
+ ):
890
+ return data.return_value()
891
+ return data
892
+
893
+
894
+ def get_usage_availability_with_http_info(self, **kwargs): # noqa: E501
895
+ """Get year/month combinations where report data is available.
896
+
897
+ Get year/month combinations where report data is available. Returns: Returns the list of months where report data is available
898
+ This method makes a synchronous HTTP request by default.
899
+
900
+ :param bool async_: Perform the request asynchronously
901
+ :return: ReportAvailabilityList
902
+ """
903
+
904
+ all_params = [] # noqa: E501
905
+ all_params.append('async_')
906
+ all_params.append('_return_http_data_only')
907
+ all_params.append('_preload_content')
908
+ all_params.append('_request_timeout')
909
+ all_params.append('_request_out')
910
+
911
+ params = locals()
912
+ for key, val in six.iteritems(params['kwargs']):
913
+ if key not in all_params:
914
+ raise TypeError(
915
+ "Got an unexpected keyword argument '%s'"
916
+ " to method get_usage_availability" % key
917
+ )
918
+ params[key] = val
919
+ del params['kwargs']
920
+ check_filename_params(params)
921
+
922
+ collection_formats = {}
923
+
924
+ path_params = {}
925
+
926
+ query_params = []
927
+
928
+ header_params = {}
929
+
930
+ form_params = []
931
+ local_var_files = {}
932
+
933
+ body_params = None
934
+ # HTTP header `Accept`
935
+ header_params['Accept'] = self.api_client.select_header_accept(
936
+ ['application/json']) # noqa: E501
937
+
938
+ # Authentication setting
939
+ auth_settings = ['ApiKey'] # noqa: E501
940
+
941
+ return self.api_client.call_api(
942
+ '/report/usage/availability', 'GET',
943
+ path_params,
944
+ query_params,
945
+ header_params,
946
+ body=body_params,
947
+ post_params=form_params,
948
+ files=local_var_files,
949
+ response_type='ReportAvailabilityList', # noqa: E501
950
+ auth_settings=auth_settings,
951
+ async_=params.get('async_'),
952
+ _return_http_data_only=params.get('_return_http_data_only'),
953
+ _preload_content=params.get('_preload_content', True),
954
+ _request_timeout=params.get('_request_timeout'),
955
+ _request_out=params.get('_request_out'),
956
+ collection_formats=collection_formats)
957
+
958
+ def get_usage_report(self, **kwargs): # noqa: E501
959
+ """Get a usage report for the given month.
960
+
961
+ If no year/month pair is given, the current month will be used.
962
+ This method makes a synchronous HTTP request by default.
963
+
964
+ :param int year: The year portion of the date
965
+ :param int month: The month portion of the date
966
+ :param str project: Project to filter to
967
+ :param bool async_: Perform the request asynchronously
968
+ :return: list[ReportUsage]
969
+ """
970
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
971
+ kwargs['_return_http_data_only'] = True
972
+
973
+ if kwargs.get('async_'):
974
+ return self.get_usage_report_with_http_info(**kwargs) # noqa: E501
975
+ else:
976
+ (data) = self.get_usage_report_with_http_info(**kwargs) # noqa: E501
977
+ if (
978
+ data
979
+ and hasattr(data, 'return_value')
980
+ and not ignore_simplified_return_value
981
+ ):
982
+ return data.return_value()
983
+ return data
984
+
985
+
986
+ def get_usage_report_with_http_info(self, **kwargs): # noqa: E501
987
+ """Get a usage report for the given month.
988
+
989
+ If no year/month pair is given, the current month will be used.
990
+ This method makes a synchronous HTTP request by default.
991
+
992
+ :param int year: The year portion of the date
993
+ :param int month: The month portion of the date
994
+ :param str project: Project to filter to
995
+ :param bool async_: Perform the request asynchronously
996
+ :return: list[ReportUsage]
997
+ """
998
+
999
+ all_params = ['year','month','project',] # noqa: E501
1000
+ all_params.append('async_')
1001
+ all_params.append('_return_http_data_only')
1002
+ all_params.append('_preload_content')
1003
+ all_params.append('_request_timeout')
1004
+ all_params.append('_request_out')
1005
+
1006
+ params = locals()
1007
+ for key, val in six.iteritems(params['kwargs']):
1008
+ if key not in all_params:
1009
+ raise TypeError(
1010
+ "Got an unexpected keyword argument '%s'"
1011
+ " to method get_usage_report" % key
1012
+ )
1013
+ params[key] = val
1014
+ del params['kwargs']
1015
+ check_filename_params(params)
1016
+
1017
+ collection_formats = {}
1018
+
1019
+ path_params = {}
1020
+
1021
+ query_params = []
1022
+ if 'year' in params:
1023
+ query_params.append(('year', params['year'])) # noqa: E501
1024
+ if 'month' in params:
1025
+ query_params.append(('month', params['month'])) # noqa: E501
1026
+ if 'project' in params:
1027
+ query_params.append(('project', params['project'])) # noqa: E501
1028
+
1029
+ header_params = {}
1030
+
1031
+ form_params = []
1032
+ local_var_files = {}
1033
+
1034
+ body_params = None
1035
+ # HTTP header `Accept`
1036
+ header_params['Accept'] = self.api_client.select_header_accept(
1037
+ ['application/json']) # noqa: E501
1038
+
1039
+ # Authentication setting
1040
+ auth_settings = ['ApiKey'] # noqa: E501
1041
+
1042
+ return self.api_client.call_api(
1043
+ '/report/usage', 'GET',
1044
+ path_params,
1045
+ query_params,
1046
+ header_params,
1047
+ body=body_params,
1048
+ post_params=form_params,
1049
+ files=local_var_files,
1050
+ response_type='list[ReportUsage]', # noqa: E501
1051
+ auth_settings=auth_settings,
1052
+ async_=params.get('async_'),
1053
+ _return_http_data_only=params.get('_return_http_data_only'),
1054
+ _preload_content=params.get('_preload_content', True),
1055
+ _request_timeout=params.get('_request_timeout'),
1056
+ _request_out=params.get('_request_out'),
1057
+ collection_formats=collection_formats)