Skip to content

Commit 06c63d2

Browse files
feat(api): manual updates (#167)
1 parent 850d425 commit 06c63d2

File tree

14 files changed

+861
-5
lines changed

14 files changed

+861
-5
lines changed

.stats.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
configured_endpoints: 91
1+
configured_endpoints: 94
22
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/datamini%2Fasktable-2d9923ffe6d2d59041bac841db518829933a84e3251a372c9ad2306473fd7488.yml

api.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,14 @@ Methods:
103103
Types:
104104

105105
```python
106-
from asktable.types import AIMessage, Chat, ToolMessage, UserMessage, ChatRetrieveResponse
106+
from asktable.types import (
107+
AIMessage,
108+
Chat,
109+
ToolMessage,
110+
UserMessage,
111+
ChatRetrieveResponse,
112+
ChatPostMessageResponse,
113+
)
107114
```
108115

109116
Methods:
@@ -112,6 +119,7 @@ Methods:
112119
- <code title="get /chats/{chat_id}">client.chats.<a href="./src/asktable/resources/chats/chats.py">retrieve</a>(chat_id) -> <a href="./src/asktable/types/chat_retrieve_response.py">ChatRetrieveResponse</a></code>
113120
- <code title="get /chats">client.chats.<a href="./src/asktable/resources/chats/chats.py">list</a>(\*\*<a href="src/asktable/types/chat_list_params.py">params</a>) -> <a href="./src/asktable/types/chat.py">SyncPage[Chat]</a></code>
114121
- <code title="delete /chats/{chat_id}">client.chats.<a href="./src/asktable/resources/chats/chats.py">delete</a>(chat_id) -> None</code>
122+
- <code title="post /chats/{chat_id}">client.chats.<a href="./src/asktable/resources/chats/chats.py">post_message</a>(chat_id, \*\*<a href="src/asktable/types/chat_post_message_params.py">params</a>) -> <a href="./src/asktable/types/chat_post_message_response.py">ChatPostMessageResponse</a></code>
115123

116124
## Messages
117125

@@ -381,3 +389,27 @@ from asktable.types import ScoreCreateResponse
381389
Methods:
382390

383391
- <code title="post /score">client.scores.<a href="./src/asktable/resources/scores.py">create</a>(\*\*<a href="src/asktable/types/score_create_params.py">params</a>) -> <a href="./src/asktable/types/score_create_response.py">ScoreCreateResponse</a></code>
392+
393+
# Files
394+
395+
Types:
396+
397+
```python
398+
from asktable.types import FileRetrieveResponse
399+
```
400+
401+
Methods:
402+
403+
- <code title="get /files/{file_id}">client.files.<a href="./src/asktable/resources/files.py">retrieve</a>(file_id) -> <a href="./src/asktable/types/file_retrieve_response.py">object</a></code>
404+
405+
# Dataframes
406+
407+
Types:
408+
409+
```python
410+
from asktable.types import DataframeRetrieveResponse
411+
```
412+
413+
Methods:
414+
415+
- <code title="get /dataframes/{dataframe_id}">client.dataframes.<a href="./src/asktable/resources/dataframes.py">retrieve</a>(dataframe_id) -> <a href="./src/asktable/types/dataframe_retrieve_response.py">DataframeRetrieveResponse</a></code>

src/asktable/_client.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,15 @@
2828
auth,
2929
bots,
3030
sqls,
31+
files,
3132
roles,
3233
caches,
3334
scores,
3435
answers,
3536
project,
3637
policies,
3738
trainings,
39+
dataframes,
3840
integration,
3941
preferences,
4042
securetunnels,
@@ -83,6 +85,8 @@ class Asktable(SyncAPIClient):
8385
trainings: trainings.TrainingsResource
8486
project: project.ProjectResource
8587
scores: scores.ScoresResource
88+
files: files.FilesResource
89+
dataframes: dataframes.DataframesResource
8690
with_raw_response: AsktableWithRawResponse
8791
with_streaming_response: AsktableWithStreamedResponse
8892

@@ -158,6 +162,8 @@ def __init__(
158162
self.trainings = trainings.TrainingsResource(self)
159163
self.project = project.ProjectResource(self)
160164
self.scores = scores.ScoresResource(self)
165+
self.files = files.FilesResource(self)
166+
self.dataframes = dataframes.DataframesResource(self)
161167
self.with_raw_response = AsktableWithRawResponse(self)
162168
self.with_streaming_response = AsktableWithStreamedResponse(self)
163169

@@ -285,6 +291,8 @@ class AsyncAsktable(AsyncAPIClient):
285291
trainings: trainings.AsyncTrainingsResource
286292
project: project.AsyncProjectResource
287293
scores: scores.AsyncScoresResource
294+
files: files.AsyncFilesResource
295+
dataframes: dataframes.AsyncDataframesResource
288296
with_raw_response: AsyncAsktableWithRawResponse
289297
with_streaming_response: AsyncAsktableWithStreamedResponse
290298

@@ -360,6 +368,8 @@ def __init__(
360368
self.trainings = trainings.AsyncTrainingsResource(self)
361369
self.project = project.AsyncProjectResource(self)
362370
self.scores = scores.AsyncScoresResource(self)
371+
self.files = files.AsyncFilesResource(self)
372+
self.dataframes = dataframes.AsyncDataframesResource(self)
363373
self.with_raw_response = AsyncAsktableWithRawResponse(self)
364374
self.with_streaming_response = AsyncAsktableWithStreamedResponse(self)
365375

@@ -488,6 +498,8 @@ def __init__(self, client: Asktable) -> None:
488498
self.trainings = trainings.TrainingsResourceWithRawResponse(client.trainings)
489499
self.project = project.ProjectResourceWithRawResponse(client.project)
490500
self.scores = scores.ScoresResourceWithRawResponse(client.scores)
501+
self.files = files.FilesResourceWithRawResponse(client.files)
502+
self.dataframes = dataframes.DataframesResourceWithRawResponse(client.dataframes)
491503

492504

493505
class AsyncAsktableWithRawResponse:
@@ -512,6 +524,8 @@ def __init__(self, client: AsyncAsktable) -> None:
512524
self.trainings = trainings.AsyncTrainingsResourceWithRawResponse(client.trainings)
513525
self.project = project.AsyncProjectResourceWithRawResponse(client.project)
514526
self.scores = scores.AsyncScoresResourceWithRawResponse(client.scores)
527+
self.files = files.AsyncFilesResourceWithRawResponse(client.files)
528+
self.dataframes = dataframes.AsyncDataframesResourceWithRawResponse(client.dataframes)
515529

516530

517531
class AsktableWithStreamedResponse:
@@ -536,6 +550,8 @@ def __init__(self, client: Asktable) -> None:
536550
self.trainings = trainings.TrainingsResourceWithStreamingResponse(client.trainings)
537551
self.project = project.ProjectResourceWithStreamingResponse(client.project)
538552
self.scores = scores.ScoresResourceWithStreamingResponse(client.scores)
553+
self.files = files.FilesResourceWithStreamingResponse(client.files)
554+
self.dataframes = dataframes.DataframesResourceWithStreamingResponse(client.dataframes)
539555

540556

541557
class AsyncAsktableWithStreamedResponse:
@@ -560,6 +576,8 @@ def __init__(self, client: AsyncAsktable) -> None:
560576
self.trainings = trainings.AsyncTrainingsResourceWithStreamingResponse(client.trainings)
561577
self.project = project.AsyncProjectResourceWithStreamingResponse(client.project)
562578
self.scores = scores.AsyncScoresResourceWithStreamingResponse(client.scores)
579+
self.files = files.AsyncFilesResourceWithStreamingResponse(client.files)
580+
self.dataframes = dataframes.AsyncDataframesResourceWithStreamingResponse(client.dataframes)
563581

564582

565583
Client = Asktable

src/asktable/resources/__init__.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,14 @@
4040
ChatsResourceWithStreamingResponse,
4141
AsyncChatsResourceWithStreamingResponse,
4242
)
43+
from .files import (
44+
FilesResource,
45+
AsyncFilesResource,
46+
FilesResourceWithRawResponse,
47+
AsyncFilesResourceWithRawResponse,
48+
FilesResourceWithStreamingResponse,
49+
AsyncFilesResourceWithStreamingResponse,
50+
)
4351
from .roles import (
4452
RolesResource,
4553
AsyncRolesResource,
@@ -104,6 +112,14 @@
104112
TrainingsResourceWithStreamingResponse,
105113
AsyncTrainingsResourceWithStreamingResponse,
106114
)
115+
from .dataframes import (
116+
DataframesResource,
117+
AsyncDataframesResource,
118+
DataframesResourceWithRawResponse,
119+
AsyncDataframesResourceWithRawResponse,
120+
DataframesResourceWithStreamingResponse,
121+
AsyncDataframesResourceWithStreamingResponse,
122+
)
107123
from .datasources import (
108124
DatasourcesResource,
109125
AsyncDatasourcesResource,
@@ -254,4 +270,16 @@
254270
"AsyncScoresResourceWithRawResponse",
255271
"ScoresResourceWithStreamingResponse",
256272
"AsyncScoresResourceWithStreamingResponse",
273+
"FilesResource",
274+
"AsyncFilesResource",
275+
"FilesResourceWithRawResponse",
276+
"AsyncFilesResourceWithRawResponse",
277+
"FilesResourceWithStreamingResponse",
278+
"AsyncFilesResourceWithStreamingResponse",
279+
"DataframesResource",
280+
"AsyncDataframesResource",
281+
"DataframesResourceWithRawResponse",
282+
"AsyncDataframesResourceWithRawResponse",
283+
"DataframesResourceWithStreamingResponse",
284+
"AsyncDataframesResourceWithStreamingResponse",
257285
]

src/asktable/resources/chats/chats.py

Lines changed: 103 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33
from __future__ import annotations
44

5-
from typing import Dict, Union, Optional
5+
from typing import Any, Dict, Union, Optional, cast
66

77
import httpx
88

9-
from ...types import chat_list_params, chat_create_params
9+
from ...types import chat_list_params, chat_create_params, chat_post_message_params
1010
from ..._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven
1111
from ..._utils import (
1212
maybe_transform,
@@ -32,6 +32,7 @@
3232
from ...types.chat import Chat
3333
from ..._base_client import AsyncPaginator, make_request_options
3434
from ...types.chat_retrieve_response import ChatRetrieveResponse
35+
from ...types.chat_post_message_response import ChatPostMessageResponse
3536

3637
__all__ = ["ChatsResource", "AsyncChatsResource"]
3738

@@ -231,6 +232,49 @@ def delete(
231232
cast_to=NoneType,
232233
)
233234

235+
def post_message(
236+
self,
237+
chat_id: str,
238+
*,
239+
question: str,
240+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
241+
# The extra values given here take precedence over values defined on the client or passed to this method.
242+
extra_headers: Headers | None = None,
243+
extra_query: Query | None = None,
244+
extra_body: Body | None = None,
245+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
246+
) -> ChatPostMessageResponse:
247+
"""
248+
发消息
249+
250+
Args:
251+
extra_headers: Send extra headers
252+
253+
extra_query: Add additional query parameters to the request
254+
255+
extra_body: Add additional JSON properties to the request
256+
257+
timeout: Override the client-level default timeout for this request, in seconds
258+
"""
259+
if not chat_id:
260+
raise ValueError(f"Expected a non-empty value for `chat_id` but received {chat_id!r}")
261+
return cast(
262+
ChatPostMessageResponse,
263+
self._post(
264+
f"/chats/{chat_id}",
265+
options=make_request_options(
266+
extra_headers=extra_headers,
267+
extra_query=extra_query,
268+
extra_body=extra_body,
269+
timeout=timeout,
270+
query=maybe_transform({"question": question}, chat_post_message_params.ChatPostMessageParams),
271+
),
272+
cast_to=cast(
273+
Any, ChatPostMessageResponse
274+
), # Union types cannot be passed in as arguments in the type system
275+
),
276+
)
277+
234278

235279
class AsyncChatsResource(AsyncAPIResource):
236280
@cached_property
@@ -427,6 +471,51 @@ async def delete(
427471
cast_to=NoneType,
428472
)
429473

474+
async def post_message(
475+
self,
476+
chat_id: str,
477+
*,
478+
question: str,
479+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
480+
# The extra values given here take precedence over values defined on the client or passed to this method.
481+
extra_headers: Headers | None = None,
482+
extra_query: Query | None = None,
483+
extra_body: Body | None = None,
484+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
485+
) -> ChatPostMessageResponse:
486+
"""
487+
发消息
488+
489+
Args:
490+
extra_headers: Send extra headers
491+
492+
extra_query: Add additional query parameters to the request
493+
494+
extra_body: Add additional JSON properties to the request
495+
496+
timeout: Override the client-level default timeout for this request, in seconds
497+
"""
498+
if not chat_id:
499+
raise ValueError(f"Expected a non-empty value for `chat_id` but received {chat_id!r}")
500+
return cast(
501+
ChatPostMessageResponse,
502+
await self._post(
503+
f"/chats/{chat_id}",
504+
options=make_request_options(
505+
extra_headers=extra_headers,
506+
extra_query=extra_query,
507+
extra_body=extra_body,
508+
timeout=timeout,
509+
query=await async_maybe_transform(
510+
{"question": question}, chat_post_message_params.ChatPostMessageParams
511+
),
512+
),
513+
cast_to=cast(
514+
Any, ChatPostMessageResponse
515+
), # Union types cannot be passed in as arguments in the type system
516+
),
517+
)
518+
430519

431520
class ChatsResourceWithRawResponse:
432521
def __init__(self, chats: ChatsResource) -> None:
@@ -444,6 +533,9 @@ def __init__(self, chats: ChatsResource) -> None:
444533
self.delete = to_raw_response_wrapper(
445534
chats.delete,
446535
)
536+
self.post_message = to_raw_response_wrapper(
537+
chats.post_message,
538+
)
447539

448540
@cached_property
449541
def messages(self) -> MessagesResourceWithRawResponse:
@@ -466,6 +558,9 @@ def __init__(self, chats: AsyncChatsResource) -> None:
466558
self.delete = async_to_raw_response_wrapper(
467559
chats.delete,
468560
)
561+
self.post_message = async_to_raw_response_wrapper(
562+
chats.post_message,
563+
)
469564

470565
@cached_property
471566
def messages(self) -> AsyncMessagesResourceWithRawResponse:
@@ -488,6 +583,9 @@ def __init__(self, chats: ChatsResource) -> None:
488583
self.delete = to_streamed_response_wrapper(
489584
chats.delete,
490585
)
586+
self.post_message = to_streamed_response_wrapper(
587+
chats.post_message,
588+
)
491589

492590
@cached_property
493591
def messages(self) -> MessagesResourceWithStreamingResponse:
@@ -510,6 +608,9 @@ def __init__(self, chats: AsyncChatsResource) -> None:
510608
self.delete = async_to_streamed_response_wrapper(
511609
chats.delete,
512610
)
611+
self.post_message = async_to_streamed_response_wrapper(
612+
chats.post_message,
613+
)
513614

514615
@cached_property
515616
def messages(self) -> AsyncMessagesResourceWithStreamingResponse:

0 commit comments

Comments
 (0)