langgraph-api 0.4.1__py3-none-any.whl → 0.7.3__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.
Files changed (135) hide show
  1. langgraph_api/__init__.py +1 -1
  2. langgraph_api/api/__init__.py +111 -51
  3. langgraph_api/api/a2a.py +1610 -0
  4. langgraph_api/api/assistants.py +212 -89
  5. langgraph_api/api/mcp.py +3 -3
  6. langgraph_api/api/meta.py +52 -28
  7. langgraph_api/api/openapi.py +27 -17
  8. langgraph_api/api/profile.py +108 -0
  9. langgraph_api/api/runs.py +342 -195
  10. langgraph_api/api/store.py +19 -2
  11. langgraph_api/api/threads.py +209 -27
  12. langgraph_api/asgi_transport.py +14 -9
  13. langgraph_api/asyncio.py +14 -4
  14. langgraph_api/auth/custom.py +52 -37
  15. langgraph_api/auth/langsmith/backend.py +4 -3
  16. langgraph_api/auth/langsmith/client.py +13 -8
  17. langgraph_api/cli.py +230 -133
  18. langgraph_api/command.py +5 -3
  19. langgraph_api/config/__init__.py +532 -0
  20. langgraph_api/config/_parse.py +58 -0
  21. langgraph_api/config/schemas.py +431 -0
  22. langgraph_api/cron_scheduler.py +17 -1
  23. langgraph_api/encryption/__init__.py +15 -0
  24. langgraph_api/encryption/aes_json.py +158 -0
  25. langgraph_api/encryption/context.py +35 -0
  26. langgraph_api/encryption/custom.py +280 -0
  27. langgraph_api/encryption/middleware.py +632 -0
  28. langgraph_api/encryption/shared.py +63 -0
  29. langgraph_api/errors.py +12 -1
  30. langgraph_api/executor_entrypoint.py +11 -6
  31. langgraph_api/feature_flags.py +29 -0
  32. langgraph_api/graph.py +176 -76
  33. langgraph_api/grpc/client.py +313 -0
  34. langgraph_api/grpc/config_conversion.py +231 -0
  35. langgraph_api/grpc/generated/__init__.py +29 -0
  36. langgraph_api/grpc/generated/checkpointer_pb2.py +63 -0
  37. langgraph_api/grpc/generated/checkpointer_pb2.pyi +99 -0
  38. langgraph_api/grpc/generated/checkpointer_pb2_grpc.py +329 -0
  39. langgraph_api/grpc/generated/core_api_pb2.py +216 -0
  40. langgraph_api/grpc/generated/core_api_pb2.pyi +905 -0
  41. langgraph_api/grpc/generated/core_api_pb2_grpc.py +1621 -0
  42. langgraph_api/grpc/generated/engine_common_pb2.py +219 -0
  43. langgraph_api/grpc/generated/engine_common_pb2.pyi +722 -0
  44. langgraph_api/grpc/generated/engine_common_pb2_grpc.py +24 -0
  45. langgraph_api/grpc/generated/enum_cancel_run_action_pb2.py +37 -0
  46. langgraph_api/grpc/generated/enum_cancel_run_action_pb2.pyi +12 -0
  47. langgraph_api/grpc/generated/enum_cancel_run_action_pb2_grpc.py +24 -0
  48. langgraph_api/grpc/generated/enum_control_signal_pb2.py +37 -0
  49. langgraph_api/grpc/generated/enum_control_signal_pb2.pyi +16 -0
  50. langgraph_api/grpc/generated/enum_control_signal_pb2_grpc.py +24 -0
  51. langgraph_api/grpc/generated/enum_durability_pb2.py +37 -0
  52. langgraph_api/grpc/generated/enum_durability_pb2.pyi +16 -0
  53. langgraph_api/grpc/generated/enum_durability_pb2_grpc.py +24 -0
  54. langgraph_api/grpc/generated/enum_multitask_strategy_pb2.py +37 -0
  55. langgraph_api/grpc/generated/enum_multitask_strategy_pb2.pyi +16 -0
  56. langgraph_api/grpc/generated/enum_multitask_strategy_pb2_grpc.py +24 -0
  57. langgraph_api/grpc/generated/enum_run_status_pb2.py +37 -0
  58. langgraph_api/grpc/generated/enum_run_status_pb2.pyi +22 -0
  59. langgraph_api/grpc/generated/enum_run_status_pb2_grpc.py +24 -0
  60. langgraph_api/grpc/generated/enum_stream_mode_pb2.py +37 -0
  61. langgraph_api/grpc/generated/enum_stream_mode_pb2.pyi +28 -0
  62. langgraph_api/grpc/generated/enum_stream_mode_pb2_grpc.py +24 -0
  63. langgraph_api/grpc/generated/enum_thread_status_pb2.py +37 -0
  64. langgraph_api/grpc/generated/enum_thread_status_pb2.pyi +16 -0
  65. langgraph_api/grpc/generated/enum_thread_status_pb2_grpc.py +24 -0
  66. langgraph_api/grpc/generated/enum_thread_stream_mode_pb2.py +37 -0
  67. langgraph_api/grpc/generated/enum_thread_stream_mode_pb2.pyi +16 -0
  68. langgraph_api/grpc/generated/enum_thread_stream_mode_pb2_grpc.py +24 -0
  69. langgraph_api/grpc/generated/errors_pb2.py +39 -0
  70. langgraph_api/grpc/generated/errors_pb2.pyi +21 -0
  71. langgraph_api/grpc/generated/errors_pb2_grpc.py +24 -0
  72. langgraph_api/grpc/ops/__init__.py +370 -0
  73. langgraph_api/grpc/ops/assistants.py +424 -0
  74. langgraph_api/grpc/ops/runs.py +792 -0
  75. langgraph_api/grpc/ops/threads.py +1013 -0
  76. langgraph_api/http.py +16 -5
  77. langgraph_api/http_metrics.py +15 -35
  78. langgraph_api/http_metrics_utils.py +38 -0
  79. langgraph_api/js/build.mts +1 -1
  80. langgraph_api/js/client.http.mts +13 -7
  81. langgraph_api/js/client.mts +2 -5
  82. langgraph_api/js/package.json +29 -28
  83. langgraph_api/js/remote.py +56 -30
  84. langgraph_api/js/src/graph.mts +20 -0
  85. langgraph_api/js/sse.py +2 -2
  86. langgraph_api/js/ui.py +1 -1
  87. langgraph_api/js/yarn.lock +1204 -1006
  88. langgraph_api/logging.py +29 -2
  89. langgraph_api/metadata.py +99 -28
  90. langgraph_api/middleware/http_logger.py +7 -2
  91. langgraph_api/middleware/private_network.py +7 -7
  92. langgraph_api/models/run.py +54 -93
  93. langgraph_api/otel_context.py +205 -0
  94. langgraph_api/patch.py +5 -3
  95. langgraph_api/queue_entrypoint.py +154 -65
  96. langgraph_api/route.py +47 -5
  97. langgraph_api/schema.py +88 -10
  98. langgraph_api/self_hosted_logs.py +124 -0
  99. langgraph_api/self_hosted_metrics.py +450 -0
  100. langgraph_api/serde.py +79 -37
  101. langgraph_api/server.py +138 -60
  102. langgraph_api/state.py +4 -3
  103. langgraph_api/store.py +25 -16
  104. langgraph_api/stream.py +80 -29
  105. langgraph_api/thread_ttl.py +31 -13
  106. langgraph_api/timing/__init__.py +25 -0
  107. langgraph_api/timing/profiler.py +200 -0
  108. langgraph_api/timing/timer.py +318 -0
  109. langgraph_api/utils/__init__.py +53 -8
  110. langgraph_api/utils/cache.py +47 -10
  111. langgraph_api/utils/config.py +2 -1
  112. langgraph_api/utils/errors.py +77 -0
  113. langgraph_api/utils/future.py +10 -6
  114. langgraph_api/utils/headers.py +76 -2
  115. langgraph_api/utils/retriable_client.py +74 -0
  116. langgraph_api/utils/stream_codec.py +315 -0
  117. langgraph_api/utils/uuids.py +29 -62
  118. langgraph_api/validation.py +9 -0
  119. langgraph_api/webhook.py +120 -6
  120. langgraph_api/worker.py +55 -24
  121. {langgraph_api-0.4.1.dist-info → langgraph_api-0.7.3.dist-info}/METADATA +16 -8
  122. langgraph_api-0.7.3.dist-info/RECORD +168 -0
  123. {langgraph_api-0.4.1.dist-info → langgraph_api-0.7.3.dist-info}/WHEEL +1 -1
  124. langgraph_runtime/__init__.py +1 -0
  125. langgraph_runtime/routes.py +11 -0
  126. logging.json +1 -3
  127. openapi.json +839 -478
  128. langgraph_api/config.py +0 -387
  129. langgraph_api/js/isolate-0x130008000-46649-46649-v8.log +0 -4430
  130. langgraph_api/js/isolate-0x138008000-44681-44681-v8.log +0 -4430
  131. langgraph_api/js/package-lock.json +0 -3308
  132. langgraph_api-0.4.1.dist-info/RECORD +0 -107
  133. /langgraph_api/{utils.py → grpc/__init__.py} +0 -0
  134. {langgraph_api-0.4.1.dist-info → langgraph_api-0.7.3.dist-info}/entry_points.txt +0 -0
  135. {langgraph_api-0.4.1.dist-info → langgraph_api-0.7.3.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,905 @@
1
+ import datetime
2
+
3
+ from google.protobuf import empty_pb2 as _empty_pb2
4
+ from google.protobuf import struct_pb2 as _struct_pb2
5
+ from google.protobuf import timestamp_pb2 as _timestamp_pb2
6
+ from . import engine_common_pb2 as _engine_common_pb2
7
+ from . import enum_run_status_pb2 as _enum_run_status_pb2
8
+ from . import enum_multitask_strategy_pb2 as _enum_multitask_strategy_pb2
9
+ from . import enum_stream_mode_pb2 as _enum_stream_mode_pb2
10
+ from . import enum_cancel_run_action_pb2 as _enum_cancel_run_action_pb2
11
+ from . import enum_thread_status_pb2 as _enum_thread_status_pb2
12
+ from . import enum_thread_stream_mode_pb2 as _enum_thread_stream_mode_pb2
13
+ from . import enum_control_signal_pb2 as _enum_control_signal_pb2
14
+ from google.protobuf.internal import containers as _containers
15
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
16
+ from google.protobuf import descriptor as _descriptor
17
+ from google.protobuf import message as _message
18
+ from collections.abc import Iterable as _Iterable, Mapping as _Mapping
19
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
20
+
21
+ DESCRIPTOR: _descriptor.FileDescriptor
22
+
23
+ class OnConflictBehavior(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
24
+ __slots__ = ()
25
+ RAISE: _ClassVar[OnConflictBehavior]
26
+ DO_NOTHING: _ClassVar[OnConflictBehavior]
27
+
28
+ class SortOrder(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
29
+ __slots__ = ()
30
+ DESC: _ClassVar[SortOrder]
31
+ ASC: _ClassVar[SortOrder]
32
+
33
+ class AssistantsSortBy(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
34
+ __slots__ = ()
35
+ UNSPECIFIED: _ClassVar[AssistantsSortBy]
36
+ ASSISTANT_ID: _ClassVar[AssistantsSortBy]
37
+ GRAPH_ID: _ClassVar[AssistantsSortBy]
38
+ NAME: _ClassVar[AssistantsSortBy]
39
+ CREATED_AT: _ClassVar[AssistantsSortBy]
40
+ UPDATED_AT: _ClassVar[AssistantsSortBy]
41
+
42
+ class ThreadTTLStrategy(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
43
+ __slots__ = ()
44
+ THREAD_TTL_STRATEGY_DELETE: _ClassVar[ThreadTTLStrategy]
45
+ THREAD_TTL_STRATEGY_KEEP_LATEST: _ClassVar[ThreadTTLStrategy]
46
+
47
+ class CheckpointSource(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
48
+ __slots__ = ()
49
+ CHECKPOINT_SOURCE_UNSPECIFIED: _ClassVar[CheckpointSource]
50
+ CHECKPOINT_SOURCE_INPUT: _ClassVar[CheckpointSource]
51
+ CHECKPOINT_SOURCE_LOOP: _ClassVar[CheckpointSource]
52
+ CHECKPOINT_SOURCE_UPDATE: _ClassVar[CheckpointSource]
53
+ CHECKPOINT_SOURCE_FORK: _ClassVar[CheckpointSource]
54
+
55
+ class ThreadsSortBy(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
56
+ __slots__ = ()
57
+ THREADS_SORT_BY_UNSPECIFIED: _ClassVar[ThreadsSortBy]
58
+ THREADS_SORT_BY_THREAD_ID: _ClassVar[ThreadsSortBy]
59
+ THREADS_SORT_BY_CREATED_AT: _ClassVar[ThreadsSortBy]
60
+ THREADS_SORT_BY_UPDATED_AT: _ClassVar[ThreadsSortBy]
61
+ THREADS_SORT_BY_STATUS: _ClassVar[ThreadsSortBy]
62
+
63
+ class CreateRunBehavior(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
64
+ __slots__ = ()
65
+ REJECT_RUN_IF_THREAD_NOT_EXISTS: _ClassVar[CreateRunBehavior]
66
+ CREATE_THREAD_IF_THREAD_NOT_EXISTS: _ClassVar[CreateRunBehavior]
67
+
68
+ class CancelRunStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
69
+ __slots__ = ()
70
+ CANCEL_RUN_STATUS_PENDING: _ClassVar[CancelRunStatus]
71
+ CANCEL_RUN_STATUS_RUNNING: _ClassVar[CancelRunStatus]
72
+ CANCEL_RUN_STATUS_ALL: _ClassVar[CancelRunStatus]
73
+ RAISE: OnConflictBehavior
74
+ DO_NOTHING: OnConflictBehavior
75
+ DESC: SortOrder
76
+ ASC: SortOrder
77
+ UNSPECIFIED: AssistantsSortBy
78
+ ASSISTANT_ID: AssistantsSortBy
79
+ GRAPH_ID: AssistantsSortBy
80
+ NAME: AssistantsSortBy
81
+ CREATED_AT: AssistantsSortBy
82
+ UPDATED_AT: AssistantsSortBy
83
+ THREAD_TTL_STRATEGY_DELETE: ThreadTTLStrategy
84
+ THREAD_TTL_STRATEGY_KEEP_LATEST: ThreadTTLStrategy
85
+ CHECKPOINT_SOURCE_UNSPECIFIED: CheckpointSource
86
+ CHECKPOINT_SOURCE_INPUT: CheckpointSource
87
+ CHECKPOINT_SOURCE_LOOP: CheckpointSource
88
+ CHECKPOINT_SOURCE_UPDATE: CheckpointSource
89
+ CHECKPOINT_SOURCE_FORK: CheckpointSource
90
+ THREADS_SORT_BY_UNSPECIFIED: ThreadsSortBy
91
+ THREADS_SORT_BY_THREAD_ID: ThreadsSortBy
92
+ THREADS_SORT_BY_CREATED_AT: ThreadsSortBy
93
+ THREADS_SORT_BY_UPDATED_AT: ThreadsSortBy
94
+ THREADS_SORT_BY_STATUS: ThreadsSortBy
95
+ REJECT_RUN_IF_THREAD_NOT_EXISTS: CreateRunBehavior
96
+ CREATE_THREAD_IF_THREAD_NOT_EXISTS: CreateRunBehavior
97
+ CANCEL_RUN_STATUS_PENDING: CancelRunStatus
98
+ CANCEL_RUN_STATUS_RUNNING: CancelRunStatus
99
+ CANCEL_RUN_STATUS_ALL: CancelRunStatus
100
+
101
+ class Tags(_message.Message):
102
+ __slots__ = ("values",)
103
+ VALUES_FIELD_NUMBER: _ClassVar[int]
104
+ values: _containers.RepeatedScalarFieldContainer[str]
105
+ def __init__(self, values: _Optional[_Iterable[str]] = ...) -> None: ...
106
+
107
+ class EqAuthFilter(_message.Message):
108
+ __slots__ = ("key", "match")
109
+ KEY_FIELD_NUMBER: _ClassVar[int]
110
+ MATCH_FIELD_NUMBER: _ClassVar[int]
111
+ key: str
112
+ match: str
113
+ def __init__(self, key: _Optional[str] = ..., match: _Optional[str] = ...) -> None: ...
114
+
115
+ class ContainsAuthFilter(_message.Message):
116
+ __slots__ = ("key", "matches")
117
+ KEY_FIELD_NUMBER: _ClassVar[int]
118
+ MATCHES_FIELD_NUMBER: _ClassVar[int]
119
+ key: str
120
+ matches: _containers.RepeatedScalarFieldContainer[str]
121
+ def __init__(self, key: _Optional[str] = ..., matches: _Optional[_Iterable[str]] = ...) -> None: ...
122
+
123
+ class OrAuthFilter(_message.Message):
124
+ __slots__ = ("filters",)
125
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
126
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
127
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
128
+
129
+ class AndAuthFilter(_message.Message):
130
+ __slots__ = ("filters",)
131
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
132
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
133
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
134
+
135
+ class AuthFilter(_message.Message):
136
+ __slots__ = ("eq", "contains", "or_filter", "and_filter")
137
+ EQ_FIELD_NUMBER: _ClassVar[int]
138
+ CONTAINS_FIELD_NUMBER: _ClassVar[int]
139
+ OR_FILTER_FIELD_NUMBER: _ClassVar[int]
140
+ AND_FILTER_FIELD_NUMBER: _ClassVar[int]
141
+ eq: EqAuthFilter
142
+ contains: ContainsAuthFilter
143
+ or_filter: OrAuthFilter
144
+ and_filter: AndAuthFilter
145
+ def __init__(self, eq: _Optional[_Union[EqAuthFilter, _Mapping]] = ..., contains: _Optional[_Union[ContainsAuthFilter, _Mapping]] = ..., or_filter: _Optional[_Union[OrAuthFilter, _Mapping]] = ..., and_filter: _Optional[_Union[AndAuthFilter, _Mapping]] = ...) -> None: ...
146
+
147
+ class UUID(_message.Message):
148
+ __slots__ = ("value",)
149
+ VALUE_FIELD_NUMBER: _ClassVar[int]
150
+ value: str
151
+ def __init__(self, value: _Optional[str] = ...) -> None: ...
152
+
153
+ class CountResponse(_message.Message):
154
+ __slots__ = ("count",)
155
+ COUNT_FIELD_NUMBER: _ClassVar[int]
156
+ count: int
157
+ def __init__(self, count: _Optional[int] = ...) -> None: ...
158
+
159
+ class StreamEvent(_message.Message):
160
+ __slots__ = ("event_type", "message", "stream_id")
161
+ EVENT_TYPE_FIELD_NUMBER: _ClassVar[int]
162
+ MESSAGE_FIELD_NUMBER: _ClassVar[int]
163
+ STREAM_ID_FIELD_NUMBER: _ClassVar[int]
164
+ event_type: str
165
+ message: bytes
166
+ stream_id: str
167
+ def __init__(self, event_type: _Optional[str] = ..., message: _Optional[bytes] = ..., stream_id: _Optional[str] = ...) -> None: ...
168
+
169
+ class Assistant(_message.Message):
170
+ __slots__ = ("assistant_id", "graph_id", "version", "created_at", "updated_at", "config", "context_json", "metadata_json", "name", "description")
171
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
172
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
173
+ VERSION_FIELD_NUMBER: _ClassVar[int]
174
+ CREATED_AT_FIELD_NUMBER: _ClassVar[int]
175
+ UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
176
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
177
+ CONTEXT_JSON_FIELD_NUMBER: _ClassVar[int]
178
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
179
+ NAME_FIELD_NUMBER: _ClassVar[int]
180
+ DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
181
+ assistant_id: str
182
+ graph_id: str
183
+ version: int
184
+ created_at: _timestamp_pb2.Timestamp
185
+ updated_at: _timestamp_pb2.Timestamp
186
+ config: _engine_common_pb2.EngineRunnableConfig
187
+ context_json: bytes
188
+ metadata_json: bytes
189
+ name: str
190
+ description: str
191
+ def __init__(self, assistant_id: _Optional[str] = ..., graph_id: _Optional[str] = ..., version: _Optional[int] = ..., created_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., context_json: _Optional[bytes] = ..., metadata_json: _Optional[bytes] = ..., name: _Optional[str] = ..., description: _Optional[str] = ...) -> None: ...
192
+
193
+ class AssistantVersion(_message.Message):
194
+ __slots__ = ("assistant_id", "graph_id", "version", "created_at", "config", "context_json", "metadata_json", "name", "description")
195
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
196
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
197
+ VERSION_FIELD_NUMBER: _ClassVar[int]
198
+ CREATED_AT_FIELD_NUMBER: _ClassVar[int]
199
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
200
+ CONTEXT_JSON_FIELD_NUMBER: _ClassVar[int]
201
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
202
+ NAME_FIELD_NUMBER: _ClassVar[int]
203
+ DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
204
+ assistant_id: str
205
+ graph_id: str
206
+ version: int
207
+ created_at: _timestamp_pb2.Timestamp
208
+ config: _engine_common_pb2.EngineRunnableConfig
209
+ context_json: bytes
210
+ metadata_json: bytes
211
+ name: str
212
+ description: str
213
+ def __init__(self, assistant_id: _Optional[str] = ..., graph_id: _Optional[str] = ..., version: _Optional[int] = ..., created_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., context_json: _Optional[bytes] = ..., metadata_json: _Optional[bytes] = ..., name: _Optional[str] = ..., description: _Optional[str] = ...) -> None: ...
214
+
215
+ class CreateAssistantRequest(_message.Message):
216
+ __slots__ = ("assistant_id", "graph_id", "filters", "if_exists", "config", "context_json", "name", "description", "metadata_json")
217
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
218
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
219
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
220
+ IF_EXISTS_FIELD_NUMBER: _ClassVar[int]
221
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
222
+ CONTEXT_JSON_FIELD_NUMBER: _ClassVar[int]
223
+ NAME_FIELD_NUMBER: _ClassVar[int]
224
+ DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
225
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
226
+ assistant_id: str
227
+ graph_id: str
228
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
229
+ if_exists: OnConflictBehavior
230
+ config: _engine_common_pb2.EngineRunnableConfig
231
+ context_json: bytes
232
+ name: str
233
+ description: str
234
+ metadata_json: bytes
235
+ def __init__(self, assistant_id: _Optional[str] = ..., graph_id: _Optional[str] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., if_exists: _Optional[_Union[OnConflictBehavior, str]] = ..., config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., context_json: _Optional[bytes] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., metadata_json: _Optional[bytes] = ...) -> None: ...
236
+
237
+ class GetAssistantRequest(_message.Message):
238
+ __slots__ = ("assistant_id", "filters")
239
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
240
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
241
+ assistant_id: str
242
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
243
+ def __init__(self, assistant_id: _Optional[str] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
244
+
245
+ class PatchAssistantRequest(_message.Message):
246
+ __slots__ = ("assistant_id", "filters", "graph_id", "config", "context_json", "name", "description", "metadata_json")
247
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
248
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
249
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
250
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
251
+ CONTEXT_JSON_FIELD_NUMBER: _ClassVar[int]
252
+ NAME_FIELD_NUMBER: _ClassVar[int]
253
+ DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
254
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
255
+ assistant_id: str
256
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
257
+ graph_id: str
258
+ config: _engine_common_pb2.EngineRunnableConfig
259
+ context_json: bytes
260
+ name: str
261
+ description: str
262
+ metadata_json: bytes
263
+ def __init__(self, assistant_id: _Optional[str] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., graph_id: _Optional[str] = ..., config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., context_json: _Optional[bytes] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., metadata_json: _Optional[bytes] = ...) -> None: ...
264
+
265
+ class DeleteAssistantRequest(_message.Message):
266
+ __slots__ = ("assistant_id", "filters", "delete_threads")
267
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
268
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
269
+ DELETE_THREADS_FIELD_NUMBER: _ClassVar[int]
270
+ assistant_id: str
271
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
272
+ delete_threads: bool
273
+ def __init__(self, assistant_id: _Optional[str] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., delete_threads: bool = ...) -> None: ...
274
+
275
+ class DeleteAssistantsResponse(_message.Message):
276
+ __slots__ = ("assistant_ids",)
277
+ ASSISTANT_IDS_FIELD_NUMBER: _ClassVar[int]
278
+ assistant_ids: _containers.RepeatedScalarFieldContainer[str]
279
+ def __init__(self, assistant_ids: _Optional[_Iterable[str]] = ...) -> None: ...
280
+
281
+ class SetLatestAssistantRequest(_message.Message):
282
+ __slots__ = ("assistant_id", "version", "filters")
283
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
284
+ VERSION_FIELD_NUMBER: _ClassVar[int]
285
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
286
+ assistant_id: str
287
+ version: int
288
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
289
+ def __init__(self, assistant_id: _Optional[str] = ..., version: _Optional[int] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
290
+
291
+ class SearchAssistantsRequest(_message.Message):
292
+ __slots__ = ("filters", "graph_id", "metadata_json", "limit", "offset", "sort_by", "sort_order", "select", "name")
293
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
294
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
295
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
296
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
297
+ OFFSET_FIELD_NUMBER: _ClassVar[int]
298
+ SORT_BY_FIELD_NUMBER: _ClassVar[int]
299
+ SORT_ORDER_FIELD_NUMBER: _ClassVar[int]
300
+ SELECT_FIELD_NUMBER: _ClassVar[int]
301
+ NAME_FIELD_NUMBER: _ClassVar[int]
302
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
303
+ graph_id: str
304
+ metadata_json: bytes
305
+ limit: int
306
+ offset: int
307
+ sort_by: AssistantsSortBy
308
+ sort_order: SortOrder
309
+ select: _containers.RepeatedScalarFieldContainer[str]
310
+ name: str
311
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., graph_id: _Optional[str] = ..., metadata_json: _Optional[bytes] = ..., limit: _Optional[int] = ..., offset: _Optional[int] = ..., sort_by: _Optional[_Union[AssistantsSortBy, str]] = ..., sort_order: _Optional[_Union[SortOrder, str]] = ..., select: _Optional[_Iterable[str]] = ..., name: _Optional[str] = ...) -> None: ...
312
+
313
+ class SearchAssistantsResponse(_message.Message):
314
+ __slots__ = ("assistants",)
315
+ ASSISTANTS_FIELD_NUMBER: _ClassVar[int]
316
+ assistants: _containers.RepeatedCompositeFieldContainer[Assistant]
317
+ def __init__(self, assistants: _Optional[_Iterable[_Union[Assistant, _Mapping]]] = ...) -> None: ...
318
+
319
+ class GetAssistantVersionsRequest(_message.Message):
320
+ __slots__ = ("assistant_id", "filters", "metadata_json", "limit", "offset")
321
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
322
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
323
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
324
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
325
+ OFFSET_FIELD_NUMBER: _ClassVar[int]
326
+ assistant_id: str
327
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
328
+ metadata_json: bytes
329
+ limit: int
330
+ offset: int
331
+ def __init__(self, assistant_id: _Optional[str] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., metadata_json: _Optional[bytes] = ..., limit: _Optional[int] = ..., offset: _Optional[int] = ...) -> None: ...
332
+
333
+ class GetAssistantVersionsResponse(_message.Message):
334
+ __slots__ = ("versions",)
335
+ VERSIONS_FIELD_NUMBER: _ClassVar[int]
336
+ versions: _containers.RepeatedCompositeFieldContainer[AssistantVersion]
337
+ def __init__(self, versions: _Optional[_Iterable[_Union[AssistantVersion, _Mapping]]] = ...) -> None: ...
338
+
339
+ class CountAssistantsRequest(_message.Message):
340
+ __slots__ = ("filters", "graph_id", "metadata_json", "name")
341
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
342
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
343
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
344
+ NAME_FIELD_NUMBER: _ClassVar[int]
345
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
346
+ graph_id: str
347
+ metadata_json: bytes
348
+ name: str
349
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., graph_id: _Optional[str] = ..., metadata_json: _Optional[bytes] = ..., name: _Optional[str] = ...) -> None: ...
350
+
351
+ class TruncateRequest(_message.Message):
352
+ __slots__ = ("runs", "threads", "assistants", "checkpointer", "store")
353
+ RUNS_FIELD_NUMBER: _ClassVar[int]
354
+ THREADS_FIELD_NUMBER: _ClassVar[int]
355
+ ASSISTANTS_FIELD_NUMBER: _ClassVar[int]
356
+ CHECKPOINTER_FIELD_NUMBER: _ClassVar[int]
357
+ STORE_FIELD_NUMBER: _ClassVar[int]
358
+ runs: bool
359
+ threads: bool
360
+ assistants: bool
361
+ checkpointer: bool
362
+ store: bool
363
+ def __init__(self, runs: bool = ..., threads: bool = ..., assistants: bool = ..., checkpointer: bool = ..., store: bool = ...) -> None: ...
364
+
365
+ class ThreadTTLConfig(_message.Message):
366
+ __slots__ = ("strategy", "default_ttl", "sweep_interval_minutes")
367
+ STRATEGY_FIELD_NUMBER: _ClassVar[int]
368
+ DEFAULT_TTL_FIELD_NUMBER: _ClassVar[int]
369
+ SWEEP_INTERVAL_MINUTES_FIELD_NUMBER: _ClassVar[int]
370
+ strategy: ThreadTTLStrategy
371
+ default_ttl: float
372
+ sweep_interval_minutes: int
373
+ def __init__(self, strategy: _Optional[_Union[ThreadTTLStrategy, str]] = ..., default_ttl: _Optional[float] = ..., sweep_interval_minutes: _Optional[int] = ...) -> None: ...
374
+
375
+ class Fragment(_message.Message):
376
+ __slots__ = ("value",)
377
+ VALUE_FIELD_NUMBER: _ClassVar[int]
378
+ value: bytes
379
+ def __init__(self, value: _Optional[bytes] = ...) -> None: ...
380
+
381
+ class CheckpointTask(_message.Message):
382
+ __slots__ = ("id", "name", "error", "interrupts_json", "state_json")
383
+ ID_FIELD_NUMBER: _ClassVar[int]
384
+ NAME_FIELD_NUMBER: _ClassVar[int]
385
+ ERROR_FIELD_NUMBER: _ClassVar[int]
386
+ INTERRUPTS_JSON_FIELD_NUMBER: _ClassVar[int]
387
+ STATE_JSON_FIELD_NUMBER: _ClassVar[int]
388
+ id: str
389
+ name: str
390
+ error: str
391
+ interrupts_json: _containers.RepeatedScalarFieldContainer[bytes]
392
+ state_json: bytes
393
+ def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., error: _Optional[str] = ..., interrupts_json: _Optional[_Iterable[bytes]] = ..., state_json: _Optional[bytes] = ...) -> None: ...
394
+
395
+ class CheckpointMetadata(_message.Message):
396
+ __slots__ = ("source", "step", "parents")
397
+ class ParentsEntry(_message.Message):
398
+ __slots__ = ("key", "value")
399
+ KEY_FIELD_NUMBER: _ClassVar[int]
400
+ VALUE_FIELD_NUMBER: _ClassVar[int]
401
+ key: str
402
+ value: str
403
+ def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
404
+ SOURCE_FIELD_NUMBER: _ClassVar[int]
405
+ STEP_FIELD_NUMBER: _ClassVar[int]
406
+ PARENTS_FIELD_NUMBER: _ClassVar[int]
407
+ source: CheckpointSource
408
+ step: int
409
+ parents: _containers.ScalarMap[str, str]
410
+ def __init__(self, source: _Optional[_Union[CheckpointSource, str]] = ..., step: _Optional[int] = ..., parents: _Optional[_Mapping[str, str]] = ...) -> None: ...
411
+
412
+ class CheckpointPayload(_message.Message):
413
+ __slots__ = ("config", "metadata", "values_json", "next", "parent_config", "tasks")
414
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
415
+ METADATA_FIELD_NUMBER: _ClassVar[int]
416
+ VALUES_JSON_FIELD_NUMBER: _ClassVar[int]
417
+ NEXT_FIELD_NUMBER: _ClassVar[int]
418
+ PARENT_CONFIG_FIELD_NUMBER: _ClassVar[int]
419
+ TASKS_FIELD_NUMBER: _ClassVar[int]
420
+ config: _engine_common_pb2.EngineRunnableConfig
421
+ metadata: CheckpointMetadata
422
+ values_json: bytes
423
+ next: _containers.RepeatedScalarFieldContainer[str]
424
+ parent_config: _engine_common_pb2.EngineRunnableConfig
425
+ tasks: _containers.RepeatedCompositeFieldContainer[CheckpointTask]
426
+ def __init__(self, config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., metadata: _Optional[_Union[CheckpointMetadata, _Mapping]] = ..., values_json: _Optional[bytes] = ..., next: _Optional[_Iterable[str]] = ..., parent_config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., tasks: _Optional[_Iterable[_Union[CheckpointTask, _Mapping]]] = ...) -> None: ...
427
+
428
+ class ThreadStatusCheckpoint(_message.Message):
429
+ __slots__ = ("values_json", "next", "interrupts_json")
430
+ VALUES_JSON_FIELD_NUMBER: _ClassVar[int]
431
+ NEXT_FIELD_NUMBER: _ClassVar[int]
432
+ INTERRUPTS_JSON_FIELD_NUMBER: _ClassVar[int]
433
+ values_json: bytes
434
+ next: _containers.RepeatedScalarFieldContainer[str]
435
+ interrupts_json: bytes
436
+ def __init__(self, values_json: _Optional[bytes] = ..., next: _Optional[_Iterable[str]] = ..., interrupts_json: _Optional[bytes] = ...) -> None: ...
437
+
438
+ class Interrupt(_message.Message):
439
+ __slots__ = ("id", "value", "when", "resumable", "ns")
440
+ ID_FIELD_NUMBER: _ClassVar[int]
441
+ VALUE_FIELD_NUMBER: _ClassVar[int]
442
+ WHEN_FIELD_NUMBER: _ClassVar[int]
443
+ RESUMABLE_FIELD_NUMBER: _ClassVar[int]
444
+ NS_FIELD_NUMBER: _ClassVar[int]
445
+ id: str
446
+ value: bytes
447
+ when: str
448
+ resumable: bool
449
+ ns: _containers.RepeatedScalarFieldContainer[str]
450
+ def __init__(self, id: _Optional[str] = ..., value: _Optional[bytes] = ..., when: _Optional[str] = ..., resumable: bool = ..., ns: _Optional[_Iterable[str]] = ...) -> None: ...
451
+
452
+ class Interrupts(_message.Message):
453
+ __slots__ = ("interrupts",)
454
+ INTERRUPTS_FIELD_NUMBER: _ClassVar[int]
455
+ interrupts: _containers.RepeatedCompositeFieldContainer[Interrupt]
456
+ def __init__(self, interrupts: _Optional[_Iterable[_Union[Interrupt, _Mapping]]] = ...) -> None: ...
457
+
458
+ class Thread(_message.Message):
459
+ __slots__ = ("thread_id", "created_at", "updated_at", "metadata", "config", "status", "values", "interrupts", "error")
460
+ class InterruptsEntry(_message.Message):
461
+ __slots__ = ("key", "value")
462
+ KEY_FIELD_NUMBER: _ClassVar[int]
463
+ VALUE_FIELD_NUMBER: _ClassVar[int]
464
+ key: str
465
+ value: Interrupts
466
+ def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[Interrupts, _Mapping]] = ...) -> None: ...
467
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
468
+ CREATED_AT_FIELD_NUMBER: _ClassVar[int]
469
+ UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
470
+ METADATA_FIELD_NUMBER: _ClassVar[int]
471
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
472
+ STATUS_FIELD_NUMBER: _ClassVar[int]
473
+ VALUES_FIELD_NUMBER: _ClassVar[int]
474
+ INTERRUPTS_FIELD_NUMBER: _ClassVar[int]
475
+ ERROR_FIELD_NUMBER: _ClassVar[int]
476
+ thread_id: UUID
477
+ created_at: _timestamp_pb2.Timestamp
478
+ updated_at: _timestamp_pb2.Timestamp
479
+ metadata: Fragment
480
+ config: Fragment
481
+ status: _enum_thread_status_pb2.ThreadStatus
482
+ values: Fragment
483
+ interrupts: _containers.MessageMap[str, Interrupts]
484
+ error: Fragment
485
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., created_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., metadata: _Optional[_Union[Fragment, _Mapping]] = ..., config: _Optional[_Union[Fragment, _Mapping]] = ..., status: _Optional[_Union[_enum_thread_status_pb2.ThreadStatus, str]] = ..., values: _Optional[_Union[Fragment, _Mapping]] = ..., interrupts: _Optional[_Mapping[str, Interrupts]] = ..., error: _Optional[_Union[Fragment, _Mapping]] = ...) -> None: ...
486
+
487
+ class CreateThreadRequest(_message.Message):
488
+ __slots__ = ("thread_id", "filters", "if_exists", "metadata_json", "ttl")
489
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
490
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
491
+ IF_EXISTS_FIELD_NUMBER: _ClassVar[int]
492
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
493
+ TTL_FIELD_NUMBER: _ClassVar[int]
494
+ thread_id: UUID
495
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
496
+ if_exists: OnConflictBehavior
497
+ metadata_json: bytes
498
+ ttl: ThreadTTLConfig
499
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., if_exists: _Optional[_Union[OnConflictBehavior, str]] = ..., metadata_json: _Optional[bytes] = ..., ttl: _Optional[_Union[ThreadTTLConfig, _Mapping]] = ...) -> None: ...
500
+
501
+ class GetThreadRequest(_message.Message):
502
+ __slots__ = ("thread_id", "filters")
503
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
504
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
505
+ thread_id: UUID
506
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
507
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
508
+
509
+ class PatchThreadRequest(_message.Message):
510
+ __slots__ = ("thread_id", "filters", "metadata_json", "ttl")
511
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
512
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
513
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
514
+ TTL_FIELD_NUMBER: _ClassVar[int]
515
+ thread_id: UUID
516
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
517
+ metadata_json: bytes
518
+ ttl: ThreadTTLConfig
519
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., metadata_json: _Optional[bytes] = ..., ttl: _Optional[_Union[ThreadTTLConfig, _Mapping]] = ...) -> None: ...
520
+
521
+ class DeleteThreadRequest(_message.Message):
522
+ __slots__ = ("thread_id", "filters")
523
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
524
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
525
+ thread_id: UUID
526
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
527
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
528
+
529
+ class CopyThreadRequest(_message.Message):
530
+ __slots__ = ("thread_id", "filters")
531
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
532
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
533
+ thread_id: UUID
534
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
535
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
536
+
537
+ class SearchThreadsRequest(_message.Message):
538
+ __slots__ = ("filters", "metadata_json", "values_json", "status", "limit", "offset", "sort_by", "sort_order", "select")
539
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
540
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
541
+ VALUES_JSON_FIELD_NUMBER: _ClassVar[int]
542
+ STATUS_FIELD_NUMBER: _ClassVar[int]
543
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
544
+ OFFSET_FIELD_NUMBER: _ClassVar[int]
545
+ SORT_BY_FIELD_NUMBER: _ClassVar[int]
546
+ SORT_ORDER_FIELD_NUMBER: _ClassVar[int]
547
+ SELECT_FIELD_NUMBER: _ClassVar[int]
548
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
549
+ metadata_json: bytes
550
+ values_json: bytes
551
+ status: _enum_thread_status_pb2.ThreadStatus
552
+ limit: int
553
+ offset: int
554
+ sort_by: ThreadsSortBy
555
+ sort_order: SortOrder
556
+ select: _containers.RepeatedScalarFieldContainer[str]
557
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., metadata_json: _Optional[bytes] = ..., values_json: _Optional[bytes] = ..., status: _Optional[_Union[_enum_thread_status_pb2.ThreadStatus, str]] = ..., limit: _Optional[int] = ..., offset: _Optional[int] = ..., sort_by: _Optional[_Union[ThreadsSortBy, str]] = ..., sort_order: _Optional[_Union[SortOrder, str]] = ..., select: _Optional[_Iterable[str]] = ...) -> None: ...
558
+
559
+ class SearchThreadsResponse(_message.Message):
560
+ __slots__ = ("threads",)
561
+ THREADS_FIELD_NUMBER: _ClassVar[int]
562
+ threads: _containers.RepeatedCompositeFieldContainer[Thread]
563
+ def __init__(self, threads: _Optional[_Iterable[_Union[Thread, _Mapping]]] = ...) -> None: ...
564
+
565
+ class CountThreadsRequest(_message.Message):
566
+ __slots__ = ("filters", "metadata_json", "values_json", "status")
567
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
568
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
569
+ VALUES_JSON_FIELD_NUMBER: _ClassVar[int]
570
+ STATUS_FIELD_NUMBER: _ClassVar[int]
571
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
572
+ metadata_json: bytes
573
+ values_json: bytes
574
+ status: _enum_thread_status_pb2.ThreadStatus
575
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., metadata_json: _Optional[bytes] = ..., values_json: _Optional[bytes] = ..., status: _Optional[_Union[_enum_thread_status_pb2.ThreadStatus, str]] = ...) -> None: ...
576
+
577
+ class SweepThreadsTTLResponse(_message.Message):
578
+ __slots__ = ("expired", "deleted")
579
+ EXPIRED_FIELD_NUMBER: _ClassVar[int]
580
+ DELETED_FIELD_NUMBER: _ClassVar[int]
581
+ expired: int
582
+ deleted: int
583
+ def __init__(self, expired: _Optional[int] = ..., deleted: _Optional[int] = ...) -> None: ...
584
+
585
+ class SweepThreadsTTLRequest(_message.Message):
586
+ __slots__ = ("batch_size", "limit")
587
+ BATCH_SIZE_FIELD_NUMBER: _ClassVar[int]
588
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
589
+ batch_size: int
590
+ limit: int
591
+ def __init__(self, batch_size: _Optional[int] = ..., limit: _Optional[int] = ...) -> None: ...
592
+
593
+ class SetThreadStatusRequest(_message.Message):
594
+ __slots__ = ("thread_id", "checkpoint", "exception_json", "expected_status")
595
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
596
+ CHECKPOINT_FIELD_NUMBER: _ClassVar[int]
597
+ EXCEPTION_JSON_FIELD_NUMBER: _ClassVar[int]
598
+ EXPECTED_STATUS_FIELD_NUMBER: _ClassVar[int]
599
+ thread_id: UUID
600
+ checkpoint: ThreadStatusCheckpoint
601
+ exception_json: bytes
602
+ expected_status: _containers.RepeatedScalarFieldContainer[_enum_thread_status_pb2.ThreadStatus]
603
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., checkpoint: _Optional[_Union[ThreadStatusCheckpoint, _Mapping]] = ..., exception_json: _Optional[bytes] = ..., expected_status: _Optional[_Iterable[_Union[_enum_thread_status_pb2.ThreadStatus, str]]] = ...) -> None: ...
604
+
605
+ class SetThreadJointStatusRequest(_message.Message):
606
+ __slots__ = ("thread_id", "run_id", "run_status", "graph_id", "checkpoint", "exception_json")
607
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
608
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
609
+ RUN_STATUS_FIELD_NUMBER: _ClassVar[int]
610
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
611
+ CHECKPOINT_FIELD_NUMBER: _ClassVar[int]
612
+ EXCEPTION_JSON_FIELD_NUMBER: _ClassVar[int]
613
+ thread_id: UUID
614
+ run_id: UUID
615
+ run_status: str
616
+ graph_id: str
617
+ checkpoint: CheckpointPayload
618
+ exception_json: bytes
619
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., run_id: _Optional[_Union[UUID, _Mapping]] = ..., run_status: _Optional[str] = ..., graph_id: _Optional[str] = ..., checkpoint: _Optional[_Union[CheckpointPayload, _Mapping]] = ..., exception_json: _Optional[bytes] = ...) -> None: ...
620
+
621
+ class StreamThreadRequest(_message.Message):
622
+ __slots__ = ("thread_id", "filters", "last_event_id", "stream_modes")
623
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
624
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
625
+ LAST_EVENT_ID_FIELD_NUMBER: _ClassVar[int]
626
+ STREAM_MODES_FIELD_NUMBER: _ClassVar[int]
627
+ thread_id: UUID
628
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
629
+ last_event_id: str
630
+ stream_modes: _containers.RepeatedScalarFieldContainer[_enum_thread_stream_mode_pb2.ThreadStreamMode]
631
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., last_event_id: _Optional[str] = ..., stream_modes: _Optional[_Iterable[_Union[_enum_thread_stream_mode_pb2.ThreadStreamMode, str]]] = ...) -> None: ...
632
+
633
+ class RunKwargs(_message.Message):
634
+ __slots__ = ("config", "context_json", "input_json", "command_json", "stream_mode", "interrupt_before", "interrupt_after", "webhook", "feedback_keys", "temporary", "subgraphs", "resumable", "checkpoint_during", "durability")
635
+ CONFIG_FIELD_NUMBER: _ClassVar[int]
636
+ CONTEXT_JSON_FIELD_NUMBER: _ClassVar[int]
637
+ INPUT_JSON_FIELD_NUMBER: _ClassVar[int]
638
+ COMMAND_JSON_FIELD_NUMBER: _ClassVar[int]
639
+ STREAM_MODE_FIELD_NUMBER: _ClassVar[int]
640
+ INTERRUPT_BEFORE_FIELD_NUMBER: _ClassVar[int]
641
+ INTERRUPT_AFTER_FIELD_NUMBER: _ClassVar[int]
642
+ WEBHOOK_FIELD_NUMBER: _ClassVar[int]
643
+ FEEDBACK_KEYS_FIELD_NUMBER: _ClassVar[int]
644
+ TEMPORARY_FIELD_NUMBER: _ClassVar[int]
645
+ SUBGRAPHS_FIELD_NUMBER: _ClassVar[int]
646
+ RESUMABLE_FIELD_NUMBER: _ClassVar[int]
647
+ CHECKPOINT_DURING_FIELD_NUMBER: _ClassVar[int]
648
+ DURABILITY_FIELD_NUMBER: _ClassVar[int]
649
+ config: _engine_common_pb2.EngineRunnableConfig
650
+ context_json: bytes
651
+ input_json: bytes
652
+ command_json: bytes
653
+ stream_mode: _enum_stream_mode_pb2.StreamMode
654
+ interrupt_before: _engine_common_pb2.StaticInterruptConfig
655
+ interrupt_after: _engine_common_pb2.StaticInterruptConfig
656
+ webhook: str
657
+ feedback_keys: _containers.RepeatedScalarFieldContainer[str]
658
+ temporary: bool
659
+ subgraphs: bool
660
+ resumable: bool
661
+ checkpoint_during: bool
662
+ durability: str
663
+ def __init__(self, config: _Optional[_Union[_engine_common_pb2.EngineRunnableConfig, _Mapping]] = ..., context_json: _Optional[bytes] = ..., input_json: _Optional[bytes] = ..., command_json: _Optional[bytes] = ..., stream_mode: _Optional[_Union[_enum_stream_mode_pb2.StreamMode, str]] = ..., interrupt_before: _Optional[_Union[_engine_common_pb2.StaticInterruptConfig, _Mapping]] = ..., interrupt_after: _Optional[_Union[_engine_common_pb2.StaticInterruptConfig, _Mapping]] = ..., webhook: _Optional[str] = ..., feedback_keys: _Optional[_Iterable[str]] = ..., temporary: bool = ..., subgraphs: bool = ..., resumable: bool = ..., checkpoint_during: bool = ..., durability: _Optional[str] = ...) -> None: ...
664
+
665
+ class Run(_message.Message):
666
+ __slots__ = ("run_id", "thread_id", "assistant_id", "created_at", "updated_at", "status", "metadata", "kwargs", "multitask_strategy")
667
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
668
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
669
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
670
+ CREATED_AT_FIELD_NUMBER: _ClassVar[int]
671
+ UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
672
+ STATUS_FIELD_NUMBER: _ClassVar[int]
673
+ METADATA_FIELD_NUMBER: _ClassVar[int]
674
+ KWARGS_FIELD_NUMBER: _ClassVar[int]
675
+ MULTITASK_STRATEGY_FIELD_NUMBER: _ClassVar[int]
676
+ run_id: UUID
677
+ thread_id: UUID
678
+ assistant_id: UUID
679
+ created_at: _timestamp_pb2.Timestamp
680
+ updated_at: _timestamp_pb2.Timestamp
681
+ status: _enum_run_status_pb2.RunStatus
682
+ metadata: Fragment
683
+ kwargs: RunKwargs
684
+ multitask_strategy: _enum_multitask_strategy_pb2.MultitaskStrategy
685
+ def __init__(self, run_id: _Optional[_Union[UUID, _Mapping]] = ..., thread_id: _Optional[_Union[UUID, _Mapping]] = ..., assistant_id: _Optional[_Union[UUID, _Mapping]] = ..., created_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., status: _Optional[_Union[_enum_run_status_pb2.RunStatus, str]] = ..., metadata: _Optional[_Union[Fragment, _Mapping]] = ..., kwargs: _Optional[_Union[RunKwargs, _Mapping]] = ..., multitask_strategy: _Optional[_Union[_enum_multitask_strategy_pb2.MultitaskStrategy, str]] = ...) -> None: ...
686
+
687
+ class RunStats(_message.Message):
688
+ __slots__ = ("n_pending", "n_running", "pending_runs_wait_time_max_secs", "pending_runs_wait_time_med_secs", "pending_unblocked_runs_wait_time_max_secs")
689
+ N_PENDING_FIELD_NUMBER: _ClassVar[int]
690
+ N_RUNNING_FIELD_NUMBER: _ClassVar[int]
691
+ PENDING_RUNS_WAIT_TIME_MAX_SECS_FIELD_NUMBER: _ClassVar[int]
692
+ PENDING_RUNS_WAIT_TIME_MED_SECS_FIELD_NUMBER: _ClassVar[int]
693
+ PENDING_UNBLOCKED_RUNS_WAIT_TIME_MAX_SECS_FIELD_NUMBER: _ClassVar[int]
694
+ n_pending: int
695
+ n_running: int
696
+ pending_runs_wait_time_max_secs: float
697
+ pending_runs_wait_time_med_secs: float
698
+ pending_unblocked_runs_wait_time_max_secs: float
699
+ def __init__(self, n_pending: _Optional[int] = ..., n_running: _Optional[int] = ..., pending_runs_wait_time_max_secs: _Optional[float] = ..., pending_runs_wait_time_med_secs: _Optional[float] = ..., pending_unblocked_runs_wait_time_max_secs: _Optional[float] = ...) -> None: ...
700
+
701
+ class NextRunRequest(_message.Message):
702
+ __slots__ = ("wait", "limit")
703
+ WAIT_FIELD_NUMBER: _ClassVar[int]
704
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
705
+ wait: bool
706
+ limit: int
707
+ def __init__(self, wait: bool = ..., limit: _Optional[int] = ...) -> None: ...
708
+
709
+ class RunWithAttempt(_message.Message):
710
+ __slots__ = ("run", "attempt")
711
+ RUN_FIELD_NUMBER: _ClassVar[int]
712
+ ATTEMPT_FIELD_NUMBER: _ClassVar[int]
713
+ run: Run
714
+ attempt: int
715
+ def __init__(self, run: _Optional[_Union[Run, _Mapping]] = ..., attempt: _Optional[int] = ...) -> None: ...
716
+
717
+ class NextRunResponse(_message.Message):
718
+ __slots__ = ("runs",)
719
+ RUNS_FIELD_NUMBER: _ClassVar[int]
720
+ runs: _containers.RepeatedCompositeFieldContainer[RunWithAttempt]
721
+ def __init__(self, runs: _Optional[_Iterable[_Union[RunWithAttempt, _Mapping]]] = ...) -> None: ...
722
+
723
+ class CreateRunRequest(_message.Message):
724
+ __slots__ = ("assistant_id", "kwargs_json", "thread_filters", "assistant_filters", "thread_id", "user_id", "run_id", "status", "metadata_json", "prevent_insert_if_inflight", "multitask_strategy", "if_not_exists", "after_seconds", "thread_ttl")
725
+ ASSISTANT_ID_FIELD_NUMBER: _ClassVar[int]
726
+ KWARGS_JSON_FIELD_NUMBER: _ClassVar[int]
727
+ THREAD_FILTERS_FIELD_NUMBER: _ClassVar[int]
728
+ ASSISTANT_FILTERS_FIELD_NUMBER: _ClassVar[int]
729
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
730
+ USER_ID_FIELD_NUMBER: _ClassVar[int]
731
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
732
+ STATUS_FIELD_NUMBER: _ClassVar[int]
733
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
734
+ PREVENT_INSERT_IF_INFLIGHT_FIELD_NUMBER: _ClassVar[int]
735
+ MULTITASK_STRATEGY_FIELD_NUMBER: _ClassVar[int]
736
+ IF_NOT_EXISTS_FIELD_NUMBER: _ClassVar[int]
737
+ AFTER_SECONDS_FIELD_NUMBER: _ClassVar[int]
738
+ THREAD_TTL_FIELD_NUMBER: _ClassVar[int]
739
+ assistant_id: UUID
740
+ kwargs_json: bytes
741
+ thread_filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
742
+ assistant_filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
743
+ thread_id: UUID
744
+ user_id: str
745
+ run_id: UUID
746
+ status: _enum_run_status_pb2.RunStatus
747
+ metadata_json: bytes
748
+ prevent_insert_if_inflight: bool
749
+ multitask_strategy: _enum_multitask_strategy_pb2.MultitaskStrategy
750
+ if_not_exists: CreateRunBehavior
751
+ after_seconds: int
752
+ thread_ttl: ThreadTTLConfig
753
+ def __init__(self, assistant_id: _Optional[_Union[UUID, _Mapping]] = ..., kwargs_json: _Optional[bytes] = ..., thread_filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., assistant_filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., thread_id: _Optional[_Union[UUID, _Mapping]] = ..., user_id: _Optional[str] = ..., run_id: _Optional[_Union[UUID, _Mapping]] = ..., status: _Optional[_Union[_enum_run_status_pb2.RunStatus, str]] = ..., metadata_json: _Optional[bytes] = ..., prevent_insert_if_inflight: bool = ..., multitask_strategy: _Optional[_Union[_enum_multitask_strategy_pb2.MultitaskStrategy, str]] = ..., if_not_exists: _Optional[_Union[CreateRunBehavior, str]] = ..., after_seconds: _Optional[int] = ..., thread_ttl: _Optional[_Union[ThreadTTLConfig, _Mapping]] = ...) -> None: ...
754
+
755
+ class GetRunRequest(_message.Message):
756
+ __slots__ = ("run_id", "thread_id", "filters")
757
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
758
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
759
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
760
+ run_id: UUID
761
+ thread_id: UUID
762
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
763
+ def __init__(self, run_id: _Optional[_Union[UUID, _Mapping]] = ..., thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
764
+
765
+ class DeleteRunRequest(_message.Message):
766
+ __slots__ = ("run_id", "thread_id", "filters")
767
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
768
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
769
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
770
+ run_id: UUID
771
+ thread_id: UUID
772
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
773
+ def __init__(self, run_id: _Optional[_Union[UUID, _Mapping]] = ..., thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ...) -> None: ...
774
+
775
+ class CancelRunIdsTarget(_message.Message):
776
+ __slots__ = ("thread_id", "run_ids")
777
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
778
+ RUN_IDS_FIELD_NUMBER: _ClassVar[int]
779
+ thread_id: UUID
780
+ run_ids: _containers.RepeatedCompositeFieldContainer[UUID]
781
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., run_ids: _Optional[_Iterable[_Union[UUID, _Mapping]]] = ...) -> None: ...
782
+
783
+ class CancelStatusTarget(_message.Message):
784
+ __slots__ = ("status",)
785
+ STATUS_FIELD_NUMBER: _ClassVar[int]
786
+ status: CancelRunStatus
787
+ def __init__(self, status: _Optional[_Union[CancelRunStatus, str]] = ...) -> None: ...
788
+
789
+ class CancelRunRequest(_message.Message):
790
+ __slots__ = ("filters", "run_ids", "status", "action")
791
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
792
+ RUN_IDS_FIELD_NUMBER: _ClassVar[int]
793
+ STATUS_FIELD_NUMBER: _ClassVar[int]
794
+ ACTION_FIELD_NUMBER: _ClassVar[int]
795
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
796
+ run_ids: CancelRunIdsTarget
797
+ status: CancelStatusTarget
798
+ action: _enum_cancel_run_action_pb2.CancelRunAction
799
+ def __init__(self, filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., run_ids: _Optional[_Union[CancelRunIdsTarget, _Mapping]] = ..., status: _Optional[_Union[CancelStatusTarget, _Mapping]] = ..., action: _Optional[_Union[_enum_cancel_run_action_pb2.CancelRunAction, str]] = ...) -> None: ...
800
+
801
+ class SearchRunsRequest(_message.Message):
802
+ __slots__ = ("thread_id", "filters", "limit", "offset", "status", "select")
803
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
804
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
805
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
806
+ OFFSET_FIELD_NUMBER: _ClassVar[int]
807
+ STATUS_FIELD_NUMBER: _ClassVar[int]
808
+ SELECT_FIELD_NUMBER: _ClassVar[int]
809
+ thread_id: UUID
810
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
811
+ limit: int
812
+ offset: int
813
+ status: _enum_run_status_pb2.RunStatus
814
+ select: _containers.RepeatedScalarFieldContainer[str]
815
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., limit: _Optional[int] = ..., offset: _Optional[int] = ..., status: _Optional[_Union[_enum_run_status_pb2.RunStatus, str]] = ..., select: _Optional[_Iterable[str]] = ...) -> None: ...
816
+
817
+ class SearchRunsResponse(_message.Message):
818
+ __slots__ = ("runs",)
819
+ RUNS_FIELD_NUMBER: _ClassVar[int]
820
+ runs: _containers.RepeatedCompositeFieldContainer[Run]
821
+ def __init__(self, runs: _Optional[_Iterable[_Union[Run, _Mapping]]] = ...) -> None: ...
822
+
823
+ class SetRunStatusRequest(_message.Message):
824
+ __slots__ = ("run_id", "status")
825
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
826
+ STATUS_FIELD_NUMBER: _ClassVar[int]
827
+ run_id: UUID
828
+ status: _enum_run_status_pb2.RunStatus
829
+ def __init__(self, run_id: _Optional[_Union[UUID, _Mapping]] = ..., status: _Optional[_Union[_enum_run_status_pb2.RunStatus, str]] = ...) -> None: ...
830
+
831
+ class SweepRunsResponse(_message.Message):
832
+ __slots__ = ("run_ids",)
833
+ RUN_IDS_FIELD_NUMBER: _ClassVar[int]
834
+ run_ids: _containers.RepeatedCompositeFieldContainer[UUID]
835
+ def __init__(self, run_ids: _Optional[_Iterable[_Union[UUID, _Mapping]]] = ...) -> None: ...
836
+
837
+ class CountRunsRequest(_message.Message):
838
+ __slots__ = ("thread_id", "statuses")
839
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
840
+ STATUSES_FIELD_NUMBER: _ClassVar[int]
841
+ thread_id: UUID
842
+ statuses: _containers.RepeatedScalarFieldContainer[str]
843
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., statuses: _Optional[_Iterable[str]] = ...) -> None: ...
844
+
845
+ class StreamRunRequest(_message.Message):
846
+ __slots__ = ("thread_id", "run_id", "filters", "last_event_id", "stream_modes", "ignore_run_not_found", "cancel_on_disconnect")
847
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
848
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
849
+ FILTERS_FIELD_NUMBER: _ClassVar[int]
850
+ LAST_EVENT_ID_FIELD_NUMBER: _ClassVar[int]
851
+ STREAM_MODES_FIELD_NUMBER: _ClassVar[int]
852
+ IGNORE_RUN_NOT_FOUND_FIELD_NUMBER: _ClassVar[int]
853
+ CANCEL_ON_DISCONNECT_FIELD_NUMBER: _ClassVar[int]
854
+ thread_id: UUID
855
+ run_id: UUID
856
+ filters: _containers.RepeatedCompositeFieldContainer[AuthFilter]
857
+ last_event_id: str
858
+ stream_modes: _containers.RepeatedScalarFieldContainer[_enum_stream_mode_pb2.StreamMode]
859
+ ignore_run_not_found: bool
860
+ cancel_on_disconnect: bool
861
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ..., run_id: _Optional[_Union[UUID, _Mapping]] = ..., filters: _Optional[_Iterable[_Union[AuthFilter, _Mapping]]] = ..., last_event_id: _Optional[str] = ..., stream_modes: _Optional[_Iterable[_Union[_enum_stream_mode_pb2.StreamMode, str]]] = ..., ignore_run_not_found: bool = ..., cancel_on_disconnect: bool = ...) -> None: ...
862
+
863
+ class EnterRunRequest(_message.Message):
864
+ __slots__ = ("run_id", "thread_id", "resumable")
865
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
866
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
867
+ RESUMABLE_FIELD_NUMBER: _ClassVar[int]
868
+ run_id: UUID
869
+ thread_id: UUID
870
+ resumable: bool
871
+ def __init__(self, run_id: _Optional[_Union[UUID, _Mapping]] = ..., thread_id: _Optional[_Union[UUID, _Mapping]] = ..., resumable: bool = ...) -> None: ...
872
+
873
+ class MarkRunDoneRequest(_message.Message):
874
+ __slots__ = ("run_id", "thread_id", "resumable")
875
+ RUN_ID_FIELD_NUMBER: _ClassVar[int]
876
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
877
+ RESUMABLE_FIELD_NUMBER: _ClassVar[int]
878
+ run_id: UUID
879
+ thread_id: UUID
880
+ resumable: bool
881
+ def __init__(self, run_id: _Optional[_Union[UUID, _Mapping]] = ..., thread_id: _Optional[_Union[UUID, _Mapping]] = ..., resumable: bool = ...) -> None: ...
882
+
883
+ class GetGraphIDRequest(_message.Message):
884
+ __slots__ = ("thread_id",)
885
+ THREAD_ID_FIELD_NUMBER: _ClassVar[int]
886
+ thread_id: UUID
887
+ def __init__(self, thread_id: _Optional[_Union[UUID, _Mapping]] = ...) -> None: ...
888
+
889
+ class GetGraphIDResponse(_message.Message):
890
+ __slots__ = ("graph_id",)
891
+ GRAPH_ID_FIELD_NUMBER: _ClassVar[int]
892
+ graph_id: str
893
+ def __init__(self, graph_id: _Optional[str] = ...) -> None: ...
894
+
895
+ class CreateRunResponse(_message.Message):
896
+ __slots__ = ("runs",)
897
+ RUNS_FIELD_NUMBER: _ClassVar[int]
898
+ runs: _containers.RepeatedCompositeFieldContainer[Run]
899
+ def __init__(self, runs: _Optional[_Iterable[_Union[Run, _Mapping]]] = ...) -> None: ...
900
+
901
+ class ControlEvent(_message.Message):
902
+ __slots__ = ("action",)
903
+ ACTION_FIELD_NUMBER: _ClassVar[int]
904
+ action: _enum_control_signal_pb2.ControlSignal
905
+ def __init__(self, action: _Optional[_Union[_enum_control_signal_pb2.ControlSignal, str]] = ...) -> None: ...