daytona_api_client 0.105.1__py3-none-any.whl → 0.106.0a1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of daytona_api_client might be problematic. Click here for more details.

@@ -17,11 +17,14 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
17
17
  from typing import Any, Dict, List, Optional, Tuple, Union
18
18
  from typing_extensions import Annotated
19
19
 
20
- from pydantic import Field, StrictBool, StrictFloat, StrictInt, StrictStr
20
+ from datetime import datetime
21
+ from pydantic import Field, StrictBool, StrictFloat, StrictInt, StrictStr, field_validator
21
22
  from typing import List, Optional, Union
22
23
  from typing_extensions import Annotated
23
24
  from daytona_api_client.models.create_sandbox import CreateSandbox
25
+ from daytona_api_client.models.paginated_sandboxes import PaginatedSandboxes
24
26
  from daytona_api_client.models.port_preview_url import PortPreviewUrl
27
+ from daytona_api_client.models.region import Region
25
28
  from daytona_api_client.models.sandbox import Sandbox
26
29
  from daytona_api_client.models.sandbox_labels import SandboxLabels
27
30
  from daytona_api_client.models.ssh_access_dto import SshAccessDto
@@ -1169,7 +1172,6 @@ class SandboxApi:
1169
1172
  def delete_sandbox(
1170
1173
  self,
1171
1174
  sandbox_id: Annotated[StrictStr, Field(description="ID of the sandbox")],
1172
- force: StrictBool,
1173
1175
  x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
1174
1176
  _request_timeout: Union[
1175
1177
  None,
@@ -1189,8 +1191,6 @@ class SandboxApi:
1189
1191
 
1190
1192
  :param sandbox_id: ID of the sandbox (required)
1191
1193
  :type sandbox_id: str
1192
- :param force: (required)
1193
- :type force: bool
1194
1194
  :param x_daytona_organization_id: Use with JWT to specify the organization ID
1195
1195
  :type x_daytona_organization_id: str
1196
1196
  :param _request_timeout: timeout setting for this request. If one
@@ -1217,7 +1217,6 @@ class SandboxApi:
1217
1217
 
1218
1218
  _param = self._delete_sandbox_serialize(
1219
1219
  sandbox_id=sandbox_id,
1220
- force=force,
1221
1220
  x_daytona_organization_id=x_daytona_organization_id,
1222
1221
  _request_auth=_request_auth,
1223
1222
  _content_type=_content_type,
@@ -1243,7 +1242,6 @@ class SandboxApi:
1243
1242
  def delete_sandbox_with_http_info(
1244
1243
  self,
1245
1244
  sandbox_id: Annotated[StrictStr, Field(description="ID of the sandbox")],
1246
- force: StrictBool,
1247
1245
  x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
1248
1246
  _request_timeout: Union[
1249
1247
  None,
@@ -1263,8 +1261,6 @@ class SandboxApi:
1263
1261
 
1264
1262
  :param sandbox_id: ID of the sandbox (required)
1265
1263
  :type sandbox_id: str
1266
- :param force: (required)
1267
- :type force: bool
1268
1264
  :param x_daytona_organization_id: Use with JWT to specify the organization ID
1269
1265
  :type x_daytona_organization_id: str
1270
1266
  :param _request_timeout: timeout setting for this request. If one
@@ -1291,7 +1287,6 @@ class SandboxApi:
1291
1287
 
1292
1288
  _param = self._delete_sandbox_serialize(
1293
1289
  sandbox_id=sandbox_id,
1294
- force=force,
1295
1290
  x_daytona_organization_id=x_daytona_organization_id,
1296
1291
  _request_auth=_request_auth,
1297
1292
  _content_type=_content_type,
@@ -1317,7 +1312,6 @@ class SandboxApi:
1317
1312
  def delete_sandbox_without_preload_content(
1318
1313
  self,
1319
1314
  sandbox_id: Annotated[StrictStr, Field(description="ID of the sandbox")],
1320
- force: StrictBool,
1321
1315
  x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
1322
1316
  _request_timeout: Union[
1323
1317
  None,
@@ -1337,8 +1331,6 @@ class SandboxApi:
1337
1331
 
1338
1332
  :param sandbox_id: ID of the sandbox (required)
1339
1333
  :type sandbox_id: str
1340
- :param force: (required)
1341
- :type force: bool
1342
1334
  :param x_daytona_organization_id: Use with JWT to specify the organization ID
1343
1335
  :type x_daytona_organization_id: str
1344
1336
  :param _request_timeout: timeout setting for this request. If one
@@ -1365,7 +1357,6 @@ class SandboxApi:
1365
1357
 
1366
1358
  _param = self._delete_sandbox_serialize(
1367
1359
  sandbox_id=sandbox_id,
1368
- force=force,
1369
1360
  x_daytona_organization_id=x_daytona_organization_id,
1370
1361
  _request_auth=_request_auth,
1371
1362
  _content_type=_content_type,
@@ -1386,7 +1377,6 @@ class SandboxApi:
1386
1377
  def _delete_sandbox_serialize(
1387
1378
  self,
1388
1379
  sandbox_id,
1389
- force,
1390
1380
  x_daytona_organization_id,
1391
1381
  _request_auth,
1392
1382
  _content_type,
@@ -1412,10 +1402,6 @@ class SandboxApi:
1412
1402
  if sandbox_id is not None:
1413
1403
  _path_params['sandboxId'] = sandbox_id
1414
1404
  # process the query parameters
1415
- if force is not None:
1416
-
1417
- _query_params.append(('force', force))
1418
-
1419
1405
  # process the header parameters
1420
1406
  if x_daytona_organization_id is not None:
1421
1407
  _header_params['X-Daytona-Organization-ID'] = x_daytona_organization_id
@@ -2313,6 +2299,265 @@ class SandboxApi:
2313
2299
 
2314
2300
 
2315
2301
 
2302
+ @validate_call
2303
+ def get_sandbox_regions(
2304
+ self,
2305
+ x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
2306
+ _request_timeout: Union[
2307
+ None,
2308
+ Annotated[StrictFloat, Field(gt=0)],
2309
+ Tuple[
2310
+ Annotated[StrictFloat, Field(gt=0)],
2311
+ Annotated[StrictFloat, Field(gt=0)]
2312
+ ]
2313
+ ] = None,
2314
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2315
+ _content_type: Optional[StrictStr] = None,
2316
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2317
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2318
+ ) -> List[Region]:
2319
+ """List all regions where sandboxes have been created
2320
+
2321
+
2322
+ :param x_daytona_organization_id: Use with JWT to specify the organization ID
2323
+ :type x_daytona_organization_id: str
2324
+ :param _request_timeout: timeout setting for this request. If one
2325
+ number provided, it will be total request
2326
+ timeout. It can also be a pair (tuple) of
2327
+ (connection, read) timeouts.
2328
+ :type _request_timeout: int, tuple(int, int), optional
2329
+ :param _request_auth: set to override the auth_settings for an a single
2330
+ request; this effectively ignores the
2331
+ authentication in the spec for a single request.
2332
+ :type _request_auth: dict, optional
2333
+ :param _content_type: force content-type for the request.
2334
+ :type _content_type: str, Optional
2335
+ :param _headers: set to override the headers for a single
2336
+ request; this effectively ignores the headers
2337
+ in the spec for a single request.
2338
+ :type _headers: dict, optional
2339
+ :param _host_index: set to override the host_index for a single
2340
+ request; this effectively ignores the host_index
2341
+ in the spec for a single request.
2342
+ :type _host_index: int, optional
2343
+ :return: Returns the result object.
2344
+ """ # noqa: E501
2345
+
2346
+ _param = self._get_sandbox_regions_serialize(
2347
+ x_daytona_organization_id=x_daytona_organization_id,
2348
+ _request_auth=_request_auth,
2349
+ _content_type=_content_type,
2350
+ _headers=_headers,
2351
+ _host_index=_host_index
2352
+ )
2353
+
2354
+ _response_types_map: Dict[str, Optional[str]] = {
2355
+ '200': "List[Region]",
2356
+ }
2357
+ response_data = self.api_client.call_api(
2358
+ *_param,
2359
+ _request_timeout=_request_timeout
2360
+ )
2361
+ response_data.read()
2362
+ return self.api_client.response_deserialize(
2363
+ response_data=response_data,
2364
+ response_types_map=_response_types_map,
2365
+ ).data
2366
+
2367
+
2368
+ @validate_call
2369
+ def get_sandbox_regions_with_http_info(
2370
+ self,
2371
+ x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
2372
+ _request_timeout: Union[
2373
+ None,
2374
+ Annotated[StrictFloat, Field(gt=0)],
2375
+ Tuple[
2376
+ Annotated[StrictFloat, Field(gt=0)],
2377
+ Annotated[StrictFloat, Field(gt=0)]
2378
+ ]
2379
+ ] = None,
2380
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2381
+ _content_type: Optional[StrictStr] = None,
2382
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2383
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2384
+ ) -> ApiResponse[List[Region]]:
2385
+ """List all regions where sandboxes have been created
2386
+
2387
+
2388
+ :param x_daytona_organization_id: Use with JWT to specify the organization ID
2389
+ :type x_daytona_organization_id: str
2390
+ :param _request_timeout: timeout setting for this request. If one
2391
+ number provided, it will be total request
2392
+ timeout. It can also be a pair (tuple) of
2393
+ (connection, read) timeouts.
2394
+ :type _request_timeout: int, tuple(int, int), optional
2395
+ :param _request_auth: set to override the auth_settings for an a single
2396
+ request; this effectively ignores the
2397
+ authentication in the spec for a single request.
2398
+ :type _request_auth: dict, optional
2399
+ :param _content_type: force content-type for the request.
2400
+ :type _content_type: str, Optional
2401
+ :param _headers: set to override the headers for a single
2402
+ request; this effectively ignores the headers
2403
+ in the spec for a single request.
2404
+ :type _headers: dict, optional
2405
+ :param _host_index: set to override the host_index for a single
2406
+ request; this effectively ignores the host_index
2407
+ in the spec for a single request.
2408
+ :type _host_index: int, optional
2409
+ :return: Returns the result object.
2410
+ """ # noqa: E501
2411
+
2412
+ _param = self._get_sandbox_regions_serialize(
2413
+ x_daytona_organization_id=x_daytona_organization_id,
2414
+ _request_auth=_request_auth,
2415
+ _content_type=_content_type,
2416
+ _headers=_headers,
2417
+ _host_index=_host_index
2418
+ )
2419
+
2420
+ _response_types_map: Dict[str, Optional[str]] = {
2421
+ '200': "List[Region]",
2422
+ }
2423
+ response_data = self.api_client.call_api(
2424
+ *_param,
2425
+ _request_timeout=_request_timeout
2426
+ )
2427
+ response_data.read()
2428
+ return self.api_client.response_deserialize(
2429
+ response_data=response_data,
2430
+ response_types_map=_response_types_map,
2431
+ )
2432
+
2433
+
2434
+ @validate_call
2435
+ def get_sandbox_regions_without_preload_content(
2436
+ self,
2437
+ x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
2438
+ _request_timeout: Union[
2439
+ None,
2440
+ Annotated[StrictFloat, Field(gt=0)],
2441
+ Tuple[
2442
+ Annotated[StrictFloat, Field(gt=0)],
2443
+ Annotated[StrictFloat, Field(gt=0)]
2444
+ ]
2445
+ ] = None,
2446
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2447
+ _content_type: Optional[StrictStr] = None,
2448
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2449
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2450
+ ) -> RESTResponseType:
2451
+ """List all regions where sandboxes have been created
2452
+
2453
+
2454
+ :param x_daytona_organization_id: Use with JWT to specify the organization ID
2455
+ :type x_daytona_organization_id: str
2456
+ :param _request_timeout: timeout setting for this request. If one
2457
+ number provided, it will be total request
2458
+ timeout. It can also be a pair (tuple) of
2459
+ (connection, read) timeouts.
2460
+ :type _request_timeout: int, tuple(int, int), optional
2461
+ :param _request_auth: set to override the auth_settings for an a single
2462
+ request; this effectively ignores the
2463
+ authentication in the spec for a single request.
2464
+ :type _request_auth: dict, optional
2465
+ :param _content_type: force content-type for the request.
2466
+ :type _content_type: str, Optional
2467
+ :param _headers: set to override the headers for a single
2468
+ request; this effectively ignores the headers
2469
+ in the spec for a single request.
2470
+ :type _headers: dict, optional
2471
+ :param _host_index: set to override the host_index for a single
2472
+ request; this effectively ignores the host_index
2473
+ in the spec for a single request.
2474
+ :type _host_index: int, optional
2475
+ :return: Returns the result object.
2476
+ """ # noqa: E501
2477
+
2478
+ _param = self._get_sandbox_regions_serialize(
2479
+ x_daytona_organization_id=x_daytona_organization_id,
2480
+ _request_auth=_request_auth,
2481
+ _content_type=_content_type,
2482
+ _headers=_headers,
2483
+ _host_index=_host_index
2484
+ )
2485
+
2486
+ _response_types_map: Dict[str, Optional[str]] = {
2487
+ '200': "List[Region]",
2488
+ }
2489
+ response_data = self.api_client.call_api(
2490
+ *_param,
2491
+ _request_timeout=_request_timeout
2492
+ )
2493
+ return response_data.response
2494
+
2495
+
2496
+ def _get_sandbox_regions_serialize(
2497
+ self,
2498
+ x_daytona_organization_id,
2499
+ _request_auth,
2500
+ _content_type,
2501
+ _headers,
2502
+ _host_index,
2503
+ ) -> RequestSerialized:
2504
+
2505
+ _host = None
2506
+
2507
+ _collection_formats: Dict[str, str] = {
2508
+ }
2509
+
2510
+ _path_params: Dict[str, str] = {}
2511
+ _query_params: List[Tuple[str, str]] = []
2512
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2513
+ _form_params: List[Tuple[str, str]] = []
2514
+ _files: Dict[
2515
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2516
+ ] = {}
2517
+ _body_params: Optional[bytes] = None
2518
+
2519
+ # process the path parameters
2520
+ # process the query parameters
2521
+ # process the header parameters
2522
+ if x_daytona_organization_id is not None:
2523
+ _header_params['X-Daytona-Organization-ID'] = x_daytona_organization_id
2524
+ # process the form parameters
2525
+ # process the body parameter
2526
+
2527
+
2528
+ # set the HTTP header `Accept`
2529
+ if 'Accept' not in _header_params:
2530
+ _header_params['Accept'] = self.api_client.select_header_accept(
2531
+ [
2532
+ 'application/json'
2533
+ ]
2534
+ )
2535
+
2536
+
2537
+ # authentication setting
2538
+ _auth_settings: List[str] = [
2539
+ 'bearer',
2540
+ 'oauth2'
2541
+ ]
2542
+
2543
+ return self.api_client.param_serialize(
2544
+ method='GET',
2545
+ resource_path='/sandbox/regions',
2546
+ path_params=_path_params,
2547
+ query_params=_query_params,
2548
+ header_params=_header_params,
2549
+ body=_body_params,
2550
+ post_params=_form_params,
2551
+ files=_files,
2552
+ auth_settings=_auth_settings,
2553
+ collection_formats=_collection_formats,
2554
+ _host=_host,
2555
+ _request_auth=_request_auth
2556
+ )
2557
+
2558
+
2559
+
2560
+
2316
2561
  @validate_call
2317
2562
  def get_sandboxes_for_runner(
2318
2563
  self,
@@ -2610,9 +2855,24 @@ class SandboxApi:
2610
2855
  def list_sandboxes(
2611
2856
  self,
2612
2857
  x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
2613
- verbose: Annotated[Optional[StrictBool], Field(description="Include verbose output")] = None,
2858
+ page: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Page number of the results")] = None,
2859
+ limit: Annotated[Optional[Union[Annotated[float, Field(le=100, strict=True, ge=1)], Annotated[int, Field(le=100, strict=True, ge=1)]]], Field(description="Number of results per page")] = None,
2860
+ id: Annotated[Optional[StrictStr], Field(description="Filter by partial ID match")] = None,
2614
2861
  labels: Annotated[Optional[StrictStr], Field(description="JSON encoded labels to filter by")] = None,
2615
- include_errored_deleted: Annotated[Optional[StrictBool], Field(description="Include errored and deleted sandboxes")] = None,
2862
+ include_errored_deleted: Annotated[Optional[StrictBool], Field(description="Include results with errored state and deleted desired state")] = None,
2863
+ states: Annotated[Optional[List[StrictStr]], Field(description="List of states to filter by")] = None,
2864
+ snapshots: Annotated[Optional[List[StrictStr]], Field(description="List of snapshot names to filter by")] = None,
2865
+ regions: Annotated[Optional[List[StrictStr]], Field(description="List of regions to filter by")] = None,
2866
+ min_cpu: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum CPU")] = None,
2867
+ max_cpu: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum CPU")] = None,
2868
+ min_memory_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum memory in GiB")] = None,
2869
+ max_memory_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum memory in GiB")] = None,
2870
+ min_disk_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum disk space in GiB")] = None,
2871
+ max_disk_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum disk space in GiB")] = None,
2872
+ last_event_after: Annotated[Optional[datetime], Field(description="Include items with last event after this timestamp")] = None,
2873
+ last_event_before: Annotated[Optional[datetime], Field(description="Include items with last event before this timestamp")] = None,
2874
+ sort: Annotated[Optional[StrictStr], Field(description="Field to sort by")] = None,
2875
+ order: Annotated[Optional[StrictStr], Field(description="Direction to sort by")] = None,
2616
2876
  _request_timeout: Union[
2617
2877
  None,
2618
2878
  Annotated[StrictFloat, Field(gt=0)],
@@ -2625,18 +2885,48 @@ class SandboxApi:
2625
2885
  _content_type: Optional[StrictStr] = None,
2626
2886
  _headers: Optional[Dict[StrictStr, Any]] = None,
2627
2887
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2628
- ) -> List[Sandbox]:
2888
+ ) -> PaginatedSandboxes:
2629
2889
  """List all sandboxes
2630
2890
 
2631
2891
 
2632
2892
  :param x_daytona_organization_id: Use with JWT to specify the organization ID
2633
2893
  :type x_daytona_organization_id: str
2634
- :param verbose: Include verbose output
2635
- :type verbose: bool
2894
+ :param page: Page number of the results
2895
+ :type page: float
2896
+ :param limit: Number of results per page
2897
+ :type limit: float
2898
+ :param id: Filter by partial ID match
2899
+ :type id: str
2636
2900
  :param labels: JSON encoded labels to filter by
2637
2901
  :type labels: str
2638
- :param include_errored_deleted: Include errored and deleted sandboxes
2902
+ :param include_errored_deleted: Include results with errored state and deleted desired state
2639
2903
  :type include_errored_deleted: bool
2904
+ :param states: List of states to filter by
2905
+ :type states: List[str]
2906
+ :param snapshots: List of snapshot names to filter by
2907
+ :type snapshots: List[str]
2908
+ :param regions: List of regions to filter by
2909
+ :type regions: List[str]
2910
+ :param min_cpu: Minimum CPU
2911
+ :type min_cpu: float
2912
+ :param max_cpu: Maximum CPU
2913
+ :type max_cpu: float
2914
+ :param min_memory_gi_b: Minimum memory in GiB
2915
+ :type min_memory_gi_b: float
2916
+ :param max_memory_gi_b: Maximum memory in GiB
2917
+ :type max_memory_gi_b: float
2918
+ :param min_disk_gi_b: Minimum disk space in GiB
2919
+ :type min_disk_gi_b: float
2920
+ :param max_disk_gi_b: Maximum disk space in GiB
2921
+ :type max_disk_gi_b: float
2922
+ :param last_event_after: Include items with last event after this timestamp
2923
+ :type last_event_after: datetime
2924
+ :param last_event_before: Include items with last event before this timestamp
2925
+ :type last_event_before: datetime
2926
+ :param sort: Field to sort by
2927
+ :type sort: str
2928
+ :param order: Direction to sort by
2929
+ :type order: str
2640
2930
  :param _request_timeout: timeout setting for this request. If one
2641
2931
  number provided, it will be total request
2642
2932
  timeout. It can also be a pair (tuple) of
@@ -2661,9 +2951,24 @@ class SandboxApi:
2661
2951
 
2662
2952
  _param = self._list_sandboxes_serialize(
2663
2953
  x_daytona_organization_id=x_daytona_organization_id,
2664
- verbose=verbose,
2954
+ page=page,
2955
+ limit=limit,
2956
+ id=id,
2665
2957
  labels=labels,
2666
2958
  include_errored_deleted=include_errored_deleted,
2959
+ states=states,
2960
+ snapshots=snapshots,
2961
+ regions=regions,
2962
+ min_cpu=min_cpu,
2963
+ max_cpu=max_cpu,
2964
+ min_memory_gi_b=min_memory_gi_b,
2965
+ max_memory_gi_b=max_memory_gi_b,
2966
+ min_disk_gi_b=min_disk_gi_b,
2967
+ max_disk_gi_b=max_disk_gi_b,
2968
+ last_event_after=last_event_after,
2969
+ last_event_before=last_event_before,
2970
+ sort=sort,
2971
+ order=order,
2667
2972
  _request_auth=_request_auth,
2668
2973
  _content_type=_content_type,
2669
2974
  _headers=_headers,
@@ -2671,7 +2976,7 @@ class SandboxApi:
2671
2976
  )
2672
2977
 
2673
2978
  _response_types_map: Dict[str, Optional[str]] = {
2674
- '200': "List[Sandbox]",
2979
+ '200': "PaginatedSandboxes",
2675
2980
  }
2676
2981
  response_data = self.api_client.call_api(
2677
2982
  *_param,
@@ -2688,9 +2993,24 @@ class SandboxApi:
2688
2993
  def list_sandboxes_with_http_info(
2689
2994
  self,
2690
2995
  x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
2691
- verbose: Annotated[Optional[StrictBool], Field(description="Include verbose output")] = None,
2996
+ page: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Page number of the results")] = None,
2997
+ limit: Annotated[Optional[Union[Annotated[float, Field(le=100, strict=True, ge=1)], Annotated[int, Field(le=100, strict=True, ge=1)]]], Field(description="Number of results per page")] = None,
2998
+ id: Annotated[Optional[StrictStr], Field(description="Filter by partial ID match")] = None,
2692
2999
  labels: Annotated[Optional[StrictStr], Field(description="JSON encoded labels to filter by")] = None,
2693
- include_errored_deleted: Annotated[Optional[StrictBool], Field(description="Include errored and deleted sandboxes")] = None,
3000
+ include_errored_deleted: Annotated[Optional[StrictBool], Field(description="Include results with errored state and deleted desired state")] = None,
3001
+ states: Annotated[Optional[List[StrictStr]], Field(description="List of states to filter by")] = None,
3002
+ snapshots: Annotated[Optional[List[StrictStr]], Field(description="List of snapshot names to filter by")] = None,
3003
+ regions: Annotated[Optional[List[StrictStr]], Field(description="List of regions to filter by")] = None,
3004
+ min_cpu: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum CPU")] = None,
3005
+ max_cpu: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum CPU")] = None,
3006
+ min_memory_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum memory in GiB")] = None,
3007
+ max_memory_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum memory in GiB")] = None,
3008
+ min_disk_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum disk space in GiB")] = None,
3009
+ max_disk_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum disk space in GiB")] = None,
3010
+ last_event_after: Annotated[Optional[datetime], Field(description="Include items with last event after this timestamp")] = None,
3011
+ last_event_before: Annotated[Optional[datetime], Field(description="Include items with last event before this timestamp")] = None,
3012
+ sort: Annotated[Optional[StrictStr], Field(description="Field to sort by")] = None,
3013
+ order: Annotated[Optional[StrictStr], Field(description="Direction to sort by")] = None,
2694
3014
  _request_timeout: Union[
2695
3015
  None,
2696
3016
  Annotated[StrictFloat, Field(gt=0)],
@@ -2703,18 +3023,48 @@ class SandboxApi:
2703
3023
  _content_type: Optional[StrictStr] = None,
2704
3024
  _headers: Optional[Dict[StrictStr, Any]] = None,
2705
3025
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2706
- ) -> ApiResponse[List[Sandbox]]:
3026
+ ) -> ApiResponse[PaginatedSandboxes]:
2707
3027
  """List all sandboxes
2708
3028
 
2709
3029
 
2710
3030
  :param x_daytona_organization_id: Use with JWT to specify the organization ID
2711
3031
  :type x_daytona_organization_id: str
2712
- :param verbose: Include verbose output
2713
- :type verbose: bool
3032
+ :param page: Page number of the results
3033
+ :type page: float
3034
+ :param limit: Number of results per page
3035
+ :type limit: float
3036
+ :param id: Filter by partial ID match
3037
+ :type id: str
2714
3038
  :param labels: JSON encoded labels to filter by
2715
3039
  :type labels: str
2716
- :param include_errored_deleted: Include errored and deleted sandboxes
3040
+ :param include_errored_deleted: Include results with errored state and deleted desired state
2717
3041
  :type include_errored_deleted: bool
3042
+ :param states: List of states to filter by
3043
+ :type states: List[str]
3044
+ :param snapshots: List of snapshot names to filter by
3045
+ :type snapshots: List[str]
3046
+ :param regions: List of regions to filter by
3047
+ :type regions: List[str]
3048
+ :param min_cpu: Minimum CPU
3049
+ :type min_cpu: float
3050
+ :param max_cpu: Maximum CPU
3051
+ :type max_cpu: float
3052
+ :param min_memory_gi_b: Minimum memory in GiB
3053
+ :type min_memory_gi_b: float
3054
+ :param max_memory_gi_b: Maximum memory in GiB
3055
+ :type max_memory_gi_b: float
3056
+ :param min_disk_gi_b: Minimum disk space in GiB
3057
+ :type min_disk_gi_b: float
3058
+ :param max_disk_gi_b: Maximum disk space in GiB
3059
+ :type max_disk_gi_b: float
3060
+ :param last_event_after: Include items with last event after this timestamp
3061
+ :type last_event_after: datetime
3062
+ :param last_event_before: Include items with last event before this timestamp
3063
+ :type last_event_before: datetime
3064
+ :param sort: Field to sort by
3065
+ :type sort: str
3066
+ :param order: Direction to sort by
3067
+ :type order: str
2718
3068
  :param _request_timeout: timeout setting for this request. If one
2719
3069
  number provided, it will be total request
2720
3070
  timeout. It can also be a pair (tuple) of
@@ -2739,9 +3089,24 @@ class SandboxApi:
2739
3089
 
2740
3090
  _param = self._list_sandboxes_serialize(
2741
3091
  x_daytona_organization_id=x_daytona_organization_id,
2742
- verbose=verbose,
3092
+ page=page,
3093
+ limit=limit,
3094
+ id=id,
2743
3095
  labels=labels,
2744
3096
  include_errored_deleted=include_errored_deleted,
3097
+ states=states,
3098
+ snapshots=snapshots,
3099
+ regions=regions,
3100
+ min_cpu=min_cpu,
3101
+ max_cpu=max_cpu,
3102
+ min_memory_gi_b=min_memory_gi_b,
3103
+ max_memory_gi_b=max_memory_gi_b,
3104
+ min_disk_gi_b=min_disk_gi_b,
3105
+ max_disk_gi_b=max_disk_gi_b,
3106
+ last_event_after=last_event_after,
3107
+ last_event_before=last_event_before,
3108
+ sort=sort,
3109
+ order=order,
2745
3110
  _request_auth=_request_auth,
2746
3111
  _content_type=_content_type,
2747
3112
  _headers=_headers,
@@ -2749,7 +3114,7 @@ class SandboxApi:
2749
3114
  )
2750
3115
 
2751
3116
  _response_types_map: Dict[str, Optional[str]] = {
2752
- '200': "List[Sandbox]",
3117
+ '200': "PaginatedSandboxes",
2753
3118
  }
2754
3119
  response_data = self.api_client.call_api(
2755
3120
  *_param,
@@ -2766,9 +3131,24 @@ class SandboxApi:
2766
3131
  def list_sandboxes_without_preload_content(
2767
3132
  self,
2768
3133
  x_daytona_organization_id: Annotated[Optional[StrictStr], Field(description="Use with JWT to specify the organization ID")] = None,
2769
- verbose: Annotated[Optional[StrictBool], Field(description="Include verbose output")] = None,
3134
+ page: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Page number of the results")] = None,
3135
+ limit: Annotated[Optional[Union[Annotated[float, Field(le=100, strict=True, ge=1)], Annotated[int, Field(le=100, strict=True, ge=1)]]], Field(description="Number of results per page")] = None,
3136
+ id: Annotated[Optional[StrictStr], Field(description="Filter by partial ID match")] = None,
2770
3137
  labels: Annotated[Optional[StrictStr], Field(description="JSON encoded labels to filter by")] = None,
2771
- include_errored_deleted: Annotated[Optional[StrictBool], Field(description="Include errored and deleted sandboxes")] = None,
3138
+ include_errored_deleted: Annotated[Optional[StrictBool], Field(description="Include results with errored state and deleted desired state")] = None,
3139
+ states: Annotated[Optional[List[StrictStr]], Field(description="List of states to filter by")] = None,
3140
+ snapshots: Annotated[Optional[List[StrictStr]], Field(description="List of snapshot names to filter by")] = None,
3141
+ regions: Annotated[Optional[List[StrictStr]], Field(description="List of regions to filter by")] = None,
3142
+ min_cpu: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum CPU")] = None,
3143
+ max_cpu: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum CPU")] = None,
3144
+ min_memory_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum memory in GiB")] = None,
3145
+ max_memory_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum memory in GiB")] = None,
3146
+ min_disk_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Minimum disk space in GiB")] = None,
3147
+ max_disk_gi_b: Annotated[Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]], Field(description="Maximum disk space in GiB")] = None,
3148
+ last_event_after: Annotated[Optional[datetime], Field(description="Include items with last event after this timestamp")] = None,
3149
+ last_event_before: Annotated[Optional[datetime], Field(description="Include items with last event before this timestamp")] = None,
3150
+ sort: Annotated[Optional[StrictStr], Field(description="Field to sort by")] = None,
3151
+ order: Annotated[Optional[StrictStr], Field(description="Direction to sort by")] = None,
2772
3152
  _request_timeout: Union[
2773
3153
  None,
2774
3154
  Annotated[StrictFloat, Field(gt=0)],
@@ -2787,12 +3167,42 @@ class SandboxApi:
2787
3167
 
2788
3168
  :param x_daytona_organization_id: Use with JWT to specify the organization ID
2789
3169
  :type x_daytona_organization_id: str
2790
- :param verbose: Include verbose output
2791
- :type verbose: bool
3170
+ :param page: Page number of the results
3171
+ :type page: float
3172
+ :param limit: Number of results per page
3173
+ :type limit: float
3174
+ :param id: Filter by partial ID match
3175
+ :type id: str
2792
3176
  :param labels: JSON encoded labels to filter by
2793
3177
  :type labels: str
2794
- :param include_errored_deleted: Include errored and deleted sandboxes
3178
+ :param include_errored_deleted: Include results with errored state and deleted desired state
2795
3179
  :type include_errored_deleted: bool
3180
+ :param states: List of states to filter by
3181
+ :type states: List[str]
3182
+ :param snapshots: List of snapshot names to filter by
3183
+ :type snapshots: List[str]
3184
+ :param regions: List of regions to filter by
3185
+ :type regions: List[str]
3186
+ :param min_cpu: Minimum CPU
3187
+ :type min_cpu: float
3188
+ :param max_cpu: Maximum CPU
3189
+ :type max_cpu: float
3190
+ :param min_memory_gi_b: Minimum memory in GiB
3191
+ :type min_memory_gi_b: float
3192
+ :param max_memory_gi_b: Maximum memory in GiB
3193
+ :type max_memory_gi_b: float
3194
+ :param min_disk_gi_b: Minimum disk space in GiB
3195
+ :type min_disk_gi_b: float
3196
+ :param max_disk_gi_b: Maximum disk space in GiB
3197
+ :type max_disk_gi_b: float
3198
+ :param last_event_after: Include items with last event after this timestamp
3199
+ :type last_event_after: datetime
3200
+ :param last_event_before: Include items with last event before this timestamp
3201
+ :type last_event_before: datetime
3202
+ :param sort: Field to sort by
3203
+ :type sort: str
3204
+ :param order: Direction to sort by
3205
+ :type order: str
2796
3206
  :param _request_timeout: timeout setting for this request. If one
2797
3207
  number provided, it will be total request
2798
3208
  timeout. It can also be a pair (tuple) of
@@ -2817,9 +3227,24 @@ class SandboxApi:
2817
3227
 
2818
3228
  _param = self._list_sandboxes_serialize(
2819
3229
  x_daytona_organization_id=x_daytona_organization_id,
2820
- verbose=verbose,
3230
+ page=page,
3231
+ limit=limit,
3232
+ id=id,
2821
3233
  labels=labels,
2822
3234
  include_errored_deleted=include_errored_deleted,
3235
+ states=states,
3236
+ snapshots=snapshots,
3237
+ regions=regions,
3238
+ min_cpu=min_cpu,
3239
+ max_cpu=max_cpu,
3240
+ min_memory_gi_b=min_memory_gi_b,
3241
+ max_memory_gi_b=max_memory_gi_b,
3242
+ min_disk_gi_b=min_disk_gi_b,
3243
+ max_disk_gi_b=max_disk_gi_b,
3244
+ last_event_after=last_event_after,
3245
+ last_event_before=last_event_before,
3246
+ sort=sort,
3247
+ order=order,
2823
3248
  _request_auth=_request_auth,
2824
3249
  _content_type=_content_type,
2825
3250
  _headers=_headers,
@@ -2827,7 +3252,7 @@ class SandboxApi:
2827
3252
  )
2828
3253
 
2829
3254
  _response_types_map: Dict[str, Optional[str]] = {
2830
- '200': "List[Sandbox]",
3255
+ '200': "PaginatedSandboxes",
2831
3256
  }
2832
3257
  response_data = self.api_client.call_api(
2833
3258
  *_param,
@@ -2839,9 +3264,24 @@ class SandboxApi:
2839
3264
  def _list_sandboxes_serialize(
2840
3265
  self,
2841
3266
  x_daytona_organization_id,
2842
- verbose,
3267
+ page,
3268
+ limit,
3269
+ id,
2843
3270
  labels,
2844
3271
  include_errored_deleted,
3272
+ states,
3273
+ snapshots,
3274
+ regions,
3275
+ min_cpu,
3276
+ max_cpu,
3277
+ min_memory_gi_b,
3278
+ max_memory_gi_b,
3279
+ min_disk_gi_b,
3280
+ max_disk_gi_b,
3281
+ last_event_after,
3282
+ last_event_before,
3283
+ sort,
3284
+ order,
2845
3285
  _request_auth,
2846
3286
  _content_type,
2847
3287
  _headers,
@@ -2851,6 +3291,9 @@ class SandboxApi:
2851
3291
  _host = None
2852
3292
 
2853
3293
  _collection_formats: Dict[str, str] = {
3294
+ 'states': 'multi',
3295
+ 'snapshots': 'multi',
3296
+ 'regions': 'multi',
2854
3297
  }
2855
3298
 
2856
3299
  _path_params: Dict[str, str] = {}
@@ -2864,9 +3307,17 @@ class SandboxApi:
2864
3307
 
2865
3308
  # process the path parameters
2866
3309
  # process the query parameters
2867
- if verbose is not None:
3310
+ if page is not None:
2868
3311
 
2869
- _query_params.append(('verbose', verbose))
3312
+ _query_params.append(('page', page))
3313
+
3314
+ if limit is not None:
3315
+
3316
+ _query_params.append(('limit', limit))
3317
+
3318
+ if id is not None:
3319
+
3320
+ _query_params.append(('id', id))
2870
3321
 
2871
3322
  if labels is not None:
2872
3323
 
@@ -2876,6 +3327,76 @@ class SandboxApi:
2876
3327
 
2877
3328
  _query_params.append(('includeErroredDeleted', include_errored_deleted))
2878
3329
 
3330
+ if states is not None:
3331
+
3332
+ _query_params.append(('states', states))
3333
+
3334
+ if snapshots is not None:
3335
+
3336
+ _query_params.append(('snapshots', snapshots))
3337
+
3338
+ if regions is not None:
3339
+
3340
+ _query_params.append(('regions', regions))
3341
+
3342
+ if min_cpu is not None:
3343
+
3344
+ _query_params.append(('minCpu', min_cpu))
3345
+
3346
+ if max_cpu is not None:
3347
+
3348
+ _query_params.append(('maxCpu', max_cpu))
3349
+
3350
+ if min_memory_gi_b is not None:
3351
+
3352
+ _query_params.append(('minMemoryGiB', min_memory_gi_b))
3353
+
3354
+ if max_memory_gi_b is not None:
3355
+
3356
+ _query_params.append(('maxMemoryGiB', max_memory_gi_b))
3357
+
3358
+ if min_disk_gi_b is not None:
3359
+
3360
+ _query_params.append(('minDiskGiB', min_disk_gi_b))
3361
+
3362
+ if max_disk_gi_b is not None:
3363
+
3364
+ _query_params.append(('maxDiskGiB', max_disk_gi_b))
3365
+
3366
+ if last_event_after is not None:
3367
+ if isinstance(last_event_after, datetime):
3368
+ _query_params.append(
3369
+ (
3370
+ 'lastEventAfter',
3371
+ last_event_after.strftime(
3372
+ self.api_client.configuration.datetime_format
3373
+ )
3374
+ )
3375
+ )
3376
+ else:
3377
+ _query_params.append(('lastEventAfter', last_event_after))
3378
+
3379
+ if last_event_before is not None:
3380
+ if isinstance(last_event_before, datetime):
3381
+ _query_params.append(
3382
+ (
3383
+ 'lastEventBefore',
3384
+ last_event_before.strftime(
3385
+ self.api_client.configuration.datetime_format
3386
+ )
3387
+ )
3388
+ )
3389
+ else:
3390
+ _query_params.append(('lastEventBefore', last_event_before))
3391
+
3392
+ if sort is not None:
3393
+
3394
+ _query_params.append(('sort', sort))
3395
+
3396
+ if order is not None:
3397
+
3398
+ _query_params.append(('order', order))
3399
+
2879
3400
  # process the header parameters
2880
3401
  if x_daytona_organization_id is not None:
2881
3402
  _header_params['X-Daytona-Organization-ID'] = x_daytona_organization_id