2424 CommitsResourceWithStreamingResponse ,
2525 AsyncCommitsResourceWithStreamingResponse ,
2626)
27- from ..._types import Body , Omit , Query , Headers , NotGiven , omit , not_given
27+ from ..._types import Body , Omit , Query , Headers , NoneType , NotGiven , omit , not_given
2828from ..._utils import maybe_transform , async_maybe_transform
2929from ..._compat import cached_property
3030from ..._resource import SyncAPIResource , AsyncAPIResource
@@ -183,6 +183,40 @@ def list(
183183 cast_to = ProjectListResponse ,
184184 )
185185
186+ def delete (
187+ self ,
188+ project_id : str ,
189+ * ,
190+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
191+ # The extra values given here take precedence over values defined on the client or passed to this method.
192+ extra_headers : Headers | None = None ,
193+ extra_query : Query | None = None ,
194+ extra_body : Body | None = None ,
195+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
196+ ) -> None :
197+ """
198+ Delete a project by its ID.
199+
200+ Args:
201+ extra_headers: Send extra headers
202+
203+ extra_query: Add additional query parameters to the request
204+
205+ extra_body: Add additional JSON properties to the request
206+
207+ timeout: Override the client-level default timeout for this request, in seconds
208+ """
209+ if not project_id :
210+ raise ValueError (f"Expected a non-empty value for `project_id` but received { project_id !r} " )
211+ extra_headers = {"Accept" : "*/*" , ** (extra_headers or {})}
212+ return self ._delete (
213+ f"/projects/{ project_id } " ,
214+ options = make_request_options (
215+ extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
216+ ),
217+ cast_to = NoneType ,
218+ )
219+
186220
187221class AsyncProjectsResource (AsyncAPIResource ):
188222 @cached_property
@@ -318,6 +352,40 @@ async def list(
318352 cast_to = ProjectListResponse ,
319353 )
320354
355+ async def delete (
356+ self ,
357+ project_id : str ,
358+ * ,
359+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
360+ # The extra values given here take precedence over values defined on the client or passed to this method.
361+ extra_headers : Headers | None = None ,
362+ extra_query : Query | None = None ,
363+ extra_body : Body | None = None ,
364+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
365+ ) -> None :
366+ """
367+ Delete a project by its ID.
368+
369+ Args:
370+ extra_headers: Send extra headers
371+
372+ extra_query: Add additional query parameters to the request
373+
374+ extra_body: Add additional JSON properties to the request
375+
376+ timeout: Override the client-level default timeout for this request, in seconds
377+ """
378+ if not project_id :
379+ raise ValueError (f"Expected a non-empty value for `project_id` but received { project_id !r} " )
380+ extra_headers = {"Accept" : "*/*" , ** (extra_headers or {})}
381+ return await self ._delete (
382+ f"/projects/{ project_id } " ,
383+ options = make_request_options (
384+ extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
385+ ),
386+ cast_to = NoneType ,
387+ )
388+
321389
322390class ProjectsResourceWithRawResponse :
323391 def __init__ (self , projects : ProjectsResource ) -> None :
@@ -329,6 +397,9 @@ def __init__(self, projects: ProjectsResource) -> None:
329397 self .list = to_raw_response_wrapper (
330398 projects .list ,
331399 )
400+ self .delete = to_raw_response_wrapper (
401+ projects .delete ,
402+ )
332403
333404 @cached_property
334405 def commits (self ) -> CommitsResourceWithRawResponse :
@@ -353,6 +424,9 @@ def __init__(self, projects: AsyncProjectsResource) -> None:
353424 self .list = async_to_raw_response_wrapper (
354425 projects .list ,
355426 )
427+ self .delete = async_to_raw_response_wrapper (
428+ projects .delete ,
429+ )
356430
357431 @cached_property
358432 def commits (self ) -> AsyncCommitsResourceWithRawResponse :
@@ -377,6 +451,9 @@ def __init__(self, projects: ProjectsResource) -> None:
377451 self .list = to_streamed_response_wrapper (
378452 projects .list ,
379453 )
454+ self .delete = to_streamed_response_wrapper (
455+ projects .delete ,
456+ )
380457
381458 @cached_property
382459 def commits (self ) -> CommitsResourceWithStreamingResponse :
@@ -401,6 +478,9 @@ def __init__(self, projects: AsyncProjectsResource) -> None:
401478 self .list = async_to_streamed_response_wrapper (
402479 projects .list ,
403480 )
481+ self .delete = async_to_streamed_response_wrapper (
482+ projects .delete ,
483+ )
404484
405485 @cached_property
406486 def commits (self ) -> AsyncCommitsResourceWithStreamingResponse :
0 commit comments