nominal-api 0.589.0__py3-none-any.whl → 0.590.0__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.

Potentially problematic release.


This version of nominal-api might be problematic. Click here for more details.

nominal_api/_impl.py CHANGED
@@ -943,17 +943,19 @@ class attachments_api_CreateAttachmentRequest(ConjureBeanType):
943
943
  'title': ConjureFieldDefinition('title', str),
944
944
  'description': ConjureFieldDefinition('description', str),
945
945
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
946
- 'labels': ConjureFieldDefinition('labels', List[api_Label])
946
+ 'labels': ConjureFieldDefinition('labels', List[api_Label]),
947
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
947
948
  }
948
949
 
949
- __slots__: List[str] = ['_s3_path', '_title', '_description', '_properties', '_labels']
950
+ __slots__: List[str] = ['_s3_path', '_title', '_description', '_properties', '_labels', '_workspace']
950
951
 
951
- def __init__(self, description: str, labels: List[str], properties: Dict[str, str], s3_path: str, title: str) -> None:
952
+ def __init__(self, description: str, labels: List[str], properties: Dict[str, str], s3_path: str, title: str, workspace: Optional[str] = None) -> None:
952
953
  self._s3_path = s3_path
953
954
  self._title = title
954
955
  self._description = description
955
956
  self._properties = properties
956
957
  self._labels = labels
958
+ self._workspace = workspace
957
959
 
958
960
  @builtins.property
959
961
  def s3_path(self) -> str:
@@ -975,6 +977,15 @@ class attachments_api_CreateAttachmentRequest(ConjureBeanType):
975
977
  def labels(self) -> List[str]:
976
978
  return self._labels
977
979
 
980
+ @builtins.property
981
+ def workspace(self) -> Optional[str]:
982
+ """
983
+ The workspace in which to create the attachment. If not provided, the attachment will be created in
984
+ the default workspace for the user's organization, if the default workspace for the
985
+ organization is configured.
986
+ """
987
+ return self._workspace
988
+
978
989
 
979
990
  attachments_api_CreateAttachmentRequest.__name__ = "CreateAttachmentRequest"
980
991
  attachments_api_CreateAttachmentRequest.__qualname__ = "CreateAttachmentRequest"
@@ -1033,6 +1044,7 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1033
1044
  _property: Optional["api_Property"] = None
1034
1045
  _and_: Optional[List["attachments_api_SearchAttachmentsQuery"]] = None
1035
1046
  _or_: Optional[List["attachments_api_SearchAttachmentsQuery"]] = None
1047
+ _workspace: Optional[str] = None
1036
1048
 
1037
1049
  @builtins.classmethod
1038
1050
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -1041,7 +1053,8 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1041
1053
  'label': ConjureFieldDefinition('label', api_Label),
1042
1054
  'property': ConjureFieldDefinition('property', api_Property),
1043
1055
  'and_': ConjureFieldDefinition('and', List[attachments_api_SearchAttachmentsQuery]),
1044
- 'or_': ConjureFieldDefinition('or', List[attachments_api_SearchAttachmentsQuery])
1056
+ 'or_': ConjureFieldDefinition('or', List[attachments_api_SearchAttachmentsQuery]),
1057
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
1045
1058
  }
1046
1059
 
1047
1060
  def __init__(
@@ -1051,10 +1064,11 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1051
1064
  property: Optional["api_Property"] = None,
1052
1065
  and_: Optional[List["attachments_api_SearchAttachmentsQuery"]] = None,
1053
1066
  or_: Optional[List["attachments_api_SearchAttachmentsQuery"]] = None,
1067
+ workspace: Optional[str] = None,
1054
1068
  type_of_union: Optional[str] = None
1055
1069
  ) -> None:
1056
1070
  if type_of_union is None:
1057
- if (search_text is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) != 1:
1071
+ if (search_text is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
1058
1072
  raise ValueError('a union must contain a single member')
1059
1073
 
1060
1074
  if search_text is not None:
@@ -1072,6 +1086,9 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1072
1086
  if or_ is not None:
1073
1087
  self._or_ = or_
1074
1088
  self._type = 'or'
1089
+ if workspace is not None:
1090
+ self._workspace = workspace
1091
+ self._type = 'workspace'
1075
1092
 
1076
1093
  elif type_of_union == 'searchText':
1077
1094
  if search_text is None:
@@ -1098,6 +1115,11 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1098
1115
  raise ValueError('a union value must not be None')
1099
1116
  self._or_ = or_
1100
1117
  self._type = 'or'
1118
+ elif type_of_union == 'workspace':
1119
+ if workspace is None:
1120
+ raise ValueError('a union value must not be None')
1121
+ self._workspace = workspace
1122
+ self._type = 'workspace'
1101
1123
 
1102
1124
  @builtins.property
1103
1125
  def search_text(self) -> Optional[str]:
@@ -1119,6 +1141,10 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1119
1141
  def or_(self) -> Optional[List["attachments_api_SearchAttachmentsQuery"]]:
1120
1142
  return self._or_
1121
1143
 
1144
+ @builtins.property
1145
+ def workspace(self) -> Optional[str]:
1146
+ return self._workspace
1147
+
1122
1148
  def accept(self, visitor) -> Any:
1123
1149
  if not isinstance(visitor, attachments_api_SearchAttachmentsQueryVisitor):
1124
1150
  raise ValueError('{} is not an instance of attachments_api_SearchAttachmentsQueryVisitor'.format(visitor.__class__.__name__))
@@ -1132,6 +1158,8 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1132
1158
  return visitor._and(self.and_)
1133
1159
  if self._type == 'or' and self.or_ is not None:
1134
1160
  return visitor._or(self.or_)
1161
+ if self._type == 'workspace' and self.workspace is not None:
1162
+ return visitor._workspace(self.workspace)
1135
1163
 
1136
1164
 
1137
1165
  attachments_api_SearchAttachmentsQuery.__name__ = "SearchAttachmentsQuery"
@@ -1161,6 +1189,10 @@ class attachments_api_SearchAttachmentsQueryVisitor:
1161
1189
  def _or(self, or_: List["attachments_api_SearchAttachmentsQuery"]) -> Any:
1162
1190
  pass
1163
1191
 
1192
+ @abstractmethod
1193
+ def _workspace(self, workspace: str) -> Any:
1194
+ pass
1195
+
1164
1196
 
1165
1197
  attachments_api_SearchAttachmentsQueryVisitor.__name__ = "SearchAttachmentsQueryVisitor"
1166
1198
  attachments_api_SearchAttachmentsQueryVisitor.__qualname__ = "SearchAttachmentsQueryVisitor"
@@ -5983,6 +6015,7 @@ class event_SearchQuery(ConjureUnionType):
5983
6015
  _property: Optional["api_Property"] = None
5984
6016
  _and_: Optional[List["event_SearchQuery"]] = None
5985
6017
  _or_: Optional[List["event_SearchQuery"]] = None
6018
+ _workspace: Optional[str] = None
5986
6019
 
5987
6020
  @builtins.classmethod
5988
6021
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -5994,7 +6027,8 @@ class event_SearchQuery(ConjureUnionType):
5994
6027
  'label': ConjureFieldDefinition('label', api_Label),
5995
6028
  'property': ConjureFieldDefinition('property', api_Property),
5996
6029
  'and_': ConjureFieldDefinition('and', List[event_SearchQuery]),
5997
- 'or_': ConjureFieldDefinition('or', List[event_SearchQuery])
6030
+ 'or_': ConjureFieldDefinition('or', List[event_SearchQuery]),
6031
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
5998
6032
  }
5999
6033
 
6000
6034
  def __init__(
@@ -6007,10 +6041,11 @@ class event_SearchQuery(ConjureUnionType):
6007
6041
  property: Optional["api_Property"] = None,
6008
6042
  and_: Optional[List["event_SearchQuery"]] = None,
6009
6043
  or_: Optional[List["event_SearchQuery"]] = None,
6044
+ workspace: Optional[str] = None,
6010
6045
  type_of_union: Optional[str] = None
6011
6046
  ) -> None:
6012
6047
  if type_of_union is None:
6013
- if (search_text is not None) + (after is not None) + (before is not None) + (asset is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) != 1:
6048
+ if (search_text is not None) + (after is not None) + (before is not None) + (asset is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
6014
6049
  raise ValueError('a union must contain a single member')
6015
6050
 
6016
6051
  if search_text is not None:
@@ -6037,6 +6072,9 @@ class event_SearchQuery(ConjureUnionType):
6037
6072
  if or_ is not None:
6038
6073
  self._or_ = or_
6039
6074
  self._type = 'or'
6075
+ if workspace is not None:
6076
+ self._workspace = workspace
6077
+ self._type = 'workspace'
6040
6078
 
6041
6079
  elif type_of_union == 'searchText':
6042
6080
  if search_text is None:
@@ -6078,6 +6116,11 @@ class event_SearchQuery(ConjureUnionType):
6078
6116
  raise ValueError('a union value must not be None')
6079
6117
  self._or_ = or_
6080
6118
  self._type = 'or'
6119
+ elif type_of_union == 'workspace':
6120
+ if workspace is None:
6121
+ raise ValueError('a union value must not be None')
6122
+ self._workspace = workspace
6123
+ self._type = 'workspace'
6081
6124
 
6082
6125
  @builtins.property
6083
6126
  def search_text(self) -> Optional[str]:
@@ -6117,6 +6160,10 @@ class event_SearchQuery(ConjureUnionType):
6117
6160
  def or_(self) -> Optional[List["event_SearchQuery"]]:
6118
6161
  return self._or_
6119
6162
 
6163
+ @builtins.property
6164
+ def workspace(self) -> Optional[str]:
6165
+ return self._workspace
6166
+
6120
6167
  def accept(self, visitor) -> Any:
6121
6168
  if not isinstance(visitor, event_SearchQueryVisitor):
6122
6169
  raise ValueError('{} is not an instance of event_SearchQueryVisitor'.format(visitor.__class__.__name__))
@@ -6136,6 +6183,8 @@ class event_SearchQuery(ConjureUnionType):
6136
6183
  return visitor._and(self.and_)
6137
6184
  if self._type == 'or' and self.or_ is not None:
6138
6185
  return visitor._or(self.or_)
6186
+ if self._type == 'workspace' and self.workspace is not None:
6187
+ return visitor._workspace(self.workspace)
6139
6188
 
6140
6189
 
6141
6190
  event_SearchQuery.__name__ = "SearchQuery"
@@ -6177,6 +6226,10 @@ class event_SearchQueryVisitor:
6177
6226
  def _or(self, or_: List["event_SearchQuery"]) -> Any:
6178
6227
  pass
6179
6228
 
6229
+ @abstractmethod
6230
+ def _workspace(self, workspace: str) -> Any:
6231
+ pass
6232
+
6180
6233
 
6181
6234
  event_SearchQueryVisitor.__name__ = "SearchQueryVisitor"
6182
6235
  event_SearchQueryVisitor.__qualname__ = "SearchQueryVisitor"
@@ -10010,6 +10063,382 @@ ingest_api_VideoTimestampManifestVisitor.__qualname__ = "VideoTimestampManifestV
10010
10063
  ingest_api_VideoTimestampManifestVisitor.__module__ = "nominal_api.ingest_api"
10011
10064
 
10012
10065
 
10066
+ class persistent_compute_api_ClientMessage(ConjureUnionType):
10067
+ _subscribe: Optional[Dict[str, "persistent_compute_api_StreamingComputeNodeSubscription"]] = None
10068
+ _unsubscribe: Optional[List[str]] = None
10069
+
10070
+ @builtins.classmethod
10071
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
10072
+ return {
10073
+ 'subscribe': ConjureFieldDefinition('subscribe', Dict[persistent_compute_api_SubscriptionId, persistent_compute_api_StreamingComputeNodeSubscription]),
10074
+ 'unsubscribe': ConjureFieldDefinition('unsubscribe', List[persistent_compute_api_SubscriptionId])
10075
+ }
10076
+
10077
+ def __init__(
10078
+ self,
10079
+ subscribe: Optional[Dict[str, "persistent_compute_api_StreamingComputeNodeSubscription"]] = None,
10080
+ unsubscribe: Optional[List[str]] = None,
10081
+ type_of_union: Optional[str] = None
10082
+ ) -> None:
10083
+ if type_of_union is None:
10084
+ if (subscribe is not None) + (unsubscribe is not None) != 1:
10085
+ raise ValueError('a union must contain a single member')
10086
+
10087
+ if subscribe is not None:
10088
+ self._subscribe = subscribe
10089
+ self._type = 'subscribe'
10090
+ if unsubscribe is not None:
10091
+ self._unsubscribe = unsubscribe
10092
+ self._type = 'unsubscribe'
10093
+
10094
+ elif type_of_union == 'subscribe':
10095
+ if subscribe is None:
10096
+ raise ValueError('a union value must not be None')
10097
+ self._subscribe = subscribe
10098
+ self._type = 'subscribe'
10099
+ elif type_of_union == 'unsubscribe':
10100
+ if unsubscribe is None:
10101
+ raise ValueError('a union value must not be None')
10102
+ self._unsubscribe = unsubscribe
10103
+ self._type = 'unsubscribe'
10104
+
10105
+ @builtins.property
10106
+ def subscribe(self) -> Optional[Dict[str, "persistent_compute_api_StreamingComputeNodeSubscription"]]:
10107
+ """
10108
+ Subscribes to all of the given `StreamingComputeNodeSubscription`s. For identifying the subscriptions and
10109
+ their results a `SubscriptionId` has to be passed, which should be a unique identifier.
10110
+ If the subscription is invalid (e.g., window too big for in-memory compute or in-memory compute not
10111
+ enabled for datasource) a `ServerMessage::subscriptionError` will be sent back. Otherwise, updated results
10112
+ for the subscription will be sent periodically via `ServerMessage::subscriptionUpdate`.
10113
+ """
10114
+ return self._subscribe
10115
+
10116
+ @builtins.property
10117
+ def unsubscribe(self) -> Optional[List[str]]:
10118
+ return self._unsubscribe
10119
+
10120
+ def accept(self, visitor) -> Any:
10121
+ if not isinstance(visitor, persistent_compute_api_ClientMessageVisitor):
10122
+ raise ValueError('{} is not an instance of persistent_compute_api_ClientMessageVisitor'.format(visitor.__class__.__name__))
10123
+ if self._type == 'subscribe' and self.subscribe is not None:
10124
+ return visitor._subscribe(self.subscribe)
10125
+ if self._type == 'unsubscribe' and self.unsubscribe is not None:
10126
+ return visitor._unsubscribe(self.unsubscribe)
10127
+
10128
+
10129
+ persistent_compute_api_ClientMessage.__name__ = "ClientMessage"
10130
+ persistent_compute_api_ClientMessage.__qualname__ = "ClientMessage"
10131
+ persistent_compute_api_ClientMessage.__module__ = "nominal_api.persistent_compute_api"
10132
+
10133
+
10134
+ class persistent_compute_api_ClientMessageVisitor:
10135
+
10136
+ @abstractmethod
10137
+ def _subscribe(self, subscribe: Dict[str, "persistent_compute_api_StreamingComputeNodeSubscription"]) -> Any:
10138
+ pass
10139
+
10140
+ @abstractmethod
10141
+ def _unsubscribe(self, unsubscribe: List[str]) -> Any:
10142
+ pass
10143
+
10144
+
10145
+ persistent_compute_api_ClientMessageVisitor.__name__ = "ClientMessageVisitor"
10146
+ persistent_compute_api_ClientMessageVisitor.__qualname__ = "ClientMessageVisitor"
10147
+ persistent_compute_api_ClientMessageVisitor.__module__ = "nominal_api.persistent_compute_api"
10148
+
10149
+
10150
+ class persistent_compute_api_FullResult(ConjureBeanType):
10151
+
10152
+ @builtins.classmethod
10153
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10154
+ return {
10155
+ 'subscription_id': ConjureFieldDefinition('subscriptionId', persistent_compute_api_SubscriptionId),
10156
+ 'result': ConjureFieldDefinition('result', scout_compute_api_ComputeWithUnitsResult)
10157
+ }
10158
+
10159
+ __slots__: List[str] = ['_subscription_id', '_result']
10160
+
10161
+ def __init__(self, result: "scout_compute_api_ComputeWithUnitsResult", subscription_id: str) -> None:
10162
+ self._subscription_id = subscription_id
10163
+ self._result = result
10164
+
10165
+ @builtins.property
10166
+ def subscription_id(self) -> str:
10167
+ return self._subscription_id
10168
+
10169
+ @builtins.property
10170
+ def result(self) -> "scout_compute_api_ComputeWithUnitsResult":
10171
+ return self._result
10172
+
10173
+
10174
+ persistent_compute_api_FullResult.__name__ = "FullResult"
10175
+ persistent_compute_api_FullResult.__qualname__ = "FullResult"
10176
+ persistent_compute_api_FullResult.__module__ = "nominal_api.persistent_compute_api"
10177
+
10178
+
10179
+ class persistent_compute_api_ServerMessage(ConjureUnionType):
10180
+ _subscription_update: Optional["persistent_compute_api_SubscriptionUpdate"] = None
10181
+ _subscription_error: Optional["persistent_compute_api_SubscriptionError"] = None
10182
+
10183
+ @builtins.classmethod
10184
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
10185
+ return {
10186
+ 'subscription_update': ConjureFieldDefinition('subscriptionUpdate', persistent_compute_api_SubscriptionUpdate),
10187
+ 'subscription_error': ConjureFieldDefinition('subscriptionError', persistent_compute_api_SubscriptionError)
10188
+ }
10189
+
10190
+ def __init__(
10191
+ self,
10192
+ subscription_update: Optional["persistent_compute_api_SubscriptionUpdate"] = None,
10193
+ subscription_error: Optional["persistent_compute_api_SubscriptionError"] = None,
10194
+ type_of_union: Optional[str] = None
10195
+ ) -> None:
10196
+ if type_of_union is None:
10197
+ if (subscription_update is not None) + (subscription_error is not None) != 1:
10198
+ raise ValueError('a union must contain a single member')
10199
+
10200
+ if subscription_update is not None:
10201
+ self._subscription_update = subscription_update
10202
+ self._type = 'subscriptionUpdate'
10203
+ if subscription_error is not None:
10204
+ self._subscription_error = subscription_error
10205
+ self._type = 'subscriptionError'
10206
+
10207
+ elif type_of_union == 'subscriptionUpdate':
10208
+ if subscription_update is None:
10209
+ raise ValueError('a union value must not be None')
10210
+ self._subscription_update = subscription_update
10211
+ self._type = 'subscriptionUpdate'
10212
+ elif type_of_union == 'subscriptionError':
10213
+ if subscription_error is None:
10214
+ raise ValueError('a union value must not be None')
10215
+ self._subscription_error = subscription_error
10216
+ self._type = 'subscriptionError'
10217
+
10218
+ @builtins.property
10219
+ def subscription_update(self) -> Optional["persistent_compute_api_SubscriptionUpdate"]:
10220
+ return self._subscription_update
10221
+
10222
+ @builtins.property
10223
+ def subscription_error(self) -> Optional["persistent_compute_api_SubscriptionError"]:
10224
+ return self._subscription_error
10225
+
10226
+ def accept(self, visitor) -> Any:
10227
+ if not isinstance(visitor, persistent_compute_api_ServerMessageVisitor):
10228
+ raise ValueError('{} is not an instance of persistent_compute_api_ServerMessageVisitor'.format(visitor.__class__.__name__))
10229
+ if self._type == 'subscriptionUpdate' and self.subscription_update is not None:
10230
+ return visitor._subscription_update(self.subscription_update)
10231
+ if self._type == 'subscriptionError' and self.subscription_error is not None:
10232
+ return visitor._subscription_error(self.subscription_error)
10233
+
10234
+
10235
+ persistent_compute_api_ServerMessage.__name__ = "ServerMessage"
10236
+ persistent_compute_api_ServerMessage.__qualname__ = "ServerMessage"
10237
+ persistent_compute_api_ServerMessage.__module__ = "nominal_api.persistent_compute_api"
10238
+
10239
+
10240
+ class persistent_compute_api_ServerMessageVisitor:
10241
+
10242
+ @abstractmethod
10243
+ def _subscription_update(self, subscription_update: "persistent_compute_api_SubscriptionUpdate") -> Any:
10244
+ pass
10245
+
10246
+ @abstractmethod
10247
+ def _subscription_error(self, subscription_error: "persistent_compute_api_SubscriptionError") -> Any:
10248
+ pass
10249
+
10250
+
10251
+ persistent_compute_api_ServerMessageVisitor.__name__ = "ServerMessageVisitor"
10252
+ persistent_compute_api_ServerMessageVisitor.__qualname__ = "ServerMessageVisitor"
10253
+ persistent_compute_api_ServerMessageVisitor.__module__ = "nominal_api.persistent_compute_api"
10254
+
10255
+
10256
+ class persistent_compute_api_StreamingComputeNodeRequest(ConjureBeanType):
10257
+ """
10258
+ A templatized version of `ComputeNodeRequest` where the end of the range will track the current time and
10259
+ the start of the range tracks `windowWidth` time ago.
10260
+ """
10261
+
10262
+ @builtins.classmethod
10263
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10264
+ return {
10265
+ 'node': ConjureFieldDefinition('node', scout_compute_api_ComputableNode),
10266
+ 'window_width': ConjureFieldDefinition('windowWidth', scout_run_api_Duration),
10267
+ 'context': ConjureFieldDefinition('context', scout_compute_api_Context)
10268
+ }
10269
+
10270
+ __slots__: List[str] = ['_node', '_window_width', '_context']
10271
+
10272
+ def __init__(self, context: "scout_compute_api_Context", node: "scout_compute_api_ComputableNode", window_width: "scout_run_api_Duration") -> None:
10273
+ self._node = node
10274
+ self._window_width = window_width
10275
+ self._context = context
10276
+
10277
+ @builtins.property
10278
+ def node(self) -> "scout_compute_api_ComputableNode":
10279
+ return self._node
10280
+
10281
+ @builtins.property
10282
+ def window_width(self) -> "scout_run_api_Duration":
10283
+ return self._window_width
10284
+
10285
+ @builtins.property
10286
+ def context(self) -> "scout_compute_api_Context":
10287
+ return self._context
10288
+
10289
+
10290
+ persistent_compute_api_StreamingComputeNodeRequest.__name__ = "StreamingComputeNodeRequest"
10291
+ persistent_compute_api_StreamingComputeNodeRequest.__qualname__ = "StreamingComputeNodeRequest"
10292
+ persistent_compute_api_StreamingComputeNodeRequest.__module__ = "nominal_api.persistent_compute_api"
10293
+
10294
+
10295
+ class persistent_compute_api_StreamingComputeNodeSubscription(ConjureBeanType):
10296
+
10297
+ @builtins.classmethod
10298
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10299
+ return {
10300
+ 'compute_request': ConjureFieldDefinition('computeRequest', persistent_compute_api_StreamingComputeNodeRequest),
10301
+ 'subscription_options': ConjureFieldDefinition('subscriptionOptions', persistent_compute_api_SubscriptionOptions)
10302
+ }
10303
+
10304
+ __slots__: List[str] = ['_compute_request', '_subscription_options']
10305
+
10306
+ def __init__(self, compute_request: "persistent_compute_api_StreamingComputeNodeRequest", subscription_options: "persistent_compute_api_SubscriptionOptions") -> None:
10307
+ self._compute_request = compute_request
10308
+ self._subscription_options = subscription_options
10309
+
10310
+ @builtins.property
10311
+ def compute_request(self) -> "persistent_compute_api_StreamingComputeNodeRequest":
10312
+ return self._compute_request
10313
+
10314
+ @builtins.property
10315
+ def subscription_options(self) -> "persistent_compute_api_SubscriptionOptions":
10316
+ return self._subscription_options
10317
+
10318
+
10319
+ persistent_compute_api_StreamingComputeNodeSubscription.__name__ = "StreamingComputeNodeSubscription"
10320
+ persistent_compute_api_StreamingComputeNodeSubscription.__qualname__ = "StreamingComputeNodeSubscription"
10321
+ persistent_compute_api_StreamingComputeNodeSubscription.__module__ = "nominal_api.persistent_compute_api"
10322
+
10323
+
10324
+ class persistent_compute_api_SubscriptionError(ConjureBeanType):
10325
+ """
10326
+ This will be sent if there is an error creating a subscription specified in `ClientMessage::subscribe`.
10327
+ Equivalent to throwing a 400 in a REST endpoint.
10328
+ """
10329
+
10330
+ @builtins.classmethod
10331
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10332
+ return {
10333
+ 'subscription_id': ConjureFieldDefinition('subscriptionId', persistent_compute_api_SubscriptionId),
10334
+ 'serializable_error': ConjureFieldDefinition('serializableError', api_SerializableError)
10335
+ }
10336
+
10337
+ __slots__: List[str] = ['_subscription_id', '_serializable_error']
10338
+
10339
+ def __init__(self, serializable_error: "api_SerializableError", subscription_id: str) -> None:
10340
+ self._subscription_id = subscription_id
10341
+ self._serializable_error = serializable_error
10342
+
10343
+ @builtins.property
10344
+ def subscription_id(self) -> str:
10345
+ return self._subscription_id
10346
+
10347
+ @builtins.property
10348
+ def serializable_error(self) -> "api_SerializableError":
10349
+ """
10350
+ A serialized version of the error. Should match the errors defined below.
10351
+ """
10352
+ return self._serializable_error
10353
+
10354
+
10355
+ persistent_compute_api_SubscriptionError.__name__ = "SubscriptionError"
10356
+ persistent_compute_api_SubscriptionError.__qualname__ = "SubscriptionError"
10357
+ persistent_compute_api_SubscriptionError.__module__ = "nominal_api.persistent_compute_api"
10358
+
10359
+
10360
+ class persistent_compute_api_SubscriptionOptions(ConjureBeanType):
10361
+
10362
+ @builtins.classmethod
10363
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10364
+ return {
10365
+ 'min_delay': ConjureFieldDefinition('minDelay', persistent_compute_api_Milliseconds)
10366
+ }
10367
+
10368
+ __slots__: List[str] = ['_min_delay']
10369
+
10370
+ def __init__(self, min_delay: int) -> None:
10371
+ self._min_delay = min_delay
10372
+
10373
+ @builtins.property
10374
+ def min_delay(self) -> int:
10375
+ """
10376
+ The minimum delay between `SubscriptionUpdate`s sent for this subscription.
10377
+ """
10378
+ return self._min_delay
10379
+
10380
+
10381
+ persistent_compute_api_SubscriptionOptions.__name__ = "SubscriptionOptions"
10382
+ persistent_compute_api_SubscriptionOptions.__qualname__ = "SubscriptionOptions"
10383
+ persistent_compute_api_SubscriptionOptions.__module__ = "nominal_api.persistent_compute_api"
10384
+
10385
+
10386
+ class persistent_compute_api_SubscriptionUpdate(ConjureUnionType):
10387
+ _full: Optional["persistent_compute_api_FullResult"] = None
10388
+
10389
+ @builtins.classmethod
10390
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
10391
+ return {
10392
+ 'full': ConjureFieldDefinition('full', persistent_compute_api_FullResult)
10393
+ }
10394
+
10395
+ def __init__(
10396
+ self,
10397
+ full: Optional["persistent_compute_api_FullResult"] = None,
10398
+ type_of_union: Optional[str] = None
10399
+ ) -> None:
10400
+ if type_of_union is None:
10401
+ if (full is not None) != 1:
10402
+ raise ValueError('a union must contain a single member')
10403
+
10404
+ if full is not None:
10405
+ self._full = full
10406
+ self._type = 'full'
10407
+
10408
+ elif type_of_union == 'full':
10409
+ if full is None:
10410
+ raise ValueError('a union value must not be None')
10411
+ self._full = full
10412
+ self._type = 'full'
10413
+
10414
+ @builtins.property
10415
+ def full(self) -> Optional["persistent_compute_api_FullResult"]:
10416
+ return self._full
10417
+
10418
+ def accept(self, visitor) -> Any:
10419
+ if not isinstance(visitor, persistent_compute_api_SubscriptionUpdateVisitor):
10420
+ raise ValueError('{} is not an instance of persistent_compute_api_SubscriptionUpdateVisitor'.format(visitor.__class__.__name__))
10421
+ if self._type == 'full' and self.full is not None:
10422
+ return visitor._full(self.full)
10423
+
10424
+
10425
+ persistent_compute_api_SubscriptionUpdate.__name__ = "SubscriptionUpdate"
10426
+ persistent_compute_api_SubscriptionUpdate.__qualname__ = "SubscriptionUpdate"
10427
+ persistent_compute_api_SubscriptionUpdate.__module__ = "nominal_api.persistent_compute_api"
10428
+
10429
+
10430
+ class persistent_compute_api_SubscriptionUpdateVisitor:
10431
+
10432
+ @abstractmethod
10433
+ def _full(self, full: "persistent_compute_api_FullResult") -> Any:
10434
+ pass
10435
+
10436
+
10437
+ persistent_compute_api_SubscriptionUpdateVisitor.__name__ = "SubscriptionUpdateVisitor"
10438
+ persistent_compute_api_SubscriptionUpdateVisitor.__qualname__ = "SubscriptionUpdateVisitor"
10439
+ persistent_compute_api_SubscriptionUpdateVisitor.__module__ = "nominal_api.persistent_compute_api"
10440
+
10441
+
10013
10442
  class scout_InternalVersioningService(Service):
10014
10443
  """
10015
10444
  These endpoints are not intended to be used directly by clients, since
@@ -10359,11 +10788,12 @@ a RunNotFound error will be thrown.
10359
10788
  _decoder = ConjureDecoder()
10360
10789
  return _decoder.decode(_response.json(), scout_notebook_api_NotebookMetadata, self._return_none_for_unknown_union_types)
10361
10790
 
10362
- def get_all_labels_and_properties(self, auth_header: str) -> "scout_notebook_api_GetAllLabelsAndPropertiesResponse":
10791
+ def get_all_labels_and_properties(self, auth_header: str, workspaces: List[str] = None) -> "scout_notebook_api_GetAllLabelsAndPropertiesResponse":
10363
10792
  """
10364
10793
  Returns all properties (key value pairs) and labels that have been previously used on workbook. These can
10365
10794
  be used to organize workbooks.
10366
10795
  """
10796
+ workspaces = workspaces if workspaces is not None else []
10367
10797
 
10368
10798
  _headers: Dict[str, Any] = {
10369
10799
  'Accept': 'application/json',
@@ -10371,6 +10801,7 @@ be used to organize workbooks.
10371
10801
  }
10372
10802
 
10373
10803
  _params: Dict[str, Any] = {
10804
+ 'workspaces': workspaces,
10374
10805
  }
10375
10806
 
10376
10807
  _path_params: Dict[str, Any] = {
@@ -10696,6 +11127,7 @@ Throws if any of the ref names conflict with existing data sources or each other
10696
11127
  def create_or_update_run(self, auth_header: str, details: "scout_run_api_CreateOrUpdateRunRequest") -> "scout_run_api_Run":
10697
11128
  """
10698
11129
  Updates a run if it exists, otherwise it's created from scratch.
11130
+ Will throw if the workspace of an existing run is different from the workspace of the request.
10699
11131
  """
10700
11132
 
10701
11133
  _headers: Dict[str, Any] = {
@@ -10919,7 +11351,8 @@ including metrics for check and violation review status.
10919
11351
  _decoder = ConjureDecoder()
10920
11352
  return _decoder.decode(_response.json(), scout_run_api_GetRunsByAssetResponse, self._return_none_for_unknown_union_types)
10921
11353
 
10922
- def get_all_runs_properties_and_labels(self, auth_header: str) -> "scout_run_api_AllRunsPropertiesAndLabelsResponse":
11354
+ def get_all_runs_properties_and_labels(self, auth_header: str, workspaces: List[str] = None) -> "scout_run_api_AllRunsPropertiesAndLabelsResponse":
11355
+ workspaces = workspaces if workspaces is not None else []
10923
11356
 
10924
11357
  _headers: Dict[str, Any] = {
10925
11358
  'Accept': 'application/json',
@@ -10927,6 +11360,7 @@ including metrics for check and violation review status.
10927
11360
  }
10928
11361
 
10929
11362
  _params: Dict[str, Any] = {
11363
+ 'workspaces': workspaces,
10930
11364
  }
10931
11365
 
10932
11366
  _path_params: Dict[str, Any] = {
@@ -10947,9 +11381,9 @@ including metrics for check and violation review status.
10947
11381
  _decoder = ConjureDecoder()
10948
11382
  return _decoder.decode(_response.json(), scout_run_api_AllRunsPropertiesAndLabelsResponse, self._return_none_for_unknown_union_types)
10949
11383
 
10950
- def search_runs(self, auth_header: str, list_runs_request: "scout_run_api_SearchRunsRequest") -> "scout_run_api_SearchRunsResponse":
11384
+ def search_runs(self, auth_header: str, request: "scout_run_api_SearchRunsRequest") -> "scout_run_api_SearchRunsResponse":
10951
11385
  """
10952
- Searches for runs that match the given ƒilters.
11386
+ Searches for runs that match the given filters.
10953
11387
  """
10954
11388
 
10955
11389
  _headers: Dict[str, Any] = {
@@ -10964,7 +11398,7 @@ including metrics for check and violation review status.
10964
11398
  _path_params: Dict[str, Any] = {
10965
11399
  }
10966
11400
 
10967
- _json: Any = ConjureEncoder().default(list_runs_request)
11401
+ _json: Any = ConjureEncoder().default(request)
10968
11402
 
10969
11403
  _path = '/scout/v1/search-runs'
10970
11404
  _path = _path.format(**_path_params)
@@ -10979,10 +11413,10 @@ including metrics for check and violation review status.
10979
11413
  _decoder = ConjureDecoder()
10980
11414
  return _decoder.decode(_response.json(), scout_run_api_SearchRunsResponse, self._return_none_for_unknown_union_types)
10981
11415
 
10982
- def search_runs_with_data_review_metrics(self, auth_header: str, list_runs_request: "scout_run_api_SearchRunsRequest") -> "scout_run_api_SearchRunsWithDataReviewMetricsResponse":
11416
+ def search_runs_with_data_review_metrics(self, auth_header: str, request: "scout_run_api_SearchRunsRequest") -> "scout_run_api_SearchRunsWithDataReviewMetricsResponse":
10983
11417
  """
10984
11418
  Searches for runs that match the given filters and
10985
- includes metrics for check and violation review status
11419
+ includes metrics for check and violation review status.
10986
11420
  """
10987
11421
 
10988
11422
  _headers: Dict[str, Any] = {
@@ -10997,7 +11431,7 @@ includes metrics for check and violation review status
10997
11431
  _path_params: Dict[str, Any] = {
10998
11432
  }
10999
11433
 
11000
- _json: Any = ConjureEncoder().default(list_runs_request)
11434
+ _json: Any = ConjureEncoder().default(request)
11001
11435
 
11002
11436
  _path = '/scout/v1/search-runs-with-data-review-metrics'
11003
11437
  _path = _path.format(**_path_params)
@@ -11012,7 +11446,7 @@ includes metrics for check and violation review status
11012
11446
  _decoder = ConjureDecoder()
11013
11447
  return _decoder.decode(_response.json(), scout_run_api_SearchRunsWithDataReviewMetricsResponse, self._return_none_for_unknown_union_types)
11014
11448
 
11015
- def search_runs_with_data_review_summary(self, auth_header: str, list_runs_request: "scout_run_api_SearchRunsRequest") -> "scout_run_api_SearchRunsWithDataReviewSummaryResponse":
11449
+ def search_runs_with_data_review_summary(self, auth_header: str, request: "scout_run_api_SearchRunsRequest") -> "scout_run_api_SearchRunsWithDataReviewSummaryResponse":
11016
11450
  """
11017
11451
  Searches for runs that match the given filters and includes a summary of the data review status.
11018
11452
  """
@@ -11029,7 +11463,7 @@ includes metrics for check and violation review status
11029
11463
  _path_params: Dict[str, Any] = {
11030
11464
  }
11031
11465
 
11032
- _json: Any = ConjureEncoder().default(list_runs_request)
11466
+ _json: Any = ConjureEncoder().default(request)
11033
11467
 
11034
11468
  _path = '/scout/v1/search-runs-with-data-review-summary'
11035
11469
  _path = _path.format(**_path_params)
@@ -11076,10 +11510,11 @@ includes metrics for check and violation review status
11076
11510
  _decoder = ConjureDecoder()
11077
11511
  return _decoder.decode(_response.json(), bool, self._return_none_for_unknown_union_types)
11078
11512
 
11079
- def get_data_source_ref_name_and_type_list(self, auth_header: str) -> List["scout_run_api_RefNameAndType"]:
11513
+ def get_data_source_ref_name_and_type_list(self, auth_header: str, workspaces: List[str] = None) -> List["scout_run_api_RefNameAndType"]:
11080
11514
  """
11081
- Returns the list of ref names that are in use across an entire organization.
11515
+ Returns the list of ref names that are in use across specified and authorized workspaces.
11082
11516
  """
11517
+ workspaces = workspaces if workspaces is not None else []
11083
11518
 
11084
11519
  _headers: Dict[str, Any] = {
11085
11520
  'Accept': 'application/json',
@@ -11087,6 +11522,7 @@ includes metrics for check and violation review status
11087
11522
  }
11088
11523
 
11089
11524
  _params: Dict[str, Any] = {
11525
+ 'workspaces': workspaces,
11090
11526
  }
11091
11527
 
11092
11528
  _path_params: Dict[str, Any] = {
@@ -11415,7 +11851,8 @@ Throws if you commit to an archived template.
11415
11851
  _decoder = ConjureDecoder()
11416
11852
  return _decoder.decode(_response.json(), scout_template_api_SearchTemplatesResponse, self._return_none_for_unknown_union_types)
11417
11853
 
11418
- def get_all_labels_and_properties(self, auth_header: str) -> "scout_template_api_GetAllLabelsAndPropertiesResponse":
11854
+ def get_all_labels_and_properties(self, auth_header: str, workspaces: List[str] = None) -> "scout_template_api_GetAllLabelsAndPropertiesResponse":
11855
+ workspaces = workspaces if workspaces is not None else []
11419
11856
 
11420
11857
  _headers: Dict[str, Any] = {
11421
11858
  'Accept': 'application/json',
@@ -11423,6 +11860,7 @@ Throws if you commit to an archived template.
11423
11860
  }
11424
11861
 
11425
11862
  _params: Dict[str, Any] = {
11863
+ 'workspaces': workspaces,
11426
11864
  }
11427
11865
 
11428
11866
  _path_params: Dict[str, Any] = {
@@ -12552,12 +12990,13 @@ class scout_asset_api_CreateAssetRequest(ConjureBeanType):
12552
12990
  'links': ConjureFieldDefinition('links', List[scout_run_api_Link]),
12553
12991
  'data_scopes': ConjureFieldDefinition('dataScopes', List[scout_asset_api_CreateAssetDataScope]),
12554
12992
  'attachments': ConjureFieldDefinition('attachments', List[api_rids_AttachmentRid]),
12555
- 'type': ConjureFieldDefinition('type', OptionalTypeWrapper[scout_rids_api_TypeRid])
12993
+ 'type': ConjureFieldDefinition('type', OptionalTypeWrapper[scout_rids_api_TypeRid]),
12994
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
12556
12995
  }
12557
12996
 
12558
- __slots__: List[str] = ['_title', '_description', '_properties', '_labels', '_links', '_data_scopes', '_attachments', '_type']
12997
+ __slots__: List[str] = ['_title', '_description', '_properties', '_labels', '_links', '_data_scopes', '_attachments', '_type', '_workspace']
12559
12998
 
12560
- def __init__(self, attachments: List[str], data_scopes: List["scout_asset_api_CreateAssetDataScope"], labels: List[str], links: List["scout_run_api_Link"], properties: Dict[str, str], title: str, description: Optional[str] = None, type: Optional[str] = None) -> None:
12999
+ def __init__(self, attachments: List[str], data_scopes: List["scout_asset_api_CreateAssetDataScope"], labels: List[str], links: List["scout_run_api_Link"], properties: Dict[str, str], title: str, description: Optional[str] = None, type: Optional[str] = None, workspace: Optional[str] = None) -> None:
12561
13000
  self._title = title
12562
13001
  self._description = description
12563
13002
  self._properties = properties
@@ -12566,6 +13005,7 @@ class scout_asset_api_CreateAssetRequest(ConjureBeanType):
12566
13005
  self._data_scopes = data_scopes
12567
13006
  self._attachments = attachments
12568
13007
  self._type = type
13008
+ self._workspace = workspace
12569
13009
 
12570
13010
  @builtins.property
12571
13011
  def title(self) -> str:
@@ -12602,6 +13042,16 @@ class scout_asset_api_CreateAssetRequest(ConjureBeanType):
12602
13042
  def type(self) -> Optional[str]:
12603
13043
  return self._type
12604
13044
 
13045
+ @builtins.property
13046
+ def workspace(self) -> Optional[str]:
13047
+ """
13048
+ The workspace in which to create the asset. If not provided, the asset will be created in
13049
+ the default workspace for the user's organization, if the default workspace for the
13050
+ organization is configured.
13051
+ All data scopes, attachments, and the optional asset type must be in the same workspace.
13052
+ """
13053
+ return self._workspace
13054
+
12605
13055
 
12606
13056
  scout_asset_api_CreateAssetRequest.__name__ = "CreateAssetRequest"
12607
13057
  scout_asset_api_CreateAssetRequest.__qualname__ = "CreateAssetRequest"
@@ -12616,16 +13066,18 @@ class scout_asset_api_CreateTypeRequest(ConjureBeanType):
12616
13066
  'name': ConjureFieldDefinition('name', str),
12617
13067
  'property_configs': ConjureFieldDefinition('propertyConfigs', Dict[api_PropertyName, scout_asset_api_PropertyConfig]),
12618
13068
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
12619
- 'icon_name': ConjureFieldDefinition('iconName', OptionalTypeWrapper[str])
13069
+ 'icon_name': ConjureFieldDefinition('iconName', OptionalTypeWrapper[str]),
13070
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
12620
13071
  }
12621
13072
 
12622
- __slots__: List[str] = ['_name', '_property_configs', '_description', '_icon_name']
13073
+ __slots__: List[str] = ['_name', '_property_configs', '_description', '_icon_name', '_workspace']
12623
13074
 
12624
- def __init__(self, name: str, property_configs: Dict[str, "scout_asset_api_PropertyConfig"], description: Optional[str] = None, icon_name: Optional[str] = None) -> None:
13075
+ def __init__(self, name: str, property_configs: Dict[str, "scout_asset_api_PropertyConfig"], description: Optional[str] = None, icon_name: Optional[str] = None, workspace: Optional[str] = None) -> None:
12625
13076
  self._name = name
12626
13077
  self._property_configs = property_configs
12627
13078
  self._description = description
12628
13079
  self._icon_name = icon_name
13080
+ self._workspace = workspace
12629
13081
 
12630
13082
  @builtins.property
12631
13083
  def name(self) -> str:
@@ -12643,6 +13095,15 @@ class scout_asset_api_CreateTypeRequest(ConjureBeanType):
12643
13095
  def icon_name(self) -> Optional[str]:
12644
13096
  return self._icon_name
12645
13097
 
13098
+ @builtins.property
13099
+ def workspace(self) -> Optional[str]:
13100
+ """
13101
+ The workspace in which to create the asset type. If not provided, the asset type will be created in
13102
+ the default workspace for the user's organization, if the default workspace for the
13103
+ organization is configured.
13104
+ """
13105
+ return self._workspace
13106
+
12646
13107
 
12647
13108
  scout_asset_api_CreateTypeRequest.__name__ = "CreateTypeRequest"
12648
13109
  scout_asset_api_CreateTypeRequest.__qualname__ = "CreateTypeRequest"
@@ -12781,6 +13242,7 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12781
13242
  _and_: Optional[List["scout_asset_api_SearchAssetsQuery"]] = None
12782
13243
  _or_: Optional[List["scout_asset_api_SearchAssetsQuery"]] = None
12783
13244
  _is_staged: Optional[bool] = None
13245
+ _workspace: Optional[str] = None
12784
13246
 
12785
13247
  @builtins.classmethod
12786
13248
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -12791,7 +13253,8 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12791
13253
  'type_rid': ConjureFieldDefinition('typeRid', scout_rids_api_TypeRid),
12792
13254
  'and_': ConjureFieldDefinition('and', List[scout_asset_api_SearchAssetsQuery]),
12793
13255
  'or_': ConjureFieldDefinition('or', List[scout_asset_api_SearchAssetsQuery]),
12794
- 'is_staged': ConjureFieldDefinition('isStaged', bool)
13256
+ 'is_staged': ConjureFieldDefinition('isStaged', bool),
13257
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
12795
13258
  }
12796
13259
 
12797
13260
  def __init__(
@@ -12803,10 +13266,11 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12803
13266
  and_: Optional[List["scout_asset_api_SearchAssetsQuery"]] = None,
12804
13267
  or_: Optional[List["scout_asset_api_SearchAssetsQuery"]] = None,
12805
13268
  is_staged: Optional[bool] = None,
13269
+ workspace: Optional[str] = None,
12806
13270
  type_of_union: Optional[str] = None
12807
13271
  ) -> None:
12808
13272
  if type_of_union is None:
12809
- if (search_text is not None) + (label is not None) + (property is not None) + (type_rid is not None) + (and_ is not None) + (or_ is not None) + (is_staged is not None) != 1:
13273
+ if (search_text is not None) + (label is not None) + (property is not None) + (type_rid is not None) + (and_ is not None) + (or_ is not None) + (is_staged is not None) + (workspace is not None) != 1:
12810
13274
  raise ValueError('a union must contain a single member')
12811
13275
 
12812
13276
  if search_text is not None:
@@ -12830,6 +13294,9 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12830
13294
  if is_staged is not None:
12831
13295
  self._is_staged = is_staged
12832
13296
  self._type = 'isStaged'
13297
+ if workspace is not None:
13298
+ self._workspace = workspace
13299
+ self._type = 'workspace'
12833
13300
 
12834
13301
  elif type_of_union == 'searchText':
12835
13302
  if search_text is None:
@@ -12866,6 +13333,11 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12866
13333
  raise ValueError('a union value must not be None')
12867
13334
  self._is_staged = is_staged
12868
13335
  self._type = 'isStaged'
13336
+ elif type_of_union == 'workspace':
13337
+ if workspace is None:
13338
+ raise ValueError('a union value must not be None')
13339
+ self._workspace = workspace
13340
+ self._type = 'workspace'
12869
13341
 
12870
13342
  @builtins.property
12871
13343
  def search_text(self) -> Optional[str]:
@@ -12895,6 +13367,10 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12895
13367
  def is_staged(self) -> Optional[bool]:
12896
13368
  return self._is_staged
12897
13369
 
13370
+ @builtins.property
13371
+ def workspace(self) -> Optional[str]:
13372
+ return self._workspace
13373
+
12898
13374
  def accept(self, visitor) -> Any:
12899
13375
  if not isinstance(visitor, scout_asset_api_SearchAssetsQueryVisitor):
12900
13376
  raise ValueError('{} is not an instance of scout_asset_api_SearchAssetsQueryVisitor'.format(visitor.__class__.__name__))
@@ -12912,6 +13388,8 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
12912
13388
  return visitor._or(self.or_)
12913
13389
  if self._type == 'isStaged' and self.is_staged is not None:
12914
13390
  return visitor._is_staged(self.is_staged)
13391
+ if self._type == 'workspace' and self.workspace is not None:
13392
+ return visitor._workspace(self.workspace)
12915
13393
 
12916
13394
 
12917
13395
  scout_asset_api_SearchAssetsQuery.__name__ = "SearchAssetsQuery"
@@ -12949,6 +13427,10 @@ class scout_asset_api_SearchAssetsQueryVisitor:
12949
13427
  def _is_staged(self, is_staged: bool) -> Any:
12950
13428
  pass
12951
13429
 
13430
+ @abstractmethod
13431
+ def _workspace(self, workspace: str) -> Any:
13432
+ pass
13433
+
12952
13434
 
12953
13435
  scout_asset_api_SearchAssetsQueryVisitor.__name__ = "SearchAssetsQueryVisitor"
12954
13436
  scout_asset_api_SearchAssetsQueryVisitor.__qualname__ = "SearchAssetsQueryVisitor"
@@ -13042,6 +13524,7 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13042
13524
  _property: Optional[str] = None
13043
13525
  _and_: Optional[List["scout_asset_api_SearchTypesQuery"]] = None
13044
13526
  _or_: Optional[List["scout_asset_api_SearchTypesQuery"]] = None
13527
+ _workspace: Optional[str] = None
13045
13528
 
13046
13529
  @builtins.classmethod
13047
13530
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -13049,7 +13532,8 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13049
13532
  'search_text': ConjureFieldDefinition('searchText', str),
13050
13533
  'property': ConjureFieldDefinition('property', api_PropertyName),
13051
13534
  'and_': ConjureFieldDefinition('and', List[scout_asset_api_SearchTypesQuery]),
13052
- 'or_': ConjureFieldDefinition('or', List[scout_asset_api_SearchTypesQuery])
13535
+ 'or_': ConjureFieldDefinition('or', List[scout_asset_api_SearchTypesQuery]),
13536
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
13053
13537
  }
13054
13538
 
13055
13539
  def __init__(
@@ -13058,10 +13542,11 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13058
13542
  property: Optional[str] = None,
13059
13543
  and_: Optional[List["scout_asset_api_SearchTypesQuery"]] = None,
13060
13544
  or_: Optional[List["scout_asset_api_SearchTypesQuery"]] = None,
13545
+ workspace: Optional[str] = None,
13061
13546
  type_of_union: Optional[str] = None
13062
13547
  ) -> None:
13063
13548
  if type_of_union is None:
13064
- if (search_text is not None) + (property is not None) + (and_ is not None) + (or_ is not None) != 1:
13549
+ if (search_text is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
13065
13550
  raise ValueError('a union must contain a single member')
13066
13551
 
13067
13552
  if search_text is not None:
@@ -13076,6 +13561,9 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13076
13561
  if or_ is not None:
13077
13562
  self._or_ = or_
13078
13563
  self._type = 'or'
13564
+ if workspace is not None:
13565
+ self._workspace = workspace
13566
+ self._type = 'workspace'
13079
13567
 
13080
13568
  elif type_of_union == 'searchText':
13081
13569
  if search_text is None:
@@ -13097,6 +13585,11 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13097
13585
  raise ValueError('a union value must not be None')
13098
13586
  self._or_ = or_
13099
13587
  self._type = 'or'
13588
+ elif type_of_union == 'workspace':
13589
+ if workspace is None:
13590
+ raise ValueError('a union value must not be None')
13591
+ self._workspace = workspace
13592
+ self._type = 'workspace'
13100
13593
 
13101
13594
  @builtins.property
13102
13595
  def search_text(self) -> Optional[str]:
@@ -13114,6 +13607,10 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13114
13607
  def or_(self) -> Optional[List["scout_asset_api_SearchTypesQuery"]]:
13115
13608
  return self._or_
13116
13609
 
13610
+ @builtins.property
13611
+ def workspace(self) -> Optional[str]:
13612
+ return self._workspace
13613
+
13117
13614
  def accept(self, visitor) -> Any:
13118
13615
  if not isinstance(visitor, scout_asset_api_SearchTypesQueryVisitor):
13119
13616
  raise ValueError('{} is not an instance of scout_asset_api_SearchTypesQueryVisitor'.format(visitor.__class__.__name__))
@@ -13125,6 +13622,8 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13125
13622
  return visitor._and(self.and_)
13126
13623
  if self._type == 'or' and self.or_ is not None:
13127
13624
  return visitor._or(self.or_)
13625
+ if self._type == 'workspace' and self.workspace is not None:
13626
+ return visitor._workspace(self.workspace)
13128
13627
 
13129
13628
 
13130
13629
  scout_asset_api_SearchTypesQuery.__name__ = "SearchTypesQuery"
@@ -13150,6 +13649,10 @@ class scout_asset_api_SearchTypesQueryVisitor:
13150
13649
  def _or(self, or_: List["scout_asset_api_SearchTypesQuery"]) -> Any:
13151
13650
  pass
13152
13651
 
13652
+ @abstractmethod
13653
+ def _workspace(self, workspace: str) -> Any:
13654
+ pass
13655
+
13153
13656
 
13154
13657
  scout_asset_api_SearchTypesQueryVisitor.__name__ = "SearchTypesQueryVisitor"
13155
13658
  scout_asset_api_SearchTypesQueryVisitor.__qualname__ = "SearchTypesQueryVisitor"
@@ -58355,13 +58858,15 @@ class scout_metadata_ListPropertiesAndLabelsRequest(ConjureBeanType):
58355
58858
  @builtins.classmethod
58356
58859
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
58357
58860
  return {
58358
- 'resource_types': ConjureFieldDefinition('resourceTypes', OptionalTypeWrapper[List[scout_metadata_ResourceType]])
58861
+ 'resource_types': ConjureFieldDefinition('resourceTypes', OptionalTypeWrapper[List[scout_metadata_ResourceType]]),
58862
+ 'workspaces': ConjureFieldDefinition('workspaces', OptionalTypeWrapper[List[api_ids_WorkspaceId]])
58359
58863
  }
58360
58864
 
58361
- __slots__: List[str] = ['_resource_types']
58865
+ __slots__: List[str] = ['_resource_types', '_workspaces']
58362
58866
 
58363
- def __init__(self, resource_types: Optional[List["scout_metadata_ResourceType"]] = None) -> None:
58867
+ def __init__(self, resource_types: Optional[List["scout_metadata_ResourceType"]] = None, workspaces: Optional[List[str]] = None) -> None:
58364
58868
  self._resource_types = resource_types
58869
+ self._workspaces = workspaces
58365
58870
 
58366
58871
  @builtins.property
58367
58872
  def resource_types(self) -> Optional[List["scout_metadata_ResourceType"]]:
@@ -58370,6 +58875,13 @@ class scout_metadata_ListPropertiesAndLabelsRequest(ConjureBeanType):
58370
58875
  """
58371
58876
  return self._resource_types
58372
58877
 
58878
+ @builtins.property
58879
+ def workspaces(self) -> Optional[List[str]]:
58880
+ """
58881
+ If omitted, results will come from all workspaces the user belongs to.
58882
+ """
58883
+ return self._workspaces
58884
+
58373
58885
 
58374
58886
  scout_metadata_ListPropertiesAndLabelsRequest.__name__ = "ListPropertiesAndLabelsRequest"
58375
58887
  scout_metadata_ListPropertiesAndLabelsRequest.__qualname__ = "ListPropertiesAndLabelsRequest"
@@ -58521,12 +59033,13 @@ class scout_notebook_api_CreateNotebookRequest(ConjureBeanType):
58521
59033
  'content': ConjureFieldDefinition('content', OptionalTypeWrapper[scout_workbookcommon_api_WorkbookContent]),
58522
59034
  'content_v2': ConjureFieldDefinition('contentV2', OptionalTypeWrapper[scout_workbookcommon_api_UnifiedWorkbookContent]),
58523
59035
  'event_refs': ConjureFieldDefinition('eventRefs', List[scout_workbookcommon_api_EventReference]),
58524
- 'check_alert_refs': ConjureFieldDefinition('checkAlertRefs', List[scout_workbookcommon_api_CheckAlertReference])
59036
+ 'check_alert_refs': ConjureFieldDefinition('checkAlertRefs', List[scout_workbookcommon_api_CheckAlertReference]),
59037
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
58525
59038
  }
58526
59039
 
58527
- __slots__: List[str] = ['_title', '_description', '_notebook_type', '_is_draft', '_state_as_json', '_charts', '_run_rid', '_data_scope', '_layout', '_content', '_content_v2', '_event_refs', '_check_alert_refs']
59040
+ __slots__: List[str] = ['_title', '_description', '_notebook_type', '_is_draft', '_state_as_json', '_charts', '_run_rid', '_data_scope', '_layout', '_content', '_content_v2', '_event_refs', '_check_alert_refs', '_workspace']
58528
59041
 
58529
- def __init__(self, check_alert_refs: List["scout_workbookcommon_api_CheckAlertReference"], description: str, event_refs: List["scout_workbookcommon_api_EventReference"], is_draft: bool, layout: "scout_layout_api_WorkbookLayout", state_as_json: str, title: str, charts: Optional[List["scout_notebook_api_ChartWithOverlays"]] = None, content: Optional["scout_workbookcommon_api_WorkbookContent"] = None, content_v2: Optional["scout_workbookcommon_api_UnifiedWorkbookContent"] = None, data_scope: Optional["scout_notebook_api_NotebookDataScope"] = None, notebook_type: Optional["scout_notebook_api_NotebookType"] = None, run_rid: Optional[str] = None) -> None:
59042
+ def __init__(self, check_alert_refs: List["scout_workbookcommon_api_CheckAlertReference"], description: str, event_refs: List["scout_workbookcommon_api_EventReference"], is_draft: bool, layout: "scout_layout_api_WorkbookLayout", state_as_json: str, title: str, charts: Optional[List["scout_notebook_api_ChartWithOverlays"]] = None, content: Optional["scout_workbookcommon_api_WorkbookContent"] = None, content_v2: Optional["scout_workbookcommon_api_UnifiedWorkbookContent"] = None, data_scope: Optional["scout_notebook_api_NotebookDataScope"] = None, notebook_type: Optional["scout_notebook_api_NotebookType"] = None, run_rid: Optional[str] = None, workspace: Optional[str] = None) -> None:
58530
59043
  self._title = title
58531
59044
  self._description = description
58532
59045
  self._notebook_type = notebook_type
@@ -58540,6 +59053,7 @@ class scout_notebook_api_CreateNotebookRequest(ConjureBeanType):
58540
59053
  self._content_v2 = content_v2
58541
59054
  self._event_refs = event_refs
58542
59055
  self._check_alert_refs = check_alert_refs
59056
+ self._workspace = workspace
58543
59057
 
58544
59058
  @builtins.property
58545
59059
  def title(self) -> str:
@@ -58611,6 +59125,14 @@ class scout_notebook_api_CreateNotebookRequest(ConjureBeanType):
58611
59125
  """
58612
59126
  return self._check_alert_refs
58613
59127
 
59128
+ @builtins.property
59129
+ def workspace(self) -> Optional[str]:
59130
+ """
59131
+ The workspace in which to create the workbook. If not provided, the workbook will be created in the default workspace for
59132
+ the user's organization, if the default workspace for the organization is configured.
59133
+ """
59134
+ return self._workspace
59135
+
58614
59136
 
58615
59137
  scout_notebook_api_CreateNotebookRequest.__name__ = "CreateNotebookRequest"
58616
59138
  scout_notebook_api_CreateNotebookRequest.__qualname__ = "CreateNotebookRequest"
@@ -58999,6 +59521,7 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
58999
59521
  _notebook_type: Optional["scout_notebook_api_NotebookType"] = None
59000
59522
  _draft_state: Optional[bool] = None
59001
59523
  _archived: Optional[bool] = None
59524
+ _workspace: Optional[str] = None
59002
59525
 
59003
59526
  @builtins.classmethod
59004
59527
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -59014,7 +59537,8 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
59014
59537
  'run_rid': ConjureFieldDefinition('runRid', scout_run_api_RunRid),
59015
59538
  'notebook_type': ConjureFieldDefinition('notebookType', scout_notebook_api_NotebookType),
59016
59539
  'draft_state': ConjureFieldDefinition('draftState', bool),
59017
- 'archived': ConjureFieldDefinition('archived', bool)
59540
+ 'archived': ConjureFieldDefinition('archived', bool),
59541
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
59018
59542
  }
59019
59543
 
59020
59544
  def __init__(
@@ -59031,10 +59555,11 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
59031
59555
  notebook_type: Optional["scout_notebook_api_NotebookType"] = None,
59032
59556
  draft_state: Optional[bool] = None,
59033
59557
  archived: Optional[bool] = None,
59558
+ workspace: Optional[str] = None,
59034
59559
  type_of_union: Optional[str] = None
59035
59560
  ) -> None:
59036
59561
  if type_of_union is None:
59037
- if (and_ is not None) + (or_ is not None) + (exact_match is not None) + (search_text is not None) + (label is not None) + (property is not None) + (asset_rid is not None) + (author_rid is not None) + (run_rid is not None) + (notebook_type is not None) + (draft_state is not None) + (archived is not None) != 1:
59562
+ if (and_ is not None) + (or_ is not None) + (exact_match is not None) + (search_text is not None) + (label is not None) + (property is not None) + (asset_rid is not None) + (author_rid is not None) + (run_rid is not None) + (notebook_type is not None) + (draft_state is not None) + (archived is not None) + (workspace is not None) != 1:
59038
59563
  raise ValueError('a union must contain a single member')
59039
59564
 
59040
59565
  if and_ is not None:
@@ -59073,6 +59598,9 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
59073
59598
  if archived is not None:
59074
59599
  self._archived = archived
59075
59600
  self._type = 'archived'
59601
+ if workspace is not None:
59602
+ self._workspace = workspace
59603
+ self._type = 'workspace'
59076
59604
 
59077
59605
  elif type_of_union == 'and':
59078
59606
  if and_ is None:
@@ -59134,6 +59662,11 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
59134
59662
  raise ValueError('a union value must not be None')
59135
59663
  self._archived = archived
59136
59664
  self._type = 'archived'
59665
+ elif type_of_union == 'workspace':
59666
+ if workspace is None:
59667
+ raise ValueError('a union value must not be None')
59668
+ self._workspace = workspace
59669
+ self._type = 'workspace'
59137
59670
 
59138
59671
  @builtins.property
59139
59672
  def and_(self) -> Optional[List["scout_notebook_api_SearchNotebooksQuery"]]:
@@ -59186,6 +59719,10 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
59186
59719
  def archived(self) -> Optional[bool]:
59187
59720
  return self._archived
59188
59721
 
59722
+ @builtins.property
59723
+ def workspace(self) -> Optional[str]:
59724
+ return self._workspace
59725
+
59189
59726
  def accept(self, visitor) -> Any:
59190
59727
  if not isinstance(visitor, scout_notebook_api_SearchNotebooksQueryVisitor):
59191
59728
  raise ValueError('{} is not an instance of scout_notebook_api_SearchNotebooksQueryVisitor'.format(visitor.__class__.__name__))
@@ -59213,6 +59750,8 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
59213
59750
  return visitor._draft_state(self.draft_state)
59214
59751
  if self._type == 'archived' and self.archived is not None:
59215
59752
  return visitor._archived(self.archived)
59753
+ if self._type == 'workspace' and self.workspace is not None:
59754
+ return visitor._workspace(self.workspace)
59216
59755
 
59217
59756
 
59218
59757
  scout_notebook_api_SearchNotebooksQuery.__name__ = "SearchNotebooksQuery"
@@ -59270,6 +59809,10 @@ class scout_notebook_api_SearchNotebooksQueryVisitor:
59270
59809
  def _archived(self, archived: bool) -> Any:
59271
59810
  pass
59272
59811
 
59812
+ @abstractmethod
59813
+ def _workspace(self, workspace: str) -> Any:
59814
+ pass
59815
+
59273
59816
 
59274
59817
  scout_notebook_api_SearchNotebooksQueryVisitor.__name__ = "SearchNotebooksQueryVisitor"
59275
59818
  scout_notebook_api_SearchNotebooksQueryVisitor.__qualname__ = "SearchNotebooksQueryVisitor"
@@ -59973,12 +60516,13 @@ class scout_run_api_CreateRunRequest(ConjureBeanType):
59973
60516
  'data_sources': ConjureFieldDefinition('dataSources', Dict[scout_api_DataSourceRefName, scout_run_api_CreateRunDataSource]),
59974
60517
  'attachments': ConjureFieldDefinition('attachments', List[api_rids_AttachmentRid]),
59975
60518
  'asset': ConjureFieldDefinition('asset', OptionalTypeWrapper[scout_rids_api_AssetRid]),
59976
- 'assets': ConjureFieldDefinition('assets', List[scout_rids_api_AssetRid])
60519
+ 'assets': ConjureFieldDefinition('assets', List[scout_rids_api_AssetRid]),
60520
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
59977
60521
  }
59978
60522
 
59979
- __slots__: List[str] = ['_title', '_description', '_start_time', '_end_time', '_properties', '_labels', '_links', '_run_prefix', '_data_sources', '_attachments', '_asset', '_assets']
60523
+ __slots__: List[str] = ['_title', '_description', '_start_time', '_end_time', '_properties', '_labels', '_links', '_run_prefix', '_data_sources', '_attachments', '_asset', '_assets', '_workspace']
59980
60524
 
59981
- def __init__(self, assets: List[str], attachments: List[str], data_sources: Dict[str, "scout_run_api_CreateRunDataSource"], description: str, labels: List[str], links: List["scout_run_api_Link"], properties: Dict[str, str], start_time: "scout_run_api_UtcTimestamp", title: str, asset: Optional[str] = None, end_time: Optional["scout_run_api_UtcTimestamp"] = None, run_prefix: Optional[str] = None) -> None:
60525
+ def __init__(self, assets: List[str], attachments: List[str], data_sources: Dict[str, "scout_run_api_CreateRunDataSource"], description: str, labels: List[str], links: List["scout_run_api_Link"], properties: Dict[str, str], start_time: "scout_run_api_UtcTimestamp", title: str, asset: Optional[str] = None, end_time: Optional["scout_run_api_UtcTimestamp"] = None, run_prefix: Optional[str] = None, workspace: Optional[str] = None) -> None:
59982
60526
  self._title = title
59983
60527
  self._description = description
59984
60528
  self._start_time = start_time
@@ -59991,6 +60535,7 @@ class scout_run_api_CreateRunRequest(ConjureBeanType):
59991
60535
  self._attachments = attachments
59992
60536
  self._asset = asset
59993
60537
  self._assets = assets
60538
+ self._workspace = workspace
59994
60539
 
59995
60540
  @builtins.property
59996
60541
  def title(self) -> str:
@@ -60040,6 +60585,16 @@ class scout_run_api_CreateRunRequest(ConjureBeanType):
60040
60585
  def assets(self) -> List[str]:
60041
60586
  return self._assets
60042
60587
 
60588
+ @builtins.property
60589
+ def workspace(self) -> Optional[str]:
60590
+ """
60591
+ The workspace in which to create the run. If not provided, the run will be created in
60592
+ the default workspace for the user's organization, if the default workspace for the
60593
+ organization is configured.
60594
+ All data sources, attachments, and assets must be in the same workspace.
60595
+ """
60596
+ return self._workspace
60597
+
60043
60598
 
60044
60599
  scout_run_api_CreateRunRequest.__name__ = "CreateRunRequest"
60045
60600
  scout_run_api_CreateRunRequest.__qualname__ = "CreateRunRequest"
@@ -60875,6 +61430,7 @@ class scout_run_api_SearchQuery(ConjureUnionType):
60875
61430
  _check_alert_states_filter: Optional["scout_run_api_CheckAlertStatesFilter"] = None
60876
61431
  _and_: Optional[List["scout_run_api_SearchQuery"]] = None
60877
61432
  _or_: Optional[List["scout_run_api_SearchQuery"]] = None
61433
+ _workspace: Optional[str] = None
60878
61434
 
60879
61435
  @builtins.classmethod
60880
61436
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -60893,7 +61449,8 @@ class scout_run_api_SearchQuery(ConjureUnionType):
60893
61449
  'run_prefix': ConjureFieldDefinition('runPrefix', str),
60894
61450
  'check_alert_states_filter': ConjureFieldDefinition('checkAlertStatesFilter', scout_run_api_CheckAlertStatesFilter),
60895
61451
  'and_': ConjureFieldDefinition('and', List[scout_run_api_SearchQuery]),
60896
- 'or_': ConjureFieldDefinition('or', List[scout_run_api_SearchQuery])
61452
+ 'or_': ConjureFieldDefinition('or', List[scout_run_api_SearchQuery]),
61453
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
60897
61454
  }
60898
61455
 
60899
61456
  def __init__(
@@ -60913,10 +61470,11 @@ class scout_run_api_SearchQuery(ConjureUnionType):
60913
61470
  check_alert_states_filter: Optional["scout_run_api_CheckAlertStatesFilter"] = None,
60914
61471
  and_: Optional[List["scout_run_api_SearchQuery"]] = None,
60915
61472
  or_: Optional[List["scout_run_api_SearchQuery"]] = None,
61473
+ workspace: Optional[str] = None,
60916
61474
  type_of_union: Optional[str] = None
60917
61475
  ) -> None:
60918
61476
  if type_of_union is None:
60919
- if (start_time_inclusive is not None) + (end_time_inclusive is not None) + (exact_match is not None) + (search_text is not None) + (asset is not None) + (label is not None) + (property is not None) + (data_source_series_tag is not None) + (data_source_ref_name is not None) + (data_source is not None) + (run_number is not None) + (run_prefix is not None) + (check_alert_states_filter is not None) + (and_ is not None) + (or_ is not None) != 1:
61477
+ if (start_time_inclusive is not None) + (end_time_inclusive is not None) + (exact_match is not None) + (search_text is not None) + (asset is not None) + (label is not None) + (property is not None) + (data_source_series_tag is not None) + (data_source_ref_name is not None) + (data_source is not None) + (run_number is not None) + (run_prefix is not None) + (check_alert_states_filter is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
60920
61478
  raise ValueError('a union must contain a single member')
60921
61479
 
60922
61480
  if start_time_inclusive is not None:
@@ -60964,6 +61522,9 @@ class scout_run_api_SearchQuery(ConjureUnionType):
60964
61522
  if or_ is not None:
60965
61523
  self._or_ = or_
60966
61524
  self._type = 'or'
61525
+ if workspace is not None:
61526
+ self._workspace = workspace
61527
+ self._type = 'workspace'
60967
61528
 
60968
61529
  elif type_of_union == 'startTimeInclusive':
60969
61530
  if start_time_inclusive is None:
@@ -61040,6 +61601,11 @@ class scout_run_api_SearchQuery(ConjureUnionType):
61040
61601
  raise ValueError('a union value must not be None')
61041
61602
  self._or_ = or_
61042
61603
  self._type = 'or'
61604
+ elif type_of_union == 'workspace':
61605
+ if workspace is None:
61606
+ raise ValueError('a union value must not be None')
61607
+ self._workspace = workspace
61608
+ self._type = 'workspace'
61043
61609
 
61044
61610
  @builtins.property
61045
61611
  def start_time_inclusive(self) -> Optional["scout_run_api_UtcTimestamp"]:
@@ -61107,6 +61673,10 @@ class scout_run_api_SearchQuery(ConjureUnionType):
61107
61673
  def or_(self) -> Optional[List["scout_run_api_SearchQuery"]]:
61108
61674
  return self._or_
61109
61675
 
61676
+ @builtins.property
61677
+ def workspace(self) -> Optional[str]:
61678
+ return self._workspace
61679
+
61110
61680
  def accept(self, visitor) -> Any:
61111
61681
  if not isinstance(visitor, scout_run_api_SearchQueryVisitor):
61112
61682
  raise ValueError('{} is not an instance of scout_run_api_SearchQueryVisitor'.format(visitor.__class__.__name__))
@@ -61140,6 +61710,8 @@ class scout_run_api_SearchQuery(ConjureUnionType):
61140
61710
  return visitor._and(self.and_)
61141
61711
  if self._type == 'or' and self.or_ is not None:
61142
61712
  return visitor._or(self.or_)
61713
+ if self._type == 'workspace' and self.workspace is not None:
61714
+ return visitor._workspace(self.workspace)
61143
61715
 
61144
61716
 
61145
61717
  scout_run_api_SearchQuery.__name__ = "SearchQuery"
@@ -61209,6 +61781,10 @@ class scout_run_api_SearchQueryVisitor:
61209
61781
  def _or(self, or_: List["scout_run_api_SearchQuery"]) -> Any:
61210
61782
  pass
61211
61783
 
61784
+ @abstractmethod
61785
+ def _workspace(self, workspace: str) -> Any:
61786
+ pass
61787
+
61212
61788
 
61213
61789
  scout_run_api_SearchQueryVisitor.__name__ = "SearchQueryVisitor"
61214
61790
  scout_run_api_SearchQueryVisitor.__qualname__ = "SearchQueryVisitor"
@@ -61742,12 +62318,13 @@ class scout_template_api_CreateTemplateRequest(ConjureBeanType):
61742
62318
  'charts': ConjureFieldDefinition('charts', OptionalTypeWrapper[List[scout_rids_api_VersionedVizId]]),
61743
62319
  'layout': ConjureFieldDefinition('layout', scout_layout_api_WorkbookLayout),
61744
62320
  'content': ConjureFieldDefinition('content', scout_workbookcommon_api_WorkbookContent),
61745
- 'message': ConjureFieldDefinition('message', str)
62321
+ 'message': ConjureFieldDefinition('message', str),
62322
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
61746
62323
  }
61747
62324
 
61748
- __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_is_published', '_charts', '_layout', '_content', '_message']
62325
+ __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_is_published', '_charts', '_layout', '_content', '_message', '_workspace']
61749
62326
 
61750
- def __init__(self, content: "scout_workbookcommon_api_WorkbookContent", description: str, labels: List[str], layout: "scout_layout_api_WorkbookLayout", message: str, properties: Dict[str, str], title: str, charts: Optional[List["scout_rids_api_VersionedVizId"]] = None, is_published: Optional[bool] = None) -> None:
62327
+ def __init__(self, content: "scout_workbookcommon_api_WorkbookContent", description: str, labels: List[str], layout: "scout_layout_api_WorkbookLayout", message: str, properties: Dict[str, str], title: str, charts: Optional[List["scout_rids_api_VersionedVizId"]] = None, is_published: Optional[bool] = None, workspace: Optional[str] = None) -> None:
61751
62328
  self._title = title
61752
62329
  self._description = description
61753
62330
  self._labels = labels
@@ -61757,6 +62334,7 @@ class scout_template_api_CreateTemplateRequest(ConjureBeanType):
61757
62334
  self._layout = layout
61758
62335
  self._content = content
61759
62336
  self._message = message
62337
+ self._workspace = workspace
61760
62338
 
61761
62339
  @builtins.property
61762
62340
  def title(self) -> str:
@@ -61797,6 +62375,14 @@ class scout_template_api_CreateTemplateRequest(ConjureBeanType):
61797
62375
  def message(self) -> str:
61798
62376
  return self._message
61799
62377
 
62378
+ @builtins.property
62379
+ def workspace(self) -> Optional[str]:
62380
+ """
62381
+ The workspace in which to create the template. If not provided, the template will be created in the default workspace for
62382
+ the user's organization, if the default workspace for the organization is configured.
62383
+ """
62384
+ return self._workspace
62385
+
61800
62386
 
61801
62387
  scout_template_api_CreateTemplateRequest.__name__ = "CreateTemplateRequest"
61802
62388
  scout_template_api_CreateTemplateRequest.__qualname__ = "CreateTemplateRequest"
@@ -61929,6 +62515,7 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
61929
62515
  _created_by: Optional[str] = None
61930
62516
  _is_archived: Optional[bool] = None
61931
62517
  _is_published: Optional[bool] = None
62518
+ _workspace: Optional[str] = None
61932
62519
 
61933
62520
  @builtins.classmethod
61934
62521
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -61941,7 +62528,8 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
61941
62528
  'property': ConjureFieldDefinition('property', api_Property),
61942
62529
  'created_by': ConjureFieldDefinition('createdBy', scout_rids_api_UserRid),
61943
62530
  'is_archived': ConjureFieldDefinition('isArchived', bool),
61944
- 'is_published': ConjureFieldDefinition('isPublished', bool)
62531
+ 'is_published': ConjureFieldDefinition('isPublished', bool),
62532
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
61945
62533
  }
61946
62534
 
61947
62535
  def __init__(
@@ -61955,10 +62543,11 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
61955
62543
  created_by: Optional[str] = None,
61956
62544
  is_archived: Optional[bool] = None,
61957
62545
  is_published: Optional[bool] = None,
62546
+ workspace: Optional[str] = None,
61958
62547
  type_of_union: Optional[str] = None
61959
62548
  ) -> None:
61960
62549
  if type_of_union is None:
61961
- if (and_ is not None) + (or_ is not None) + (exact_match is not None) + (search_text is not None) + (label is not None) + (property is not None) + (created_by is not None) + (is_archived is not None) + (is_published is not None) != 1:
62550
+ if (and_ is not None) + (or_ is not None) + (exact_match is not None) + (search_text is not None) + (label is not None) + (property is not None) + (created_by is not None) + (is_archived is not None) + (is_published is not None) + (workspace is not None) != 1:
61962
62551
  raise ValueError('a union must contain a single member')
61963
62552
 
61964
62553
  if and_ is not None:
@@ -61988,6 +62577,9 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
61988
62577
  if is_published is not None:
61989
62578
  self._is_published = is_published
61990
62579
  self._type = 'isPublished'
62580
+ if workspace is not None:
62581
+ self._workspace = workspace
62582
+ self._type = 'workspace'
61991
62583
 
61992
62584
  elif type_of_union == 'and':
61993
62585
  if and_ is None:
@@ -62034,6 +62626,11 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
62034
62626
  raise ValueError('a union value must not be None')
62035
62627
  self._is_published = is_published
62036
62628
  self._type = 'isPublished'
62629
+ elif type_of_union == 'workspace':
62630
+ if workspace is None:
62631
+ raise ValueError('a union value must not be None')
62632
+ self._workspace = workspace
62633
+ self._type = 'workspace'
62037
62634
 
62038
62635
  @builtins.property
62039
62636
  def and_(self) -> Optional[List["scout_template_api_SearchTemplatesQuery"]]:
@@ -62077,6 +62674,10 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
62077
62674
  def is_published(self) -> Optional[bool]:
62078
62675
  return self._is_published
62079
62676
 
62677
+ @builtins.property
62678
+ def workspace(self) -> Optional[str]:
62679
+ return self._workspace
62680
+
62080
62681
  def accept(self, visitor) -> Any:
62081
62682
  if not isinstance(visitor, scout_template_api_SearchTemplatesQueryVisitor):
62082
62683
  raise ValueError('{} is not an instance of scout_template_api_SearchTemplatesQueryVisitor'.format(visitor.__class__.__name__))
@@ -62098,6 +62699,8 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
62098
62699
  return visitor._is_archived(self.is_archived)
62099
62700
  if self._type == 'isPublished' and self.is_published is not None:
62100
62701
  return visitor._is_published(self.is_published)
62702
+ if self._type == 'workspace' and self.workspace is not None:
62703
+ return visitor._workspace(self.workspace)
62101
62704
 
62102
62705
 
62103
62706
  scout_template_api_SearchTemplatesQuery.__name__ = "SearchTemplatesQuery"
@@ -62143,6 +62746,10 @@ class scout_template_api_SearchTemplatesQueryVisitor:
62143
62746
  def _is_published(self, is_published: bool) -> Any:
62144
62747
  pass
62145
62748
 
62749
+ @abstractmethod
62750
+ def _workspace(self, workspace: str) -> Any:
62751
+ pass
62752
+
62146
62753
 
62147
62754
  scout_template_api_SearchTemplatesQueryVisitor.__name__ = "SearchTemplatesQueryVisitor"
62148
62755
  scout_template_api_SearchTemplatesQueryVisitor.__qualname__ = "SearchTemplatesQueryVisitor"
@@ -64241,17 +64848,19 @@ class scout_video_api_CreateVideoRequest(ConjureBeanType):
64241
64848
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
64242
64849
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
64243
64850
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
64244
- 'origin_metadata': ConjureFieldDefinition('originMetadata', scout_video_api_VideoOriginMetadata)
64851
+ 'origin_metadata': ConjureFieldDefinition('originMetadata', scout_video_api_VideoOriginMetadata),
64852
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
64245
64853
  }
64246
64854
 
64247
- __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_origin_metadata']
64855
+ __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_origin_metadata', '_workspace']
64248
64856
 
64249
- def __init__(self, labels: List[str], origin_metadata: "scout_video_api_VideoOriginMetadata", properties: Dict[str, str], title: str, description: Optional[str] = None) -> None:
64857
+ def __init__(self, labels: List[str], origin_metadata: "scout_video_api_VideoOriginMetadata", properties: Dict[str, str], title: str, description: Optional[str] = None, workspace: Optional[str] = None) -> None:
64250
64858
  self._title = title
64251
64859
  self._description = description
64252
64860
  self._labels = labels
64253
64861
  self._properties = properties
64254
64862
  self._origin_metadata = origin_metadata
64863
+ self._workspace = workspace
64255
64864
 
64256
64865
  @builtins.property
64257
64866
  def title(self) -> str:
@@ -64273,6 +64882,15 @@ class scout_video_api_CreateVideoRequest(ConjureBeanType):
64273
64882
  def origin_metadata(self) -> "scout_video_api_VideoOriginMetadata":
64274
64883
  return self._origin_metadata
64275
64884
 
64885
+ @builtins.property
64886
+ def workspace(self) -> Optional[str]:
64887
+ """
64888
+ The workspace in which to create the video. If not provided, the video will be created in
64889
+ the default workspace for the user's organization, if the default workspace for the
64890
+ organization is configured.
64891
+ """
64892
+ return self._workspace
64893
+
64276
64894
 
64277
64895
  scout_video_api_CreateVideoRequest.__name__ = "CreateVideoRequest"
64278
64896
  scout_video_api_CreateVideoRequest.__qualname__ = "CreateVideoRequest"
@@ -64710,6 +65328,7 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64710
65328
  _and_: Optional[List["scout_video_api_SearchVideosQuery"]] = None
64711
65329
  _or_: Optional[List["scout_video_api_SearchVideosQuery"]] = None
64712
65330
  _ingest_status: Optional["api_IngestStatus"] = None
65331
+ _workspace: Optional[str] = None
64713
65332
 
64714
65333
  @builtins.classmethod
64715
65334
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -64719,7 +65338,8 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64719
65338
  'property': ConjureFieldDefinition('property', api_Property),
64720
65339
  'and_': ConjureFieldDefinition('and', List[scout_video_api_SearchVideosQuery]),
64721
65340
  'or_': ConjureFieldDefinition('or', List[scout_video_api_SearchVideosQuery]),
64722
- 'ingest_status': ConjureFieldDefinition('ingestStatus', api_IngestStatus)
65341
+ 'ingest_status': ConjureFieldDefinition('ingestStatus', api_IngestStatus),
65342
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
64723
65343
  }
64724
65344
 
64725
65345
  def __init__(
@@ -64730,10 +65350,11 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64730
65350
  and_: Optional[List["scout_video_api_SearchVideosQuery"]] = None,
64731
65351
  or_: Optional[List["scout_video_api_SearchVideosQuery"]] = None,
64732
65352
  ingest_status: Optional["api_IngestStatus"] = None,
65353
+ workspace: Optional[str] = None,
64733
65354
  type_of_union: Optional[str] = None
64734
65355
  ) -> None:
64735
65356
  if type_of_union is None:
64736
- if (search_text is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (ingest_status is not None) != 1:
65357
+ if (search_text is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (ingest_status is not None) + (workspace is not None) != 1:
64737
65358
  raise ValueError('a union must contain a single member')
64738
65359
 
64739
65360
  if search_text is not None:
@@ -64754,6 +65375,9 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64754
65375
  if ingest_status is not None:
64755
65376
  self._ingest_status = ingest_status
64756
65377
  self._type = 'ingestStatus'
65378
+ if workspace is not None:
65379
+ self._workspace = workspace
65380
+ self._type = 'workspace'
64757
65381
 
64758
65382
  elif type_of_union == 'searchText':
64759
65383
  if search_text is None:
@@ -64785,6 +65409,11 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64785
65409
  raise ValueError('a union value must not be None')
64786
65410
  self._ingest_status = ingest_status
64787
65411
  self._type = 'ingestStatus'
65412
+ elif type_of_union == 'workspace':
65413
+ if workspace is None:
65414
+ raise ValueError('a union value must not be None')
65415
+ self._workspace = workspace
65416
+ self._type = 'workspace'
64788
65417
 
64789
65418
  @builtins.property
64790
65419
  def search_text(self) -> Optional[str]:
@@ -64810,6 +65439,10 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64810
65439
  def ingest_status(self) -> Optional["api_IngestStatus"]:
64811
65440
  return self._ingest_status
64812
65441
 
65442
+ @builtins.property
65443
+ def workspace(self) -> Optional[str]:
65444
+ return self._workspace
65445
+
64813
65446
  def accept(self, visitor) -> Any:
64814
65447
  if not isinstance(visitor, scout_video_api_SearchVideosQueryVisitor):
64815
65448
  raise ValueError('{} is not an instance of scout_video_api_SearchVideosQueryVisitor'.format(visitor.__class__.__name__))
@@ -64825,6 +65458,8 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
64825
65458
  return visitor._or(self.or_)
64826
65459
  if self._type == 'ingestStatus' and self.ingest_status is not None:
64827
65460
  return visitor._ingest_status(self.ingest_status)
65461
+ if self._type == 'workspace' and self.workspace is not None:
65462
+ return visitor._workspace(self.workspace)
64828
65463
 
64829
65464
 
64830
65465
  scout_video_api_SearchVideosQuery.__name__ = "SearchVideosQuery"
@@ -64858,6 +65493,10 @@ class scout_video_api_SearchVideosQueryVisitor:
64858
65493
  def _ingest_status(self, ingest_status: "api_IngestStatus") -> Any:
64859
65494
  pass
64860
65495
 
65496
+ @abstractmethod
65497
+ def _workspace(self, workspace: str) -> Any:
65498
+ pass
65499
+
64861
65500
 
64862
65501
  scout_video_api_SearchVideosQueryVisitor.__name__ = "SearchVideosQueryVisitor"
64863
65502
  scout_video_api_SearchVideosQueryVisitor.__qualname__ = "SearchVideosQueryVisitor"
@@ -66270,17 +66909,19 @@ class secrets_api_CreateSecretRequest(ConjureBeanType):
66270
66909
  'description': ConjureFieldDefinition('description', str),
66271
66910
  'decrypted_value': ConjureFieldDefinition('decryptedValue', str),
66272
66911
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
66273
- 'labels': ConjureFieldDefinition('labels', List[api_Label])
66912
+ 'labels': ConjureFieldDefinition('labels', List[api_Label]),
66913
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
66274
66914
  }
66275
66915
 
66276
- __slots__: List[str] = ['_name', '_description', '_decrypted_value', '_properties', '_labels']
66916
+ __slots__: List[str] = ['_name', '_description', '_decrypted_value', '_properties', '_labels', '_workspace']
66277
66917
 
66278
- def __init__(self, decrypted_value: str, description: str, labels: List[str], name: str, properties: Dict[str, str]) -> None:
66918
+ def __init__(self, decrypted_value: str, description: str, labels: List[str], name: str, properties: Dict[str, str], workspace: Optional[str] = None) -> None:
66279
66919
  self._name = name
66280
66920
  self._description = description
66281
66921
  self._decrypted_value = decrypted_value
66282
66922
  self._properties = properties
66283
66923
  self._labels = labels
66924
+ self._workspace = workspace
66284
66925
 
66285
66926
  @builtins.property
66286
66927
  def name(self) -> str:
@@ -66302,6 +66943,15 @@ class secrets_api_CreateSecretRequest(ConjureBeanType):
66302
66943
  def labels(self) -> List[str]:
66303
66944
  return self._labels
66304
66945
 
66946
+ @builtins.property
66947
+ def workspace(self) -> Optional[str]:
66948
+ """
66949
+ The workspace in which to create the secret. If not provided, the secret will be created in
66950
+ the default workspace for the user's organization, if the default workspace for the
66951
+ organization is configured.
66952
+ """
66953
+ return self._workspace
66954
+
66305
66955
 
66306
66956
  secrets_api_CreateSecretRequest.__name__ = "CreateSecretRequest"
66307
66957
  secrets_api_CreateSecretRequest.__qualname__ = "CreateSecretRequest"
@@ -66360,6 +67010,7 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66360
67010
  _property: Optional["api_Property"] = None
66361
67011
  _and_: Optional[List["secrets_api_SearchSecretsQuery"]] = None
66362
67012
  _or_: Optional[List["secrets_api_SearchSecretsQuery"]] = None
67013
+ _workspace: Optional[str] = None
66363
67014
 
66364
67015
  @builtins.classmethod
66365
67016
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -66368,7 +67019,8 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66368
67019
  'label': ConjureFieldDefinition('label', api_Label),
66369
67020
  'property': ConjureFieldDefinition('property', api_Property),
66370
67021
  'and_': ConjureFieldDefinition('and', List[secrets_api_SearchSecretsQuery]),
66371
- 'or_': ConjureFieldDefinition('or', List[secrets_api_SearchSecretsQuery])
67022
+ 'or_': ConjureFieldDefinition('or', List[secrets_api_SearchSecretsQuery]),
67023
+ 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
66372
67024
  }
66373
67025
 
66374
67026
  def __init__(
@@ -66378,10 +67030,11 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66378
67030
  property: Optional["api_Property"] = None,
66379
67031
  and_: Optional[List["secrets_api_SearchSecretsQuery"]] = None,
66380
67032
  or_: Optional[List["secrets_api_SearchSecretsQuery"]] = None,
67033
+ workspace: Optional[str] = None,
66381
67034
  type_of_union: Optional[str] = None
66382
67035
  ) -> None:
66383
67036
  if type_of_union is None:
66384
- if (search_text is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) != 1:
67037
+ if (search_text is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
66385
67038
  raise ValueError('a union must contain a single member')
66386
67039
 
66387
67040
  if search_text is not None:
@@ -66399,6 +67052,9 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66399
67052
  if or_ is not None:
66400
67053
  self._or_ = or_
66401
67054
  self._type = 'or'
67055
+ if workspace is not None:
67056
+ self._workspace = workspace
67057
+ self._type = 'workspace'
66402
67058
 
66403
67059
  elif type_of_union == 'searchText':
66404
67060
  if search_text is None:
@@ -66425,6 +67081,11 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66425
67081
  raise ValueError('a union value must not be None')
66426
67082
  self._or_ = or_
66427
67083
  self._type = 'or'
67084
+ elif type_of_union == 'workspace':
67085
+ if workspace is None:
67086
+ raise ValueError('a union value must not be None')
67087
+ self._workspace = workspace
67088
+ self._type = 'workspace'
66428
67089
 
66429
67090
  @builtins.property
66430
67091
  def search_text(self) -> Optional[str]:
@@ -66446,6 +67107,10 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66446
67107
  def or_(self) -> Optional[List["secrets_api_SearchSecretsQuery"]]:
66447
67108
  return self._or_
66448
67109
 
67110
+ @builtins.property
67111
+ def workspace(self) -> Optional[str]:
67112
+ return self._workspace
67113
+
66449
67114
  def accept(self, visitor) -> Any:
66450
67115
  if not isinstance(visitor, secrets_api_SearchSecretsQueryVisitor):
66451
67116
  raise ValueError('{} is not an instance of secrets_api_SearchSecretsQueryVisitor'.format(visitor.__class__.__name__))
@@ -66459,6 +67124,8 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
66459
67124
  return visitor._and(self.and_)
66460
67125
  if self._type == 'or' and self.or_ is not None:
66461
67126
  return visitor._or(self.or_)
67127
+ if self._type == 'workspace' and self.workspace is not None:
67128
+ return visitor._workspace(self.workspace)
66462
67129
 
66463
67130
 
66464
67131
  secrets_api_SearchSecretsQuery.__name__ = "SearchSecretsQuery"
@@ -66488,6 +67155,10 @@ class secrets_api_SearchSecretsQueryVisitor:
66488
67155
  def _or(self, or_: List["secrets_api_SearchSecretsQuery"]) -> Any:
66489
67156
  pass
66490
67157
 
67158
+ @abstractmethod
67159
+ def _workspace(self, workspace: str) -> Any:
67160
+ pass
67161
+
66491
67162
 
66492
67163
  secrets_api_SearchSecretsQueryVisitor.__name__ = "SearchSecretsQueryVisitor"
66493
67164
  secrets_api_SearchSecretsQueryVisitor.__qualname__ = "SearchSecretsQueryVisitor"
@@ -67082,16 +67753,18 @@ class storage_datasource_api_CreateNominalDataSourceRequest(ConjureBeanType):
67082
67753
  'id': ConjureFieldDefinition('id', storage_datasource_api_NominalDataSourceId),
67083
67754
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
67084
67755
  'granularity': ConjureFieldDefinition('granularity', OptionalTypeWrapper[api_Granularity]),
67085
- 'in_memory_streaming_enabled': ConjureFieldDefinition('inMemoryStreamingEnabled', OptionalTypeWrapper[bool])
67756
+ 'in_memory_streaming_enabled': ConjureFieldDefinition('inMemoryStreamingEnabled', OptionalTypeWrapper[bool]),
67757
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
67086
67758
  }
67087
67759
 
67088
- __slots__: List[str] = ['_id', '_description', '_granularity', '_in_memory_streaming_enabled']
67760
+ __slots__: List[str] = ['_id', '_description', '_granularity', '_in_memory_streaming_enabled', '_workspace']
67089
67761
 
67090
- def __init__(self, id: str, description: Optional[str] = None, granularity: Optional["api_Granularity"] = None, in_memory_streaming_enabled: Optional[bool] = None) -> None:
67762
+ def __init__(self, id: str, description: Optional[str] = None, granularity: Optional["api_Granularity"] = None, in_memory_streaming_enabled: Optional[bool] = None, workspace: Optional[str] = None) -> None:
67091
67763
  self._id = id
67092
67764
  self._description = description
67093
67765
  self._granularity = granularity
67094
67766
  self._in_memory_streaming_enabled = in_memory_streaming_enabled
67767
+ self._workspace = workspace
67095
67768
 
67096
67769
  @builtins.property
67097
67770
  def id(self) -> str:
@@ -67116,6 +67789,14 @@ Defaults to nanosecond granularity.
67116
67789
  def in_memory_streaming_enabled(self) -> Optional[bool]:
67117
67790
  return self._in_memory_streaming_enabled
67118
67791
 
67792
+ @builtins.property
67793
+ def workspace(self) -> Optional[str]:
67794
+ """
67795
+ The workspace in which to create the datasource. If not provided, the datasource will be created in the default workspace for
67796
+ the user's organization, if the default workspace for the organization is configured.
67797
+ """
67798
+ return self._workspace
67799
+
67119
67800
 
67120
67801
  storage_datasource_api_CreateNominalDataSourceRequest.__name__ = "CreateNominalDataSourceRequest"
67121
67802
  storage_datasource_api_CreateNominalDataSourceRequest.__qualname__ = "CreateNominalDataSourceRequest"
@@ -69077,14 +69758,16 @@ class themes_api_CreateChartThemeRequest(ConjureBeanType):
69077
69758
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
69078
69759
  return {
69079
69760
  'name': ConjureFieldDefinition('name', str),
69080
- 'content': ConjureFieldDefinition('content', themes_api_ChartThemeContent)
69761
+ 'content': ConjureFieldDefinition('content', themes_api_ChartThemeContent),
69762
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
69081
69763
  }
69082
69764
 
69083
- __slots__: List[str] = ['_name', '_content']
69765
+ __slots__: List[str] = ['_name', '_content', '_workspace']
69084
69766
 
69085
- def __init__(self, content: "themes_api_ChartThemeContent", name: str) -> None:
69767
+ def __init__(self, content: "themes_api_ChartThemeContent", name: str, workspace: Optional[str] = None) -> None:
69086
69768
  self._name = name
69087
69769
  self._content = content
69770
+ self._workspace = workspace
69088
69771
 
69089
69772
  @builtins.property
69090
69773
  def name(self) -> str:
@@ -69100,6 +69783,14 @@ class themes_api_CreateChartThemeRequest(ConjureBeanType):
69100
69783
  """
69101
69784
  return self._content
69102
69785
 
69786
+ @builtins.property
69787
+ def workspace(self) -> Optional[str]:
69788
+ """
69789
+ The workspace in which to create the theme. If not provided, the theme will be created in the default workspace for
69790
+ the user's organization, if the default workspace for the organization is configured.
69791
+ """
69792
+ return self._workspace
69793
+
69103
69794
 
69104
69795
  themes_api_CreateChartThemeRequest.__name__ = "CreateChartThemeRequest"
69105
69796
  themes_api_CreateChartThemeRequest.__qualname__ = "CreateChartThemeRequest"
@@ -69173,10 +69864,11 @@ class themes_api_ThemesService(Service):
69173
69864
  Themes service manages themes for exporting charts.
69174
69865
  """
69175
69866
 
69176
- def list_chart_themes(self, auth_header: str) -> List["themes_api_ChartTheme"]:
69867
+ def list_chart_themes(self, auth_header: str, workspaces: List[str] = None) -> List["themes_api_ChartTheme"]:
69177
69868
  """
69178
- Get all chart themes saved to the user's organization.
69869
+ Get all chart themes saved to the requested workspaces.
69179
69870
  """
69871
+ workspaces = workspaces if workspaces is not None else []
69180
69872
 
69181
69873
  _headers: Dict[str, Any] = {
69182
69874
  'Accept': 'application/json',
@@ -69184,6 +69876,7 @@ class themes_api_ThemesService(Service):
69184
69876
  }
69185
69877
 
69186
69878
  _params: Dict[str, Any] = {
69879
+ 'workspaces': workspaces,
69187
69880
  }
69188
69881
 
69189
69882
  _path_params: Dict[str, Any] = {
@@ -73337,6 +74030,8 @@ datasource_DatasetFileId = str
73337
74030
 
73338
74031
  api_rids_WorkspaceRid = str
73339
74032
 
74033
+ persistent_compute_api_SubscriptionId = str
74034
+
73340
74035
  api_McapChannelTopic = str
73341
74036
 
73342
74037
  scout_compute_api_VariableName = str
@@ -73349,6 +74044,8 @@ scout_channelvariables_api_ChannelVariableName = str
73349
74044
 
73350
74045
  scout_datareview_api_ManualCheckEvaluationRid = str
73351
74046
 
74047
+ api_ids_WorkspaceId = str
74048
+
73352
74049
  scout_asset_api_Channel = str
73353
74050
 
73354
74051
  scout_rids_api_FunctionRid = str
@@ -73485,9 +74182,9 @@ storage_writer_api_MeasurementName = str
73485
74182
 
73486
74183
  storage_datasource_api_NominalDataSourceId = str
73487
74184
 
73488
- scout_datareview_api_AutomaticCheckEvaluationRid = str
74185
+ persistent_compute_api_Milliseconds = int
73489
74186
 
73490
- api_ids_WorkspaceId = str
74187
+ scout_datareview_api_AutomaticCheckEvaluationRid = str
73491
74188
 
73492
74189
  scout_compute_api_ErrorType = str
73493
74190