Skip to content

Commit 74461ed

Browse files
author
stlc-bot
committed
feat(logs): expose request log endpoints in SDKs (#1025)
Stainless-Generated-From: 5e86b30
1 parent 6904a7c commit 74461ed

10 files changed

Lines changed: 892 additions & 2 deletions

File tree

‎.stats.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
configured_endpoints: 45
1+
configured_endpoints: 47

‎api.md‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,3 +221,16 @@ from context.dev.types import NewsSearchResponse
221221
Methods:
222222

223223
- <code title="post /news/search">client.news.<a href="./src/context/dev/resources/news.py">search</a>(\*\*<a href="src/context/dev/types/news_search_params.py">params</a>) -> <a href="./src/context/dev/types/news_search_response.py">NewsSearchResponse</a></code>
224+
225+
# Logs
226+
227+
Types:
228+
229+
```python
230+
from context.dev.types import LogRetrieveResponse, LogListResponse
231+
```
232+
233+
Methods:
234+
235+
- <code title="get /logs/{request_id}">client.logs.<a href="./src/context/dev/resources/logs.py">retrieve</a>(request_id) -> <a href="./src/context/dev/types/log_retrieve_response.py">LogRetrieveResponse</a></code>
236+
- <code title="get /logs">client.logs.<a href="./src/context/dev/resources/logs.py">list</a>(\*\*<a href="src/context/dev/types/log_list_params.py">params</a>) -> <a href="./src/context/dev/types/log_list_response.py">LogListResponse</a></code>

‎src/context/dev/_client.py‎

Lines changed: 62 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,10 @@
3535
)
3636

3737
if TYPE_CHECKING:
38-
from .resources import ai, web, news, batch, brand, parse, people, utility, industry, monitors, webhooks
38+
from .resources import ai, web, logs, news, batch, brand, parse, people, utility, industry, monitors, webhooks
3939
from .resources.ai import AIResource, AsyncAIResource
4040
from .resources.web import WebResource, AsyncWebResource
41+
from .resources.logs import LogsResource, AsyncLogsResource
4142
from .resources.news import NewsResource, AsyncNewsResource
4243
from .resources.batch import BatchResource, AsyncBatchResource
4344
from .resources.brand import BrandResource, AsyncBrandResource
@@ -195,6 +196,16 @@ def news(self) -> NewsResource:
195196

196197
return NewsResource(self)
197198

199+
@cached_property
200+
def logs(self) -> LogsResource:
201+
"""Read your organization's API request logs to debug failed calls.
202+
203+
These endpoints cost no credits and use a separate rate limit.
204+
"""
205+
from .resources.logs import LogsResource
206+
207+
return LogsResource(self)
208+
198209
@cached_property
199210
def with_raw_response(self) -> ContextDevWithRawResponse:
200211
return ContextDevWithRawResponse(self)
@@ -443,6 +454,16 @@ def news(self) -> AsyncNewsResource:
443454

444455
return AsyncNewsResource(self)
445456

457+
@cached_property
458+
def logs(self) -> AsyncLogsResource:
459+
"""Read your organization's API request logs to debug failed calls.
460+
461+
These endpoints cost no credits and use a separate rate limit.
462+
"""
463+
from .resources.logs import AsyncLogsResource
464+
465+
return AsyncLogsResource(self)
466+
446467
@cached_property
447468
def with_raw_response(self) -> AsyncContextDevWithRawResponse:
448469
return AsyncContextDevWithRawResponse(self)
@@ -633,6 +654,16 @@ def news(self) -> news.NewsResourceWithRawResponse:
633654

634655
return NewsResourceWithRawResponse(self._client.news)
635656

657+
@cached_property
658+
def logs(self) -> logs.LogsResourceWithRawResponse:
659+
"""Read your organization's API request logs to debug failed calls.
660+
661+
These endpoints cost no credits and use a separate rate limit.
662+
"""
663+
from .resources.logs import LogsResourceWithRawResponse
664+
665+
return LogsResourceWithRawResponse(self._client.logs)
666+
636667

637668
class AsyncContextDevWithRawResponse:
638669
_client: AsyncContextDev
@@ -711,6 +742,16 @@ def news(self) -> news.AsyncNewsResourceWithRawResponse:
711742

712743
return AsyncNewsResourceWithRawResponse(self._client.news)
713744

745+
@cached_property
746+
def logs(self) -> logs.AsyncLogsResourceWithRawResponse:
747+
"""Read your organization's API request logs to debug failed calls.
748+
749+
These endpoints cost no credits and use a separate rate limit.
750+
"""
751+
from .resources.logs import AsyncLogsResourceWithRawResponse
752+
753+
return AsyncLogsResourceWithRawResponse(self._client.logs)
754+
714755

715756
class ContextDevWithStreamedResponse:
716757
_client: ContextDev
@@ -789,6 +830,16 @@ def news(self) -> news.NewsResourceWithStreamingResponse:
789830

790831
return NewsResourceWithStreamingResponse(self._client.news)
791832

833+
@cached_property
834+
def logs(self) -> logs.LogsResourceWithStreamingResponse:
835+
"""Read your organization's API request logs to debug failed calls.
836+
837+
These endpoints cost no credits and use a separate rate limit.
838+
"""
839+
from .resources.logs import LogsResourceWithStreamingResponse
840+
841+
return LogsResourceWithStreamingResponse(self._client.logs)
842+
792843

793844
class AsyncContextDevWithStreamedResponse:
794845
_client: AsyncContextDev
@@ -867,6 +918,16 @@ def news(self) -> news.AsyncNewsResourceWithStreamingResponse:
867918

868919
return AsyncNewsResourceWithStreamingResponse(self._client.news)
869920

921+
@cached_property
922+
def logs(self) -> logs.AsyncLogsResourceWithStreamingResponse:
923+
"""Read your organization's API request logs to debug failed calls.
924+
925+
These endpoints cost no credits and use a separate rate limit.
926+
"""
927+
from .resources.logs import AsyncLogsResourceWithStreamingResponse
928+
929+
return AsyncLogsResourceWithStreamingResponse(self._client.logs)
930+
870931

871932
Client = ContextDev
872933

‎src/context/dev/resources/__init__.py‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@
1616
WebResourceWithStreamingResponse,
1717
AsyncWebResourceWithStreamingResponse,
1818
)
19+
from .logs import (
20+
LogsResource,
21+
AsyncLogsResource,
22+
LogsResourceWithRawResponse,
23+
AsyncLogsResourceWithRawResponse,
24+
LogsResourceWithStreamingResponse,
25+
AsyncLogsResourceWithStreamingResponse,
26+
)
1927
from .news import (
2028
NewsResource,
2129
AsyncNewsResource,
@@ -156,4 +164,10 @@
156164
"AsyncNewsResourceWithRawResponse",
157165
"NewsResourceWithStreamingResponse",
158166
"AsyncNewsResourceWithStreamingResponse",
167+
"LogsResource",
168+
"AsyncLogsResource",
169+
"LogsResourceWithRawResponse",
170+
"AsyncLogsResourceWithRawResponse",
171+
"LogsResourceWithStreamingResponse",
172+
"AsyncLogsResourceWithStreamingResponse",
159173
]

0 commit comments

Comments
 (0)