runloop-api-client 0.1.0a23__tar.gz → 0.2.2__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 (138) hide show
  1. runloop_api_client-0.2.2/.release-please-manifest.json +3 -0
  2. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/CHANGELOG.md +27 -0
  3. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/PKG-INFO +2 -2
  4. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/README.md +1 -1
  5. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/api.md +9 -9
  6. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/pyproject.toml +1 -1
  7. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_version.py +1 -1
  8. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/blueprints.py +5 -4
  9. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/devboxes/devboxes.py +225 -3
  10. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/__init__.py +5 -1
  11. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_build_parameters.py +2 -16
  12. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_create_params.py +2 -16
  13. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_preview_params.py +2 -16
  14. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_create_params.py +4 -15
  15. runloop_api_client-0.2.2/src/runloop_api_client/types/devbox_disk_snapshots_params.py +15 -0
  16. runloop_api_client-0.2.2/src/runloop_api_client/types/devbox_disk_snapshots_response.py +32 -0
  17. runloop_api_client-0.2.2/src/runloop_api_client/types/devbox_snapshot_disk_params.py +16 -0
  18. runloop_api_client-0.2.2/src/runloop_api_client/types/devbox_snapshot_list_view.py +17 -0
  19. runloop_api_client-0.2.2/src/runloop_api_client/types/devbox_snapshot_view.py +23 -0
  20. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_view.py +3 -17
  21. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/shared/__init__.py +1 -0
  22. runloop_api_client-0.2.2/src/runloop_api_client/types/shared/launch_parameters.py +22 -0
  23. runloop_api_client-0.2.2/src/runloop_api_client/types/shared/resource_size.py +7 -0
  24. runloop_api_client-0.2.2/src/runloop_api_client/types/shared_params/__init__.py +3 -0
  25. runloop_api_client-0.2.2/src/runloop_api_client/types/shared_params/launch_parameters.py +22 -0
  26. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/test_devboxes.py +171 -0
  27. runloop_api_client-0.1.0a23/.release-please-manifest.json +0 -3
  28. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/.gitignore +0 -0
  29. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/CONTRIBUTING.md +0 -0
  30. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/LICENSE +0 -0
  31. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/SECURITY.md +0 -0
  32. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/bin/check-release-environment +0 -0
  33. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/bin/publish-pypi +0 -0
  34. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/examples/.keep +0 -0
  35. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/mypy.ini +0 -0
  36. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/noxfile.py +0 -0
  37. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/release-please-config.json +0 -0
  38. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/requirements-dev.lock +0 -0
  39. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/requirements.lock +0 -0
  40. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop/lib/.keep +0 -0
  41. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/__init__.py +0 -0
  42. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_base_client.py +0 -0
  43. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_client.py +0 -0
  44. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_compat.py +0 -0
  45. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_constants.py +0 -0
  46. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_exceptions.py +0 -0
  47. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_files.py +0 -0
  48. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_models.py +0 -0
  49. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_qs.py +0 -0
  50. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_resource.py +0 -0
  51. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_response.py +0 -0
  52. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_streaming.py +0 -0
  53. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_types.py +0 -0
  54. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/__init__.py +0 -0
  55. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_logs.py +0 -0
  56. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_proxy.py +0 -0
  57. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_reflection.py +0 -0
  58. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_streams.py +0 -0
  59. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_sync.py +0 -0
  60. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_transform.py +0 -0
  61. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_typing.py +0 -0
  62. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/_utils/_utils.py +0 -0
  63. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/lib/.keep +0 -0
  64. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/py.typed +0 -0
  65. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/__init__.py +0 -0
  66. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
  67. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/devboxes/executions.py +0 -0
  68. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
  69. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/functions/__init__.py +0 -0
  70. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/functions/functions.py +0 -0
  71. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/functions/invocations.py +0 -0
  72. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/projects/__init__.py +0 -0
  73. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/projects/logs.py +0 -0
  74. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/resources/projects/projects.py +0 -0
  75. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
  76. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
  77. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
  78. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
  79. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
  80. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/blueprint_view.py +0 -0
  81. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/code_mount_parameters.py +0 -0
  82. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/code_mount_parameters_param.py +0 -0
  83. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
  84. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
  85. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
  86. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
  87. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
  88. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
  89. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_list_params.py +0 -0
  90. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_list_view.py +0 -0
  91. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
  92. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
  93. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
  94. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devbox_write_file_params.py +0 -0
  95. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
  96. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
  97. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
  98. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
  99. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
  100. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
  101. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/function_invoke_async_params.py +0 -0
  102. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/function_invoke_sync_params.py +0 -0
  103. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/function_list_view.py +0 -0
  104. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/functions/__init__.py +0 -0
  105. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/functions/function_invocation_list_view.py +0 -0
  106. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/functions/invocation_list_params.py +0 -0
  107. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/project_list_view.py +0 -0
  108. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/projects/__init__.py +0 -0
  109. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/resource_size.py +0 -0
  110. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/shared/function_invocation_execution_detail_view.py +0 -0
  111. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/src/runloop_api_client/types/shared/project_logs_view.py +0 -0
  112. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/__init__.py +0 -0
  113. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/__init__.py +0 -0
  114. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/devboxes/__init__.py +0 -0
  115. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/devboxes/test_executions.py +0 -0
  116. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/devboxes/test_logs.py +0 -0
  117. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/functions/__init__.py +0 -0
  118. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/functions/test_invocations.py +0 -0
  119. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/projects/__init__.py +0 -0
  120. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/projects/test_logs.py +0 -0
  121. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/test_blueprints.py +0 -0
  122. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/test_functions.py +0 -0
  123. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/api_resources/test_projects.py +0 -0
  124. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/conftest.py +0 -0
  125. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/sample_file.txt +0 -0
  126. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_client.py +0 -0
  127. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_deepcopy.py +0 -0
  128. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_extract_files.py +0 -0
  129. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_files.py +0 -0
  130. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_models.py +0 -0
  131. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_qs.py +0 -0
  132. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_required_args.py +0 -0
  133. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_response.py +0 -0
  134. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_streaming.py +0 -0
  135. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_transform.py +0 -0
  136. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_utils/test_proxy.py +0 -0
  137. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/test_utils/test_typing.py +0 -0
  138. {runloop_api_client-0.1.0a23 → runloop_api_client-0.2.2}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.2.2"
3
+ }
@@ -1,5 +1,32 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.2 (2024-10-11)
4
+
5
+ Full Changelog: [v0.2.0...v0.2.2](https://github.com/runloopai/api-client-python/compare/v0.2.0...v0.2.2)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([#190](https://github.com/runloopai/api-client-python/issues/190)) ([4b40a20](https://github.com/runloopai/api-client-python/commit/4b40a20d3603f8a0dfdb0ecf8884682193e986d9))
10
+ * **api:** api update ([#192](https://github.com/runloopai/api-client-python/issues/192)) ([51358a5](https://github.com/runloopai/api-client-python/commit/51358a52a59b31729f05c40a6f84af467313f568))
11
+ * **api:** api update ([#193](https://github.com/runloopai/api-client-python/issues/193)) ([d4c04da](https://github.com/runloopai/api-client-python/commit/d4c04da4e1726dd70a638748034e2c86ead63142))
12
+ * **api:** api update ([#194](https://github.com/runloopai/api-client-python/issues/194)) ([31fcc6c](https://github.com/runloopai/api-client-python/commit/31fcc6cc52cc1e7cf782b9fd00d75049f455bb98))
13
+ * **api:** api update ([#195](https://github.com/runloopai/api-client-python/issues/195)) ([4b3112b](https://github.com/runloopai/api-client-python/commit/4b3112bb3e0620fbce4f37bdd4fe06e3bdbaa0d5))
14
+ * **api:** api update ([#196](https://github.com/runloopai/api-client-python/issues/196)) ([f367ac3](https://github.com/runloopai/api-client-python/commit/f367ac3014e94f4be43480fbb8404a8c95b853fe))
15
+ * **api:** api update ([#197](https://github.com/runloopai/api-client-python/issues/197)) ([f5d88d9](https://github.com/runloopai/api-client-python/commit/f5d88d970de6e2820449eedbddc424f387a147ff))
16
+ * **api:** api update ([#198](https://github.com/runloopai/api-client-python/issues/198)) ([6a8c688](https://github.com/runloopai/api-client-python/commit/6a8c688473c715c6bf82a81084a414ea844bac01))
17
+ * **api:** api update ([#199](https://github.com/runloopai/api-client-python/issues/199)) ([e36adf9](https://github.com/runloopai/api-client-python/commit/e36adf900d0c7ee4e25ea1d806c2da2f17cc48eb))
18
+ * **api:** api update ([#200](https://github.com/runloopai/api-client-python/issues/200)) ([2b51e56](https://github.com/runloopai/api-client-python/commit/2b51e5641684c23ddaaf23131b3fe8eba0877925))
19
+
20
+ ## 0.2.0 (2024-10-10)
21
+
22
+ Full Changelog: [v0.1.0-alpha.23...v0.2.0](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.23...v0.2.0)
23
+
24
+ ### Features
25
+
26
+ * **api:** api update ([#186](https://github.com/runloopai/api-client-python/issues/186)) ([bee1e4f](https://github.com/runloopai/api-client-python/commit/bee1e4fb7aa9e167396927f712400223a6f176b2))
27
+ * **api:** api update ([#188](https://github.com/runloopai/api-client-python/issues/188)) ([0b28873](https://github.com/runloopai/api-client-python/commit/0b28873e3bf6ce5ab6d35e8a30e0184d431fad4f))
28
+ * **api:** api update ([#189](https://github.com/runloopai/api-client-python/issues/189)) ([b0226b9](https://github.com/runloopai/api-client-python/commit/b0226b926a346ef24886dc5550da8a5275f9c9a2))
29
+
3
30
  ## 0.1.0-alpha.23 (2024-10-07)
4
31
 
5
32
  Full Changelog: [v0.1.0-alpha.22...v0.1.0-alpha.23](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.22...v0.1.0-alpha.23)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: runloop_api_client
3
- Version: 0.1.0a23
3
+ Version: 0.2.2
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
@@ -50,7 +50,7 @@ The REST API documentation can be found on [runloop.ai](https://runloop.ai). The
50
50
 
51
51
  ```sh
52
52
  # install from PyPI
53
- pip install --pre runloop_api_client
53
+ pip install runloop_api_client
54
54
  ```
55
55
 
56
56
  ## Usage
@@ -16,7 +16,7 @@ The REST API documentation can be found on [runloop.ai](https://runloop.ai). The
16
16
 
17
17
  ```sh
18
18
  # install from PyPI
19
- pip install --pre runloop_api_client
19
+ pip install runloop_api_client
20
20
  ```
21
21
 
22
22
  ## Usage
@@ -1,15 +1,11 @@
1
1
  # Shared Types
2
2
 
3
3
  ```python
4
- from runloop_api_client.types import FunctionInvocationExecutionDetailView, ProjectLogsView
5
- ```
6
-
7
- # Account
8
-
9
- Types:
10
-
11
- ```python
12
- from runloop_api_client.types import ResourceSize
4
+ from runloop_api_client.types import (
5
+ FunctionInvocationExecutionDetailView,
6
+ LaunchParameters,
7
+ ProjectLogsView,
8
+ )
13
9
  ```
14
10
 
15
11
  # Blueprints
@@ -52,6 +48,8 @@ from runloop_api_client.types import (
52
48
  DevboxAsyncExecutionDetailView,
53
49
  DevboxExecutionDetailView,
54
50
  DevboxListView,
51
+ DevboxSnapshotListView,
52
+ DevboxSnapshotView,
55
53
  DevboxView,
56
54
  DevboxCreateSSHKeyResponse,
57
55
  DevboxReadFileContentsResponse,
@@ -65,11 +63,13 @@ Methods:
65
63
  - <code title="get /v1/devboxes/{id}">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
66
64
  - <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_list_view.py">DevboxListView</a></code>
67
65
  - <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>
66
+ - <code title="get /v1/devboxes/disk_snapshots">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">disk_snapshots</a>(\*\*<a href="src/runloop_api_client/types/devbox_disk_snapshots_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_snapshot_list_view.py">DevboxSnapshotListView</a></code>
68
67
  - <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>
69
68
  - <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>
70
69
  - <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>
71
70
  - <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>
72
71
  - <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>
72
+ - <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>) -> None</code>
73
73
  - <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>
74
74
  - <code title="post /v1/devboxes/{id}/write_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">write_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_write_file_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
75
75
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runloop_api_client"
3
- version = "0.1.0-alpha.23"
3
+ version = "0.2.2"
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.1.0-alpha.23" # x-release-please-version
4
+ __version__ = "0.2.2" # x-release-please-version
@@ -26,6 +26,7 @@ from ..types.blueprint_list_view import BlueprintListView
26
26
  from ..types.blueprint_preview_view import BlueprintPreviewView
27
27
  from ..types.code_mount_parameters_param import CodeMountParametersParam
28
28
  from ..types.blueprint_build_logs_list_view import BlueprintBuildLogsListView
29
+ from ..types.shared_params.launch_parameters import LaunchParameters
29
30
 
30
31
  __all__ = ["BlueprintsResource", "AsyncBlueprintsResource"]
31
32
 
@@ -57,7 +58,7 @@ class BlueprintsResource(SyncAPIResource):
57
58
  code_mounts: Iterable[CodeMountParametersParam] | NotGiven = NOT_GIVEN,
58
59
  dockerfile: str | NotGiven = NOT_GIVEN,
59
60
  file_mounts: Dict[str, str] | NotGiven = NOT_GIVEN,
60
- launch_parameters: blueprint_create_params.LaunchParameters | NotGiven = NOT_GIVEN,
61
+ launch_parameters: LaunchParameters | NotGiven = NOT_GIVEN,
61
62
  system_setup_commands: List[str] | NotGiven = NOT_GIVEN,
62
63
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
63
64
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -237,7 +238,7 @@ class BlueprintsResource(SyncAPIResource):
237
238
  code_mounts: Iterable[CodeMountParametersParam] | NotGiven = NOT_GIVEN,
238
239
  dockerfile: str | NotGiven = NOT_GIVEN,
239
240
  file_mounts: Dict[str, str] | NotGiven = NOT_GIVEN,
240
- launch_parameters: blueprint_preview_params.LaunchParameters | NotGiven = NOT_GIVEN,
241
+ launch_parameters: LaunchParameters | NotGiven = NOT_GIVEN,
241
242
  system_setup_commands: List[str] | NotGiven = NOT_GIVEN,
242
243
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
243
244
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -319,7 +320,7 @@ class AsyncBlueprintsResource(AsyncAPIResource):
319
320
  code_mounts: Iterable[CodeMountParametersParam] | NotGiven = NOT_GIVEN,
320
321
  dockerfile: str | NotGiven = NOT_GIVEN,
321
322
  file_mounts: Dict[str, str] | NotGiven = NOT_GIVEN,
322
- launch_parameters: blueprint_create_params.LaunchParameters | NotGiven = NOT_GIVEN,
323
+ launch_parameters: LaunchParameters | NotGiven = NOT_GIVEN,
323
324
  system_setup_commands: List[str] | NotGiven = NOT_GIVEN,
324
325
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
325
326
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -499,7 +500,7 @@ class AsyncBlueprintsResource(AsyncAPIResource):
499
500
  code_mounts: Iterable[CodeMountParametersParam] | NotGiven = NOT_GIVEN,
500
501
  dockerfile: str | NotGiven = NOT_GIVEN,
501
502
  file_mounts: Dict[str, str] | NotGiven = NOT_GIVEN,
502
- launch_parameters: blueprint_preview_params.LaunchParameters | NotGiven = NOT_GIVEN,
503
+ launch_parameters: LaunchParameters | NotGiven = NOT_GIVEN,
503
504
  system_setup_commands: List[str] | NotGiven = NOT_GIVEN,
504
505
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
505
506
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -22,9 +22,11 @@ from ...types import (
22
22
  devbox_execute_sync_params,
23
23
  devbox_download_file_params,
24
24
  devbox_execute_async_params,
25
+ devbox_snapshot_disk_params,
26
+ devbox_disk_snapshots_params,
25
27
  devbox_read_file_contents_params,
26
28
  )
27
- from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven, FileTypes
29
+ from ..._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven, FileTypes
28
30
  from ..._utils import (
29
31
  extract_files,
30
32
  maybe_transform,
@@ -58,9 +60,11 @@ from ..._response import (
58
60
  from ..._base_client import make_request_options
59
61
  from ...types.devbox_view import DevboxView
60
62
  from ...types.devbox_list_view import DevboxListView
63
+ from ...types.devbox_snapshot_list_view import DevboxSnapshotListView
61
64
  from ...types.code_mount_parameters_param import CodeMountParametersParam
62
65
  from ...types.devbox_execution_detail_view import DevboxExecutionDetailView
63
66
  from ...types.devbox_create_ssh_key_response import DevboxCreateSSHKeyResponse
67
+ from ...types.shared_params.launch_parameters import LaunchParameters
64
68
  from ...types.devbox_async_execution_detail_view import DevboxAsyncExecutionDetailView
65
69
 
66
70
  __all__ = ["DevboxesResource", "AsyncDevboxesResource"]
@@ -103,11 +107,12 @@ class DevboxesResource(SyncAPIResource):
103
107
  entrypoint: str | NotGiven = NOT_GIVEN,
104
108
  environment_variables: Dict[str, str] | NotGiven = NOT_GIVEN,
105
109
  file_mounts: Dict[str, str] | NotGiven = NOT_GIVEN,
106
- launch_parameters: devbox_create_params.LaunchParameters | NotGiven = NOT_GIVEN,
110
+ launch_parameters: LaunchParameters | NotGiven = NOT_GIVEN,
107
111
  metadata: Dict[str, str] | NotGiven = NOT_GIVEN,
108
112
  name: str | NotGiven = NOT_GIVEN,
109
113
  prebuilt: str | NotGiven = NOT_GIVEN,
110
114
  setup_commands: List[str] | NotGiven = NOT_GIVEN,
115
+ snapshot_id: str | NotGiven = NOT_GIVEN,
111
116
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
112
117
  # The extra values given here take precedence over values defined on the client or passed to this method.
113
118
  extra_headers: Headers | None = None,
@@ -149,6 +154,8 @@ class DevboxesResource(SyncAPIResource):
149
154
  fetching a tool or building your dependencies. Runloop will look optimize these
150
155
  steps for you.
151
156
 
157
+ snapshot_id: Snapshot ID to use for the Devbox.
158
+
152
159
  extra_headers: Send extra headers
153
160
 
154
161
  extra_query: Add additional query parameters to the request
@@ -172,6 +179,7 @@ class DevboxesResource(SyncAPIResource):
172
179
  "name": name,
173
180
  "prebuilt": prebuilt,
174
181
  "setup_commands": setup_commands,
182
+ "snapshot_id": snapshot_id,
175
183
  },
176
184
  devbox_create_params.DevboxCreateParams,
177
185
  ),
@@ -300,6 +308,52 @@ class DevboxesResource(SyncAPIResource):
300
308
  cast_to=DevboxCreateSSHKeyResponse,
301
309
  )
302
310
 
311
+ def disk_snapshots(
312
+ self,
313
+ *,
314
+ limit: int | NotGiven = NOT_GIVEN,
315
+ starting_after: str | NotGiven = NOT_GIVEN,
316
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
317
+ # The extra values given here take precedence over values defined on the client or passed to this method.
318
+ extra_headers: Headers | None = None,
319
+ extra_query: Query | None = None,
320
+ extra_body: Body | None = None,
321
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
322
+ ) -> DevboxSnapshotListView:
323
+ """
324
+ List all snapshots of a devbox by id.
325
+
326
+ Args:
327
+ limit: Page Limit
328
+
329
+ starting_after: Load the next page starting after the given token.
330
+
331
+ extra_headers: Send extra headers
332
+
333
+ extra_query: Add additional query parameters to the request
334
+
335
+ extra_body: Add additional JSON properties to the request
336
+
337
+ timeout: Override the client-level default timeout for this request, in seconds
338
+ """
339
+ return self._get(
340
+ "/v1/devboxes/disk_snapshots",
341
+ options=make_request_options(
342
+ extra_headers=extra_headers,
343
+ extra_query=extra_query,
344
+ extra_body=extra_body,
345
+ timeout=timeout,
346
+ query=maybe_transform(
347
+ {
348
+ "limit": limit,
349
+ "starting_after": starting_after,
350
+ },
351
+ devbox_disk_snapshots_params.DevboxDiskSnapshotsParams,
352
+ ),
353
+ ),
354
+ cast_to=DevboxSnapshotListView,
355
+ )
356
+
303
357
  def download_file(
304
358
  self,
305
359
  id: str,
@@ -504,6 +558,53 @@ class DevboxesResource(SyncAPIResource):
504
558
  cast_to=DevboxView,
505
559
  )
506
560
 
561
+ def snapshot_disk(
562
+ self,
563
+ id: str,
564
+ *,
565
+ metadata: Dict[str, str] | NotGiven = NOT_GIVEN,
566
+ name: str | NotGiven = NOT_GIVEN,
567
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
568
+ # The extra values given here take precedence over values defined on the client or passed to this method.
569
+ extra_headers: Headers | None = None,
570
+ extra_query: Query | None = None,
571
+ extra_body: Body | None = None,
572
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
573
+ ) -> None:
574
+ """
575
+ Create a filesystem snapshot of a devbox with the specified name and metadata.
576
+
577
+ Args:
578
+ metadata: (Optional) Metadata used to describe the snapshot
579
+
580
+ name: (Optional) A user specified name to give the snapshot
581
+
582
+ extra_headers: Send extra headers
583
+
584
+ extra_query: Add additional query parameters to the request
585
+
586
+ extra_body: Add additional JSON properties to the request
587
+
588
+ timeout: Override the client-level default timeout for this request, in seconds
589
+ """
590
+ if not id:
591
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
592
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
593
+ return self._post(
594
+ f"/v1/devboxes/{id}/snapshot_disk",
595
+ body=maybe_transform(
596
+ {
597
+ "metadata": metadata,
598
+ "name": name,
599
+ },
600
+ devbox_snapshot_disk_params.DevboxSnapshotDiskParams,
601
+ ),
602
+ options=make_request_options(
603
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
604
+ ),
605
+ cast_to=NoneType,
606
+ )
607
+
507
608
  def upload_file(
508
609
  self,
509
610
  id: str,
@@ -636,11 +737,12 @@ class AsyncDevboxesResource(AsyncAPIResource):
636
737
  entrypoint: str | NotGiven = NOT_GIVEN,
637
738
  environment_variables: Dict[str, str] | NotGiven = NOT_GIVEN,
638
739
  file_mounts: Dict[str, str] | NotGiven = NOT_GIVEN,
639
- launch_parameters: devbox_create_params.LaunchParameters | NotGiven = NOT_GIVEN,
740
+ launch_parameters: LaunchParameters | NotGiven = NOT_GIVEN,
640
741
  metadata: Dict[str, str] | NotGiven = NOT_GIVEN,
641
742
  name: str | NotGiven = NOT_GIVEN,
642
743
  prebuilt: str | NotGiven = NOT_GIVEN,
643
744
  setup_commands: List[str] | NotGiven = NOT_GIVEN,
745
+ snapshot_id: str | NotGiven = NOT_GIVEN,
644
746
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
645
747
  # The extra values given here take precedence over values defined on the client or passed to this method.
646
748
  extra_headers: Headers | None = None,
@@ -682,6 +784,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
682
784
  fetching a tool or building your dependencies. Runloop will look optimize these
683
785
  steps for you.
684
786
 
787
+ snapshot_id: Snapshot ID to use for the Devbox.
788
+
685
789
  extra_headers: Send extra headers
686
790
 
687
791
  extra_query: Add additional query parameters to the request
@@ -705,6 +809,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
705
809
  "name": name,
706
810
  "prebuilt": prebuilt,
707
811
  "setup_commands": setup_commands,
812
+ "snapshot_id": snapshot_id,
708
813
  },
709
814
  devbox_create_params.DevboxCreateParams,
710
815
  ),
@@ -833,6 +938,52 @@ class AsyncDevboxesResource(AsyncAPIResource):
833
938
  cast_to=DevboxCreateSSHKeyResponse,
834
939
  )
835
940
 
941
+ async def disk_snapshots(
942
+ self,
943
+ *,
944
+ limit: int | NotGiven = NOT_GIVEN,
945
+ starting_after: str | NotGiven = NOT_GIVEN,
946
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
947
+ # The extra values given here take precedence over values defined on the client or passed to this method.
948
+ extra_headers: Headers | None = None,
949
+ extra_query: Query | None = None,
950
+ extra_body: Body | None = None,
951
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
952
+ ) -> DevboxSnapshotListView:
953
+ """
954
+ List all snapshots of a devbox by id.
955
+
956
+ Args:
957
+ limit: Page Limit
958
+
959
+ starting_after: Load the next page starting after the given token.
960
+
961
+ extra_headers: Send extra headers
962
+
963
+ extra_query: Add additional query parameters to the request
964
+
965
+ extra_body: Add additional JSON properties to the request
966
+
967
+ timeout: Override the client-level default timeout for this request, in seconds
968
+ """
969
+ return await self._get(
970
+ "/v1/devboxes/disk_snapshots",
971
+ options=make_request_options(
972
+ extra_headers=extra_headers,
973
+ extra_query=extra_query,
974
+ extra_body=extra_body,
975
+ timeout=timeout,
976
+ query=await async_maybe_transform(
977
+ {
978
+ "limit": limit,
979
+ "starting_after": starting_after,
980
+ },
981
+ devbox_disk_snapshots_params.DevboxDiskSnapshotsParams,
982
+ ),
983
+ ),
984
+ cast_to=DevboxSnapshotListView,
985
+ )
986
+
836
987
  async def download_file(
837
988
  self,
838
989
  id: str,
@@ -1037,6 +1188,53 @@ class AsyncDevboxesResource(AsyncAPIResource):
1037
1188
  cast_to=DevboxView,
1038
1189
  )
1039
1190
 
1191
+ async def snapshot_disk(
1192
+ self,
1193
+ id: str,
1194
+ *,
1195
+ metadata: Dict[str, str] | NotGiven = NOT_GIVEN,
1196
+ name: str | NotGiven = NOT_GIVEN,
1197
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1198
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1199
+ extra_headers: Headers | None = None,
1200
+ extra_query: Query | None = None,
1201
+ extra_body: Body | None = None,
1202
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1203
+ ) -> None:
1204
+ """
1205
+ Create a filesystem snapshot of a devbox with the specified name and metadata.
1206
+
1207
+ Args:
1208
+ metadata: (Optional) Metadata used to describe the snapshot
1209
+
1210
+ name: (Optional) A user specified name to give the snapshot
1211
+
1212
+ extra_headers: Send extra headers
1213
+
1214
+ extra_query: Add additional query parameters to the request
1215
+
1216
+ extra_body: Add additional JSON properties to the request
1217
+
1218
+ timeout: Override the client-level default timeout for this request, in seconds
1219
+ """
1220
+ if not id:
1221
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
1222
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
1223
+ return await self._post(
1224
+ f"/v1/devboxes/{id}/snapshot_disk",
1225
+ body=await async_maybe_transform(
1226
+ {
1227
+ "metadata": metadata,
1228
+ "name": name,
1229
+ },
1230
+ devbox_snapshot_disk_params.DevboxSnapshotDiskParams,
1231
+ ),
1232
+ options=make_request_options(
1233
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
1234
+ ),
1235
+ cast_to=NoneType,
1236
+ )
1237
+
1040
1238
  async def upload_file(
1041
1239
  self,
1042
1240
  id: str,
@@ -1148,6 +1346,9 @@ class DevboxesResourceWithRawResponse:
1148
1346
  self.create_ssh_key = to_raw_response_wrapper(
1149
1347
  devboxes.create_ssh_key,
1150
1348
  )
1349
+ self.disk_snapshots = to_raw_response_wrapper(
1350
+ devboxes.disk_snapshots,
1351
+ )
1151
1352
  self.download_file = to_custom_raw_response_wrapper(
1152
1353
  devboxes.download_file,
1153
1354
  BinaryAPIResponse,
@@ -1164,6 +1365,9 @@ class DevboxesResourceWithRawResponse:
1164
1365
  self.shutdown = to_raw_response_wrapper(
1165
1366
  devboxes.shutdown,
1166
1367
  )
1368
+ self.snapshot_disk = to_raw_response_wrapper(
1369
+ devboxes.snapshot_disk,
1370
+ )
1167
1371
  self.upload_file = to_raw_response_wrapper(
1168
1372
  devboxes.upload_file,
1169
1373
  )
@@ -1196,6 +1400,9 @@ class AsyncDevboxesResourceWithRawResponse:
1196
1400
  self.create_ssh_key = async_to_raw_response_wrapper(
1197
1401
  devboxes.create_ssh_key,
1198
1402
  )
1403
+ self.disk_snapshots = async_to_raw_response_wrapper(
1404
+ devboxes.disk_snapshots,
1405
+ )
1199
1406
  self.download_file = async_to_custom_raw_response_wrapper(
1200
1407
  devboxes.download_file,
1201
1408
  AsyncBinaryAPIResponse,
@@ -1212,6 +1419,9 @@ class AsyncDevboxesResourceWithRawResponse:
1212
1419
  self.shutdown = async_to_raw_response_wrapper(
1213
1420
  devboxes.shutdown,
1214
1421
  )
1422
+ self.snapshot_disk = async_to_raw_response_wrapper(
1423
+ devboxes.snapshot_disk,
1424
+ )
1215
1425
  self.upload_file = async_to_raw_response_wrapper(
1216
1426
  devboxes.upload_file,
1217
1427
  )
@@ -1244,6 +1454,9 @@ class DevboxesResourceWithStreamingResponse:
1244
1454
  self.create_ssh_key = to_streamed_response_wrapper(
1245
1455
  devboxes.create_ssh_key,
1246
1456
  )
1457
+ self.disk_snapshots = to_streamed_response_wrapper(
1458
+ devboxes.disk_snapshots,
1459
+ )
1247
1460
  self.download_file = to_custom_streamed_response_wrapper(
1248
1461
  devboxes.download_file,
1249
1462
  StreamedBinaryAPIResponse,
@@ -1260,6 +1473,9 @@ class DevboxesResourceWithStreamingResponse:
1260
1473
  self.shutdown = to_streamed_response_wrapper(
1261
1474
  devboxes.shutdown,
1262
1475
  )
1476
+ self.snapshot_disk = to_streamed_response_wrapper(
1477
+ devboxes.snapshot_disk,
1478
+ )
1263
1479
  self.upload_file = to_streamed_response_wrapper(
1264
1480
  devboxes.upload_file,
1265
1481
  )
@@ -1292,6 +1508,9 @@ class AsyncDevboxesResourceWithStreamingResponse:
1292
1508
  self.create_ssh_key = async_to_streamed_response_wrapper(
1293
1509
  devboxes.create_ssh_key,
1294
1510
  )
1511
+ self.disk_snapshots = async_to_streamed_response_wrapper(
1512
+ devboxes.disk_snapshots,
1513
+ )
1295
1514
  self.download_file = async_to_custom_streamed_response_wrapper(
1296
1515
  devboxes.download_file,
1297
1516
  AsyncStreamedBinaryAPIResponse,
@@ -1308,6 +1527,9 @@ class AsyncDevboxesResourceWithStreamingResponse:
1308
1527
  self.shutdown = async_to_streamed_response_wrapper(
1309
1528
  devboxes.shutdown,
1310
1529
  )
1530
+ self.snapshot_disk = async_to_streamed_response_wrapper(
1531
+ devboxes.snapshot_disk,
1532
+ )
1311
1533
  self.upload_file = async_to_streamed_response_wrapper(
1312
1534
  devboxes.upload_file,
1313
1535
  )
@@ -4,10 +4,10 @@ from __future__ import annotations
4
4
 
5
5
  from .shared import (
6
6
  ProjectLogsView as ProjectLogsView,
7
+ LaunchParameters as LaunchParameters,
7
8
  FunctionInvocationExecutionDetailView as FunctionInvocationExecutionDetailView,
8
9
  )
9
10
  from .devbox_view import DevboxView as DevboxView
10
- from .resource_size import ResourceSize as ResourceSize
11
11
  from .blueprint_view import BlueprintView as BlueprintView
12
12
  from .devbox_list_view import DevboxListView as DevboxListView
13
13
  from .project_list_view import ProjectListView as ProjectListView
@@ -16,19 +16,23 @@ from .function_list_view import FunctionListView as FunctionListView
16
16
  from .blueprint_build_log import BlueprintBuildLog as BlueprintBuildLog
17
17
  from .blueprint_list_view import BlueprintListView as BlueprintListView
18
18
  from .devbox_create_params import DevboxCreateParams as DevboxCreateParams
19
+ from .devbox_snapshot_view import DevboxSnapshotView as DevboxSnapshotView
19
20
  from .blueprint_list_params import BlueprintListParams as BlueprintListParams
20
21
  from .code_mount_parameters import CodeMountParameters as CodeMountParameters
21
22
  from .blueprint_preview_view import BlueprintPreviewView as BlueprintPreviewView
22
23
  from .blueprint_create_params import BlueprintCreateParams as BlueprintCreateParams
23
24
  from .blueprint_preview_params import BlueprintPreviewParams as BlueprintPreviewParams
24
25
  from .devbox_write_file_params import DevboxWriteFileParams as DevboxWriteFileParams
26
+ from .devbox_snapshot_list_view import DevboxSnapshotListView as DevboxSnapshotListView
25
27
  from .devbox_upload_file_params import DevboxUploadFileParams as DevboxUploadFileParams
26
28
  from .blueprint_build_parameters import BlueprintBuildParameters as BlueprintBuildParameters
27
29
  from .devbox_execute_sync_params import DevboxExecuteSyncParams as DevboxExecuteSyncParams
28
30
  from .code_mount_parameters_param import CodeMountParametersParam as CodeMountParametersParam
29
31
  from .devbox_download_file_params import DevboxDownloadFileParams as DevboxDownloadFileParams
30
32
  from .devbox_execute_async_params import DevboxExecuteAsyncParams as DevboxExecuteAsyncParams
33
+ from .devbox_snapshot_disk_params import DevboxSnapshotDiskParams as DevboxSnapshotDiskParams
31
34
  from .function_invoke_sync_params import FunctionInvokeSyncParams as FunctionInvokeSyncParams
35
+ from .devbox_disk_snapshots_params import DevboxDiskSnapshotsParams as DevboxDiskSnapshotsParams
32
36
  from .devbox_execution_detail_view import DevboxExecutionDetailView as DevboxExecutionDetailView
33
37
  from .function_invoke_async_params import FunctionInvokeAsyncParams as FunctionInvokeAsyncParams
34
38
  from .blueprint_build_logs_list_view import BlueprintBuildLogsListView as BlueprintBuildLogsListView
@@ -3,24 +3,10 @@
3
3
  from typing import Dict, List, Optional
4
4
 
5
5
  from .._models import BaseModel
6
- from .resource_size import ResourceSize
7
6
  from .code_mount_parameters import CodeMountParameters
7
+ from .shared.launch_parameters import LaunchParameters
8
8
 
9
- __all__ = ["BlueprintBuildParameters", "LaunchParameters"]
10
-
11
-
12
- class LaunchParameters(BaseModel):
13
- keep_alive_time_seconds: Optional[int] = None
14
- """Time in seconds after which Devbox will automatically shutdown.
15
-
16
- Default is 1 hour.
17
- """
18
-
19
- launch_commands: Optional[List[str]] = None
20
- """Set of commands to be run at launch time, before the entrypoint process is run."""
21
-
22
- resource_size_request: Optional[ResourceSize] = None
23
- """Manual resource configuration for Devbox. If not set, defaults will be used."""
9
+ __all__ = ["BlueprintBuildParameters"]
24
10
 
25
11
 
26
12
  class BlueprintBuildParameters(BaseModel):
@@ -5,10 +5,10 @@ from __future__ import annotations
5
5
  from typing import Dict, List, Iterable
6
6
  from typing_extensions import Required, TypedDict
7
7
 
8
- from .resource_size import ResourceSize
9
8
  from .code_mount_parameters_param import CodeMountParametersParam
9
+ from .shared_params.launch_parameters import LaunchParameters
10
10
 
11
- __all__ = ["BlueprintCreateParams", "LaunchParameters"]
11
+ __all__ = ["BlueprintCreateParams"]
12
12
 
13
13
 
14
14
  class BlueprintCreateParams(TypedDict, total=False):
@@ -29,17 +29,3 @@ class BlueprintCreateParams(TypedDict, total=False):
29
29
 
30
30
  system_setup_commands: List[str]
31
31
  """A list of commands to run to set up your system."""
32
-
33
-
34
- class LaunchParameters(TypedDict, total=False):
35
- keep_alive_time_seconds: int
36
- """Time in seconds after which Devbox will automatically shutdown.
37
-
38
- Default is 1 hour.
39
- """
40
-
41
- launch_commands: List[str]
42
- """Set of commands to be run at launch time, before the entrypoint process is run."""
43
-
44
- resource_size_request: ResourceSize
45
- """Manual resource configuration for Devbox. If not set, defaults will be used."""