Skip to content

Commit 53dd45e

Browse files
committed
Release 0.0.58
1 parent f6408b0 commit 53dd45e

9 files changed

Lines changed: 620 additions & 3 deletions

File tree

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name = "agentmail"
33

44
[tool.poetry]
55
name = "agentmail"
6-
version = "0.0.57"
6+
version = "0.0.58"
77
description = ""
88
readme = "README.md"
99
authors = []

reference.md

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,62 @@ client.inboxes.create()
192192
</dl>
193193

194194

195+
</dd>
196+
</dl>
197+
</details>
198+
199+
<details><summary><code>client.inboxes.<a href="src/agentmail/inboxes/client.py">delete</a>(...)</code></summary>
200+
<dl>
201+
<dd>
202+
203+
#### 🔌 Usage
204+
205+
<dl>
206+
<dd>
207+
208+
<dl>
209+
<dd>
210+
211+
```python
212+
from agentmail import AgentMail
213+
214+
client = AgentMail(
215+
api_key="YOUR_API_KEY",
216+
)
217+
client.inboxes.delete(
218+
inbox_id="inbox_id",
219+
)
220+
221+
```
222+
</dd>
223+
</dl>
224+
</dd>
225+
</dl>
226+
227+
#### ⚙️ Parameters
228+
229+
<dl>
230+
<dd>
231+
232+
<dl>
233+
<dd>
234+
235+
**inbox_id:** `InboxId`
236+
237+
</dd>
238+
</dl>
239+
240+
<dl>
241+
<dd>
242+
243+
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
244+
245+
</dd>
246+
</dl>
247+
</dd>
248+
</dl>
249+
250+
195251
</dd>
196252
</dl>
197253
</details>
@@ -2270,6 +2326,71 @@ client.inboxes.threads.get_attachment(
22702326
</dl>
22712327

22722328

2329+
</dd>
2330+
</dl>
2331+
</details>
2332+
2333+
<details><summary><code>client.inboxes.threads.<a href="src/agentmail/inboxes/threads/client.py">delete</a>(...)</code></summary>
2334+
<dl>
2335+
<dd>
2336+
2337+
#### 🔌 Usage
2338+
2339+
<dl>
2340+
<dd>
2341+
2342+
<dl>
2343+
<dd>
2344+
2345+
```python
2346+
from agentmail import AgentMail
2347+
2348+
client = AgentMail(
2349+
api_key="YOUR_API_KEY",
2350+
)
2351+
client.inboxes.threads.delete(
2352+
inbox_id="inbox_id",
2353+
thread_id="thread_id",
2354+
)
2355+
2356+
```
2357+
</dd>
2358+
</dl>
2359+
</dd>
2360+
</dl>
2361+
2362+
#### ⚙️ Parameters
2363+
2364+
<dl>
2365+
<dd>
2366+
2367+
<dl>
2368+
<dd>
2369+
2370+
**inbox_id:** `InboxId`
2371+
2372+
</dd>
2373+
</dl>
2374+
2375+
<dl>
2376+
<dd>
2377+
2378+
**thread_id:** `ThreadId`
2379+
2380+
</dd>
2381+
</dl>
2382+
2383+
<dl>
2384+
<dd>
2385+
2386+
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
2387+
2388+
</dd>
2389+
</dl>
2390+
</dd>
2391+
</dl>
2392+
2393+
22732394
</dd>
22742395
</dl>
22752396
</details>
@@ -2570,3 +2691,59 @@ client.threads.get_attachment(
25702691
</dl>
25712692
</details>
25722693

2694+
<details><summary><code>client.threads.<a href="src/agentmail/threads/client.py">delete</a>(...)</code></summary>
2695+
<dl>
2696+
<dd>
2697+
2698+
#### 🔌 Usage
2699+
2700+
<dl>
2701+
<dd>
2702+
2703+
<dl>
2704+
<dd>
2705+
2706+
```python
2707+
from agentmail import AgentMail
2708+
2709+
client = AgentMail(
2710+
api_key="YOUR_API_KEY",
2711+
)
2712+
client.threads.delete(
2713+
thread_id="thread_id",
2714+
)
2715+
2716+
```
2717+
</dd>
2718+
</dl>
2719+
</dd>
2720+
</dl>
2721+
2722+
#### ⚙️ Parameters
2723+
2724+
<dl>
2725+
<dd>
2726+
2727+
<dl>
2728+
<dd>
2729+
2730+
**thread_id:** `ThreadId`
2731+
2732+
</dd>
2733+
</dl>
2734+
2735+
<dl>
2736+
<dd>
2737+
2738+
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
2739+
2740+
</dd>
2741+
</dl>
2742+
</dd>
2743+
</dl>
2744+
2745+
2746+
</dd>
2747+
</dl>
2748+
</details>
2749+

src/agentmail/core/client_wrapper.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@ def __init__(
2323

2424
def get_headers(self) -> typing.Dict[str, str]:
2525
headers: typing.Dict[str, str] = {
26-
"User-Agent": "agentmail/0.0.57",
26+
"User-Agent": "agentmail/0.0.58",
2727
"X-Fern-Language": "Python",
2828
"X-Fern-SDK-Name": "agentmail",
29-
"X-Fern-SDK-Version": "0.0.57",
29+
"X-Fern-SDK-Version": "0.0.58",
3030
**(self.get_custom_headers() or {}),
3131
}
3232
headers["Authorization"] = f"Bearer {self._get_api_key()}"

src/agentmail/inboxes/client.py

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,33 @@ def create(
150150
)
151151
return _response.data
152152

153+
def delete(self, inbox_id: InboxId, *, request_options: typing.Optional[RequestOptions] = None) -> None:
154+
"""
155+
Parameters
156+
----------
157+
inbox_id : InboxId
158+
159+
request_options : typing.Optional[RequestOptions]
160+
Request-specific configuration.
161+
162+
Returns
163+
-------
164+
None
165+
166+
Examples
167+
--------
168+
from agentmail import AgentMail
169+
170+
client = AgentMail(
171+
api_key="YOUR_API_KEY",
172+
)
173+
client.inboxes.delete(
174+
inbox_id="inbox_id",
175+
)
176+
"""
177+
_response = self._raw_client.delete(inbox_id, request_options=request_options)
178+
return _response.data
179+
153180

154181
class AsyncInboxesClient:
155182
def __init__(self, *, client_wrapper: AsyncClientWrapper):
@@ -304,3 +331,38 @@ async def main() -> None:
304331
request_options=request_options,
305332
)
306333
return _response.data
334+
335+
async def delete(self, inbox_id: InboxId, *, request_options: typing.Optional[RequestOptions] = None) -> None:
336+
"""
337+
Parameters
338+
----------
339+
inbox_id : InboxId
340+
341+
request_options : typing.Optional[RequestOptions]
342+
Request-specific configuration.
343+
344+
Returns
345+
-------
346+
None
347+
348+
Examples
349+
--------
350+
import asyncio
351+
352+
from agentmail import AsyncAgentMail
353+
354+
client = AsyncAgentMail(
355+
api_key="YOUR_API_KEY",
356+
)
357+
358+
359+
async def main() -> None:
360+
await client.inboxes.delete(
361+
inbox_id="inbox_id",
362+
)
363+
364+
365+
asyncio.run(main())
366+
"""
367+
_response = await self._raw_client.delete(inbox_id, request_options=request_options)
368+
return _response.data

src/agentmail/inboxes/raw_client.py

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,46 @@ def create(
188188
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
189189
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
190190

191+
def delete(
192+
self, inbox_id: InboxId, *, request_options: typing.Optional[RequestOptions] = None
193+
) -> HttpResponse[None]:
194+
"""
195+
Parameters
196+
----------
197+
inbox_id : InboxId
198+
199+
request_options : typing.Optional[RequestOptions]
200+
Request-specific configuration.
201+
202+
Returns
203+
-------
204+
HttpResponse[None]
205+
"""
206+
_response = self._client_wrapper.httpx_client.request(
207+
f"v0/inboxes/{jsonable_encoder(inbox_id)}",
208+
base_url=self._client_wrapper.get_environment().http,
209+
method="DELETE",
210+
request_options=request_options,
211+
)
212+
try:
213+
if 200 <= _response.status_code < 300:
214+
return HttpResponse(response=_response, data=None)
215+
if _response.status_code == 404:
216+
raise NotFoundError(
217+
headers=dict(_response.headers),
218+
body=typing.cast(
219+
ErrorResponse,
220+
construct_type(
221+
type_=ErrorResponse, # type: ignore
222+
object_=_response.json(),
223+
),
224+
),
225+
)
226+
_response_json = _response.json()
227+
except JSONDecodeError:
228+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
229+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
230+
191231

192232
class AsyncRawInboxesClient:
193233
def __init__(self, *, client_wrapper: AsyncClientWrapper):
@@ -354,3 +394,43 @@ async def create(
354394
except JSONDecodeError:
355395
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
356396
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
397+
398+
async def delete(
399+
self, inbox_id: InboxId, *, request_options: typing.Optional[RequestOptions] = None
400+
) -> AsyncHttpResponse[None]:
401+
"""
402+
Parameters
403+
----------
404+
inbox_id : InboxId
405+
406+
request_options : typing.Optional[RequestOptions]
407+
Request-specific configuration.
408+
409+
Returns
410+
-------
411+
AsyncHttpResponse[None]
412+
"""
413+
_response = await self._client_wrapper.httpx_client.request(
414+
f"v0/inboxes/{jsonable_encoder(inbox_id)}",
415+
base_url=self._client_wrapper.get_environment().http,
416+
method="DELETE",
417+
request_options=request_options,
418+
)
419+
try:
420+
if 200 <= _response.status_code < 300:
421+
return AsyncHttpResponse(response=_response, data=None)
422+
if _response.status_code == 404:
423+
raise NotFoundError(
424+
headers=dict(_response.headers),
425+
body=typing.cast(
426+
ErrorResponse,
427+
construct_type(
428+
type_=ErrorResponse, # type: ignore
429+
object_=_response.json(),
430+
),
431+
),
432+
)
433+
_response_json = _response.json()
434+
except JSONDecodeError:
435+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
436+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)

0 commit comments

Comments
 (0)