athena-intelligence 0.1.210__py3-none-any.whl → 0.1.303__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- athena/__init__.py +232 -71
- athena/agents/__init__.py +33 -1
- athena/agents/client.py +81 -18
- athena/aop/client.py +2 -2
- athena/aop/raw_client.py +10 -11
- athena/assets/client.py +359 -2
- athena/assets/raw_client.py +562 -0
- athena/base_client.py +122 -22
- athena/client.py +23 -21
- athena/core/__init__.py +73 -20
- athena/core/client_wrapper.py +2 -2
- athena/core/force_multipart.py +4 -2
- athena/core/http_response.py +1 -1
- athena/core/pydantic_utilities.py +5 -2
- athena/environment.py +1 -2
- athena/errors/__init__.py +42 -7
- athena/errors/not_found_error.py +1 -2
- athena/query/__init__.py +28 -1
- athena/query/types/__init__.py +30 -1
- athena/threads/raw_client.py +4 -5
- athena/tools/__init__.py +47 -3
- athena/tools/client.py +161 -31
- athena/tools/raw_client.py +36 -34
- athena/tools/sheets/__init__.py +30 -0
- athena/tools/sheets/client.py +100 -122
- athena/tools/sheets/raw_client.py +91 -94
- athena/tools/sheets/types/__init__.py +36 -0
- athena/tools/sheets/types/update_sheet_range_request_values_item_item.py +5 -0
- athena/tools/types/__init__.py +28 -1
- athena/types/__init__.py +196 -54
- athena/types/aop_async_execute_response_out.py +0 -5
- athena/types/aop_execute_response_out.py +7 -6
- athena/types/backgroundcolor.py +7 -0
- athena/types/{document_chunk.py → border_model.py} +7 -4
- athena/types/border_style.py +7 -0
- athena/types/borders_model.py +58 -0
- athena/types/cell_format.py +49 -0
- athena/types/cell_format_horizontal_alignment.py +5 -0
- athena/types/cell_format_vertical_alignment.py +5 -0
- athena/types/color.py +7 -0
- athena/types/conversation_asset_info.py +13 -2
- athena/types/conversation_message.py +42 -0
- athena/types/conversation_result.py +67 -0
- athena/types/creatable_asset_type.py +5 -0
- athena/types/create_asset_response_out.py +46 -0
- athena/types/create_project_response_out.py +51 -0
- athena/types/dimension_properties.py +49 -0
- athena/types/get_table_response.py +7 -2
- athena/types/grid_range.py +39 -0
- athena/types/{file_chunk_request_out.py → number_format_model.py} +8 -4
- athena/types/number_format_type.py +21 -0
- athena/types/sheet.py +76 -0
- athena/types/tabcolor.py +7 -0
- athena/types/table_row_data.py +5 -0
- athena/types/text_format_model.py +28 -0
- athena/types/textrotation.py +5 -0
- athena/types/{asset_not_found_error.py → theme_color.py} +3 -2
- athena/types/thread_status_response_out.py +5 -0
- athena/types/wrap_strategy.py +5 -0
- {athena_intelligence-0.1.210.dist-info → athena_intelligence-0.1.303.dist-info}/METADATA +1 -1
- {athena_intelligence-0.1.210.dist-info → athena_intelligence-0.1.303.dist-info}/RECORD +62 -39
- {athena_intelligence-0.1.210.dist-info → athena_intelligence-0.1.303.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .conversation_message import ConversationMessage
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ConversationResult(UniversalBaseModel):
|
|
11
|
+
"""
|
|
12
|
+
Model representing the conversation result from task/AOP execution.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
conversation_id: typing.Optional[str] = pydantic.Field(default=None)
|
|
16
|
+
"""
|
|
17
|
+
ID of the conversation asset
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
created_at: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
|
+
"""
|
|
22
|
+
ISO timestamp when conversation was created
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
last_assistant_message: typing.Optional[ConversationMessage] = pydantic.Field(default=None)
|
|
26
|
+
"""
|
|
27
|
+
The last message from the assistant
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
messages: typing.Optional[typing.List[ConversationMessage]] = pydantic.Field(default=None)
|
|
31
|
+
"""
|
|
32
|
+
Complete list of messages in the conversation
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
messages_source: str = pydantic.Field()
|
|
36
|
+
"""
|
|
37
|
+
Source of the messages (e.g., 'checkpoints')
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
|
|
41
|
+
"""
|
|
42
|
+
Additional conversation metadata
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
num_messages: int = pydantic.Field()
|
|
46
|
+
"""
|
|
47
|
+
Total number of messages in the conversation
|
|
48
|
+
"""
|
|
49
|
+
|
|
50
|
+
title: typing.Optional[str] = pydantic.Field(default=None)
|
|
51
|
+
"""
|
|
52
|
+
Title of the conversation
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
updated_at: typing.Optional[str] = pydantic.Field(default=None)
|
|
56
|
+
"""
|
|
57
|
+
ISO timestamp when conversation was last updated
|
|
58
|
+
"""
|
|
59
|
+
|
|
60
|
+
if IS_PYDANTIC_V2:
|
|
61
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
62
|
+
else:
|
|
63
|
+
|
|
64
|
+
class Config:
|
|
65
|
+
frozen = True
|
|
66
|
+
smart_union = True
|
|
67
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class CreateAssetResponseOut(UniversalBaseModel):
|
|
10
|
+
"""
|
|
11
|
+
Response model for asset creation.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
asset_id: str = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
ID of the newly created asset
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
asset_type: str = pydantic.Field()
|
|
20
|
+
"""
|
|
21
|
+
Type of the created asset
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
created_at: str = pydantic.Field()
|
|
25
|
+
"""
|
|
26
|
+
Timestamp when the asset was created
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
parent_folder_id: typing.Optional[str] = pydantic.Field(default=None)
|
|
30
|
+
"""
|
|
31
|
+
ID of the parent folder
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
title: str = pydantic.Field()
|
|
35
|
+
"""
|
|
36
|
+
Title of the created asset
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
if IS_PYDANTIC_V2:
|
|
40
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
41
|
+
else:
|
|
42
|
+
|
|
43
|
+
class Config:
|
|
44
|
+
frozen = True
|
|
45
|
+
smart_union = True
|
|
46
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class CreateProjectResponseOut(UniversalBaseModel):
|
|
10
|
+
"""
|
|
11
|
+
Response model for project creation.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
asset_id: str = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
ID of the created project asset
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
custom_metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
|
|
20
|
+
"""
|
|
21
|
+
Custom metadata associated with the project
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
description: typing.Optional[str] = pydantic.Field(default=None)
|
|
25
|
+
"""
|
|
26
|
+
Description of the project
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
project_type: typing.Optional[str] = pydantic.Field(default=None)
|
|
30
|
+
"""
|
|
31
|
+
Type of the project
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
tags: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
|
|
35
|
+
"""
|
|
36
|
+
Tags associated with the project
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
title: str = pydantic.Field()
|
|
40
|
+
"""
|
|
41
|
+
Title of the created project
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
if IS_PYDANTIC_V2:
|
|
45
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
46
|
+
else:
|
|
47
|
+
|
|
48
|
+
class Config:
|
|
49
|
+
frozen = True
|
|
50
|
+
smart_union = True
|
|
51
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
import typing_extensions
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
+
from ..core.serialization import FieldMetadata
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class DimensionProperties(UniversalBaseModel):
|
|
12
|
+
"""
|
|
13
|
+
Properties for a row or column dimension in the spreadsheet.
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
hidden_by_filter: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="hiddenByFilter")] = (
|
|
17
|
+
pydantic.Field(default=None)
|
|
18
|
+
)
|
|
19
|
+
"""
|
|
20
|
+
True if this row/column is hidden due to a filter being applied. Do not modify directly - managed by filter operations
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
hidden_by_user: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="hiddenByUser")] = (
|
|
24
|
+
pydantic.Field(default=None)
|
|
25
|
+
)
|
|
26
|
+
"""
|
|
27
|
+
True if the user explicitly hid this row/column (e.g., right-click > Hide). Set to False to unhide
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
resized_by_user: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="resizedByUser")] = (
|
|
31
|
+
pydantic.Field(default=None)
|
|
32
|
+
)
|
|
33
|
+
"""
|
|
34
|
+
True if the user manually resized this dimension (e.g., dragged column border to resize)
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
size: typing.Optional[int] = pydantic.Field(default=None)
|
|
38
|
+
"""
|
|
39
|
+
Size in pixels. For columns, this is the width. For rows, this is the height. Default: 100px for columns, 21px for rows
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
if IS_PYDANTIC_V2:
|
|
43
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
44
|
+
else:
|
|
45
|
+
|
|
46
|
+
class Config:
|
|
47
|
+
frozen = True
|
|
48
|
+
smart_union = True
|
|
49
|
+
extra = pydantic.Extra.allow
|
|
@@ -12,9 +12,9 @@ class GetTableResponse(UniversalBaseModel):
|
|
|
12
12
|
The ID of the spreadsheet asset
|
|
13
13
|
"""
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
columns: typing.List[typing.Dict[str, str]] = pydantic.Field()
|
|
16
16
|
"""
|
|
17
|
-
Array of
|
|
17
|
+
Array of column objects with name and other metadata
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
20
|
message: str = pydantic.Field()
|
|
@@ -22,6 +22,11 @@ class GetTableResponse(UniversalBaseModel):
|
|
|
22
22
|
Success message or error description
|
|
23
23
|
"""
|
|
24
24
|
|
|
25
|
+
rows: typing.List[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field()
|
|
26
|
+
"""
|
|
27
|
+
Array of row objects with column names as keys
|
|
28
|
+
"""
|
|
29
|
+
|
|
25
30
|
success: bool = pydantic.Field()
|
|
26
31
|
"""
|
|
27
32
|
Whether the operation was successful
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
import typing_extensions
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
+
from ..core.serialization import FieldMetadata
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class GridRange(UniversalBaseModel):
|
|
12
|
+
end_column_index: typing_extensions.Annotated[int, FieldMetadata(alias="endColumnIndex")] = pydantic.Field()
|
|
13
|
+
"""
|
|
14
|
+
End column index (1-based, INCLUSIVE). Last column of the range. For range A1:C5, this would be 3. For single columns, equals startColumnIndex.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
end_row_index: typing_extensions.Annotated[int, FieldMetadata(alias="endRowIndex")] = pydantic.Field()
|
|
18
|
+
"""
|
|
19
|
+
End row index (1-based, INCLUSIVE). Last row of the range. For a range A1:A5, this would be 5. For single cells, equals startRowIndex.
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
start_column_index: typing_extensions.Annotated[int, FieldMetadata(alias="startColumnIndex")] = pydantic.Field()
|
|
23
|
+
"""
|
|
24
|
+
Start column index (1-based, INCLUSIVE). First column of the range. A=1, B=2, C=3, etc. For range A1:C5, this would be 1.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
start_row_index: typing_extensions.Annotated[int, FieldMetadata(alias="startRowIndex")] = pydantic.Field()
|
|
28
|
+
"""
|
|
29
|
+
Start row index (1-based, INCLUSIVE). First row of the range. For A1 this would be 1, for A5 this would be 5.
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
if IS_PYDANTIC_V2:
|
|
33
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
34
|
+
else:
|
|
35
|
+
|
|
36
|
+
class Config:
|
|
37
|
+
frozen = True
|
|
38
|
+
smart_union = True
|
|
39
|
+
extra = pydantic.Extra.allow
|
|
@@ -4,15 +4,19 @@ import typing
|
|
|
4
4
|
|
|
5
5
|
import pydantic
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
-
from .
|
|
7
|
+
from .number_format_type import NumberFormatType
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class NumberFormatModel(UniversalBaseModel):
|
|
11
|
+
pattern: str = pydantic.Field()
|
|
11
12
|
"""
|
|
12
|
-
|
|
13
|
+
Excel-compatible format string. If omitted, the server will pick a sensible default based on the chosen type (e.g. NUMBER → '#,##0', CURRENCY → '$#,##0.00').
|
|
13
14
|
"""
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
type: NumberFormatType = pydantic.Field()
|
|
17
|
+
"""
|
|
18
|
+
Target number format category (NUMBER, CURRENCY, DATE, etc.)
|
|
19
|
+
"""
|
|
16
20
|
|
|
17
21
|
if IS_PYDANTIC_V2:
|
|
18
22
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
NumberFormatType = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"GENERAL",
|
|
8
|
+
"NUMBER",
|
|
9
|
+
"CURRENCY",
|
|
10
|
+
"ACCOUNTING",
|
|
11
|
+
"DATE",
|
|
12
|
+
"TIME",
|
|
13
|
+
"DATE_TIME",
|
|
14
|
+
"PERCENT",
|
|
15
|
+
"FRACTION",
|
|
16
|
+
"SCIENTIFIC",
|
|
17
|
+
"TEXT",
|
|
18
|
+
"SPECIAL",
|
|
19
|
+
],
|
|
20
|
+
typing.Any,
|
|
21
|
+
]
|
athena/types/sheet.py
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
import typing_extensions
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
+
from ..core.serialization import FieldMetadata
|
|
9
|
+
from .dimension_properties import DimensionProperties
|
|
10
|
+
from .grid_range import GridRange
|
|
11
|
+
from .tabcolor import Tabcolor
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class Sheet(UniversalBaseModel):
|
|
15
|
+
column_count: typing_extensions.Annotated[int, FieldMetadata(alias="columnCount")] = pydantic.Field()
|
|
16
|
+
"""
|
|
17
|
+
Column count (Defaults to 100)
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
column_metadata: typing_extensions.Annotated[
|
|
21
|
+
typing.Optional[typing.List[typing.Optional[DimensionProperties]]], FieldMetadata(alias="columnMetadata")
|
|
22
|
+
] = pydantic.Field(default=None)
|
|
23
|
+
"""
|
|
24
|
+
Array of column properties, one per column (1-indexed). Each entry defines width, visibility for that column. Use to set custom column widths or hide/show specific columns. Example: columnMetadata[1] controls column A, columnMetadata[2] controls column B, etc. To set column C width to 150px: columnMetadata[3] = DimensionProperties(size=150). To hide column B: columnMetadata[2] = DimensionProperties(hiddenByUser=True). Common use case: Auto-size columns with wide content by setting larger size values
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
frozen_column_count: typing_extensions.Annotated[typing.Optional[int], FieldMetadata(alias="frozenColumnCount")] = (
|
|
28
|
+
None
|
|
29
|
+
)
|
|
30
|
+
frozen_row_count: typing_extensions.Annotated[typing.Optional[int], FieldMetadata(alias="frozenRowCount")] = None
|
|
31
|
+
hidden: typing.Optional[bool] = None
|
|
32
|
+
index: int = pydantic.Field()
|
|
33
|
+
"""
|
|
34
|
+
The order of the new sheet
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
merges: typing.Optional[typing.List[GridRange]] = pydantic.Field(default=None)
|
|
38
|
+
"""
|
|
39
|
+
List of merged cell ranges in the sheet. Each merge combines multiple cells into a single cell. The top-left cell (startRowIndex, startColumnIndex) becomes the anchor cell that displays the content. Example: To merge cells A1:C3, use GridRange(startRowIndex=1, endRowIndex=3, startColumnIndex=1, endColumnIndex=3). Defaults to empty list (no merged cells).
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
row_count: typing_extensions.Annotated[int, FieldMetadata(alias="rowCount")] = pydantic.Field()
|
|
43
|
+
"""
|
|
44
|
+
Row count (Defaults to 1000)
|
|
45
|
+
"""
|
|
46
|
+
|
|
47
|
+
row_metadata: typing_extensions.Annotated[
|
|
48
|
+
typing.Optional[typing.List[typing.Optional[DimensionProperties]]], FieldMetadata(alias="rowMetadata")
|
|
49
|
+
] = pydantic.Field(default=None)
|
|
50
|
+
"""
|
|
51
|
+
Array of row properties, one per row (1-indexed). Each entry defines height, visibility for that row. Use to set custom row heights or hide/show specific rows. Example: rowMetadata[1] controls row 1, rowMetadata[2] controls row 2, etc. To set row 5 height to 50px: rowMetadata[5] = DimensionProperties(size=50). To hide row 3: rowMetadata[3] = DimensionProperties(hiddenByUser=True)
|
|
52
|
+
"""
|
|
53
|
+
|
|
54
|
+
sheet_id: typing_extensions.Annotated[int, FieldMetadata(alias="sheetId")] = pydantic.Field()
|
|
55
|
+
"""
|
|
56
|
+
Sheet ID (required)
|
|
57
|
+
"""
|
|
58
|
+
|
|
59
|
+
show_grid_lines: typing_extensions.Annotated[typing.Optional[bool], FieldMetadata(alias="showGridLines")] = None
|
|
60
|
+
tab_color: typing_extensions.Annotated[typing.Optional[Tabcolor], FieldMetadata(alias="tabColor")] = pydantic.Field(
|
|
61
|
+
default=None
|
|
62
|
+
)
|
|
63
|
+
"""
|
|
64
|
+
Tab color in hex format (e.g., '#FF0000' for red) or as a theme
|
|
65
|
+
"""
|
|
66
|
+
|
|
67
|
+
title: str
|
|
68
|
+
|
|
69
|
+
if IS_PYDANTIC_V2:
|
|
70
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
71
|
+
else:
|
|
72
|
+
|
|
73
|
+
class Config:
|
|
74
|
+
frozen = True
|
|
75
|
+
smart_union = True
|
|
76
|
+
extra = pydantic.Extra.allow
|
athena/types/tabcolor.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
import typing_extensions
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
+
from ..core.serialization import FieldMetadata
|
|
9
|
+
from .color import Color
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class TextFormatModel(UniversalBaseModel):
|
|
13
|
+
bold: typing.Optional[bool] = None
|
|
14
|
+
color: typing.Optional[Color] = None
|
|
15
|
+
font_family: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="fontFamily")] = None
|
|
16
|
+
font_size: typing_extensions.Annotated[typing.Optional[int], FieldMetadata(alias="fontSize")] = None
|
|
17
|
+
italic: typing.Optional[bool] = None
|
|
18
|
+
strikethrough: typing.Optional[bool] = None
|
|
19
|
+
underline: typing.Optional[bool] = None
|
|
20
|
+
|
|
21
|
+
if IS_PYDANTIC_V2:
|
|
22
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
23
|
+
else:
|
|
24
|
+
|
|
25
|
+
class Config:
|
|
26
|
+
frozen = True
|
|
27
|
+
smart_union = True
|
|
28
|
+
extra = pydantic.Extra.allow
|
|
@@ -6,8 +6,9 @@ import pydantic
|
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
class
|
|
10
|
-
|
|
9
|
+
class ThemeColor(UniversalBaseModel):
|
|
10
|
+
theme: int
|
|
11
|
+
tint: typing.Optional[float] = None
|
|
11
12
|
|
|
12
13
|
if IS_PYDANTIC_V2:
|
|
13
14
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -22,6 +22,11 @@ class ThreadStatusResponseOut(UniversalBaseModel):
|
|
|
22
22
|
ISO timestamp when thread was created
|
|
23
23
|
"""
|
|
24
24
|
|
|
25
|
+
error: typing.Optional[str] = pydantic.Field(default=None)
|
|
26
|
+
"""
|
|
27
|
+
Error message if thread execution failed
|
|
28
|
+
"""
|
|
29
|
+
|
|
25
30
|
status: str = pydantic.Field()
|
|
26
31
|
"""
|
|
27
32
|
Current status of the thread (e.g., 'running', 'completed', 'failed')
|