runloop-api-client 0.33.0__tar.gz → 0.34.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. runloop_api_client-0.34.1/.release-please-manifest.json +3 -0
  2. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/CHANGELOG.md +16 -0
  3. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/PKG-INFO +1 -1
  4. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/api.md +10 -14
  5. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/pyproject.toml +1 -1
  6. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_version.py +1 -1
  7. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/devboxes.py +123 -0
  8. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +81 -0
  9. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/__init__.py +1 -0
  10. runloop_api_client-0.34.1/src/runloop_api_client/types/devbox_snapshot_disk_async_params.py +16 -0
  11. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/__init__.py +1 -0
  12. runloop_api_client-0.34.1/src/runloop_api_client/types/devboxes/devbox_snapshot_async_status_view.py +20 -0
  13. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/test_disk_snapshots.py +79 -0
  14. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/test_devboxes.py +94 -0
  15. runloop_api_client-0.33.0/.release-please-manifest.json +0 -3
  16. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/.gitignore +0 -0
  17. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/CONTRIBUTING.md +0 -0
  18. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/LICENSE +0 -0
  19. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/README.md +0 -0
  20. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/SECURITY.md +0 -0
  21. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/bin/check-release-environment +0 -0
  22. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/bin/publish-pypi +0 -0
  23. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/examples/.keep +0 -0
  24. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/mypy.ini +0 -0
  25. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/noxfile.py +0 -0
  26. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/release-please-config.json +0 -0
  27. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/requirements-dev.lock +0 -0
  28. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/requirements.lock +0 -0
  29. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop/lib/.keep +0 -0
  30. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/__init__.py +0 -0
  31. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_base_client.py +0 -0
  32. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_client.py +0 -0
  33. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_compat.py +0 -0
  34. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_constants.py +0 -0
  35. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_exceptions.py +0 -0
  36. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_files.py +0 -0
  37. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_models.py +0 -0
  38. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_qs.py +0 -0
  39. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_resource.py +0 -0
  40. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_response.py +0 -0
  41. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_streaming.py +0 -0
  42. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_types.py +0 -0
  43. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/__init__.py +0 -0
  44. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_logs.py +0 -0
  45. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_proxy.py +0 -0
  46. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_reflection.py +0 -0
  47. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_resources_proxy.py +0 -0
  48. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_streams.py +0 -0
  49. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_sync.py +0 -0
  50. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_transform.py +0 -0
  51. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_typing.py +0 -0
  52. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/_utils/_utils.py +0 -0
  53. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/lib/.keep +0 -0
  54. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/lib/polling.py +0 -0
  55. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/lib/polling_async.py +0 -0
  56. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/pagination.py +0 -0
  57. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/py.typed +0 -0
  58. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/__init__.py +0 -0
  59. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/benchmarks/__init__.py +0 -0
  60. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/benchmarks/benchmarks.py +0 -0
  61. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/benchmarks/runs.py +0 -0
  62. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/blueprints.py +0 -0
  63. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
  64. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/browsers.py +0 -0
  65. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/computers.py +0 -0
  66. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/executions.py +0 -0
  67. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
  68. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/devboxes/lsp.py +0 -0
  69. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/repositories.py +0 -0
  70. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/scenarios/__init__.py +0 -0
  71. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/scenarios/runs.py +0 -0
  72. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/scenarios/scenarios.py +0 -0
  73. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/resources/scenarios/scorers.py +0 -0
  74. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_create_params.py +0 -0
  75. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_list_params.py +0 -0
  76. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_list_public_params.py +0 -0
  77. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_run_list_view.py +0 -0
  78. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_run_view.py +0 -0
  79. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_start_run_params.py +0 -0
  80. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmark_view.py +0 -0
  81. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmarks/__init__.py +0 -0
  82. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/benchmarks/run_list_params.py +0 -0
  83. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
  84. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
  85. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
  86. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
  87. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
  88. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
  89. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
  90. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
  91. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/blueprint_view.py +0 -0
  92. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
  93. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_create_params.py +0 -0
  94. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
  95. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_create_tunnel_params.py +0 -0
  96. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
  97. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
  98. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
  99. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
  100. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
  101. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_list_params.py +0 -0
  102. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_list_view.py +0 -0
  103. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
  104. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
  105. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_remove_tunnel_params.py +0 -0
  106. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
  107. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
  108. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
  109. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_tunnel_view.py +0 -0
  110. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_update_params.py +0 -0
  111. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
  112. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_view.py +0 -0
  113. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
  114. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_code_action.py +0 -0
  115. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_command.py +0 -0
  116. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_command_param.py +0 -0
  117. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_diagnostic.py +0 -0
  118. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_diagnostic_param.py +0 -0
  119. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_location.py +0 -0
  120. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_markup_content.py +0 -0
  121. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_parameter_information.py +0 -0
  122. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_range.py +0 -0
  123. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_range_param.py +0 -0
  124. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_signature.py +0 -0
  125. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_workspace_edit.py +0 -0
  126. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py +0 -0
  127. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/browser_create_params.py +0 -0
  128. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/browser_view.py +0 -0
  129. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_action_application_result.py +0 -0
  130. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_action_context_param.py +0 -0
  131. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_action_kind.py +0 -0
  132. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py +0 -0
  133. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_actions_response.py +0 -0
  134. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_description_param.py +0 -0
  135. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/code_segment_info_response.py +0 -0
  136. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_create_params.py +0 -0
  137. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_params.py +0 -0
  138. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_response.py +0 -0
  139. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_params.py +0 -0
  140. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_response.py +0 -0
  141. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_screen_interaction_params.py +0 -0
  142. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_screen_interaction_response.py +0 -0
  143. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/computer_view.py +0 -0
  144. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
  145. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/diagnostic_param.py +0 -0
  146. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py +0 -0
  147. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/diagnostic_severity.py +0 -0
  148. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/diagnostic_tag.py +0 -0
  149. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/diagnostics_response.py +0 -0
  150. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py +0 -0
  151. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py +0 -0
  152. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/document_symbol.py +0 -0
  153. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/document_symbol_response.py +0 -0
  154. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/document_uri.py +0 -0
  155. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
  156. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
  157. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
  158. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/file_contents_response.py +0 -0
  159. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/file_definition_response.py +0 -0
  160. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/file_path.py +0 -0
  161. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/file_uri.py +0 -0
  162. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/formatting_response.py +0 -0
  163. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/health_status_response.py +0 -0
  164. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/integer.py +0 -0
  165. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/l_sp_any_param.py +0 -0
  166. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/location_param.py +0 -0
  167. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
  168. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py +0 -0
  169. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py +0 -0
  170. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py +0 -0
  171. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py +0 -0
  172. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py +0 -0
  173. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_file_params.py +0 -0
  174. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_files_response.py +0 -0
  175. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_formatting_params.py +0 -0
  176. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py +0 -0
  177. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py +0 -0
  178. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py +0 -0
  179. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py +0 -0
  180. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_references_params.py +0 -0
  181. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py +0 -0
  182. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py +0 -0
  183. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/position.py +0 -0
  184. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/position_param.py +0 -0
  185. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/range.py +0 -0
  186. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/range_param.py +0 -0
  187. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py +0 -0
  188. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py +0 -0
  189. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/references_response.py +0 -0
  190. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/signature_help_response.py +0 -0
  191. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/symbol_kind.py +0 -0
  192. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/symbol_tag.py +0 -0
  193. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/symbol_type.py +0 -0
  194. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/text_edit.py +0 -0
  195. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/text_edit_param.py +0 -0
  196. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/u_ri.py +0 -0
  197. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/uinteger.py +0 -0
  198. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/devboxes/watched_file_response.py +0 -0
  199. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/input_context.py +0 -0
  200. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/input_context_param.py +0 -0
  201. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/repository_connection_list_view.py +0 -0
  202. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/repository_connection_view.py +0 -0
  203. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/repository_create_params.py +0 -0
  204. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/repository_list_params.py +0 -0
  205. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/repository_version_details.py +0 -0
  206. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/repository_version_list_view.py +0 -0
  207. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_create_params.py +0 -0
  208. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_environment.py +0 -0
  209. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_environment_param.py +0 -0
  210. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_list_params.py +0 -0
  211. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_list_public_params.py +0 -0
  212. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_run_list_view.py +0 -0
  213. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_run_view.py +0 -0
  214. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_start_run_params.py +0 -0
  215. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_update_params.py +0 -0
  216. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenario_view.py +0 -0
  217. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/__init__.py +0 -0
  218. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/run_list_params.py +0 -0
  219. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -0
  220. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -0
  221. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -0
  222. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -0
  223. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -0
  224. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -0
  225. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -0
  226. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_validate_params.py +0 -0
  227. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scenarios/scorer_validate_response.py +0 -0
  228. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scoring_contract.py +0 -0
  229. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scoring_contract_param.py +0 -0
  230. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scoring_contract_result_view.py +0 -0
  231. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scoring_function.py +0 -0
  232. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scoring_function_param.py +0 -0
  233. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/scoring_function_result_view.py +0 -0
  234. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared/__init__.py +0 -0
  235. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared/after_idle.py +0 -0
  236. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
  237. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared/launch_parameters.py +0 -0
  238. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared_params/__init__.py +0 -0
  239. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
  240. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
  241. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/src/runloop_api_client/types/shared_params/launch_parameters.py +0 -0
  242. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/__init__.py +0 -0
  243. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/__init__.py +0 -0
  244. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/benchmarks/__init__.py +0 -0
  245. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/benchmarks/test_runs.py +0 -0
  246. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/__init__.py +0 -0
  247. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/test_browsers.py +0 -0
  248. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/test_computers.py +0 -0
  249. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/test_executions.py +0 -0
  250. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/test_logs.py +0 -0
  251. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/devboxes/test_lsp.py +0 -0
  252. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/scenarios/__init__.py +0 -0
  253. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/scenarios/test_runs.py +0 -0
  254. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/scenarios/test_scorers.py +0 -0
  255. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/test_benchmarks.py +0 -0
  256. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/test_blueprints.py +0 -0
  257. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/test_repositories.py +0 -0
  258. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/api_resources/test_scenarios.py +0 -0
  259. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/conftest.py +0 -0
  260. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/sample_file.txt +0 -0
  261. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_client.py +0 -0
  262. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_deepcopy.py +0 -0
  263. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_extract_files.py +0 -0
  264. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_files.py +0 -0
  265. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_models.py +0 -0
  266. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_qs.py +0 -0
  267. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_required_args.py +0 -0
  268. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_response.py +0 -0
  269. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_streaming.py +0 -0
  270. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_transform.py +0 -0
  271. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_utils/test_proxy.py +0 -0
  272. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/test_utils/test_typing.py +0 -0
  273. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/tests/utils.py +0 -0
  274. {runloop_api_client-0.33.0 → runloop_api_client-0.34.1}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.34.1"
3
+ }
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.34.1 (2025-05-28)
4
+
5
+ Full Changelog: [v0.34.0...v0.34.1](https://github.com/runloopai/api-client-python/compare/v0.34.0...v0.34.1)
6
+
7
+ ### Bug Fixes
8
+
9
+ * **docs/api:** remove references to nonexistent types ([2462ba5](https://github.com/runloopai/api-client-python/commit/2462ba56d0f0735cf9995eebd18818ea94b3fb10))
10
+
11
+ ## 0.34.0 (2025-05-27)
12
+
13
+ Full Changelog: [v0.33.0...v0.34.0](https://github.com/runloopai/api-client-python/compare/v0.33.0...v0.34.0)
14
+
15
+ ### Features
16
+
17
+ * **api:** api update ([997a8ff](https://github.com/runloopai/api-client-python/commit/997a8ffab12ffc3f3a305058456af2bebeae8482))
18
+
3
19
  ## 0.33.0 (2025-05-22)
4
20
 
5
21
  Full Changelog: [v0.32.0...v0.33.0](https://github.com/runloopai/api-client-python/compare/v0.32.0...v0.33.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: runloop_api_client
3
- Version: 0.33.0
3
+ Version: 0.34.1
4
4
  Summary: The official Python library for the runloop API
5
5
  Project-URL: Homepage, https://github.com/runloopai/api-client-python
6
6
  Project-URL: Repository, https://github.com/runloopai/api-client-python
@@ -46,7 +46,6 @@ from runloop_api_client.types import (
46
46
  BlueprintListView,
47
47
  BlueprintPreviewView,
48
48
  BlueprintView,
49
- BlueprintDeleteResponse,
50
49
  )
51
50
  ```
52
51
 
@@ -55,7 +54,7 @@ Methods:
55
54
  - <code title="post /v1/blueprints">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">create</a>(\*\*<a href="src/runloop_api_client/types/blueprint_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_view.py">BlueprintView</a></code>
56
55
  - <code title="get /v1/blueprints/{id}">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/blueprint_view.py">BlueprintView</a></code>
57
56
  - <code title="get /v1/blueprints">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">list</a>(\*\*<a href="src/runloop_api_client/types/blueprint_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_view.py">SyncBlueprintsCursorIDPage[BlueprintView]</a></code>
58
- - <code title="post /v1/blueprints/{id}/delete">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">delete</a>(id) -> <a href="./src/runloop_api_client/types/blueprint_delete_response.py">object</a></code>
57
+ - <code title="post /v1/blueprints/{id}/delete">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">delete</a>(id) -> object</code>
59
58
  - <code title="get /v1/blueprints/{id}/logs">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">logs</a>(id) -> <a href="./src/runloop_api_client/types/blueprint_build_logs_list_view.py">BlueprintBuildLogsListView</a></code>
60
59
  - <code title="post /v1/blueprints/preview">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">preview</a>(\*\*<a href="src/runloop_api_client/types/blueprint_preview_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_preview_view.py">BlueprintPreviewView</a></code>
61
60
 
@@ -73,11 +72,7 @@ from runloop_api_client.types import (
73
72
  DevboxTunnelView,
74
73
  DevboxView,
75
74
  DevboxCreateSSHKeyResponse,
76
- DevboxDeleteDiskSnapshotResponse,
77
- DevboxKeepAliveResponse,
78
75
  DevboxReadFileContentsResponse,
79
- DevboxRemoveTunnelResponse,
80
- DevboxUploadFileResponse,
81
76
  )
82
77
  ```
83
78
 
@@ -89,19 +84,20 @@ Methods:
89
84
  - <code title="get /v1/devboxes">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">list</a>(\*\*<a href="src/runloop_api_client/types/devbox_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_view.py">SyncDevboxesCursorIDPage[DevboxView]</a></code>
90
85
  - <code title="post /v1/devboxes/{id}/create_ssh_key">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">create_ssh_key</a>(id) -> <a href="./src/runloop_api_client/types/devbox_create_ssh_key_response.py">DevboxCreateSSHKeyResponse</a></code>
91
86
  - <code title="post /v1/devboxes/{id}/create_tunnel">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">create_tunnel</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_create_tunnel_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_tunnel_view.py">DevboxTunnelView</a></code>
92
- - <code title="post /v1/devboxes/disk_snapshots/{id}/delete">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">delete_disk_snapshot</a>(id) -> <a href="./src/runloop_api_client/types/devbox_delete_disk_snapshot_response.py">object</a></code>
87
+ - <code title="post /v1/devboxes/disk_snapshots/{id}/delete">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">delete_disk_snapshot</a>(id) -> object</code>
93
88
  - <code title="post /v1/devboxes/{id}/download_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">download_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_download_file_params.py">params</a>) -> BinaryAPIResponse</code>
94
89
  - <code title="post /v1/devboxes/{id}/execute_async">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">execute_async</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_execute_async_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
95
90
  - <code title="post /v1/devboxes/{id}/execute_sync">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">execute_sync</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_execute_sync_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
96
- - <code title="post /v1/devboxes/{id}/keep_alive">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">keep_alive</a>(id) -> <a href="./src/runloop_api_client/types/devbox_keep_alive_response.py">object</a></code>
91
+ - <code title="post /v1/devboxes/{id}/keep_alive">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">keep_alive</a>(id) -> object</code>
97
92
  - <code title="get /v1/devboxes/disk_snapshots">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">list_disk_snapshots</a>(\*\*<a href="src/runloop_api_client/types/devbox_list_disk_snapshots_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_snapshot_view.py">SyncDiskSnapshotsCursorIDPage[DevboxSnapshotView]</a></code>
98
93
  - <code title="post /v1/devboxes/{id}/read_file_contents">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">read_file_contents</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_read_file_contents_params.py">params</a>) -> str</code>
99
- - <code title="post /v1/devboxes/{id}/remove_tunnel">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">remove_tunnel</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_remove_tunnel_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_remove_tunnel_response.py">object</a></code>
94
+ - <code title="post /v1/devboxes/{id}/remove_tunnel">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">remove_tunnel</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_remove_tunnel_params.py">params</a>) -> object</code>
100
95
  - <code title="post /v1/devboxes/{id}/resume">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">resume</a>(id) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
101
96
  - <code title="post /v1/devboxes/{id}/shutdown">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">shutdown</a>(id) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
102
97
  - <code title="post /v1/devboxes/{id}/snapshot_disk">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">snapshot_disk</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_snapshot_disk_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_snapshot_view.py">DevboxSnapshotView</a></code>
98
+ - <code title="post /v1/devboxes/{id}/snapshot_disk_async">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">snapshot_disk_async</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_snapshot_disk_async_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_snapshot_view.py">DevboxSnapshotView</a></code>
103
99
  - <code title="post /v1/devboxes/{id}/suspend">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">suspend</a>(id) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
104
- - <code title="post /v1/devboxes/{id}/upload_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">upload_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_upload_file_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_upload_file_response.py">object</a></code>
100
+ - <code title="post /v1/devboxes/{id}/upload_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">upload_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_upload_file_params.py">params</a>) -> object</code>
105
101
  - <code title="post /v1/devboxes/{id}/write_file_contents">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">write_file_contents</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_write_file_contents_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
106
102
 
107
103
  ## DiskSnapshots
@@ -109,14 +105,15 @@ Methods:
109
105
  Types:
110
106
 
111
107
  ```python
112
- from runloop_api_client.types.devboxes import DiskSnapshotDeleteResponse
108
+ from runloop_api_client.types.devboxes import DevboxSnapshotAsyncStatusView
113
109
  ```
114
110
 
115
111
  Methods:
116
112
 
117
113
  - <code title="post /v1/devboxes/disk_snapshots/{id}">client.devboxes.disk_snapshots.<a href="./src/runloop_api_client/resources/devboxes/disk_snapshots.py">update</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_snapshot_view.py">DevboxSnapshotView</a></code>
118
114
  - <code title="get /v1/devboxes/disk_snapshots">client.devboxes.disk_snapshots.<a href="./src/runloop_api_client/resources/devboxes/disk_snapshots.py">list</a>(\*\*<a href="src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_snapshot_view.py">SyncDiskSnapshotsCursorIDPage[DevboxSnapshotView]</a></code>
119
- - <code title="post /v1/devboxes/disk_snapshots/{id}/delete">client.devboxes.disk_snapshots.<a href="./src/runloop_api_client/resources/devboxes/disk_snapshots.py">delete</a>(id) -> <a href="./src/runloop_api_client/types/devboxes/disk_snapshot_delete_response.py">object</a></code>
115
+ - <code title="post /v1/devboxes/disk_snapshots/{id}/delete">client.devboxes.disk_snapshots.<a href="./src/runloop_api_client/resources/devboxes/disk_snapshots.py">delete</a>(id) -> object</code>
116
+ - <code title="get /v1/devboxes/disk_snapshots/{id}/status">client.devboxes.disk_snapshots.<a href="./src/runloop_api_client/resources/devboxes/disk_snapshots.py">query_status</a>(id) -> <a href="./src/runloop_api_client/types/devboxes/devbox_snapshot_async_status_view.py">DevboxSnapshotAsyncStatusView</a></code>
120
117
 
121
118
  ## Browsers
122
119
 
@@ -325,7 +322,6 @@ from runloop_api_client.types import (
325
322
  RepositoryConnectionView,
326
323
  RepositoryVersionDetails,
327
324
  RepositoryVersionListView,
328
- RepositoryDeleteResponse,
329
325
  )
330
326
  ```
331
327
 
@@ -334,5 +330,5 @@ Methods:
334
330
  - <code title="post /v1/repositories">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">create</a>(\*\*<a href="src/runloop_api_client/types/repository_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/repository_connection_view.py">RepositoryConnectionView</a></code>
335
331
  - <code title="get /v1/repositories/{id}">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/repository_connection_view.py">RepositoryConnectionView</a></code>
336
332
  - <code title="get /v1/repositories">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">list</a>(\*\*<a href="src/runloop_api_client/types/repository_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/repository_connection_view.py">SyncRepositoriesCursorIDPage[RepositoryConnectionView]</a></code>
337
- - <code title="post /v1/repositories/{id}/delete">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">delete</a>(id) -> <a href="./src/runloop_api_client/types/repository_delete_response.py">object</a></code>
333
+ - <code title="post /v1/repositories/{id}/delete">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">delete</a>(id) -> object</code>
338
334
  - <code title="get /v1/repositories/{id}/versions">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">versions</a>(id) -> <a href="./src/runloop_api_client/types/repository_version_list_view.py">RepositoryVersionListView</a></code>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runloop_api_client"
3
- version = "0.33.0"
3
+ version = "0.34.1"
4
4
  description = "The official Python library for the runloop API"
5
5
  dynamic = ["readme"]
6
6
  license = "MIT"
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "runloop_api_client"
4
- __version__ = "0.33.0" # x-release-please-version
4
+ __version__ = "0.34.1" # x-release-please-version
@@ -36,6 +36,7 @@ from ...types import (
36
36
  devbox_snapshot_disk_params,
37
37
  devbox_read_file_contents_params,
38
38
  devbox_list_disk_snapshots_params,
39
+ devbox_snapshot_disk_async_params,
39
40
  devbox_write_file_contents_params,
40
41
  )
41
42
  from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven, FileTypes
@@ -1152,6 +1153,61 @@ class DevboxesResource(SyncAPIResource):
1152
1153
  cast_to=DevboxSnapshotView,
1153
1154
  )
1154
1155
 
1156
+ def snapshot_disk_async(
1157
+ self,
1158
+ id: str,
1159
+ *,
1160
+ metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
1161
+ name: Optional[str] | NotGiven = NOT_GIVEN,
1162
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1163
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1164
+ extra_headers: Headers | None = None,
1165
+ extra_query: Query | None = None,
1166
+ extra_body: Body | None = None,
1167
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1168
+ idempotency_key: str | None = None,
1169
+ ) -> DevboxSnapshotView:
1170
+ """
1171
+ Start an asynchronous disk snapshot of a devbox with the specified name and
1172
+ metadata. The snapshot operation will continue in the background and can be
1173
+ monitored using the query endpoint.
1174
+
1175
+ Args:
1176
+ metadata: (Optional) Metadata used to describe the snapshot
1177
+
1178
+ name: (Optional) A user specified name to give the snapshot
1179
+
1180
+ extra_headers: Send extra headers
1181
+
1182
+ extra_query: Add additional query parameters to the request
1183
+
1184
+ extra_body: Add additional JSON properties to the request
1185
+
1186
+ timeout: Override the client-level default timeout for this request, in seconds
1187
+
1188
+ idempotency_key: Specify a custom idempotency key for this request
1189
+ """
1190
+ if not id:
1191
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
1192
+ return self._post(
1193
+ f"/v1/devboxes/{id}/snapshot_disk_async",
1194
+ body=maybe_transform(
1195
+ {
1196
+ "metadata": metadata,
1197
+ "name": name,
1198
+ },
1199
+ devbox_snapshot_disk_async_params.DevboxSnapshotDiskAsyncParams,
1200
+ ),
1201
+ options=make_request_options(
1202
+ extra_headers=extra_headers,
1203
+ extra_query=extra_query,
1204
+ extra_body=extra_body,
1205
+ timeout=timeout,
1206
+ idempotency_key=idempotency_key,
1207
+ ),
1208
+ cast_to=DevboxSnapshotView,
1209
+ )
1210
+
1155
1211
  def suspend(
1156
1212
  self,
1157
1213
  id: str,
@@ -2349,6 +2405,61 @@ class AsyncDevboxesResource(AsyncAPIResource):
2349
2405
  cast_to=DevboxSnapshotView,
2350
2406
  )
2351
2407
 
2408
+ async def snapshot_disk_async(
2409
+ self,
2410
+ id: str,
2411
+ *,
2412
+ metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
2413
+ name: Optional[str] | NotGiven = NOT_GIVEN,
2414
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2415
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2416
+ extra_headers: Headers | None = None,
2417
+ extra_query: Query | None = None,
2418
+ extra_body: Body | None = None,
2419
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
2420
+ idempotency_key: str | None = None,
2421
+ ) -> DevboxSnapshotView:
2422
+ """
2423
+ Start an asynchronous disk snapshot of a devbox with the specified name and
2424
+ metadata. The snapshot operation will continue in the background and can be
2425
+ monitored using the query endpoint.
2426
+
2427
+ Args:
2428
+ metadata: (Optional) Metadata used to describe the snapshot
2429
+
2430
+ name: (Optional) A user specified name to give the snapshot
2431
+
2432
+ extra_headers: Send extra headers
2433
+
2434
+ extra_query: Add additional query parameters to the request
2435
+
2436
+ extra_body: Add additional JSON properties to the request
2437
+
2438
+ timeout: Override the client-level default timeout for this request, in seconds
2439
+
2440
+ idempotency_key: Specify a custom idempotency key for this request
2441
+ """
2442
+ if not id:
2443
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
2444
+ return await self._post(
2445
+ f"/v1/devboxes/{id}/snapshot_disk_async",
2446
+ body=await async_maybe_transform(
2447
+ {
2448
+ "metadata": metadata,
2449
+ "name": name,
2450
+ },
2451
+ devbox_snapshot_disk_async_params.DevboxSnapshotDiskAsyncParams,
2452
+ ),
2453
+ options=make_request_options(
2454
+ extra_headers=extra_headers,
2455
+ extra_query=extra_query,
2456
+ extra_body=extra_body,
2457
+ timeout=timeout,
2458
+ idempotency_key=idempotency_key,
2459
+ ),
2460
+ cast_to=DevboxSnapshotView,
2461
+ )
2462
+
2352
2463
  async def suspend(
2353
2464
  self,
2354
2465
  id: str,
@@ -2565,6 +2676,9 @@ class DevboxesResourceWithRawResponse:
2565
2676
  self.snapshot_disk = to_raw_response_wrapper(
2566
2677
  devboxes.snapshot_disk,
2567
2678
  )
2679
+ self.snapshot_disk_async = to_raw_response_wrapper(
2680
+ devboxes.snapshot_disk_async,
2681
+ )
2568
2682
  self.suspend = to_raw_response_wrapper(
2569
2683
  devboxes.suspend,
2570
2684
  )
@@ -2656,6 +2770,9 @@ class AsyncDevboxesResourceWithRawResponse:
2656
2770
  self.snapshot_disk = async_to_raw_response_wrapper(
2657
2771
  devboxes.snapshot_disk,
2658
2772
  )
2773
+ self.snapshot_disk_async = async_to_raw_response_wrapper(
2774
+ devboxes.snapshot_disk_async,
2775
+ )
2659
2776
  self.suspend = async_to_raw_response_wrapper(
2660
2777
  devboxes.suspend,
2661
2778
  )
@@ -2747,6 +2864,9 @@ class DevboxesResourceWithStreamingResponse:
2747
2864
  self.snapshot_disk = to_streamed_response_wrapper(
2748
2865
  devboxes.snapshot_disk,
2749
2866
  )
2867
+ self.snapshot_disk_async = to_streamed_response_wrapper(
2868
+ devboxes.snapshot_disk_async,
2869
+ )
2750
2870
  self.suspend = to_streamed_response_wrapper(
2751
2871
  devboxes.suspend,
2752
2872
  )
@@ -2838,6 +2958,9 @@ class AsyncDevboxesResourceWithStreamingResponse:
2838
2958
  self.snapshot_disk = async_to_streamed_response_wrapper(
2839
2959
  devboxes.snapshot_disk,
2840
2960
  )
2961
+ self.snapshot_disk_async = async_to_streamed_response_wrapper(
2962
+ devboxes.snapshot_disk_async,
2963
+ )
2841
2964
  self.suspend = async_to_streamed_response_wrapper(
2842
2965
  devboxes.suspend,
2843
2966
  )
@@ -20,6 +20,7 @@ from ...pagination import SyncDiskSnapshotsCursorIDPage, AsyncDiskSnapshotsCurso
20
20
  from ..._base_client import AsyncPaginator, make_request_options
21
21
  from ...types.devboxes import disk_snapshot_list_params, disk_snapshot_update_params
22
22
  from ...types.devbox_snapshot_view import DevboxSnapshotView
23
+ from ...types.devboxes.devbox_snapshot_async_status_view import DevboxSnapshotAsyncStatusView
23
24
 
24
25
  __all__ = ["DiskSnapshotsResource", "AsyncDiskSnapshotsResource"]
25
26
 
@@ -200,6 +201,40 @@ class DiskSnapshotsResource(SyncAPIResource):
200
201
  cast_to=object,
201
202
  )
202
203
 
204
+ def query_status(
205
+ self,
206
+ id: str,
207
+ *,
208
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
209
+ # The extra values given here take precedence over values defined on the client or passed to this method.
210
+ extra_headers: Headers | None = None,
211
+ extra_query: Query | None = None,
212
+ extra_body: Body | None = None,
213
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
214
+ ) -> DevboxSnapshotAsyncStatusView:
215
+ """
216
+ Get the current status of an asynchronous disk snapshot operation, including
217
+ whether it is still in progress and any error messages if it failed.
218
+
219
+ Args:
220
+ extra_headers: Send extra headers
221
+
222
+ extra_query: Add additional query parameters to the request
223
+
224
+ extra_body: Add additional JSON properties to the request
225
+
226
+ timeout: Override the client-level default timeout for this request, in seconds
227
+ """
228
+ if not id:
229
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
230
+ return self._get(
231
+ f"/v1/devboxes/disk_snapshots/{id}/status",
232
+ options=make_request_options(
233
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
234
+ ),
235
+ cast_to=DevboxSnapshotAsyncStatusView,
236
+ )
237
+
203
238
 
204
239
  class AsyncDiskSnapshotsResource(AsyncAPIResource):
205
240
  @cached_property
@@ -377,6 +412,40 @@ class AsyncDiskSnapshotsResource(AsyncAPIResource):
377
412
  cast_to=object,
378
413
  )
379
414
 
415
+ async def query_status(
416
+ self,
417
+ id: str,
418
+ *,
419
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
420
+ # The extra values given here take precedence over values defined on the client or passed to this method.
421
+ extra_headers: Headers | None = None,
422
+ extra_query: Query | None = None,
423
+ extra_body: Body | None = None,
424
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
425
+ ) -> DevboxSnapshotAsyncStatusView:
426
+ """
427
+ Get the current status of an asynchronous disk snapshot operation, including
428
+ whether it is still in progress and any error messages if it failed.
429
+
430
+ Args:
431
+ extra_headers: Send extra headers
432
+
433
+ extra_query: Add additional query parameters to the request
434
+
435
+ extra_body: Add additional JSON properties to the request
436
+
437
+ timeout: Override the client-level default timeout for this request, in seconds
438
+ """
439
+ if not id:
440
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
441
+ return await self._get(
442
+ f"/v1/devboxes/disk_snapshots/{id}/status",
443
+ options=make_request_options(
444
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
445
+ ),
446
+ cast_to=DevboxSnapshotAsyncStatusView,
447
+ )
448
+
380
449
 
381
450
  class DiskSnapshotsResourceWithRawResponse:
382
451
  def __init__(self, disk_snapshots: DiskSnapshotsResource) -> None:
@@ -391,6 +460,9 @@ class DiskSnapshotsResourceWithRawResponse:
391
460
  self.delete = to_raw_response_wrapper(
392
461
  disk_snapshots.delete,
393
462
  )
463
+ self.query_status = to_raw_response_wrapper(
464
+ disk_snapshots.query_status,
465
+ )
394
466
 
395
467
 
396
468
  class AsyncDiskSnapshotsResourceWithRawResponse:
@@ -406,6 +478,9 @@ class AsyncDiskSnapshotsResourceWithRawResponse:
406
478
  self.delete = async_to_raw_response_wrapper(
407
479
  disk_snapshots.delete,
408
480
  )
481
+ self.query_status = async_to_raw_response_wrapper(
482
+ disk_snapshots.query_status,
483
+ )
409
484
 
410
485
 
411
486
  class DiskSnapshotsResourceWithStreamingResponse:
@@ -421,6 +496,9 @@ class DiskSnapshotsResourceWithStreamingResponse:
421
496
  self.delete = to_streamed_response_wrapper(
422
497
  disk_snapshots.delete,
423
498
  )
499
+ self.query_status = to_streamed_response_wrapper(
500
+ disk_snapshots.query_status,
501
+ )
424
502
 
425
503
 
426
504
  class AsyncDiskSnapshotsResourceWithStreamingResponse:
@@ -436,3 +514,6 @@ class AsyncDiskSnapshotsResourceWithStreamingResponse:
436
514
  self.delete = async_to_streamed_response_wrapper(
437
515
  disk_snapshots.delete,
438
516
  )
517
+ self.query_status = async_to_streamed_response_wrapper(
518
+ disk_snapshots.query_status,
519
+ )
@@ -66,6 +66,7 @@ from .devbox_create_ssh_key_response import DevboxCreateSSHKeyResponse as Devbox
66
66
  from .repository_connection_list_view import RepositoryConnectionListView as RepositoryConnectionListView
67
67
  from .devbox_read_file_contents_params import DevboxReadFileContentsParams as DevboxReadFileContentsParams
68
68
  from .devbox_list_disk_snapshots_params import DevboxListDiskSnapshotsParams as DevboxListDiskSnapshotsParams
69
+ from .devbox_snapshot_disk_async_params import DevboxSnapshotDiskAsyncParams as DevboxSnapshotDiskAsyncParams
69
70
  from .devbox_write_file_contents_params import DevboxWriteFileContentsParams as DevboxWriteFileContentsParams
70
71
  from .devbox_async_execution_detail_view import DevboxAsyncExecutionDetailView as DevboxAsyncExecutionDetailView
71
72
  from .devbox_read_file_contents_response import DevboxReadFileContentsResponse as DevboxReadFileContentsResponse
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict, Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ __all__ = ["DevboxSnapshotDiskAsyncParams"]
9
+
10
+
11
+ class DevboxSnapshotDiskAsyncParams(TypedDict, total=False):
12
+ metadata: Optional[Dict[str, str]]
13
+ """(Optional) Metadata used to describe the snapshot"""
14
+
15
+ name: Optional[str]
16
+ """(Optional) A user specified name to give the snapshot"""
@@ -78,6 +78,7 @@ from .lsp_set_watch_directory_params import LspSetWatchDirectoryParams as LspSet
78
78
  from .lsp_get_code_segment_info_params import LspGetCodeSegmentInfoParams as LspGetCodeSegmentInfoParams
79
79
  from .lsp_set_watch_directory_response import LspSetWatchDirectoryResponse as LspSetWatchDirectoryResponse
80
80
  from .computer_mouse_interaction_params import ComputerMouseInteractionParams as ComputerMouseInteractionParams
81
+ from .devbox_snapshot_async_status_view import DevboxSnapshotAsyncStatusView as DevboxSnapshotAsyncStatusView
81
82
  from .computer_screen_interaction_params import ComputerScreenInteractionParams as ComputerScreenInteractionParams
82
83
  from .computer_mouse_interaction_response import ComputerMouseInteractionResponse as ComputerMouseInteractionResponse
83
84
  from .record_string_text_edit_array_param import RecordStringTextEditArrayParam as RecordStringTextEditArrayParam
@@ -0,0 +1,20 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+ from ..devbox_snapshot_view import DevboxSnapshotView
8
+
9
+ __all__ = ["DevboxSnapshotAsyncStatusView"]
10
+
11
+
12
+ class DevboxSnapshotAsyncStatusView(BaseModel):
13
+ status: Literal["in_progress", "error", "complete"]
14
+ """The current status of the snapshot operation."""
15
+
16
+ error_message: Optional[str] = None
17
+ """Error message if the operation failed."""
18
+
19
+ snapshot: Optional[DevboxSnapshotView] = None
20
+ """The snapshot details if the operation completed successfully."""
@@ -11,6 +11,9 @@ from tests.utils import assert_matches_type
11
11
  from runloop_api_client import Runloop, AsyncRunloop
12
12
  from runloop_api_client.types import DevboxSnapshotView
13
13
  from runloop_api_client.pagination import SyncDiskSnapshotsCursorIDPage, AsyncDiskSnapshotsCursorIDPage
14
+ from runloop_api_client.types.devboxes import (
15
+ DevboxSnapshotAsyncStatusView,
16
+ )
14
17
 
15
18
  base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
16
19
 
@@ -139,6 +142,44 @@ class TestDiskSnapshots:
139
142
  "",
140
143
  )
141
144
 
145
+ @parametrize
146
+ def test_method_query_status(self, client: Runloop) -> None:
147
+ disk_snapshot = client.devboxes.disk_snapshots.query_status(
148
+ "id",
149
+ )
150
+ assert_matches_type(DevboxSnapshotAsyncStatusView, disk_snapshot, path=["response"])
151
+
152
+ @parametrize
153
+ def test_raw_response_query_status(self, client: Runloop) -> None:
154
+ response = client.devboxes.disk_snapshots.with_raw_response.query_status(
155
+ "id",
156
+ )
157
+
158
+ assert response.is_closed is True
159
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
160
+ disk_snapshot = response.parse()
161
+ assert_matches_type(DevboxSnapshotAsyncStatusView, disk_snapshot, path=["response"])
162
+
163
+ @parametrize
164
+ def test_streaming_response_query_status(self, client: Runloop) -> None:
165
+ with client.devboxes.disk_snapshots.with_streaming_response.query_status(
166
+ "id",
167
+ ) as response:
168
+ assert not response.is_closed
169
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
170
+
171
+ disk_snapshot = response.parse()
172
+ assert_matches_type(DevboxSnapshotAsyncStatusView, disk_snapshot, path=["response"])
173
+
174
+ assert cast(Any, response.is_closed) is True
175
+
176
+ @parametrize
177
+ def test_path_params_query_status(self, client: Runloop) -> None:
178
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
179
+ client.devboxes.disk_snapshots.with_raw_response.query_status(
180
+ "",
181
+ )
182
+
142
183
 
143
184
  class TestAsyncDiskSnapshots:
144
185
  parametrize = pytest.mark.parametrize("async_client", [False, True], indirect=True, ids=["loose", "strict"])
@@ -263,3 +304,41 @@ class TestAsyncDiskSnapshots:
263
304
  await async_client.devboxes.disk_snapshots.with_raw_response.delete(
264
305
  "",
265
306
  )
307
+
308
+ @parametrize
309
+ async def test_method_query_status(self, async_client: AsyncRunloop) -> None:
310
+ disk_snapshot = await async_client.devboxes.disk_snapshots.query_status(
311
+ "id",
312
+ )
313
+ assert_matches_type(DevboxSnapshotAsyncStatusView, disk_snapshot, path=["response"])
314
+
315
+ @parametrize
316
+ async def test_raw_response_query_status(self, async_client: AsyncRunloop) -> None:
317
+ response = await async_client.devboxes.disk_snapshots.with_raw_response.query_status(
318
+ "id",
319
+ )
320
+
321
+ assert response.is_closed is True
322
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
323
+ disk_snapshot = await response.parse()
324
+ assert_matches_type(DevboxSnapshotAsyncStatusView, disk_snapshot, path=["response"])
325
+
326
+ @parametrize
327
+ async def test_streaming_response_query_status(self, async_client: AsyncRunloop) -> None:
328
+ async with async_client.devboxes.disk_snapshots.with_streaming_response.query_status(
329
+ "id",
330
+ ) as response:
331
+ assert not response.is_closed
332
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
333
+
334
+ disk_snapshot = await response.parse()
335
+ assert_matches_type(DevboxSnapshotAsyncStatusView, disk_snapshot, path=["response"])
336
+
337
+ assert cast(Any, response.is_closed) is True
338
+
339
+ @parametrize
340
+ async def test_path_params_query_status(self, async_client: AsyncRunloop) -> None:
341
+ with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"):
342
+ await async_client.devboxes.disk_snapshots.with_raw_response.query_status(
343
+ "",
344
+ )