Skip to content

Commit 43e693c

Browse files
feat(api): api update
1 parent 6bf7913 commit 43e693c

15 files changed

+417
-120
lines changed

.stats.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 84
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-da7ec5b4cc55e7316bc3de6a9c0a37f5ee3057d3d68fdda9cb570d1a1fee57ea.yml
3-
openapi_spec_hash: 5b89a8e3c67c4816dfab9a87fd67247d
4-
config_hash: 8c014837a658512c2e23c002bb0f2ab1
1+
configured_endpoints: 85
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-3484df665f4c2b7cb17ad044b825223fc69ad67b05d967fbb6dfbb6a6ac9ccac.yml
3+
openapi_spec_hash: 58c0860078f5f26c8b517603956700b5
4+
config_hash: c03c6a4c057a38e2809a102c48fafe6c

api.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -323,8 +323,9 @@ Types:
323323
from runloop_api_client.types import (
324324
RepositoryConnectionListView,
325325
RepositoryConnectionView,
326-
RepositoryVersionDetails,
327-
RepositoryVersionListView,
326+
RepositoryInspectionDetails,
327+
RepositoryInspectionListView,
328+
RepositoryManifestView,
328329
)
329330
```
330331

@@ -334,4 +335,5 @@ Methods:
334335
- <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>
335336
- <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>
336337
- <code title="post /v1/repositories/{id}/delete">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">delete</a>(id) -> object</code>
337-
- <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>
338+
- <code title="get /v1/repositories/{id}/inspections">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">list_inspections</a>(id) -> <a href="./src/runloop_api_client/types/repository_inspection_list_view.py">RepositoryInspectionListView</a></code>
339+
- <code title="post /v1/repositories/{id}/refresh">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">refresh</a>(id) -> object</code>

src/runloop_api_client/resources/devboxes/devboxes.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,7 @@ def create(
170170
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
171171
name: Optional[str] | NotGiven = NOT_GIVEN,
172172
prebuilt: Optional[str] | NotGiven = NOT_GIVEN,
173+
repository_connection: Optional[devbox_create_params.RepositoryConnection] | NotGiven = NOT_GIVEN,
173174
snapshot_id: Optional[str] | NotGiven = NOT_GIVEN,
174175
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
175176
# The extra values given here take precedence over values defined on the client or passed to this method.
@@ -215,6 +216,8 @@ def create(
215216
prebuilt: Reference to prebuilt Blueprint to create the Devbox from. Should not be used
216217
together with (Snapshot ID, Blueprint ID, or Blueprint name).
217218
219+
repository_connection: Repository connection parameters for configuring repository integration.
220+
218221
snapshot_id: Snapshot ID to use for the Devbox. Only one of (Snapshot ID, Blueprint ID,
219222
Blueprint name) should be specified.
220223
@@ -242,6 +245,7 @@ def create(
242245
"metadata": metadata,
243246
"name": name,
244247
"prebuilt": prebuilt,
248+
"repository_connection": repository_connection,
245249
"snapshot_id": snapshot_id,
246250
},
247251
devbox_create_params.DevboxCreateParams,
@@ -1425,6 +1429,7 @@ async def create(
14251429
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
14261430
name: Optional[str] | NotGiven = NOT_GIVEN,
14271431
prebuilt: Optional[str] | NotGiven = NOT_GIVEN,
1432+
repository_connection: Optional[devbox_create_params.RepositoryConnection] | NotGiven = NOT_GIVEN,
14281433
snapshot_id: Optional[str] | NotGiven = NOT_GIVEN,
14291434
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
14301435
# The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1470,6 +1475,8 @@ async def create(
14701475
prebuilt: Reference to prebuilt Blueprint to create the Devbox from. Should not be used
14711476
together with (Snapshot ID, Blueprint ID, or Blueprint name).
14721477
1478+
repository_connection: Repository connection parameters for configuring repository integration.
1479+
14731480
snapshot_id: Snapshot ID to use for the Devbox. Only one of (Snapshot ID, Blueprint ID,
14741481
Blueprint name) should be specified.
14751482
@@ -1497,6 +1504,7 @@ async def create(
14971504
"metadata": metadata,
14981505
"name": name,
14991506
"prebuilt": prebuilt,
1507+
"repository_connection": repository_connection,
15001508
"snapshot_id": snapshot_id,
15011509
},
15021510
devbox_create_params.DevboxCreateParams,

src/runloop_api_client/resources/repositories.py

Lines changed: 123 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from ..pagination import SyncRepositoriesCursorIDPage, AsyncRepositoriesCursorIDPage
2121
from .._base_client import AsyncPaginator, make_request_options
2222
from ..types.repository_connection_view import RepositoryConnectionView
23-
from ..types.repository_version_list_view import RepositoryVersionListView
23+
from ..types.repository_inspection_list_view import RepositoryInspectionListView
2424

2525
__all__ = ["RepositoriesResource", "AsyncRepositoriesResource"]
2626

@@ -51,6 +51,7 @@ def create(
5151
name: str,
5252
owner: str,
5353
blueprint_id: Optional[str] | NotGiven = NOT_GIVEN,
54+
github_auth_token: Optional[str] | NotGiven = NOT_GIVEN,
5455
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
5556
# The extra values given here take precedence over values defined on the client or passed to this method.
5657
extra_headers: Headers | None = None,
@@ -70,6 +71,8 @@ def create(
7071
7172
blueprint_id: ID of blueprint to use as base for resulting RepositoryVersion blueprint.
7273
74+
github_auth_token: GitHub authentication token for accessing private repositories.
75+
7376
extra_headers: Send extra headers
7477
7578
extra_query: Add additional query parameters to the request
@@ -87,6 +90,7 @@ def create(
8790
"name": name,
8891
"owner": owner,
8992
"blueprint_id": blueprint_id,
93+
"github_auth_token": github_auth_token,
9094
},
9195
repository_create_params.RepositoryCreateParams,
9296
),
@@ -230,7 +234,7 @@ def delete(
230234
cast_to=object,
231235
)
232236

233-
def versions(
237+
def list_inspections(
234238
self,
235239
id: str,
236240
*,
@@ -240,10 +244,10 @@ def versions(
240244
extra_query: Query | None = None,
241245
extra_body: Body | None = None,
242246
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
243-
) -> RepositoryVersionListView:
247+
) -> RepositoryInspectionListView:
244248
"""
245-
List all analyzed versions of a repository connection including automatically
246-
generated insights for each version.
249+
List all inspections of a repository connection including automatically
250+
generated insights for each inspection.
247251
248252
Args:
249253
extra_headers: Send extra headers
@@ -257,11 +261,52 @@ def versions(
257261
if not id:
258262
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
259263
return self._get(
260-
f"/v1/repositories/{id}/versions",
264+
f"/v1/repositories/{id}/inspections",
261265
options=make_request_options(
262266
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
263267
),
264-
cast_to=RepositoryVersionListView,
268+
cast_to=RepositoryInspectionListView,
269+
)
270+
271+
def refresh(
272+
self,
273+
id: str,
274+
*,
275+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
276+
# The extra values given here take precedence over values defined on the client or passed to this method.
277+
extra_headers: Headers | None = None,
278+
extra_query: Query | None = None,
279+
extra_body: Body | None = None,
280+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
281+
idempotency_key: str | None = None,
282+
) -> object:
283+
"""
284+
Refresh a repository connection by inspecting the latest version including
285+
repo's technical stack and developer environment requirements.
286+
287+
Args:
288+
extra_headers: Send extra headers
289+
290+
extra_query: Add additional query parameters to the request
291+
292+
extra_body: Add additional JSON properties to the request
293+
294+
timeout: Override the client-level default timeout for this request, in seconds
295+
296+
idempotency_key: Specify a custom idempotency key for this request
297+
"""
298+
if not id:
299+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
300+
return self._post(
301+
f"/v1/repositories/{id}/refresh",
302+
options=make_request_options(
303+
extra_headers=extra_headers,
304+
extra_query=extra_query,
305+
extra_body=extra_body,
306+
timeout=timeout,
307+
idempotency_key=idempotency_key,
308+
),
309+
cast_to=object,
265310
)
266311

267312

@@ -291,6 +336,7 @@ async def create(
291336
name: str,
292337
owner: str,
293338
blueprint_id: Optional[str] | NotGiven = NOT_GIVEN,
339+
github_auth_token: Optional[str] | NotGiven = NOT_GIVEN,
294340
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
295341
# The extra values given here take precedence over values defined on the client or passed to this method.
296342
extra_headers: Headers | None = None,
@@ -310,6 +356,8 @@ async def create(
310356
311357
blueprint_id: ID of blueprint to use as base for resulting RepositoryVersion blueprint.
312358
359+
github_auth_token: GitHub authentication token for accessing private repositories.
360+
313361
extra_headers: Send extra headers
314362
315363
extra_query: Add additional query parameters to the request
@@ -327,6 +375,7 @@ async def create(
327375
"name": name,
328376
"owner": owner,
329377
"blueprint_id": blueprint_id,
378+
"github_auth_token": github_auth_token,
330379
},
331380
repository_create_params.RepositoryCreateParams,
332381
),
@@ -470,7 +519,7 @@ async def delete(
470519
cast_to=object,
471520
)
472521

473-
async def versions(
522+
async def list_inspections(
474523
self,
475524
id: str,
476525
*,
@@ -480,10 +529,10 @@ async def versions(
480529
extra_query: Query | None = None,
481530
extra_body: Body | None = None,
482531
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
483-
) -> RepositoryVersionListView:
532+
) -> RepositoryInspectionListView:
484533
"""
485-
List all analyzed versions of a repository connection including automatically
486-
generated insights for each version.
534+
List all inspections of a repository connection including automatically
535+
generated insights for each inspection.
487536
488537
Args:
489538
extra_headers: Send extra headers
@@ -497,11 +546,52 @@ async def versions(
497546
if not id:
498547
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
499548
return await self._get(
500-
f"/v1/repositories/{id}/versions",
549+
f"/v1/repositories/{id}/inspections",
501550
options=make_request_options(
502551
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
503552
),
504-
cast_to=RepositoryVersionListView,
553+
cast_to=RepositoryInspectionListView,
554+
)
555+
556+
async def refresh(
557+
self,
558+
id: str,
559+
*,
560+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
561+
# The extra values given here take precedence over values defined on the client or passed to this method.
562+
extra_headers: Headers | None = None,
563+
extra_query: Query | None = None,
564+
extra_body: Body | None = None,
565+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
566+
idempotency_key: str | None = None,
567+
) -> object:
568+
"""
569+
Refresh a repository connection by inspecting the latest version including
570+
repo's technical stack and developer environment requirements.
571+
572+
Args:
573+
extra_headers: Send extra headers
574+
575+
extra_query: Add additional query parameters to the request
576+
577+
extra_body: Add additional JSON properties to the request
578+
579+
timeout: Override the client-level default timeout for this request, in seconds
580+
581+
idempotency_key: Specify a custom idempotency key for this request
582+
"""
583+
if not id:
584+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
585+
return await self._post(
586+
f"/v1/repositories/{id}/refresh",
587+
options=make_request_options(
588+
extra_headers=extra_headers,
589+
extra_query=extra_query,
590+
extra_body=extra_body,
591+
timeout=timeout,
592+
idempotency_key=idempotency_key,
593+
),
594+
cast_to=object,
505595
)
506596

507597

@@ -521,8 +611,11 @@ def __init__(self, repositories: RepositoriesResource) -> None:
521611
self.delete = to_raw_response_wrapper(
522612
repositories.delete,
523613
)
524-
self.versions = to_raw_response_wrapper(
525-
repositories.versions,
614+
self.list_inspections = to_raw_response_wrapper(
615+
repositories.list_inspections,
616+
)
617+
self.refresh = to_raw_response_wrapper(
618+
repositories.refresh,
526619
)
527620

528621

@@ -542,8 +635,11 @@ def __init__(self, repositories: AsyncRepositoriesResource) -> None:
542635
self.delete = async_to_raw_response_wrapper(
543636
repositories.delete,
544637
)
545-
self.versions = async_to_raw_response_wrapper(
546-
repositories.versions,
638+
self.list_inspections = async_to_raw_response_wrapper(
639+
repositories.list_inspections,
640+
)
641+
self.refresh = async_to_raw_response_wrapper(
642+
repositories.refresh,
547643
)
548644

549645

@@ -563,8 +659,11 @@ def __init__(self, repositories: RepositoriesResource) -> None:
563659
self.delete = to_streamed_response_wrapper(
564660
repositories.delete,
565661
)
566-
self.versions = to_streamed_response_wrapper(
567-
repositories.versions,
662+
self.list_inspections = to_streamed_response_wrapper(
663+
repositories.list_inspections,
664+
)
665+
self.refresh = to_streamed_response_wrapper(
666+
repositories.refresh,
568667
)
569668

570669

@@ -584,6 +683,9 @@ def __init__(self, repositories: AsyncRepositoriesResource) -> None:
584683
self.delete = async_to_streamed_response_wrapper(
585684
repositories.delete,
586685
)
587-
self.versions = async_to_streamed_response_wrapper(
588-
repositories.versions,
686+
self.list_inspections = async_to_streamed_response_wrapper(
687+
repositories.list_inspections,
688+
)
689+
self.refresh = async_to_streamed_response_wrapper(
690+
repositories.refresh,
589691
)

src/runloop_api_client/types/__init__.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,14 @@
4242
from .blueprint_create_params import BlueprintCreateParams as BlueprintCreateParams
4343
from .blueprint_preview_params import BlueprintPreviewParams as BlueprintPreviewParams
4444
from .repository_create_params import RepositoryCreateParams as RepositoryCreateParams
45+
from .repository_manifest_view import RepositoryManifestView as RepositoryManifestView
4546
from .devbox_snapshot_list_view import DevboxSnapshotListView as DevboxSnapshotListView
4647
from .devbox_upload_file_params import DevboxUploadFileParams as DevboxUploadFileParams
4748
from .scenario_start_run_params import ScenarioStartRunParams as ScenarioStartRunParams
4849
from .benchmark_start_run_params import BenchmarkStartRunParams as BenchmarkStartRunParams
4950
from .blueprint_build_parameters import BlueprintBuildParameters as BlueprintBuildParameters
5051
from .devbox_execute_sync_params import DevboxExecuteSyncParams as DevboxExecuteSyncParams
5152
from .repository_connection_view import RepositoryConnectionView as RepositoryConnectionView
52-
from .repository_version_details import RepositoryVersionDetails as RepositoryVersionDetails
5353
from .scenario_environment_param import ScenarioEnvironmentParam as ScenarioEnvironmentParam
5454
from .devbox_create_tunnel_params import DevboxCreateTunnelParams as DevboxCreateTunnelParams
5555
from .devbox_download_file_params import DevboxDownloadFileParams as DevboxDownloadFileParams
@@ -59,12 +59,13 @@
5959
from .scenario_list_public_params import ScenarioListPublicParams as ScenarioListPublicParams
6060
from .benchmark_list_public_params import BenchmarkListPublicParams as BenchmarkListPublicParams
6161
from .devbox_execution_detail_view import DevboxExecutionDetailView as DevboxExecutionDetailView
62-
from .repository_version_list_view import RepositoryVersionListView as RepositoryVersionListView
6362
from .scoring_contract_result_view import ScoringContractResultView as ScoringContractResultView
6463
from .scoring_function_result_view import ScoringFunctionResultView as ScoringFunctionResultView
64+
from .repository_inspection_details import RepositoryInspectionDetails as RepositoryInspectionDetails
6565
from .blueprint_build_logs_list_view import BlueprintBuildLogsListView as BlueprintBuildLogsListView
6666
from .devbox_create_ssh_key_response import DevboxCreateSSHKeyResponse as DevboxCreateSSHKeyResponse
6767
from .repository_connection_list_view import RepositoryConnectionListView as RepositoryConnectionListView
68+
from .repository_inspection_list_view import RepositoryInspectionListView as RepositoryInspectionListView
6869
from .devbox_read_file_contents_params import DevboxReadFileContentsParams as DevboxReadFileContentsParams
6970
from .devbox_list_disk_snapshots_params import DevboxListDiskSnapshotsParams as DevboxListDiskSnapshotsParams
7071
from .devbox_snapshot_disk_async_params import DevboxSnapshotDiskAsyncParams as DevboxSnapshotDiskAsyncParams

0 commit comments

Comments
 (0)