syllable-sdk 0.44.4__py3-none-any.whl → 0.44.17__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.
- syllable_sdk/_version.py +4 -4
- syllable_sdk/directory.py +96 -34
- syllable_sdk/models/__init__.py +62 -19
- syllable_sdk/models/agentcreate.py +7 -5
- syllable_sdk/models/agentresponse.py +7 -5
- syllable_sdk/models/agentsttprovider.py +1 -0
- syllable_sdk/models/agentupdate.py +7 -5
- syllable_sdk/models/bridgephrasesconfig.py +0 -9
- syllable_sdk/models/custommessagecreaterequest.py +7 -2
- syllable_sdk/models/custommessageresponse.py +7 -2
- syllable_sdk/models/custommessageupdaterequest.py +7 -2
- syllable_sdk/models/{schemas_tts_v1_pronunciations_dictionarymetadata.py → dictionarymetadata.py} +2 -2
- syllable_sdk/models/directory_member_createop.py +28 -0
- syllable_sdk/models/directory_member_downloadop.py +21 -0
- syllable_sdk/models/directory_member_get_by_idop.py +12 -2
- syllable_sdk/models/directory_member_listop.py +28 -18
- syllable_sdk/models/directory_member_updateop.py +17 -2
- syllable_sdk/models/directoryresponseformat.py +11 -0
- syllable_sdk/models/eventtaskevents.py +1 -4
- syllable_sdk/models/expressiontask.py +2 -2
- syllable_sdk/models/expressiontaskevents.py +4 -6
- syllable_sdk/models/getvalueaction.py +151 -0
- syllable_sdk/models/pronunciationoverridesdictionary.py +3 -6
- syllable_sdk/models/stepeventactions.py +14 -7
- syllable_sdk/models/toolparametertransform.py +5 -3
- syllable_sdk/pronunciations.py +4 -8
- syllable_sdk/types/basemodel.py +41 -3
- {syllable_sdk-0.44.4.dist-info → syllable_sdk-0.44.17.dist-info}/METADATA +39 -39
- {syllable_sdk-0.44.4.dist-info → syllable_sdk-0.44.17.dist-info}/RECORD +30 -27
- syllable_sdk/models/schemas_cortex_v1_bridge_phrases_dictionarymetadata.py +0 -67
- {syllable_sdk-0.44.4.dist-info → syllable_sdk-0.44.17.dist-info}/WHEEL +0 -0
|
@@ -40,8 +40,6 @@ class AgentResponseTypedDict(TypedDict):
|
|
|
40
40
|
r"""The agent type. Must be \"ca_v1\" currently."""
|
|
41
41
|
prompt_id: int
|
|
42
42
|
r"""ID of the prompt associated with the agent"""
|
|
43
|
-
custom_message_id: int
|
|
44
|
-
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
45
43
|
timezone: str
|
|
46
44
|
r"""The time zone in which the agent operates"""
|
|
47
45
|
variables: Dict[str, str]
|
|
@@ -60,6 +58,8 @@ class AgentResponseTypedDict(TypedDict):
|
|
|
60
58
|
r"""The agent label (DEPRECATED - use labels instead.)"""
|
|
61
59
|
labels: NotRequired[Nullable[List[str]]]
|
|
62
60
|
r"""The agent labels"""
|
|
61
|
+
custom_message_id: NotRequired[Nullable[int]]
|
|
62
|
+
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
63
63
|
language_group_id: NotRequired[Nullable[int]]
|
|
64
64
|
r"""Internal ID of the language group associated with the agent"""
|
|
65
65
|
prompt_tool_defaults: NotRequired[List[AgentToolDefaultsTypedDict]]
|
|
@@ -101,9 +101,6 @@ class AgentResponse(BaseModel):
|
|
|
101
101
|
prompt_id: int
|
|
102
102
|
r"""ID of the prompt associated with the agent"""
|
|
103
103
|
|
|
104
|
-
custom_message_id: int
|
|
105
|
-
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
106
|
-
|
|
107
104
|
timezone: str
|
|
108
105
|
r"""The time zone in which the agent operates"""
|
|
109
106
|
|
|
@@ -136,6 +133,9 @@ class AgentResponse(BaseModel):
|
|
|
136
133
|
labels: OptionalNullable[List[str]] = UNSET
|
|
137
134
|
r"""The agent labels"""
|
|
138
135
|
|
|
136
|
+
custom_message_id: OptionalNullable[int] = UNSET
|
|
137
|
+
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
138
|
+
|
|
139
139
|
language_group_id: OptionalNullable[int] = UNSET
|
|
140
140
|
r"""Internal ID of the language group associated with the agent"""
|
|
141
141
|
|
|
@@ -180,6 +180,7 @@ class AgentResponse(BaseModel):
|
|
|
180
180
|
"description",
|
|
181
181
|
"label",
|
|
182
182
|
"labels",
|
|
183
|
+
"custom_message_id",
|
|
183
184
|
"language_group_id",
|
|
184
185
|
"prompt_tool_defaults",
|
|
185
186
|
"languages",
|
|
@@ -196,6 +197,7 @@ class AgentResponse(BaseModel):
|
|
|
196
197
|
"description",
|
|
197
198
|
"label",
|
|
198
199
|
"labels",
|
|
200
|
+
"custom_message_id",
|
|
199
201
|
"language_group_id",
|
|
200
202
|
"tool_headers",
|
|
201
203
|
"stt_provider",
|
|
@@ -8,6 +8,7 @@ class AgentSttProvider(str, Enum):
|
|
|
8
8
|
r"""Speech-to-text providers supported by agents."""
|
|
9
9
|
|
|
10
10
|
GOOGLE_STT_V2_CHIRP_2_ = "Google STT V2 (Chirp 2)"
|
|
11
|
+
DEEPGRAM_NOVA_3_ON_PREM_ = "Deepgram Nova 3 (On-Prem)"
|
|
11
12
|
DEEPGRAM_NOVA_3 = "Deepgram Nova 3"
|
|
12
13
|
GOOGLE_STT_V2 = "Google STT V2"
|
|
13
14
|
GOOGLE_STT_V1 = "Google STT V1"
|
|
@@ -26,8 +26,6 @@ class AgentUpdateTypedDict(TypedDict):
|
|
|
26
26
|
r"""The agent type. Must be \"ca_v1\" currently."""
|
|
27
27
|
prompt_id: int
|
|
28
28
|
r"""ID of the prompt associated with the agent"""
|
|
29
|
-
custom_message_id: int
|
|
30
|
-
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
31
29
|
timezone: str
|
|
32
30
|
r"""The time zone in which the agent operates"""
|
|
33
31
|
variables: Dict[str, str]
|
|
@@ -42,6 +40,8 @@ class AgentUpdateTypedDict(TypedDict):
|
|
|
42
40
|
r"""The agent label (DEPRECATED - use labels instead.)"""
|
|
43
41
|
labels: NotRequired[Nullable[List[str]]]
|
|
44
42
|
r"""The agent labels"""
|
|
43
|
+
custom_message_id: NotRequired[Nullable[int]]
|
|
44
|
+
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
45
45
|
language_group_id: NotRequired[Nullable[int]]
|
|
46
46
|
r"""Internal ID of the language group associated with the agent"""
|
|
47
47
|
prompt_tool_defaults: NotRequired[List[AgentToolDefaultsTypedDict]]
|
|
@@ -68,9 +68,6 @@ class AgentUpdate(BaseModel):
|
|
|
68
68
|
prompt_id: int
|
|
69
69
|
r"""ID of the prompt associated with the agent"""
|
|
70
70
|
|
|
71
|
-
custom_message_id: int
|
|
72
|
-
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
73
|
-
|
|
74
71
|
timezone: str
|
|
75
72
|
r"""The time zone in which the agent operates"""
|
|
76
73
|
|
|
@@ -97,6 +94,9 @@ class AgentUpdate(BaseModel):
|
|
|
97
94
|
labels: OptionalNullable[List[str]] = UNSET
|
|
98
95
|
r"""The agent labels"""
|
|
99
96
|
|
|
97
|
+
custom_message_id: OptionalNullable[int] = UNSET
|
|
98
|
+
r"""Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent"""
|
|
99
|
+
|
|
100
100
|
language_group_id: OptionalNullable[int] = UNSET
|
|
101
101
|
r"""Internal ID of the language group associated with the agent"""
|
|
102
102
|
|
|
@@ -126,6 +126,7 @@ class AgentUpdate(BaseModel):
|
|
|
126
126
|
"description",
|
|
127
127
|
"label",
|
|
128
128
|
"labels",
|
|
129
|
+
"custom_message_id",
|
|
129
130
|
"language_group_id",
|
|
130
131
|
"prompt_tool_defaults",
|
|
131
132
|
"languages",
|
|
@@ -137,6 +138,7 @@ class AgentUpdate(BaseModel):
|
|
|
137
138
|
"description",
|
|
138
139
|
"label",
|
|
139
140
|
"labels",
|
|
141
|
+
"custom_message_id",
|
|
140
142
|
"language_group_id",
|
|
141
143
|
"tool_headers",
|
|
142
144
|
"stt_provider",
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .schemas_cortex_v1_bridge_phrases_dictionarymetadata import (
|
|
5
|
-
SchemasCortexV1BridgePhrasesDictionaryMetadata,
|
|
6
|
-
SchemasCortexV1BridgePhrasesDictionaryMetadataTypedDict,
|
|
7
|
-
)
|
|
8
4
|
from syllable_sdk.types import BaseModel
|
|
9
5
|
from typing import List, Optional
|
|
10
6
|
from typing_extensions import NotRequired, TypedDict
|
|
@@ -19,8 +15,6 @@ class BridgePhrasesConfigTypedDict(TypedDict):
|
|
|
19
15
|
r"""Messages to say when the agent is significantly delayed."""
|
|
20
16
|
tool_responses: NotRequired[List[str]]
|
|
21
17
|
r"""Messages to say when a tool call is in progress."""
|
|
22
|
-
metadata: NotRequired[SchemasCortexV1BridgePhrasesDictionaryMetadataTypedDict]
|
|
23
|
-
r"""Metadata for the bridge phrases dictionary."""
|
|
24
18
|
|
|
25
19
|
|
|
26
20
|
class BridgePhrasesConfig(BaseModel):
|
|
@@ -34,6 +28,3 @@ class BridgePhrasesConfig(BaseModel):
|
|
|
34
28
|
|
|
35
29
|
tool_responses: Optional[List[str]] = None
|
|
36
30
|
r"""Messages to say when a tool call is in progress."""
|
|
37
|
-
|
|
38
|
-
metadata: Optional[SchemasCortexV1BridgePhrasesDictionaryMetadata] = None
|
|
39
|
-
r"""Metadata for the bridge phrases dictionary."""
|
|
@@ -21,6 +21,8 @@ class CustomMessageCreateRequestTypedDict(TypedDict):
|
|
|
21
21
|
r"""The name of the custom message"""
|
|
22
22
|
text: str
|
|
23
23
|
r"""The default message that the agent will deliver if no rules are set or no rules match the current timestamp."""
|
|
24
|
+
preamble: NotRequired[Nullable[str]]
|
|
25
|
+
r"""An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the \"{{ language.mode }}\" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear."""
|
|
24
26
|
label: NotRequired[Nullable[str]]
|
|
25
27
|
r"""The label of the custom message"""
|
|
26
28
|
rules: NotRequired[List[CustomMessageRuleTypedDict]]
|
|
@@ -38,6 +40,9 @@ class CustomMessageCreateRequest(BaseModel):
|
|
|
38
40
|
text: str
|
|
39
41
|
r"""The default message that the agent will deliver if no rules are set or no rules match the current timestamp."""
|
|
40
42
|
|
|
43
|
+
preamble: OptionalNullable[str] = UNSET
|
|
44
|
+
r"""An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the \"{{ language.mode }}\" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear."""
|
|
45
|
+
|
|
41
46
|
label: OptionalNullable[str] = UNSET
|
|
42
47
|
r"""The label of the custom message"""
|
|
43
48
|
|
|
@@ -49,8 +54,8 @@ class CustomMessageCreateRequest(BaseModel):
|
|
|
49
54
|
|
|
50
55
|
@model_serializer(mode="wrap")
|
|
51
56
|
def serialize_model(self, handler):
|
|
52
|
-
optional_fields = ["label", "rules", "type"]
|
|
53
|
-
nullable_fields = ["label"]
|
|
57
|
+
optional_fields = ["preamble", "label", "rules", "type"]
|
|
58
|
+
nullable_fields = ["preamble", "label"]
|
|
54
59
|
null_default_fields = []
|
|
55
60
|
|
|
56
61
|
serialized = handler(self)
|
|
@@ -34,6 +34,8 @@ class CustomMessageResponseTypedDict(TypedDict):
|
|
|
34
34
|
r"""Timestamp of the most recent update to the custom message"""
|
|
35
35
|
last_updated_by: str
|
|
36
36
|
r"""The email address of the user who most recently updated the custom message"""
|
|
37
|
+
preamble: NotRequired[Nullable[str]]
|
|
38
|
+
r"""An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the \"{{ language.mode }}\" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear."""
|
|
37
39
|
label: NotRequired[Nullable[str]]
|
|
38
40
|
r"""The label of the custom message"""
|
|
39
41
|
rules: NotRequired[List[CustomMessageRuleTypedDict]]
|
|
@@ -68,6 +70,9 @@ class CustomMessageResponse(BaseModel):
|
|
|
68
70
|
last_updated_by: str
|
|
69
71
|
r"""The email address of the user who most recently updated the custom message"""
|
|
70
72
|
|
|
73
|
+
preamble: OptionalNullable[str] = UNSET
|
|
74
|
+
r"""An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the \"{{ language.mode }}\" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear."""
|
|
75
|
+
|
|
71
76
|
label: OptionalNullable[str] = UNSET
|
|
72
77
|
r"""The label of the custom message"""
|
|
73
78
|
|
|
@@ -82,8 +87,8 @@ class CustomMessageResponse(BaseModel):
|
|
|
82
87
|
|
|
83
88
|
@model_serializer(mode="wrap")
|
|
84
89
|
def serialize_model(self, handler):
|
|
85
|
-
optional_fields = ["label", "rules", "agent_count", "type"]
|
|
86
|
-
nullable_fields = ["label", "agent_count"]
|
|
90
|
+
optional_fields = ["preamble", "label", "rules", "agent_count", "type"]
|
|
91
|
+
nullable_fields = ["preamble", "label", "agent_count"]
|
|
87
92
|
null_default_fields = []
|
|
88
93
|
|
|
89
94
|
serialized = handler(self)
|
|
@@ -23,6 +23,8 @@ class CustomMessageUpdateRequestTypedDict(TypedDict):
|
|
|
23
23
|
r"""The default message that the agent will deliver if no rules are set or no rules match the current timestamp."""
|
|
24
24
|
id: int
|
|
25
25
|
r"""The ID of the custom message"""
|
|
26
|
+
preamble: NotRequired[Nullable[str]]
|
|
27
|
+
r"""An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the \"{{ language.mode }}\" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear."""
|
|
26
28
|
label: NotRequired[Nullable[str]]
|
|
27
29
|
r"""The label of the custom message"""
|
|
28
30
|
rules: NotRequired[List[CustomMessageRuleTypedDict]]
|
|
@@ -43,6 +45,9 @@ class CustomMessageUpdateRequest(BaseModel):
|
|
|
43
45
|
id: int
|
|
44
46
|
r"""The ID of the custom message"""
|
|
45
47
|
|
|
48
|
+
preamble: OptionalNullable[str] = UNSET
|
|
49
|
+
r"""An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the \"{{ language.mode }}\" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear."""
|
|
50
|
+
|
|
46
51
|
label: OptionalNullable[str] = UNSET
|
|
47
52
|
r"""The label of the custom message"""
|
|
48
53
|
|
|
@@ -54,8 +59,8 @@ class CustomMessageUpdateRequest(BaseModel):
|
|
|
54
59
|
|
|
55
60
|
@model_serializer(mode="wrap")
|
|
56
61
|
def serialize_model(self, handler):
|
|
57
|
-
optional_fields = ["label", "rules", "type"]
|
|
58
|
-
nullable_fields = ["label"]
|
|
62
|
+
optional_fields = ["preamble", "label", "rules", "type"]
|
|
63
|
+
nullable_fields = ["preamble", "label"]
|
|
59
64
|
null_default_fields = []
|
|
60
65
|
|
|
61
66
|
serialized = handler(self)
|
syllable_sdk/models/{schemas_tts_v1_pronunciations_dictionarymetadata.py → dictionarymetadata.py}
RENAMED
|
@@ -6,7 +6,7 @@ from typing import Optional
|
|
|
6
6
|
from typing_extensions import NotRequired, TypedDict
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
class
|
|
9
|
+
class DictionaryMetadataTypedDict(TypedDict):
|
|
10
10
|
r"""Audit metadata associated with a dictionary."""
|
|
11
11
|
|
|
12
12
|
entries: int
|
|
@@ -14,7 +14,7 @@ class SchemasTtsV1PronunciationsDictionaryMetadataTypedDict(TypedDict):
|
|
|
14
14
|
source: NotRequired[str]
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
class
|
|
17
|
+
class DictionaryMetadata(BaseModel):
|
|
18
18
|
r"""Audit metadata associated with a dictionary."""
|
|
19
19
|
|
|
20
20
|
entries: int
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .directorymembercreate import DirectoryMemberCreate, DirectoryMemberCreateTypedDict
|
|
5
|
+
from .directoryresponseformat import DirectoryResponseFormat
|
|
6
|
+
from syllable_sdk.types import BaseModel
|
|
7
|
+
from syllable_sdk.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
|
|
8
|
+
from typing import Optional
|
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class DirectoryMemberCreateRequestTypedDict(TypedDict):
|
|
13
|
+
directory_member_create: DirectoryMemberCreateTypedDict
|
|
14
|
+
response_format: NotRequired[DirectoryResponseFormat]
|
|
15
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class DirectoryMemberCreateRequest(BaseModel):
|
|
19
|
+
directory_member_create: Annotated[
|
|
20
|
+
DirectoryMemberCreate,
|
|
21
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
response_format: Annotated[
|
|
25
|
+
Optional[DirectoryResponseFormat],
|
|
26
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
27
|
+
] = None
|
|
28
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .directoryresponseformat import DirectoryResponseFormat
|
|
5
|
+
from syllable_sdk.types import BaseModel
|
|
6
|
+
from syllable_sdk.utils import FieldMetadata, QueryParamMetadata
|
|
7
|
+
from typing import Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class DirectoryMemberDownloadRequestTypedDict(TypedDict):
|
|
12
|
+
response_format: NotRequired[DirectoryResponseFormat]
|
|
13
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class DirectoryMemberDownloadRequest(BaseModel):
|
|
17
|
+
response_format: Annotated[
|
|
18
|
+
Optional[DirectoryResponseFormat],
|
|
19
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
20
|
+
] = None
|
|
21
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
+
from .directoryresponseformat import DirectoryResponseFormat
|
|
4
5
|
from syllable_sdk.types import BaseModel
|
|
5
|
-
from syllable_sdk.utils import FieldMetadata, PathParamMetadata
|
|
6
|
-
from
|
|
6
|
+
from syllable_sdk.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
|
|
7
|
+
from typing import Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
7
9
|
|
|
8
10
|
|
|
9
11
|
class DirectoryMemberGetByIDRequestTypedDict(TypedDict):
|
|
10
12
|
member_id: int
|
|
13
|
+
response_format: NotRequired[DirectoryResponseFormat]
|
|
14
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
11
15
|
|
|
12
16
|
|
|
13
17
|
class DirectoryMemberGetByIDRequest(BaseModel):
|
|
14
18
|
member_id: Annotated[
|
|
15
19
|
int, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
16
20
|
]
|
|
21
|
+
|
|
22
|
+
response_format: Annotated[
|
|
23
|
+
Optional[DirectoryResponseFormat],
|
|
24
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
25
|
+
] = None
|
|
26
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .directorymemberproperties import DirectoryMemberProperties
|
|
5
|
+
from .directoryresponseformat import DirectoryResponseFormat
|
|
5
6
|
from .orderbydirection import OrderByDirection
|
|
6
7
|
from pydantic import model_serializer
|
|
7
8
|
from syllable_sdk.types import (
|
|
@@ -17,84 +18,93 @@ from typing_extensions import Annotated, NotRequired, TypedDict
|
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
class DirectoryMemberListRequestTypedDict(TypedDict):
|
|
21
|
+
response_format: NotRequired[DirectoryResponseFormat]
|
|
22
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
20
23
|
page: NotRequired[Nullable[int]]
|
|
21
|
-
r"""
|
|
24
|
+
r"""Page number (0-based)"""
|
|
22
25
|
limit: NotRequired[int]
|
|
23
|
-
r"""
|
|
26
|
+
r"""Items per page"""
|
|
24
27
|
search_fields: NotRequired[List[DirectoryMemberProperties]]
|
|
25
|
-
r"""
|
|
28
|
+
r"""Fields to search; aligns with search_field_values"""
|
|
26
29
|
search_field_values: NotRequired[List[str]]
|
|
27
|
-
r"""Values
|
|
30
|
+
r"""Values for search_fields in matching order"""
|
|
28
31
|
order_by: NotRequired[Nullable[DirectoryMemberProperties]]
|
|
29
|
-
r"""
|
|
32
|
+
r"""Field to order results by"""
|
|
30
33
|
order_by_direction: NotRequired[Nullable[OrderByDirection]]
|
|
31
|
-
r"""
|
|
34
|
+
r"""Direction to order results"""
|
|
32
35
|
fields: NotRequired[Nullable[List[DirectoryMemberProperties]]]
|
|
33
|
-
r"""
|
|
36
|
+
r"""Fields to include in response"""
|
|
34
37
|
start_datetime: NotRequired[Nullable[str]]
|
|
35
|
-
r"""
|
|
38
|
+
r"""Start datetime for filtering results"""
|
|
36
39
|
end_datetime: NotRequired[Nullable[str]]
|
|
37
|
-
r"""
|
|
40
|
+
r"""End datetime for filtering results"""
|
|
38
41
|
|
|
39
42
|
|
|
40
43
|
class DirectoryMemberListRequest(BaseModel):
|
|
44
|
+
response_format: Annotated[
|
|
45
|
+
Optional[DirectoryResponseFormat],
|
|
46
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
47
|
+
] = None
|
|
48
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
49
|
+
|
|
41
50
|
page: Annotated[
|
|
42
51
|
OptionalNullable[int],
|
|
43
52
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
44
53
|
] = UNSET
|
|
45
|
-
r"""
|
|
54
|
+
r"""Page number (0-based)"""
|
|
46
55
|
|
|
47
56
|
limit: Annotated[
|
|
48
57
|
Optional[int],
|
|
49
58
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
50
59
|
] = 25
|
|
51
|
-
r"""
|
|
60
|
+
r"""Items per page"""
|
|
52
61
|
|
|
53
62
|
search_fields: Annotated[
|
|
54
63
|
Optional[List[DirectoryMemberProperties]],
|
|
55
64
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
56
65
|
] = None
|
|
57
|
-
r"""
|
|
66
|
+
r"""Fields to search; aligns with search_field_values"""
|
|
58
67
|
|
|
59
68
|
search_field_values: Annotated[
|
|
60
69
|
Optional[List[str]],
|
|
61
70
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
62
71
|
] = None
|
|
63
|
-
r"""Values
|
|
72
|
+
r"""Values for search_fields in matching order"""
|
|
64
73
|
|
|
65
74
|
order_by: Annotated[
|
|
66
75
|
OptionalNullable[DirectoryMemberProperties],
|
|
67
76
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
68
77
|
] = UNSET
|
|
69
|
-
r"""
|
|
78
|
+
r"""Field to order results by"""
|
|
70
79
|
|
|
71
80
|
order_by_direction: Annotated[
|
|
72
81
|
OptionalNullable[OrderByDirection],
|
|
73
82
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
74
83
|
] = UNSET
|
|
75
|
-
r"""
|
|
84
|
+
r"""Direction to order results"""
|
|
76
85
|
|
|
77
86
|
fields: Annotated[
|
|
78
87
|
OptionalNullable[List[DirectoryMemberProperties]],
|
|
79
88
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
80
89
|
] = UNSET
|
|
81
|
-
r"""
|
|
90
|
+
r"""Fields to include in response"""
|
|
82
91
|
|
|
83
92
|
start_datetime: Annotated[
|
|
84
93
|
OptionalNullable[str],
|
|
85
94
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
86
95
|
] = UNSET
|
|
87
|
-
r"""
|
|
96
|
+
r"""Start datetime for filtering results"""
|
|
88
97
|
|
|
89
98
|
end_datetime: Annotated[
|
|
90
99
|
OptionalNullable[str],
|
|
91
100
|
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
92
101
|
] = UNSET
|
|
93
|
-
r"""
|
|
102
|
+
r"""End datetime for filtering results"""
|
|
94
103
|
|
|
95
104
|
@model_serializer(mode="wrap")
|
|
96
105
|
def serialize_model(self, handler):
|
|
97
106
|
optional_fields = [
|
|
107
|
+
"response_format",
|
|
98
108
|
"page",
|
|
99
109
|
"limit",
|
|
100
110
|
"search_fields",
|
|
@@ -2,14 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .directorymemberupdate import DirectoryMemberUpdate, DirectoryMemberUpdateTypedDict
|
|
5
|
+
from .directoryresponseformat import DirectoryResponseFormat
|
|
5
6
|
from syllable_sdk.types import BaseModel
|
|
6
|
-
from syllable_sdk.utils import
|
|
7
|
-
|
|
7
|
+
from syllable_sdk.utils import (
|
|
8
|
+
FieldMetadata,
|
|
9
|
+
PathParamMetadata,
|
|
10
|
+
QueryParamMetadata,
|
|
11
|
+
RequestMetadata,
|
|
12
|
+
)
|
|
13
|
+
from typing import Optional
|
|
14
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
8
15
|
|
|
9
16
|
|
|
10
17
|
class DirectoryMemberUpdateRequestTypedDict(TypedDict):
|
|
11
18
|
member_id: int
|
|
12
19
|
directory_member_update: DirectoryMemberUpdateTypedDict
|
|
20
|
+
response_format: NotRequired[DirectoryResponseFormat]
|
|
21
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
13
22
|
|
|
14
23
|
|
|
15
24
|
class DirectoryMemberUpdateRequest(BaseModel):
|
|
@@ -21,3 +30,9 @@ class DirectoryMemberUpdateRequest(BaseModel):
|
|
|
21
30
|
DirectoryMemberUpdate,
|
|
22
31
|
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
23
32
|
]
|
|
33
|
+
|
|
34
|
+
response_format: Annotated[
|
|
35
|
+
Optional[DirectoryResponseFormat],
|
|
36
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
37
|
+
] = None
|
|
38
|
+
r"""Directory response format: normalized (default) strips @hours and formats times; raw returns stored @hours values."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class DirectoryResponseFormat(str, Enum):
|
|
8
|
+
r"""Response shape selector for directory member APIs."""
|
|
9
|
+
|
|
10
|
+
NORMALIZED = "normalized"
|
|
11
|
+
RAW = "raw"
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .callaction import CallAction, CallActionTypedDict
|
|
5
5
|
from .incrementaction import IncrementAction, IncrementActionTypedDict
|
|
6
|
-
from .saveaction import SaveAction, SaveActionTypedDict
|
|
7
6
|
from .sayaction import SayAction, SayActionTypedDict
|
|
8
7
|
from .setvalueaction import SetValueAction, SetValueActionTypedDict
|
|
9
8
|
from pydantic import Discriminator, Tag, model_serializer
|
|
@@ -22,9 +21,8 @@ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
|
|
22
21
|
EventTaskEventsStartTypedDict = TypeAliasType(
|
|
23
22
|
"EventTaskEventsStartTypedDict",
|
|
24
23
|
Union[
|
|
25
|
-
SayActionTypedDict,
|
|
26
|
-
SaveActionTypedDict,
|
|
27
24
|
IncrementActionTypedDict,
|
|
25
|
+
SayActionTypedDict,
|
|
28
26
|
SetValueActionTypedDict,
|
|
29
27
|
CallActionTypedDict,
|
|
30
28
|
],
|
|
@@ -35,7 +33,6 @@ EventTaskEventsStart = Annotated[
|
|
|
35
33
|
Union[
|
|
36
34
|
Annotated[CallAction, Tag("call")],
|
|
37
35
|
Annotated[IncrementAction, Tag("inc")],
|
|
38
|
-
Annotated[SaveAction, Tag("save")],
|
|
39
36
|
Annotated[SayAction, Tag("say")],
|
|
40
37
|
Annotated[SetValueAction, Tag("set")],
|
|
41
38
|
],
|
|
@@ -60,7 +60,7 @@ class ExpressionTaskTypedDict(TypedDict):
|
|
|
60
60
|
expression: NotRequired[Nullable[Expression2TypedDict]]
|
|
61
61
|
output: NotRequired[Nullable[Any]]
|
|
62
62
|
on: NotRequired[ExpressionTaskEventsTypedDict]
|
|
63
|
-
r"""Actions to perform when events occur (
|
|
63
|
+
r"""Actions to perform when events occur (start, submit)."""
|
|
64
64
|
|
|
65
65
|
|
|
66
66
|
class ExpressionTask(BaseModel):
|
|
@@ -97,7 +97,7 @@ class ExpressionTask(BaseModel):
|
|
|
97
97
|
output: OptionalNullable[Any] = UNSET
|
|
98
98
|
|
|
99
99
|
on: Optional[ExpressionTaskEvents] = None
|
|
100
|
-
r"""Actions to perform when events occur (
|
|
100
|
+
r"""Actions to perform when events occur (start, submit)."""
|
|
101
101
|
|
|
102
102
|
@model_serializer(mode="wrap")
|
|
103
103
|
def serialize_model(self, handler):
|
|
@@ -22,9 +22,8 @@ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
|
|
22
22
|
ExpressionTaskEventsStartTypedDict = TypeAliasType(
|
|
23
23
|
"ExpressionTaskEventsStartTypedDict",
|
|
24
24
|
Union[
|
|
25
|
-
SayActionTypedDict,
|
|
26
|
-
SaveActionTypedDict,
|
|
27
25
|
IncrementActionTypedDict,
|
|
26
|
+
SayActionTypedDict,
|
|
28
27
|
SetValueActionTypedDict,
|
|
29
28
|
CallActionTypedDict,
|
|
30
29
|
],
|
|
@@ -35,7 +34,6 @@ ExpressionTaskEventsStart = Annotated[
|
|
|
35
34
|
Union[
|
|
36
35
|
Annotated[CallAction, Tag("call")],
|
|
37
36
|
Annotated[IncrementAction, Tag("inc")],
|
|
38
|
-
Annotated[SaveAction, Tag("save")],
|
|
39
37
|
Annotated[SayAction, Tag("say")],
|
|
40
38
|
Annotated[SetValueAction, Tag("set")],
|
|
41
39
|
],
|
|
@@ -47,8 +45,8 @@ ExpressionTaskEventsSubmitTypedDict = TypeAliasType(
|
|
|
47
45
|
"ExpressionTaskEventsSubmitTypedDict",
|
|
48
46
|
Union[
|
|
49
47
|
IncrementActionTypedDict,
|
|
50
|
-
SayActionTypedDict,
|
|
51
48
|
SaveActionTypedDict,
|
|
49
|
+
SayActionTypedDict,
|
|
52
50
|
SetValueActionTypedDict,
|
|
53
51
|
CallActionTypedDict,
|
|
54
52
|
],
|
|
@@ -68,7 +66,7 @@ ExpressionTaskEventsSubmit = Annotated[
|
|
|
68
66
|
|
|
69
67
|
|
|
70
68
|
class ExpressionTaskEventsTypedDict(TypedDict):
|
|
71
|
-
r"""Actions to perform when events occur (
|
|
69
|
+
r"""Actions to perform when events occur (start, submit)."""
|
|
72
70
|
|
|
73
71
|
start: NotRequired[Nullable[List[ExpressionTaskEventsStartTypedDict]]]
|
|
74
72
|
r"""Actions to execute on the first input from the user."""
|
|
@@ -77,7 +75,7 @@ class ExpressionTaskEventsTypedDict(TypedDict):
|
|
|
77
75
|
|
|
78
76
|
|
|
79
77
|
class ExpressionTaskEvents(BaseModel):
|
|
80
|
-
r"""Actions to perform when events occur (
|
|
78
|
+
r"""Actions to perform when events occur (start, submit)."""
|
|
81
79
|
|
|
82
80
|
start: OptionalNullable[List[ExpressionTaskEventsStart]] = UNSET
|
|
83
81
|
r"""Actions to execute on the first input from the user."""
|