nominal-api 0.603.0__py3-none-any.whl → 0.604.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
@@ -944,7 +944,7 @@ class attachments_api_CreateAttachmentRequest(ConjureBeanType):
944
944
  'description': ConjureFieldDefinition('description', str),
945
945
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
946
946
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
947
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
947
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
948
948
  }
949
949
 
950
950
  __slots__: List[str] = ['_s3_path', '_title', '_description', '_properties', '_labels', '_workspace']
@@ -1054,7 +1054,7 @@ class attachments_api_SearchAttachmentsQuery(ConjureUnionType):
1054
1054
  'property': ConjureFieldDefinition('property', api_Property),
1055
1055
  'and_': ConjureFieldDefinition('and', List[attachments_api_SearchAttachmentsQuery]),
1056
1056
  'or_': ConjureFieldDefinition('or', List[attachments_api_SearchAttachmentsQuery]),
1057
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
1057
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
1058
1058
  }
1059
1059
 
1060
1060
  def __init__(
@@ -1240,1589 +1240,6 @@ attachments_api_UpdateAttachmentRequest.__qualname__ = "UpdateAttachmentRequest"
1240
1240
  attachments_api_UpdateAttachmentRequest.__module__ = "nominal_api.attachments_api"
1241
1241
 
1242
1242
 
1243
- class authentication_api_AppearanceSetting(ConjureEnumType):
1244
-
1245
- SYSTEM = 'SYSTEM'
1246
- '''SYSTEM'''
1247
- LIGHT = 'LIGHT'
1248
- '''LIGHT'''
1249
- DARK = 'DARK'
1250
- '''DARK'''
1251
- UNKNOWN = 'UNKNOWN'
1252
- '''UNKNOWN'''
1253
-
1254
- def __reduce_ex__(self, proto):
1255
- return self.__class__, (self.name,)
1256
-
1257
-
1258
- authentication_api_AppearanceSetting.__name__ = "AppearanceSetting"
1259
- authentication_api_AppearanceSetting.__qualname__ = "AppearanceSetting"
1260
- authentication_api_AppearanceSetting.__module__ = "nominal_api.authentication_api"
1261
-
1262
-
1263
- class authentication_api_AuthenticationServiceV2(Service):
1264
- """
1265
- This service provides operations for managing user and org profiles/settings.
1266
- Its name is a bit of a misnomer.
1267
- """
1268
-
1269
- def get_my_profile(self, auth_header: str) -> "authentication_api_UserV2":
1270
- """
1271
- Gets the profile of the authenticated user.
1272
- """
1273
-
1274
- _headers: Dict[str, Any] = {
1275
- 'Accept': 'application/json',
1276
- 'Authorization': auth_header,
1277
- }
1278
-
1279
- _params: Dict[str, Any] = {
1280
- }
1281
-
1282
- _path_params: Dict[str, Any] = {
1283
- }
1284
-
1285
- _json: Any = None
1286
-
1287
- _path = '/authentication/v2/my/profile'
1288
- _path = _path.format(**_path_params)
1289
-
1290
- _response: Response = self._request(
1291
- 'GET',
1292
- self._uri + _path,
1293
- params=_params,
1294
- headers=_headers,
1295
- json=_json)
1296
-
1297
- _decoder = ConjureDecoder()
1298
- return _decoder.decode(_response.json(), authentication_api_UserV2, self._return_none_for_unknown_union_types)
1299
-
1300
- def update_my_profile(self, auth_header: str, update_my_profile_request: "authentication_api_UpdateMyProfileRequest") -> "authentication_api_UserV2":
1301
- """
1302
- Updates the profile of the authenticated user.
1303
- """
1304
-
1305
- _headers: Dict[str, Any] = {
1306
- 'Accept': 'application/json',
1307
- 'Content-Type': 'application/json',
1308
- 'Authorization': auth_header,
1309
- }
1310
-
1311
- _params: Dict[str, Any] = {
1312
- }
1313
-
1314
- _path_params: Dict[str, Any] = {
1315
- }
1316
-
1317
- _json: Any = ConjureEncoder().default(update_my_profile_request)
1318
-
1319
- _path = '/authentication/v2/my/profile'
1320
- _path = _path.format(**_path_params)
1321
-
1322
- _response: Response = self._request(
1323
- 'PUT',
1324
- self._uri + _path,
1325
- params=_params,
1326
- headers=_headers,
1327
- json=_json)
1328
-
1329
- _decoder = ConjureDecoder()
1330
- return _decoder.decode(_response.json(), authentication_api_UserV2, self._return_none_for_unknown_union_types)
1331
-
1332
- def get_my_settings(self, auth_header: str) -> "authentication_api_UserSettings":
1333
- """
1334
- Gets the settings of the authenticated user.
1335
- """
1336
-
1337
- _headers: Dict[str, Any] = {
1338
- 'Accept': 'application/json',
1339
- 'Authorization': auth_header,
1340
- }
1341
-
1342
- _params: Dict[str, Any] = {
1343
- }
1344
-
1345
- _path_params: Dict[str, Any] = {
1346
- }
1347
-
1348
- _json: Any = None
1349
-
1350
- _path = '/authentication/v2/my/settings'
1351
- _path = _path.format(**_path_params)
1352
-
1353
- _response: Response = self._request(
1354
- 'GET',
1355
- self._uri + _path,
1356
- params=_params,
1357
- headers=_headers,
1358
- json=_json)
1359
-
1360
- _decoder = ConjureDecoder()
1361
- return _decoder.decode(_response.json(), authentication_api_UserSettings, self._return_none_for_unknown_union_types)
1362
-
1363
- def update_my_settings(self, auth_header: str, user_settings: "authentication_api_UserSettings") -> "authentication_api_UserSettings":
1364
- """
1365
- Updates the settings of the authenticated user.
1366
- """
1367
-
1368
- _headers: Dict[str, Any] = {
1369
- 'Accept': 'application/json',
1370
- 'Content-Type': 'application/json',
1371
- 'Authorization': auth_header,
1372
- }
1373
-
1374
- _params: Dict[str, Any] = {
1375
- }
1376
-
1377
- _path_params: Dict[str, Any] = {
1378
- }
1379
-
1380
- _json: Any = ConjureEncoder().default(user_settings)
1381
-
1382
- _path = '/authentication/v2/my/settings'
1383
- _path = _path.format(**_path_params)
1384
-
1385
- _response: Response = self._request(
1386
- 'PUT',
1387
- self._uri + _path,
1388
- params=_params,
1389
- headers=_headers,
1390
- json=_json)
1391
-
1392
- _decoder = ConjureDecoder()
1393
- return _decoder.decode(_response.json(), authentication_api_UserSettings, self._return_none_for_unknown_union_types)
1394
-
1395
- def get_my_org_settings(self, auth_header: str) -> "authentication_api_OrgSettings":
1396
- """
1397
- Gets the settings of the org of the authenticated user.
1398
- """
1399
-
1400
- _headers: Dict[str, Any] = {
1401
- 'Accept': 'application/json',
1402
- 'Authorization': auth_header,
1403
- }
1404
-
1405
- _params: Dict[str, Any] = {
1406
- }
1407
-
1408
- _path_params: Dict[str, Any] = {
1409
- }
1410
-
1411
- _json: Any = None
1412
-
1413
- _path = '/authentication/v2/org/settings'
1414
- _path = _path.format(**_path_params)
1415
-
1416
- _response: Response = self._request(
1417
- 'GET',
1418
- self._uri + _path,
1419
- params=_params,
1420
- headers=_headers,
1421
- json=_json)
1422
-
1423
- _decoder = ConjureDecoder()
1424
- return _decoder.decode(_response.json(), authentication_api_OrgSettings, self._return_none_for_unknown_union_types)
1425
-
1426
- def update_my_org_settings(self, auth_header: str, org_settings: "authentication_api_OrgSettings") -> "authentication_api_OrgSettings":
1427
- """
1428
- Updates the settings of the org of the authenticated user.
1429
- """
1430
-
1431
- _headers: Dict[str, Any] = {
1432
- 'Accept': 'application/json',
1433
- 'Content-Type': 'application/json',
1434
- 'Authorization': auth_header,
1435
- }
1436
-
1437
- _params: Dict[str, Any] = {
1438
- }
1439
-
1440
- _path_params: Dict[str, Any] = {
1441
- }
1442
-
1443
- _json: Any = ConjureEncoder().default(org_settings)
1444
-
1445
- _path = '/authentication/v2/org/settings'
1446
- _path = _path.format(**_path_params)
1447
-
1448
- _response: Response = self._request(
1449
- 'PUT',
1450
- self._uri + _path,
1451
- params=_params,
1452
- headers=_headers,
1453
- json=_json)
1454
-
1455
- _decoder = ConjureDecoder()
1456
- return _decoder.decode(_response.json(), authentication_api_OrgSettings, self._return_none_for_unknown_union_types)
1457
-
1458
- def search_users_v2(self, auth_header: str, request: "authentication_api_SearchUsersRequest") -> "authentication_api_SearchUsersResponseV2":
1459
- """
1460
- Searches for users by email and displayName.
1461
- """
1462
-
1463
- _headers: Dict[str, Any] = {
1464
- 'Accept': 'application/json',
1465
- 'Content-Type': 'application/json',
1466
- 'Authorization': auth_header,
1467
- }
1468
-
1469
- _params: Dict[str, Any] = {
1470
- }
1471
-
1472
- _path_params: Dict[str, Any] = {
1473
- }
1474
-
1475
- _json: Any = ConjureEncoder().default(request)
1476
-
1477
- _path = '/authentication/v2/users'
1478
- _path = _path.format(**_path_params)
1479
-
1480
- _response: Response = self._request(
1481
- 'POST',
1482
- self._uri + _path,
1483
- params=_params,
1484
- headers=_headers,
1485
- json=_json)
1486
-
1487
- _decoder = ConjureDecoder()
1488
- return _decoder.decode(_response.json(), authentication_api_SearchUsersResponseV2, self._return_none_for_unknown_union_types)
1489
-
1490
- def get_users(self, auth_header: str, user_rids: List[str] = None) -> List["authentication_api_UserV2"]:
1491
- """
1492
- Get users by RID.
1493
- """
1494
- user_rids = user_rids if user_rids is not None else []
1495
-
1496
- _headers: Dict[str, Any] = {
1497
- 'Accept': 'application/json',
1498
- 'Content-Type': 'application/json',
1499
- 'Authorization': auth_header,
1500
- }
1501
-
1502
- _params: Dict[str, Any] = {
1503
- }
1504
-
1505
- _path_params: Dict[str, Any] = {
1506
- }
1507
-
1508
- _json: Any = ConjureEncoder().default(user_rids)
1509
-
1510
- _path = '/authentication/v2/users/batch'
1511
- _path = _path.format(**_path_params)
1512
-
1513
- _response: Response = self._request(
1514
- 'POST',
1515
- self._uri + _path,
1516
- params=_params,
1517
- headers=_headers,
1518
- json=_json)
1519
-
1520
- _decoder = ConjureDecoder()
1521
- return _decoder.decode(_response.json(), List[authentication_api_UserV2], self._return_none_for_unknown_union_types)
1522
-
1523
- def get_user(self, auth_header: str, user_rid: str) -> "authentication_api_UserV2":
1524
- """
1525
- Gets a user by RID.
1526
- """
1527
-
1528
- _headers: Dict[str, Any] = {
1529
- 'Accept': 'application/json',
1530
- 'Authorization': auth_header,
1531
- }
1532
-
1533
- _params: Dict[str, Any] = {
1534
- }
1535
-
1536
- _path_params: Dict[str, Any] = {
1537
- 'userRid': user_rid,
1538
- }
1539
-
1540
- _json: Any = None
1541
-
1542
- _path = '/authentication/v2/users/{userRid}'
1543
- _path = _path.format(**_path_params)
1544
-
1545
- _response: Response = self._request(
1546
- 'GET',
1547
- self._uri + _path,
1548
- params=_params,
1549
- headers=_headers,
1550
- json=_json)
1551
-
1552
- _decoder = ConjureDecoder()
1553
- return _decoder.decode(_response.json(), authentication_api_UserV2, self._return_none_for_unknown_union_types)
1554
-
1555
-
1556
- authentication_api_AuthenticationServiceV2.__name__ = "AuthenticationServiceV2"
1557
- authentication_api_AuthenticationServiceV2.__qualname__ = "AuthenticationServiceV2"
1558
- authentication_api_AuthenticationServiceV2.__module__ = "nominal_api.authentication_api"
1559
-
1560
-
1561
- class authentication_api_DefaultTimeRangeTypeSetting(ConjureEnumType):
1562
-
1563
- DEFAULT = 'DEFAULT'
1564
- '''DEFAULT'''
1565
- ABSOLUTE = 'ABSOLUTE'
1566
- '''ABSOLUTE'''
1567
- RELATIVE = 'RELATIVE'
1568
- '''RELATIVE'''
1569
- UNKNOWN = 'UNKNOWN'
1570
- '''UNKNOWN'''
1571
-
1572
- def __reduce_ex__(self, proto):
1573
- return self.__class__, (self.name,)
1574
-
1575
-
1576
- authentication_api_DefaultTimeRangeTypeSetting.__name__ = "DefaultTimeRangeTypeSetting"
1577
- authentication_api_DefaultTimeRangeTypeSetting.__qualname__ = "DefaultTimeRangeTypeSetting"
1578
- authentication_api_DefaultTimeRangeTypeSetting.__module__ = "nominal_api.authentication_api"
1579
-
1580
-
1581
- class authentication_api_OrgSettings(ConjureBeanType):
1582
-
1583
- @builtins.classmethod
1584
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1585
- return {
1586
- 'default_time_range_type': ConjureFieldDefinition('defaultTimeRangeType', OptionalTypeWrapper[authentication_api_DefaultTimeRangeTypeSetting])
1587
- }
1588
-
1589
- __slots__: List[str] = ['_default_time_range_type']
1590
-
1591
- def __init__(self, default_time_range_type: Optional["authentication_api_DefaultTimeRangeTypeSetting"] = None) -> None:
1592
- self._default_time_range_type = default_time_range_type
1593
-
1594
- @builtins.property
1595
- def default_time_range_type(self) -> Optional["authentication_api_DefaultTimeRangeTypeSetting"]:
1596
- return self._default_time_range_type
1597
-
1598
-
1599
- authentication_api_OrgSettings.__name__ = "OrgSettings"
1600
- authentication_api_OrgSettings.__qualname__ = "OrgSettings"
1601
- authentication_api_OrgSettings.__module__ = "nominal_api.authentication_api"
1602
-
1603
-
1604
- class authentication_api_SearchUsersQuery(ConjureUnionType):
1605
- _and_: Optional[List["authentication_api_SearchUsersQuery"]] = None
1606
- _or_: Optional[List["authentication_api_SearchUsersQuery"]] = None
1607
- _exact_match: Optional[str] = None
1608
- _search_text: Optional[str] = None
1609
-
1610
- @builtins.classmethod
1611
- def _options(cls) -> Dict[str, ConjureFieldDefinition]:
1612
- return {
1613
- 'and_': ConjureFieldDefinition('and', List[authentication_api_SearchUsersQuery]),
1614
- 'or_': ConjureFieldDefinition('or', List[authentication_api_SearchUsersQuery]),
1615
- 'exact_match': ConjureFieldDefinition('exactMatch', str),
1616
- 'search_text': ConjureFieldDefinition('searchText', str)
1617
- }
1618
-
1619
- def __init__(
1620
- self,
1621
- and_: Optional[List["authentication_api_SearchUsersQuery"]] = None,
1622
- or_: Optional[List["authentication_api_SearchUsersQuery"]] = None,
1623
- exact_match: Optional[str] = None,
1624
- search_text: Optional[str] = None,
1625
- type_of_union: Optional[str] = None
1626
- ) -> None:
1627
- if type_of_union is None:
1628
- if (and_ is not None) + (or_ is not None) + (exact_match is not None) + (search_text is not None) != 1:
1629
- raise ValueError('a union must contain a single member')
1630
-
1631
- if and_ is not None:
1632
- self._and_ = and_
1633
- self._type = 'and'
1634
- if or_ is not None:
1635
- self._or_ = or_
1636
- self._type = 'or'
1637
- if exact_match is not None:
1638
- self._exact_match = exact_match
1639
- self._type = 'exactMatch'
1640
- if search_text is not None:
1641
- self._search_text = search_text
1642
- self._type = 'searchText'
1643
-
1644
- elif type_of_union == 'and':
1645
- if and_ is None:
1646
- raise ValueError('a union value must not be None')
1647
- self._and_ = and_
1648
- self._type = 'and'
1649
- elif type_of_union == 'or':
1650
- if or_ is None:
1651
- raise ValueError('a union value must not be None')
1652
- self._or_ = or_
1653
- self._type = 'or'
1654
- elif type_of_union == 'exactMatch':
1655
- if exact_match is None:
1656
- raise ValueError('a union value must not be None')
1657
- self._exact_match = exact_match
1658
- self._type = 'exactMatch'
1659
- elif type_of_union == 'searchText':
1660
- if search_text is None:
1661
- raise ValueError('a union value must not be None')
1662
- self._search_text = search_text
1663
- self._type = 'searchText'
1664
-
1665
- @builtins.property
1666
- def and_(self) -> Optional[List["authentication_api_SearchUsersQuery"]]:
1667
- return self._and_
1668
-
1669
- @builtins.property
1670
- def or_(self) -> Optional[List["authentication_api_SearchUsersQuery"]]:
1671
- return self._or_
1672
-
1673
- @builtins.property
1674
- def exact_match(self) -> Optional[str]:
1675
- """
1676
- Performs case insensitive exact match on email
1677
- """
1678
- return self._exact_match
1679
-
1680
- @builtins.property
1681
- def search_text(self) -> Optional[str]:
1682
- """
1683
- Searches email and display name
1684
- """
1685
- return self._search_text
1686
-
1687
- def accept(self, visitor) -> Any:
1688
- if not isinstance(visitor, authentication_api_SearchUsersQueryVisitor):
1689
- raise ValueError('{} is not an instance of authentication_api_SearchUsersQueryVisitor'.format(visitor.__class__.__name__))
1690
- if self._type == 'and' and self.and_ is not None:
1691
- return visitor._and(self.and_)
1692
- if self._type == 'or' and self.or_ is not None:
1693
- return visitor._or(self.or_)
1694
- if self._type == 'exactMatch' and self.exact_match is not None:
1695
- return visitor._exact_match(self.exact_match)
1696
- if self._type == 'searchText' and self.search_text is not None:
1697
- return visitor._search_text(self.search_text)
1698
-
1699
-
1700
- authentication_api_SearchUsersQuery.__name__ = "SearchUsersQuery"
1701
- authentication_api_SearchUsersQuery.__qualname__ = "SearchUsersQuery"
1702
- authentication_api_SearchUsersQuery.__module__ = "nominal_api.authentication_api"
1703
-
1704
-
1705
- class authentication_api_SearchUsersQueryVisitor:
1706
-
1707
- @abstractmethod
1708
- def _and(self, and_: List["authentication_api_SearchUsersQuery"]) -> Any:
1709
- pass
1710
-
1711
- @abstractmethod
1712
- def _or(self, or_: List["authentication_api_SearchUsersQuery"]) -> Any:
1713
- pass
1714
-
1715
- @abstractmethod
1716
- def _exact_match(self, exact_match: str) -> Any:
1717
- pass
1718
-
1719
- @abstractmethod
1720
- def _search_text(self, search_text: str) -> Any:
1721
- pass
1722
-
1723
-
1724
- authentication_api_SearchUsersQueryVisitor.__name__ = "SearchUsersQueryVisitor"
1725
- authentication_api_SearchUsersQueryVisitor.__qualname__ = "SearchUsersQueryVisitor"
1726
- authentication_api_SearchUsersQueryVisitor.__module__ = "nominal_api.authentication_api"
1727
-
1728
-
1729
- class authentication_api_SearchUsersRequest(ConjureBeanType):
1730
-
1731
- @builtins.classmethod
1732
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1733
- return {
1734
- 'query': ConjureFieldDefinition('query', authentication_api_SearchUsersQuery),
1735
- 'sort_by': ConjureFieldDefinition('sortBy', OptionalTypeWrapper[authentication_api_SortBy]),
1736
- 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token]),
1737
- 'page_size': ConjureFieldDefinition('pageSize', OptionalTypeWrapper[int])
1738
- }
1739
-
1740
- __slots__: List[str] = ['_query', '_sort_by', '_next_page_token', '_page_size']
1741
-
1742
- def __init__(self, query: "authentication_api_SearchUsersQuery", next_page_token: Optional[str] = None, page_size: Optional[int] = None, sort_by: Optional["authentication_api_SortBy"] = None) -> None:
1743
- self._query = query
1744
- self._sort_by = sort_by
1745
- self._next_page_token = next_page_token
1746
- self._page_size = page_size
1747
-
1748
- @builtins.property
1749
- def query(self) -> "authentication_api_SearchUsersQuery":
1750
- return self._query
1751
-
1752
- @builtins.property
1753
- def sort_by(self) -> Optional["authentication_api_SortBy"]:
1754
- """
1755
- UPDATED_AT descending by default
1756
- """
1757
- return self._sort_by
1758
-
1759
- @builtins.property
1760
- def next_page_token(self) -> Optional[str]:
1761
- return self._next_page_token
1762
-
1763
- @builtins.property
1764
- def page_size(self) -> Optional[int]:
1765
- """
1766
- Defaults to 100. Will throw if larger than 1_000.
1767
- """
1768
- return self._page_size
1769
-
1770
-
1771
- authentication_api_SearchUsersRequest.__name__ = "SearchUsersRequest"
1772
- authentication_api_SearchUsersRequest.__qualname__ = "SearchUsersRequest"
1773
- authentication_api_SearchUsersRequest.__module__ = "nominal_api.authentication_api"
1774
-
1775
-
1776
- class authentication_api_SearchUsersResponseV2(ConjureBeanType):
1777
-
1778
- @builtins.classmethod
1779
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1780
- return {
1781
- 'results': ConjureFieldDefinition('results', List[authentication_api_UserV2]),
1782
- 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token])
1783
- }
1784
-
1785
- __slots__: List[str] = ['_results', '_next_page_token']
1786
-
1787
- def __init__(self, results: List["authentication_api_UserV2"], next_page_token: Optional[str] = None) -> None:
1788
- self._results = results
1789
- self._next_page_token = next_page_token
1790
-
1791
- @builtins.property
1792
- def results(self) -> List["authentication_api_UserV2"]:
1793
- return self._results
1794
-
1795
- @builtins.property
1796
- def next_page_token(self) -> Optional[str]:
1797
- return self._next_page_token
1798
-
1799
-
1800
- authentication_api_SearchUsersResponseV2.__name__ = "SearchUsersResponseV2"
1801
- authentication_api_SearchUsersResponseV2.__qualname__ = "SearchUsersResponseV2"
1802
- authentication_api_SearchUsersResponseV2.__module__ = "nominal_api.authentication_api"
1803
-
1804
-
1805
- class authentication_api_SortBy(ConjureBeanType):
1806
-
1807
- @builtins.classmethod
1808
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1809
- return {
1810
- 'is_descending': ConjureFieldDefinition('isDescending', bool),
1811
- 'field': ConjureFieldDefinition('field', authentication_api_SortByField)
1812
- }
1813
-
1814
- __slots__: List[str] = ['_is_descending', '_field']
1815
-
1816
- def __init__(self, field: "authentication_api_SortByField", is_descending: bool) -> None:
1817
- self._is_descending = is_descending
1818
- self._field = field
1819
-
1820
- @builtins.property
1821
- def is_descending(self) -> bool:
1822
- return self._is_descending
1823
-
1824
- @builtins.property
1825
- def field(self) -> "authentication_api_SortByField":
1826
- return self._field
1827
-
1828
-
1829
- authentication_api_SortBy.__name__ = "SortBy"
1830
- authentication_api_SortBy.__qualname__ = "SortBy"
1831
- authentication_api_SortBy.__module__ = "nominal_api.authentication_api"
1832
-
1833
-
1834
- class authentication_api_SortByField(ConjureEnumType):
1835
-
1836
- NAME = 'NAME'
1837
- '''NAME'''
1838
- EMAIL = 'EMAIL'
1839
- '''EMAIL'''
1840
- CREATED_AT = 'CREATED_AT'
1841
- '''CREATED_AT'''
1842
- UPDATED_AT = 'UPDATED_AT'
1843
- '''UPDATED_AT'''
1844
- UNKNOWN = 'UNKNOWN'
1845
- '''UNKNOWN'''
1846
-
1847
- def __reduce_ex__(self, proto):
1848
- return self.__class__, (self.name,)
1849
-
1850
-
1851
- authentication_api_SortByField.__name__ = "SortByField"
1852
- authentication_api_SortByField.__qualname__ = "SortByField"
1853
- authentication_api_SortByField.__module__ = "nominal_api.authentication_api"
1854
-
1855
-
1856
- class authentication_api_TimezoneSetting(ConjureEnumType):
1857
-
1858
- LOCAL = 'LOCAL'
1859
- '''LOCAL'''
1860
- UTC = 'UTC'
1861
- '''UTC'''
1862
- UNKNOWN = 'UNKNOWN'
1863
- '''UNKNOWN'''
1864
-
1865
- def __reduce_ex__(self, proto):
1866
- return self.__class__, (self.name,)
1867
-
1868
-
1869
- authentication_api_TimezoneSetting.__name__ = "TimezoneSetting"
1870
- authentication_api_TimezoneSetting.__qualname__ = "TimezoneSetting"
1871
- authentication_api_TimezoneSetting.__module__ = "nominal_api.authentication_api"
1872
-
1873
-
1874
- class authentication_api_UpdateMyProfileRequest(ConjureBeanType):
1875
-
1876
- @builtins.classmethod
1877
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1878
- return {
1879
- 'display_name': ConjureFieldDefinition('displayName', str)
1880
- }
1881
-
1882
- __slots__: List[str] = ['_display_name']
1883
-
1884
- def __init__(self, display_name: str) -> None:
1885
- self._display_name = display_name
1886
-
1887
- @builtins.property
1888
- def display_name(self) -> str:
1889
- return self._display_name
1890
-
1891
-
1892
- authentication_api_UpdateMyProfileRequest.__name__ = "UpdateMyProfileRequest"
1893
- authentication_api_UpdateMyProfileRequest.__qualname__ = "UpdateMyProfileRequest"
1894
- authentication_api_UpdateMyProfileRequest.__module__ = "nominal_api.authentication_api"
1895
-
1896
-
1897
- class authentication_api_UserSettings(ConjureBeanType):
1898
-
1899
- @builtins.classmethod
1900
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1901
- return {
1902
- 'default_time_range_type': ConjureFieldDefinition('defaultTimeRangeType', OptionalTypeWrapper[authentication_api_DefaultTimeRangeTypeSetting]),
1903
- 'appearance': ConjureFieldDefinition('appearance', OptionalTypeWrapper[authentication_api_AppearanceSetting]),
1904
- 'timezone': ConjureFieldDefinition('timezone', OptionalTypeWrapper[authentication_api_TimezoneSetting]),
1905
- 'time_series_hover_tooltip_concise': ConjureFieldDefinition('timeSeriesHoverTooltipConcise', OptionalTypeWrapper[bool])
1906
- }
1907
-
1908
- __slots__: List[str] = ['_default_time_range_type', '_appearance', '_timezone', '_time_series_hover_tooltip_concise']
1909
-
1910
- def __init__(self, appearance: Optional["authentication_api_AppearanceSetting"] = None, default_time_range_type: Optional["authentication_api_DefaultTimeRangeTypeSetting"] = None, time_series_hover_tooltip_concise: Optional[bool] = None, timezone: Optional["authentication_api_TimezoneSetting"] = None) -> None:
1911
- self._default_time_range_type = default_time_range_type
1912
- self._appearance = appearance
1913
- self._timezone = timezone
1914
- self._time_series_hover_tooltip_concise = time_series_hover_tooltip_concise
1915
-
1916
- @builtins.property
1917
- def default_time_range_type(self) -> Optional["authentication_api_DefaultTimeRangeTypeSetting"]:
1918
- return self._default_time_range_type
1919
-
1920
- @builtins.property
1921
- def appearance(self) -> Optional["authentication_api_AppearanceSetting"]:
1922
- return self._appearance
1923
-
1924
- @builtins.property
1925
- def timezone(self) -> Optional["authentication_api_TimezoneSetting"]:
1926
- return self._timezone
1927
-
1928
- @builtins.property
1929
- def time_series_hover_tooltip_concise(self) -> Optional[bool]:
1930
- return self._time_series_hover_tooltip_concise
1931
-
1932
-
1933
- authentication_api_UserSettings.__name__ = "UserSettings"
1934
- authentication_api_UserSettings.__qualname__ = "UserSettings"
1935
- authentication_api_UserSettings.__module__ = "nominal_api.authentication_api"
1936
-
1937
-
1938
- class authentication_api_UserV2(ConjureBeanType):
1939
-
1940
- @builtins.classmethod
1941
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1942
- return {
1943
- 'rid': ConjureFieldDefinition('rid', authentication_api_UserRid),
1944
- 'org_rid': ConjureFieldDefinition('orgRid', authentication_api_OrgRid),
1945
- 'email': ConjureFieldDefinition('email', str),
1946
- 'display_name': ConjureFieldDefinition('displayName', str),
1947
- 'avatar_url': ConjureFieldDefinition('avatarUrl', str)
1948
- }
1949
-
1950
- __slots__: List[str] = ['_rid', '_org_rid', '_email', '_display_name', '_avatar_url']
1951
-
1952
- def __init__(self, avatar_url: str, display_name: str, email: str, org_rid: str, rid: str) -> None:
1953
- self._rid = rid
1954
- self._org_rid = org_rid
1955
- self._email = email
1956
- self._display_name = display_name
1957
- self._avatar_url = avatar_url
1958
-
1959
- @builtins.property
1960
- def rid(self) -> str:
1961
- return self._rid
1962
-
1963
- @builtins.property
1964
- def org_rid(self) -> str:
1965
- return self._org_rid
1966
-
1967
- @builtins.property
1968
- def email(self) -> str:
1969
- return self._email
1970
-
1971
- @builtins.property
1972
- def display_name(self) -> str:
1973
- return self._display_name
1974
-
1975
- @builtins.property
1976
- def avatar_url(self) -> str:
1977
- """
1978
- Avatar URL or a default avatar if the user does not have one.
1979
- """
1980
- return self._avatar_url
1981
-
1982
-
1983
- authentication_api_UserV2.__name__ = "UserV2"
1984
- authentication_api_UserV2.__qualname__ = "UserV2"
1985
- authentication_api_UserV2.__module__ = "nominal_api.authentication_api"
1986
-
1987
-
1988
- class authorization_ApiKey(ConjureBeanType):
1989
-
1990
- @builtins.classmethod
1991
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
1992
- return {
1993
- 'rid': ConjureFieldDefinition('rid', authorization_ApiKeyRid),
1994
- 'api_key_name': ConjureFieldDefinition('apiKeyName', str),
1995
- 'created_by': ConjureFieldDefinition('createdBy', str),
1996
- 'created_at': ConjureFieldDefinition('createdAt', str),
1997
- 'expires_at': ConjureFieldDefinition('expiresAt', OptionalTypeWrapper[str]),
1998
- 'is_deleted': ConjureFieldDefinition('isDeleted', bool)
1999
- }
2000
-
2001
- __slots__: List[str] = ['_rid', '_api_key_name', '_created_by', '_created_at', '_expires_at', '_is_deleted']
2002
-
2003
- def __init__(self, api_key_name: str, created_at: str, created_by: str, is_deleted: bool, rid: str, expires_at: Optional[str] = None) -> None:
2004
- self._rid = rid
2005
- self._api_key_name = api_key_name
2006
- self._created_by = created_by
2007
- self._created_at = created_at
2008
- self._expires_at = expires_at
2009
- self._is_deleted = is_deleted
2010
-
2011
- @builtins.property
2012
- def rid(self) -> str:
2013
- return self._rid
2014
-
2015
- @builtins.property
2016
- def api_key_name(self) -> str:
2017
- return self._api_key_name
2018
-
2019
- @builtins.property
2020
- def created_by(self) -> str:
2021
- return self._created_by
2022
-
2023
- @builtins.property
2024
- def created_at(self) -> str:
2025
- return self._created_at
2026
-
2027
- @builtins.property
2028
- def expires_at(self) -> Optional[str]:
2029
- return self._expires_at
2030
-
2031
- @builtins.property
2032
- def is_deleted(self) -> bool:
2033
- return self._is_deleted
2034
-
2035
-
2036
- authorization_ApiKey.__name__ = "ApiKey"
2037
- authorization_ApiKey.__qualname__ = "ApiKey"
2038
- authorization_ApiKey.__module__ = "nominal_api.authorization"
2039
-
2040
-
2041
- class authorization_AuthorizationRequest(ConjureBeanType):
2042
-
2043
- @builtins.classmethod
2044
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2045
- return {
2046
- 'rids': ConjureFieldDefinition('rids', List[str])
2047
- }
2048
-
2049
- __slots__: List[str] = ['_rids']
2050
-
2051
- def __init__(self, rids: List[str]) -> None:
2052
- self._rids = rids
2053
-
2054
- @builtins.property
2055
- def rids(self) -> List[str]:
2056
- return self._rids
2057
-
2058
-
2059
- authorization_AuthorizationRequest.__name__ = "AuthorizationRequest"
2060
- authorization_AuthorizationRequest.__qualname__ = "AuthorizationRequest"
2061
- authorization_AuthorizationRequest.__module__ = "nominal_api.authorization"
2062
-
2063
-
2064
- class authorization_AuthorizationService(Service):
2065
- """
2066
- Authorization service manages the permissions for a user
2067
- to access resources.
2068
- """
2069
-
2070
- def authorize(self, auth_header: str, request: "authorization_AuthorizationRequest") -> List[str]:
2071
- """
2072
- Given a set of resources, returns the set of resources that the
2073
- user is authorized to access.
2074
- """
2075
-
2076
- _headers: Dict[str, Any] = {
2077
- 'Accept': 'application/json',
2078
- 'Content-Type': 'application/json',
2079
- 'Authorization': auth_header,
2080
- }
2081
-
2082
- _params: Dict[str, Any] = {
2083
- }
2084
-
2085
- _path_params: Dict[str, Any] = {
2086
- }
2087
-
2088
- _json: Any = ConjureEncoder().default(request)
2089
-
2090
- _path = '/authorization/v1/authorize'
2091
- _path = _path.format(**_path_params)
2092
-
2093
- _response: Response = self._request(
2094
- 'POST',
2095
- self._uri + _path,
2096
- params=_params,
2097
- headers=_headers,
2098
- json=_json)
2099
-
2100
- _decoder = ConjureDecoder()
2101
- return _decoder.decode(_response.json(), List[str], self._return_none_for_unknown_union_types)
2102
-
2103
- def batch_get_workspace_for_resource(self, auth_header: str, request: List[str] = None) -> Dict[str, str]:
2104
- """
2105
- Given a set of resources, returns the workspace that each resource belongs to. If a user
2106
- is not authorized on the resource, will omit the resource from the response.
2107
- """
2108
- request = request if request is not None else []
2109
-
2110
- _headers: Dict[str, Any] = {
2111
- 'Accept': 'application/json',
2112
- 'Content-Type': 'application/json',
2113
- 'Authorization': auth_header,
2114
- }
2115
-
2116
- _params: Dict[str, Any] = {
2117
- }
2118
-
2119
- _path_params: Dict[str, Any] = {
2120
- }
2121
-
2122
- _json: Any = ConjureEncoder().default(request)
2123
-
2124
- _path = '/authorization/v1/batch-get-workspace-for-resource'
2125
- _path = _path.format(**_path_params)
2126
-
2127
- _response: Response = self._request(
2128
- 'POST',
2129
- self._uri + _path,
2130
- params=_params,
2131
- headers=_headers,
2132
- json=_json)
2133
-
2134
- _decoder = ConjureDecoder()
2135
- return _decoder.decode(_response.json(), Dict[str, api_rids_WorkspaceRid], self._return_none_for_unknown_union_types)
2136
-
2137
- def register(self, auth_header: str, register_request: "authorization_RegistrationRequest") -> None:
2138
- """
2139
- Marks a resource as belonging to an organization.
2140
- Will throw if trying to register a resource that already
2141
- belongs to a different organization.
2142
- """
2143
-
2144
- _headers: Dict[str, Any] = {
2145
- 'Accept': 'application/json',
2146
- 'Content-Type': 'application/json',
2147
- 'Authorization': auth_header,
2148
- }
2149
-
2150
- _params: Dict[str, Any] = {
2151
- }
2152
-
2153
- _path_params: Dict[str, Any] = {
2154
- }
2155
-
2156
- _json: Any = ConjureEncoder().default(register_request)
2157
-
2158
- _path = '/authorization/v1/register'
2159
- _path = _path.format(**_path_params)
2160
-
2161
- _response: Response = self._request(
2162
- 'POST',
2163
- self._uri + _path,
2164
- params=_params,
2165
- headers=_headers,
2166
- json=_json)
2167
-
2168
- return
2169
-
2170
- def register_in_workspace(self, auth_header: str, request: "authorization_RegisterInWorkspaceRequest") -> None:
2171
- """
2172
- Marks a set of resources as belonging to a workspace. Either all resources are
2173
- registered or none are.
2174
- If the user is not in the workspace, this will throw.
2175
- If a resource already belongs to a different workspace, this will throw.
2176
- If a resource already belongs to this workspace, this is a no-op.
2177
- """
2178
-
2179
- _headers: Dict[str, Any] = {
2180
- 'Accept': 'application/json',
2181
- 'Content-Type': 'application/json',
2182
- 'Authorization': auth_header,
2183
- }
2184
-
2185
- _params: Dict[str, Any] = {
2186
- }
2187
-
2188
- _path_params: Dict[str, Any] = {
2189
- }
2190
-
2191
- _json: Any = ConjureEncoder().default(request)
2192
-
2193
- _path = '/authorization/v1/register-in-workspace'
2194
- _path = _path.format(**_path_params)
2195
-
2196
- _response: Response = self._request(
2197
- 'POST',
2198
- self._uri + _path,
2199
- params=_params,
2200
- headers=_headers,
2201
- json=_json)
2202
-
2203
- return
2204
-
2205
- def check_admin(self, auth_header: str) -> None:
2206
- """
2207
- Given an authenticated session, this endpoint returns a HTTP 204 if the
2208
- authenticated user is an admin and HTTP 403 otherwise.
2209
- """
2210
-
2211
- _headers: Dict[str, Any] = {
2212
- 'Accept': 'application/json',
2213
- 'Authorization': auth_header,
2214
- }
2215
-
2216
- _params: Dict[str, Any] = {
2217
- }
2218
-
2219
- _path_params: Dict[str, Any] = {
2220
- }
2221
-
2222
- _json: Any = None
2223
-
2224
- _path = '/authorization/v1/checkAdmin'
2225
- _path = _path.format(**_path_params)
2226
-
2227
- _response: Response = self._request(
2228
- 'GET',
2229
- self._uri + _path,
2230
- params=_params,
2231
- headers=_headers,
2232
- json=_json)
2233
-
2234
- return
2235
-
2236
- def is_email_allowed(self, request: "authorization_IsEmailAllowedRequest") -> "authorization_IsEmailAllowedResponse":
2237
- """
2238
- Checks if the email is allowed to register.
2239
- """
2240
-
2241
- _headers: Dict[str, Any] = {
2242
- 'Accept': 'application/json',
2243
- 'Content-Type': 'application/json',
2244
- }
2245
-
2246
- _params: Dict[str, Any] = {
2247
- }
2248
-
2249
- _path_params: Dict[str, Any] = {
2250
- }
2251
-
2252
- _json: Any = ConjureEncoder().default(request)
2253
-
2254
- _path = '/authorization/v1/is-email-allowed'
2255
- _path = _path.format(**_path_params)
2256
-
2257
- _response: Response = self._request(
2258
- 'POST',
2259
- self._uri + _path,
2260
- params=_params,
2261
- headers=_headers,
2262
- json=_json)
2263
-
2264
- _decoder = ConjureDecoder()
2265
- return _decoder.decode(_response.json(), authorization_IsEmailAllowedResponse, self._return_none_for_unknown_union_types)
2266
-
2267
- def get_access_token(self, request: "authorization_GetAccessTokenRequest") -> "authorization_GetAccessTokenResponse":
2268
- """
2269
- Provide an OIDC ID and access token to get a Nominal access token,
2270
- suitable for making API requests. Its expiry will match that of the
2271
- input access token, capped at 24h.
2272
- Throws NotAuthorized if either token is invalid or if the OIDC provider
2273
- is not known.
2274
- """
2275
-
2276
- _headers: Dict[str, Any] = {
2277
- 'Accept': 'application/json',
2278
- 'Content-Type': 'application/json',
2279
- }
2280
-
2281
- _params: Dict[str, Any] = {
2282
- }
2283
-
2284
- _path_params: Dict[str, Any] = {
2285
- }
2286
-
2287
- _json: Any = ConjureEncoder().default(request)
2288
-
2289
- _path = '/authorization/v1/access-token'
2290
- _path = _path.format(**_path_params)
2291
-
2292
- _response: Response = self._request(
2293
- 'POST',
2294
- self._uri + _path,
2295
- params=_params,
2296
- headers=_headers,
2297
- json=_json)
2298
-
2299
- _decoder = ConjureDecoder()
2300
- return _decoder.decode(_response.json(), authorization_GetAccessTokenResponse, self._return_none_for_unknown_union_types)
2301
-
2302
- def create_api_key(self, auth_header: str, request: "authorization_CreateApiKeyRequest") -> "authorization_CreateApiKeyResponse":
2303
- """
2304
- Provide a long-lived API key for making API requests.
2305
- The API key is irretrievable after initial creation.
2306
- """
2307
-
2308
- _headers: Dict[str, Any] = {
2309
- 'Accept': 'application/json',
2310
- 'Content-Type': 'application/json',
2311
- 'Authorization': auth_header,
2312
- }
2313
-
2314
- _params: Dict[str, Any] = {
2315
- }
2316
-
2317
- _path_params: Dict[str, Any] = {
2318
- }
2319
-
2320
- _json: Any = ConjureEncoder().default(request)
2321
-
2322
- _path = '/authorization/v1/api-key'
2323
- _path = _path.format(**_path_params)
2324
-
2325
- _response: Response = self._request(
2326
- 'POST',
2327
- self._uri + _path,
2328
- params=_params,
2329
- headers=_headers,
2330
- json=_json)
2331
-
2332
- _decoder = ConjureDecoder()
2333
- return _decoder.decode(_response.json(), authorization_CreateApiKeyResponse, self._return_none_for_unknown_union_types)
2334
-
2335
- def list_api_keys_in_org(self, auth_header: str, request: "authorization_ListApiKeyRequest") -> "authorization_ListApiKeyResponse":
2336
- """
2337
- List all API keys in the organization.
2338
- """
2339
-
2340
- _headers: Dict[str, Any] = {
2341
- 'Accept': 'application/json',
2342
- 'Content-Type': 'application/json',
2343
- 'Authorization': auth_header,
2344
- }
2345
-
2346
- _params: Dict[str, Any] = {
2347
- }
2348
-
2349
- _path_params: Dict[str, Any] = {
2350
- }
2351
-
2352
- _json: Any = ConjureEncoder().default(request)
2353
-
2354
- _path = '/authorization/v1/api-keys/org'
2355
- _path = _path.format(**_path_params)
2356
-
2357
- _response: Response = self._request(
2358
- 'POST',
2359
- self._uri + _path,
2360
- params=_params,
2361
- headers=_headers,
2362
- json=_json)
2363
-
2364
- _decoder = ConjureDecoder()
2365
- return _decoder.decode(_response.json(), authorization_ListApiKeyResponse, self._return_none_for_unknown_union_types)
2366
-
2367
- def list_user_api_keys(self, auth_header: str, request: "authorization_ListApiKeyRequest") -> "authorization_ListApiKeyResponse":
2368
- """
2369
- List all API keys for the user.
2370
- """
2371
-
2372
- _headers: Dict[str, Any] = {
2373
- 'Accept': 'application/json',
2374
- 'Content-Type': 'application/json',
2375
- 'Authorization': auth_header,
2376
- }
2377
-
2378
- _params: Dict[str, Any] = {
2379
- }
2380
-
2381
- _path_params: Dict[str, Any] = {
2382
- }
2383
-
2384
- _json: Any = ConjureEncoder().default(request)
2385
-
2386
- _path = '/authorization/v1/api-keys/user'
2387
- _path = _path.format(**_path_params)
2388
-
2389
- _response: Response = self._request(
2390
- 'POST',
2391
- self._uri + _path,
2392
- params=_params,
2393
- headers=_headers,
2394
- json=_json)
2395
-
2396
- _decoder = ConjureDecoder()
2397
- return _decoder.decode(_response.json(), authorization_ListApiKeyResponse, self._return_none_for_unknown_union_types)
2398
-
2399
- def revoke_api_key(self, auth_header: str, rid: str) -> None:
2400
- """
2401
- Delete an API key.
2402
- """
2403
-
2404
- _headers: Dict[str, Any] = {
2405
- 'Accept': 'application/json',
2406
- 'Authorization': auth_header,
2407
- }
2408
-
2409
- _params: Dict[str, Any] = {
2410
- }
2411
-
2412
- _path_params: Dict[str, Any] = {
2413
- 'rid': rid,
2414
- }
2415
-
2416
- _json: Any = None
2417
-
2418
- _path = '/authorization/v1/api-key/{rid}/delete'
2419
- _path = _path.format(**_path_params)
2420
-
2421
- _response: Response = self._request(
2422
- 'PUT',
2423
- self._uri + _path,
2424
- params=_params,
2425
- headers=_headers,
2426
- json=_json)
2427
-
2428
- return
2429
-
2430
-
2431
- authorization_AuthorizationService.__name__ = "AuthorizationService"
2432
- authorization_AuthorizationService.__qualname__ = "AuthorizationService"
2433
- authorization_AuthorizationService.__module__ = "nominal_api.authorization"
2434
-
2435
-
2436
- class authorization_CreateApiKeyRequest(ConjureBeanType):
2437
-
2438
- @builtins.classmethod
2439
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2440
- return {
2441
- 'api_key_name': ConjureFieldDefinition('apiKeyName', str),
2442
- 'expires_after_days': ConjureFieldDefinition('expiresAfterDays', OptionalTypeWrapper[int])
2443
- }
2444
-
2445
- __slots__: List[str] = ['_api_key_name', '_expires_after_days']
2446
-
2447
- def __init__(self, api_key_name: str, expires_after_days: Optional[int] = None) -> None:
2448
- self._api_key_name = api_key_name
2449
- self._expires_after_days = expires_after_days
2450
-
2451
- @builtins.property
2452
- def api_key_name(self) -> str:
2453
- """
2454
- The name of the API key to create.
2455
- """
2456
- return self._api_key_name
2457
-
2458
- @builtins.property
2459
- def expires_after_days(self) -> Optional[int]:
2460
- """
2461
- The number of days after which the API key will expire.
2462
- If omitted, the API key will not expire.
2463
- """
2464
- return self._expires_after_days
2465
-
2466
-
2467
- authorization_CreateApiKeyRequest.__name__ = "CreateApiKeyRequest"
2468
- authorization_CreateApiKeyRequest.__qualname__ = "CreateApiKeyRequest"
2469
- authorization_CreateApiKeyRequest.__module__ = "nominal_api.authorization"
2470
-
2471
-
2472
- class authorization_CreateApiKeyResponse(ConjureBeanType):
2473
-
2474
- @builtins.classmethod
2475
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2476
- return {
2477
- 'api_key_metadata': ConjureFieldDefinition('apiKeyMetadata', authorization_ApiKey),
2478
- 'api_key_value': ConjureFieldDefinition('apiKeyValue', str)
2479
- }
2480
-
2481
- __slots__: List[str] = ['_api_key_metadata', '_api_key_value']
2482
-
2483
- def __init__(self, api_key_metadata: "authorization_ApiKey", api_key_value: str) -> None:
2484
- self._api_key_metadata = api_key_metadata
2485
- self._api_key_value = api_key_value
2486
-
2487
- @builtins.property
2488
- def api_key_metadata(self) -> "authorization_ApiKey":
2489
- return self._api_key_metadata
2490
-
2491
- @builtins.property
2492
- def api_key_value(self) -> str:
2493
- return self._api_key_value
2494
-
2495
-
2496
- authorization_CreateApiKeyResponse.__name__ = "CreateApiKeyResponse"
2497
- authorization_CreateApiKeyResponse.__qualname__ = "CreateApiKeyResponse"
2498
- authorization_CreateApiKeyResponse.__module__ = "nominal_api.authorization"
2499
-
2500
-
2501
- class authorization_GetAccessTokenFromApiKeyRequest(ConjureBeanType):
2502
-
2503
- @builtins.classmethod
2504
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2505
- return {
2506
- 'api_key_value': ConjureFieldDefinition('apiKeyValue', str)
2507
- }
2508
-
2509
- __slots__: List[str] = ['_api_key_value']
2510
-
2511
- def __init__(self, api_key_value: str) -> None:
2512
- self._api_key_value = api_key_value
2513
-
2514
- @builtins.property
2515
- def api_key_value(self) -> str:
2516
- return self._api_key_value
2517
-
2518
-
2519
- authorization_GetAccessTokenFromApiKeyRequest.__name__ = "GetAccessTokenFromApiKeyRequest"
2520
- authorization_GetAccessTokenFromApiKeyRequest.__qualname__ = "GetAccessTokenFromApiKeyRequest"
2521
- authorization_GetAccessTokenFromApiKeyRequest.__module__ = "nominal_api.authorization"
2522
-
2523
-
2524
- class authorization_GetAccessTokenRequest(ConjureBeanType):
2525
-
2526
- @builtins.classmethod
2527
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2528
- return {
2529
- 'id_token': ConjureFieldDefinition('idToken', str),
2530
- 'access_token': ConjureFieldDefinition('accessToken', str)
2531
- }
2532
-
2533
- __slots__: List[str] = ['_id_token', '_access_token']
2534
-
2535
- def __init__(self, access_token: str, id_token: str) -> None:
2536
- self._id_token = id_token
2537
- self._access_token = access_token
2538
-
2539
- @builtins.property
2540
- def id_token(self) -> str:
2541
- return self._id_token
2542
-
2543
- @builtins.property
2544
- def access_token(self) -> str:
2545
- """
2546
- The access token's audience must be for the Nominal API.
2547
- """
2548
- return self._access_token
2549
-
2550
-
2551
- authorization_GetAccessTokenRequest.__name__ = "GetAccessTokenRequest"
2552
- authorization_GetAccessTokenRequest.__qualname__ = "GetAccessTokenRequest"
2553
- authorization_GetAccessTokenRequest.__module__ = "nominal_api.authorization"
2554
-
2555
-
2556
- class authorization_GetAccessTokenResponse(ConjureBeanType):
2557
-
2558
- @builtins.classmethod
2559
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2560
- return {
2561
- 'access_token': ConjureFieldDefinition('accessToken', str),
2562
- 'expires_at_seconds': ConjureFieldDefinition('expiresAtSeconds', int),
2563
- 'user_uuid': ConjureFieldDefinition('userUuid', str),
2564
- 'org_uuid': ConjureFieldDefinition('orgUuid', str)
2565
- }
2566
-
2567
- __slots__: List[str] = ['_access_token', '_expires_at_seconds', '_user_uuid', '_org_uuid']
2568
-
2569
- def __init__(self, access_token: str, expires_at_seconds: int, org_uuid: str, user_uuid: str) -> None:
2570
- self._access_token = access_token
2571
- self._expires_at_seconds = expires_at_seconds
2572
- self._user_uuid = user_uuid
2573
- self._org_uuid = org_uuid
2574
-
2575
- @builtins.property
2576
- def access_token(self) -> str:
2577
- return self._access_token
2578
-
2579
- @builtins.property
2580
- def expires_at_seconds(self) -> int:
2581
- return self._expires_at_seconds
2582
-
2583
- @builtins.property
2584
- def user_uuid(self) -> str:
2585
- return self._user_uuid
2586
-
2587
- @builtins.property
2588
- def org_uuid(self) -> str:
2589
- return self._org_uuid
2590
-
2591
-
2592
- authorization_GetAccessTokenResponse.__name__ = "GetAccessTokenResponse"
2593
- authorization_GetAccessTokenResponse.__qualname__ = "GetAccessTokenResponse"
2594
- authorization_GetAccessTokenResponse.__module__ = "nominal_api.authorization"
2595
-
2596
-
2597
- class authorization_InternalApiKeyService(Service):
2598
- """
2599
- This internal-only service manages long lived api keys.e
2600
- """
2601
-
2602
- def get_access_token_from_api_key_value(self, request: "authorization_GetAccessTokenFromApiKeyRequest") -> "authorization_GetAccessTokenResponse":
2603
- """
2604
- Get a Nominal-issued access token from a long-lived API key. Callers should verify that
2605
- their api key is formatted properly (i.e. prefixed with "nominal_api_key") before calling this endpoint.
2606
- """
2607
-
2608
- _headers: Dict[str, Any] = {
2609
- 'Accept': 'application/json',
2610
- 'Content-Type': 'application/json',
2611
- }
2612
-
2613
- _params: Dict[str, Any] = {
2614
- }
2615
-
2616
- _path_params: Dict[str, Any] = {
2617
- }
2618
-
2619
- _json: Any = ConjureEncoder().default(request)
2620
-
2621
- _path = '/api-key-internal/v1/access-token'
2622
- _path = _path.format(**_path_params)
2623
-
2624
- _response: Response = self._request(
2625
- 'POST',
2626
- self._uri + _path,
2627
- params=_params,
2628
- headers=_headers,
2629
- json=_json)
2630
-
2631
- _decoder = ConjureDecoder()
2632
- return _decoder.decode(_response.json(), authorization_GetAccessTokenResponse, self._return_none_for_unknown_union_types)
2633
-
2634
-
2635
- authorization_InternalApiKeyService.__name__ = "InternalApiKeyService"
2636
- authorization_InternalApiKeyService.__qualname__ = "InternalApiKeyService"
2637
- authorization_InternalApiKeyService.__module__ = "nominal_api.authorization"
2638
-
2639
-
2640
- class authorization_IsEmailAllowedRequest(ConjureBeanType):
2641
-
2642
- @builtins.classmethod
2643
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2644
- return {
2645
- 'email': ConjureFieldDefinition('email', str)
2646
- }
2647
-
2648
- __slots__: List[str] = ['_email']
2649
-
2650
- def __init__(self, email: str) -> None:
2651
- self._email = email
2652
-
2653
- @builtins.property
2654
- def email(self) -> str:
2655
- return self._email
2656
-
2657
-
2658
- authorization_IsEmailAllowedRequest.__name__ = "IsEmailAllowedRequest"
2659
- authorization_IsEmailAllowedRequest.__qualname__ = "IsEmailAllowedRequest"
2660
- authorization_IsEmailAllowedRequest.__module__ = "nominal_api.authorization"
2661
-
2662
-
2663
- class authorization_IsEmailAllowedResponse(ConjureBeanType):
2664
-
2665
- @builtins.classmethod
2666
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2667
- return {
2668
- 'allowed': ConjureFieldDefinition('allowed', bool)
2669
- }
2670
-
2671
- __slots__: List[str] = ['_allowed']
2672
-
2673
- def __init__(self, allowed: bool) -> None:
2674
- self._allowed = allowed
2675
-
2676
- @builtins.property
2677
- def allowed(self) -> bool:
2678
- return self._allowed
2679
-
2680
-
2681
- authorization_IsEmailAllowedResponse.__name__ = "IsEmailAllowedResponse"
2682
- authorization_IsEmailAllowedResponse.__qualname__ = "IsEmailAllowedResponse"
2683
- authorization_IsEmailAllowedResponse.__module__ = "nominal_api.authorization"
2684
-
2685
-
2686
- class authorization_ListApiKeyRequest(ConjureBeanType):
2687
-
2688
- @builtins.classmethod
2689
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2690
- return {
2691
- 'include_deleted': ConjureFieldDefinition('includeDeleted', OptionalTypeWrapper[bool]),
2692
- 'include_expired': ConjureFieldDefinition('includeExpired', OptionalTypeWrapper[bool]),
2693
- 'page_size': ConjureFieldDefinition('pageSize', OptionalTypeWrapper[int]),
2694
- 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token])
2695
- }
2696
-
2697
- __slots__: List[str] = ['_include_deleted', '_include_expired', '_page_size', '_next_page_token']
2698
-
2699
- def __init__(self, include_deleted: Optional[bool] = None, include_expired: Optional[bool] = None, next_page_token: Optional[str] = None, page_size: Optional[int] = None) -> None:
2700
- self._include_deleted = include_deleted
2701
- self._include_expired = include_expired
2702
- self._page_size = page_size
2703
- self._next_page_token = next_page_token
2704
-
2705
- @builtins.property
2706
- def include_deleted(self) -> Optional[bool]:
2707
- """
2708
- If true, include deleted API keys in the response. Defaults to false.
2709
- """
2710
- return self._include_deleted
2711
-
2712
- @builtins.property
2713
- def include_expired(self) -> Optional[bool]:
2714
- """
2715
- If true, include expired API keys in the response. Defaults to false.
2716
- """
2717
- return self._include_expired
2718
-
2719
- @builtins.property
2720
- def page_size(self) -> Optional[int]:
2721
- """
2722
- The maximum number of API keys to return. Defaults to 100.
2723
- """
2724
- return self._page_size
2725
-
2726
- @builtins.property
2727
- def next_page_token(self) -> Optional[str]:
2728
- return self._next_page_token
2729
-
2730
-
2731
- authorization_ListApiKeyRequest.__name__ = "ListApiKeyRequest"
2732
- authorization_ListApiKeyRequest.__qualname__ = "ListApiKeyRequest"
2733
- authorization_ListApiKeyRequest.__module__ = "nominal_api.authorization"
2734
-
2735
-
2736
- class authorization_ListApiKeyResponse(ConjureBeanType):
2737
-
2738
- @builtins.classmethod
2739
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2740
- return {
2741
- 'api_keys': ConjureFieldDefinition('apiKeys', List[authorization_ApiKey]),
2742
- 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token])
2743
- }
2744
-
2745
- __slots__: List[str] = ['_api_keys', '_next_page_token']
2746
-
2747
- def __init__(self, api_keys: List["authorization_ApiKey"], next_page_token: Optional[str] = None) -> None:
2748
- self._api_keys = api_keys
2749
- self._next_page_token = next_page_token
2750
-
2751
- @builtins.property
2752
- def api_keys(self) -> List["authorization_ApiKey"]:
2753
- return self._api_keys
2754
-
2755
- @builtins.property
2756
- def next_page_token(self) -> Optional[str]:
2757
- return self._next_page_token
2758
-
2759
-
2760
- authorization_ListApiKeyResponse.__name__ = "ListApiKeyResponse"
2761
- authorization_ListApiKeyResponse.__qualname__ = "ListApiKeyResponse"
2762
- authorization_ListApiKeyResponse.__module__ = "nominal_api.authorization"
2763
-
2764
-
2765
- class authorization_RegisterInWorkspaceRequest(ConjureBeanType):
2766
-
2767
- @builtins.classmethod
2768
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2769
- return {
2770
- 'resource_rids': ConjureFieldDefinition('resourceRids', List[str]),
2771
- 'workspace_rid': ConjureFieldDefinition('workspaceRid', api_rids_WorkspaceRid)
2772
- }
2773
-
2774
- __slots__: List[str] = ['_resource_rids', '_workspace_rid']
2775
-
2776
- def __init__(self, resource_rids: List[str], workspace_rid: str) -> None:
2777
- self._resource_rids = resource_rids
2778
- self._workspace_rid = workspace_rid
2779
-
2780
- @builtins.property
2781
- def resource_rids(self) -> List[str]:
2782
- return self._resource_rids
2783
-
2784
- @builtins.property
2785
- def workspace_rid(self) -> str:
2786
- return self._workspace_rid
2787
-
2788
-
2789
- authorization_RegisterInWorkspaceRequest.__name__ = "RegisterInWorkspaceRequest"
2790
- authorization_RegisterInWorkspaceRequest.__qualname__ = "RegisterInWorkspaceRequest"
2791
- authorization_RegisterInWorkspaceRequest.__module__ = "nominal_api.authorization"
2792
-
2793
-
2794
- class authorization_RegistrationRequest(ConjureBeanType):
2795
-
2796
- @builtins.classmethod
2797
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
2798
- return {
2799
- 'rids': ConjureFieldDefinition('rids', List[str]),
2800
- 'organization_rid': ConjureFieldDefinition('organizationRid', OptionalTypeWrapper[str])
2801
- }
2802
-
2803
- __slots__: List[str] = ['_rids', '_organization_rid']
2804
-
2805
- def __init__(self, rids: List[str], organization_rid: Optional[str] = None) -> None:
2806
- self._rids = rids
2807
- self._organization_rid = organization_rid
2808
-
2809
- @builtins.property
2810
- def rids(self) -> List[str]:
2811
- return self._rids
2812
-
2813
- @builtins.property
2814
- def organization_rid(self) -> Optional[str]:
2815
- """
2816
- If omitted, will use the user's organizationRid.
2817
- """
2818
- return self._organization_rid
2819
-
2820
-
2821
- authorization_RegistrationRequest.__name__ = "RegistrationRequest"
2822
- authorization_RegistrationRequest.__qualname__ = "RegistrationRequest"
2823
- authorization_RegistrationRequest.__module__ = "nominal_api.authorization"
2824
-
2825
-
2826
1243
  class comments_api_Comment(ConjureBeanType):
2827
1244
 
2828
1245
  @builtins.classmethod
@@ -4909,7 +3326,7 @@ class datasource_logset_api_CreateLogSetRequest(ConjureBeanType):
4909
3326
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
4910
3327
  'origin_metadata': ConjureFieldDefinition('originMetadata', Dict[str, str]),
4911
3328
  'timestamp_type': ConjureFieldDefinition('timestampType', datasource_TimestampType),
4912
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
3329
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
4913
3330
  }
4914
3331
 
4915
3332
  __slots__: List[str] = ['_name', '_description', '_origin_metadata', '_timestamp_type', '_workspace']
@@ -5215,7 +3632,7 @@ class datasource_logset_api_SearchLogSetsRequest(ConjureBeanType):
5215
3632
  return {
5216
3633
  'token': ConjureFieldDefinition('token', OptionalTypeWrapper[api_Token]),
5217
3634
  'page_size': ConjureFieldDefinition('pageSize', OptionalTypeWrapper[int]),
5218
- 'workspaces': ConjureFieldDefinition('workspaces', List[api_ids_WorkspaceId])
3635
+ 'workspaces': ConjureFieldDefinition('workspaces', List[api_rids_WorkspaceRid])
5219
3636
  }
5220
3637
 
5221
3638
  __slots__: List[str] = ['_token', '_page_size', '_workspaces']
@@ -6043,7 +4460,7 @@ class event_SearchQuery(ConjureUnionType):
6043
4460
  'property': ConjureFieldDefinition('property', api_Property),
6044
4461
  'and_': ConjureFieldDefinition('and', List[event_SearchQuery]),
6045
4462
  'or_': ConjureFieldDefinition('or', List[event_SearchQuery]),
6046
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
4463
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
6047
4464
  }
6048
4465
 
6049
4466
  def __init__(
@@ -6995,7 +5412,7 @@ class ingest_api_DeprecatedTriggerIngest(ConjureBeanType):
6995
5412
  'properties': ConjureFieldDefinition('properties', Dict[str, str]),
6996
5413
  'dataset_name': ConjureFieldDefinition('datasetName', OptionalTypeWrapper[str]),
6997
5414
  'timestamp_metadata': ConjureFieldDefinition('timestampMetadata', OptionalTypeWrapper[ingest_api_DeprecatedTimestampMetadata]),
6998
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
5415
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
6999
5416
  }
7000
5417
 
7001
5418
  __slots__: List[str] = ['_source', '_properties', '_dataset_name', '_timestamp_metadata', '_workspace']
@@ -7434,7 +5851,7 @@ class ingest_api_IngestMcapRequest(ConjureBeanType):
7434
5851
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
7435
5852
  'title': ConjureFieldDefinition('title', OptionalTypeWrapper[str]),
7436
5853
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
7437
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
5854
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
7438
5855
  }
7439
5856
 
7440
5857
  __slots__: List[str] = ['_sources', '_channel_config', '_channels', '_properties', '_labels', '_title', '_description', '_workspace']
@@ -7836,7 +6253,7 @@ class ingest_api_IngestRunRequest(ConjureBeanType):
7836
6253
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
7837
6254
  'run_prefix': ConjureFieldDefinition('runPrefix', OptionalTypeWrapper[str]),
7838
6255
  'data_sources': ConjureFieldDefinition('dataSources', Dict[ingest_api_DataSourceRefName, ingest_api_IngestRunDataSource]),
7839
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
6256
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
7840
6257
  }
7841
6258
 
7842
6259
  __slots__: List[str] = ['_rid', '_title', '_description', '_start_time', '_end_time', '_properties', '_labels', '_run_prefix', '_data_sources', '_workspace']
@@ -8328,7 +6745,7 @@ class ingest_api_IngestVideoRequest(ConjureBeanType):
8328
6745
  'title': ConjureFieldDefinition('title', OptionalTypeWrapper[str]),
8329
6746
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
8330
6747
  'timestamps': ConjureFieldDefinition('timestamps', ingest_api_VideoTimestampManifest),
8331
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
6748
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
8332
6749
  }
8333
6750
 
8334
6751
  __slots__: List[str] = ['_sources', '_properties', '_labels', '_title', '_description', '_timestamps', '_workspace']
@@ -8422,7 +6839,7 @@ class ingest_api_InitiateMultipartUploadRequest(ConjureBeanType):
8422
6839
  return {
8423
6840
  'filename': ConjureFieldDefinition('filename', str),
8424
6841
  'filetype': ConjureFieldDefinition('filetype', str),
8425
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
6842
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
8426
6843
  }
8427
6844
 
8428
6845
  __slots__: List[str] = ['_filename', '_filetype', '_workspace']
@@ -9157,7 +7574,7 @@ class ingest_api_NewDatasetIngestDestination(ConjureBeanType):
9157
7574
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
9158
7575
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
9159
7576
  'channel_config': ConjureFieldDefinition('channelConfig', OptionalTypeWrapper[ingest_api_ChannelConfig]),
9160
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
7577
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
9161
7578
  }
9162
7579
 
9163
7580
  __slots__: List[str] = ['_dataset_name', '_dataset_description', '_properties', '_labels', '_channel_config', '_workspace']
@@ -9214,7 +7631,7 @@ class ingest_api_NewVideoIngestDestination(ConjureBeanType):
9214
7631
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
9215
7632
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
9216
7633
  'video_file_details': ConjureFieldDefinition('videoFileDetails', OptionalTypeWrapper[ingest_api_VideoFileIngestDetails]),
9217
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
7634
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
9218
7635
  }
9219
7636
 
9220
7637
  __slots__: List[str] = ['_title', '_description', '_properties', '_labels', '_video_file_details', '_workspace']
@@ -9838,7 +8255,7 @@ class ingest_api_TriggerIngest(ConjureBeanType):
9838
8255
  'dataset_description': ConjureFieldDefinition('datasetDescription', OptionalTypeWrapper[str]),
9839
8256
  'timestamp_metadata': ConjureFieldDefinition('timestampMetadata', OptionalTypeWrapper[ingest_api_TimestampMetadata]),
9840
8257
  'channel_config': ConjureFieldDefinition('channelConfig', OptionalTypeWrapper[ingest_api_ChannelConfig]),
9841
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
8258
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
9842
8259
  }
9843
8260
 
9844
8261
  __slots__: List[str] = ['_source', '_properties', '_labels', '_dataset_name', '_dataset_description', '_timestamp_metadata', '_channel_config', '_workspace']
@@ -13267,7 +11684,7 @@ class scout_asset_api_CreateAssetRequest(ConjureBeanType):
13267
11684
  'data_scopes': ConjureFieldDefinition('dataScopes', List[scout_asset_api_CreateAssetDataScope]),
13268
11685
  'attachments': ConjureFieldDefinition('attachments', List[api_rids_AttachmentRid]),
13269
11686
  'type': ConjureFieldDefinition('type', OptionalTypeWrapper[scout_rids_api_TypeRid]),
13270
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
11687
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
13271
11688
  }
13272
11689
 
13273
11690
  __slots__: List[str] = ['_title', '_description', '_properties', '_labels', '_links', '_data_scopes', '_attachments', '_type', '_workspace']
@@ -13343,7 +11760,7 @@ class scout_asset_api_CreateTypeRequest(ConjureBeanType):
13343
11760
  'property_configs': ConjureFieldDefinition('propertyConfigs', Dict[api_PropertyName, scout_asset_api_PropertyConfig]),
13344
11761
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
13345
11762
  'icon_name': ConjureFieldDefinition('iconName', OptionalTypeWrapper[str]),
13346
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
11763
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
13347
11764
  }
13348
11765
 
13349
11766
  __slots__: List[str] = ['_name', '_property_configs', '_description', '_icon_name', '_workspace']
@@ -13530,7 +11947,7 @@ class scout_asset_api_SearchAssetsQuery(ConjureUnionType):
13530
11947
  'and_': ConjureFieldDefinition('and', List[scout_asset_api_SearchAssetsQuery]),
13531
11948
  'or_': ConjureFieldDefinition('or', List[scout_asset_api_SearchAssetsQuery]),
13532
11949
  'is_staged': ConjureFieldDefinition('isStaged', bool),
13533
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
11950
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
13534
11951
  }
13535
11952
 
13536
11953
  def __init__(
@@ -13809,7 +12226,7 @@ class scout_asset_api_SearchTypesQuery(ConjureUnionType):
13809
12226
  'property': ConjureFieldDefinition('property', api_PropertyName),
13810
12227
  'and_': ConjureFieldDefinition('and', List[scout_asset_api_SearchTypesQuery]),
13811
12228
  'or_': ConjureFieldDefinition('or', List[scout_asset_api_SearchTypesQuery]),
13812
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
12229
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
13813
12230
  }
13814
12231
 
13815
12232
  def __init__(
@@ -15598,6 +14015,41 @@ a file, primarily CSV.
15598
14015
  _decoder = ConjureDecoder()
15599
14016
  return _decoder.decode(_response.json(), scout_catalog_EnrichedDataset, self._return_none_for_unknown_union_types)
15600
14017
 
14018
+ def update_global_dataset_bounds(self, auth_header: str, request: "scout_catalog_UpdateBoundsRequest", rid: str) -> "scout_catalog_Dataset":
14019
+ """
14020
+ Update the bounds for a dataset without updating bounds of files within the dataset. If the
14021
+ current bounds of the dataset are not set, then the bounds of the request will be used. Otherwise,
14022
+ the bounds will be min(current start, request start), max(current end, request end).
14023
+ """
14024
+
14025
+ _headers: Dict[str, Any] = {
14026
+ 'Accept': 'application/json',
14027
+ 'Content-Type': 'application/json',
14028
+ 'Authorization': auth_header,
14029
+ }
14030
+
14031
+ _params: Dict[str, Any] = {
14032
+ }
14033
+
14034
+ _path_params: Dict[str, Any] = {
14035
+ 'rid': rid,
14036
+ }
14037
+
14038
+ _json: Any = ConjureEncoder().default(request)
14039
+
14040
+ _path = '/catalog/v1/datasets/{rid}/bounds-from-streaming'
14041
+ _path = _path.format(**_path_params)
14042
+
14043
+ _response: Response = self._request(
14044
+ 'PUT',
14045
+ self._uri + _path,
14046
+ params=_params,
14047
+ headers=_headers,
14048
+ json=_json)
14049
+
14050
+ _decoder = ConjureDecoder()
14051
+ return _decoder.decode(_response.json(), scout_catalog_Dataset, self._return_none_for_unknown_union_types)
14052
+
15601
14053
  def delete_dataset_series(self, auth_header: str, dataset_rid: str) -> "scout_catalog_DeleteSeriesResult":
15602
14054
 
15603
14055
  _headers: Dict[str, Any] = {
@@ -15854,7 +14306,7 @@ class scout_catalog_CreateDataset(ConjureBeanType):
15854
14306
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
15855
14307
  'granularity': ConjureFieldDefinition('granularity', OptionalTypeWrapper[api_Granularity]),
15856
14308
  'is_v2_dataset': ConjureFieldDefinition('isV2Dataset', OptionalTypeWrapper[bool]),
15857
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
14309
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
15858
14310
  }
15859
14311
 
15860
14312
  __slots__: List[str] = ['_name', '_handle', '_metadata', '_origin_metadata', '_labels', '_properties', '_description', '_granularity', '_is_v2_dataset', '_workspace']
@@ -15985,12 +14437,13 @@ class scout_catalog_Dataset(ConjureBeanType):
15985
14437
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
15986
14438
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
15987
14439
  'timestamp_type': ConjureFieldDefinition('timestampType', scout_catalog_WeakTimestampType),
15988
- 'allow_streaming': ConjureFieldDefinition('allowStreaming', bool)
14440
+ 'allow_streaming': ConjureFieldDefinition('allowStreaming', bool),
14441
+ 'granularity': ConjureFieldDefinition('granularity', api_Granularity)
15989
14442
  }
15990
14443
 
15991
- __slots__: List[str] = ['_rid', '_name', '_handle', '_description', '_origin_metadata', '_bounds', '_properties', '_labels', '_timestamp_type', '_allow_streaming']
14444
+ __slots__: List[str] = ['_rid', '_name', '_handle', '_description', '_origin_metadata', '_bounds', '_properties', '_labels', '_timestamp_type', '_allow_streaming', '_granularity']
15992
14445
 
15993
- def __init__(self, allow_streaming: bool, labels: List[str], name: str, origin_metadata: "scout_catalog_DatasetOriginMetadata", properties: Dict[str, str], rid: str, timestamp_type: "scout_catalog_WeakTimestampType", bounds: Optional["scout_catalog_Bounds"] = None, description: Optional[str] = None, handle: Optional["scout_catalog_Handle"] = None) -> None:
14446
+ def __init__(self, allow_streaming: bool, granularity: "api_Granularity", labels: List[str], name: str, origin_metadata: "scout_catalog_DatasetOriginMetadata", properties: Dict[str, str], rid: str, timestamp_type: "scout_catalog_WeakTimestampType", bounds: Optional["scout_catalog_Bounds"] = None, description: Optional[str] = None, handle: Optional["scout_catalog_Handle"] = None) -> None:
15994
14447
  self._rid = rid
15995
14448
  self._name = name
15996
14449
  self._handle = handle
@@ -16001,6 +14454,7 @@ class scout_catalog_Dataset(ConjureBeanType):
16001
14454
  self._labels = labels
16002
14455
  self._timestamp_type = timestamp_type
16003
14456
  self._allow_streaming = allow_streaming
14457
+ self._granularity = granularity
16004
14458
 
16005
14459
  @builtins.property
16006
14460
  def rid(self) -> str:
@@ -16042,6 +14496,10 @@ class scout_catalog_Dataset(ConjureBeanType):
16042
14496
  def allow_streaming(self) -> bool:
16043
14497
  return self._allow_streaming
16044
14498
 
14499
+ @builtins.property
14500
+ def granularity(self) -> "api_Granularity":
14501
+ return self._granularity
14502
+
16045
14503
 
16046
14504
  scout_catalog_Dataset.__name__ = "Dataset"
16047
14505
  scout_catalog_Dataset.__qualname__ = "Dataset"
@@ -17131,7 +15589,7 @@ class scout_catalog_SearchDatasetsQuery(ConjureUnionType):
17131
15589
  'archive_status': ConjureFieldDefinition('archiveStatus', bool),
17132
15590
  'and_': ConjureFieldDefinition('and', List[scout_catalog_SearchDatasetsQuery]),
17133
15591
  'or_': ConjureFieldDefinition('or', List[scout_catalog_SearchDatasetsQuery]),
17134
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
15592
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
17135
15593
  }
17136
15594
 
17137
15595
  def __init__(
@@ -23202,15 +21660,15 @@ class scout_checklistexecution_api_ListStreamingChecklistRequest(ConjureBeanType
23202
21660
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
23203
21661
  return {
23204
21662
  'page_size': ConjureFieldDefinition('pageSize', OptionalTypeWrapper[int]),
23205
- 'workspace_ids': ConjureFieldDefinition('workspaceIds', List[api_ids_WorkspaceId]),
21663
+ 'workspaces': ConjureFieldDefinition('workspaces', List[api_rids_WorkspaceRid]),
23206
21664
  'page_token': ConjureFieldDefinition('pageToken', OptionalTypeWrapper[str])
23207
21665
  }
23208
21666
 
23209
- __slots__: List[str] = ['_page_size', '_workspace_ids', '_page_token']
21667
+ __slots__: List[str] = ['_page_size', '_workspaces', '_page_token']
23210
21668
 
23211
- def __init__(self, workspace_ids: List[str], page_size: Optional[int] = None, page_token: Optional[str] = None) -> None:
21669
+ def __init__(self, workspaces: List[str], page_size: Optional[int] = None, page_token: Optional[str] = None) -> None:
23212
21670
  self._page_size = page_size
23213
- self._workspace_ids = workspace_ids
21671
+ self._workspaces = workspaces
23214
21672
  self._page_token = page_token
23215
21673
 
23216
21674
  @builtins.property
@@ -23221,8 +21679,8 @@ class scout_checklistexecution_api_ListStreamingChecklistRequest(ConjureBeanType
23221
21679
  return self._page_size
23222
21680
 
23223
21681
  @builtins.property
23224
- def workspace_ids(self) -> List[str]:
23225
- return self._workspace_ids
21682
+ def workspaces(self) -> List[str]:
21683
+ return self._workspaces
23226
21684
 
23227
21685
  @builtins.property
23228
21686
  def page_token(self) -> Optional[str]:
@@ -24161,7 +22619,7 @@ class scout_checks_api_ChecklistSearchQuery(ConjureUnionType):
24161
22619
  'assignee_rid': ConjureFieldDefinition('assigneeRid', scout_rids_api_UserRid),
24162
22620
  'is_published': ConjureFieldDefinition('isPublished', bool),
24163
22621
  'not_': ConjureFieldDefinition('not', scout_checks_api_ChecklistSearchQuery),
24164
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
22622
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
24165
22623
  }
24166
22624
 
24167
22625
  def __init__(
@@ -25196,7 +23654,7 @@ class scout_checks_api_CreateChecklistRequest(ConjureBeanType):
25196
23654
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
25197
23655
  'checklist_variables': ConjureFieldDefinition('checklistVariables', List[scout_checks_api_UnresolvedChecklistVariable]),
25198
23656
  'is_published': ConjureFieldDefinition('isPublished', OptionalTypeWrapper[bool]),
25199
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
23657
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
25200
23658
  }
25201
23659
 
25202
23660
  __slots__: List[str] = ['_commit_message', '_assignee_rid', '_title', '_description', '_functions', '_checks', '_properties', '_labels', '_checklist_variables', '_is_published', '_workspace']
@@ -55015,7 +53473,7 @@ class scout_datasource_connection_api_CreateConnection(ConjureBeanType):
55015
53473
  'scraping': ConjureFieldDefinition('scraping', OptionalTypeWrapper[scout_datasource_connection_api_ScrapingConfig]),
55016
53474
  'should_scrape': ConjureFieldDefinition('shouldScrape', bool),
55017
53475
  'limits': ConjureFieldDefinition('limits', OptionalTypeWrapper[scout_datasource_connection_api_LimitsConfig]),
55018
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
53476
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
55019
53477
  }
55020
53478
 
55021
53479
  __slots__: List[str] = ['_name', '_description', '_connection_details', '_metadata', '_required_tag_names', '_available_tag_values', '_scraping', '_should_scrape', '_limits', '_workspace']
@@ -57217,7 +55675,7 @@ class scout_integrations_api_CreateIntegrationRequest(ConjureBeanType):
57217
55675
  'name': ConjureFieldDefinition('name', str),
57218
55676
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
57219
55677
  'create_integration_details': ConjureFieldDefinition('createIntegrationDetails', scout_integrations_api_CreateIntegrationDetails),
57220
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
55678
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
57221
55679
  }
57222
55680
 
57223
55681
  __slots__: List[str] = ['_name', '_description', '_create_integration_details', '_workspace']
@@ -58131,7 +56589,7 @@ class scout_internal_search_api_SearchQuery(ConjureUnionType):
58131
56589
  'property': ConjureFieldDefinition('property', api_Property),
58132
56590
  'and_': ConjureFieldDefinition('and', List[scout_internal_search_api_SearchQuery]),
58133
56591
  'or_': ConjureFieldDefinition('or', List[scout_internal_search_api_SearchQuery]),
58134
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
56592
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
58135
56593
  }
58136
56594
 
58137
56595
  def __init__(
@@ -59347,7 +57805,7 @@ class scout_metadata_ListPropertiesAndLabelsRequest(ConjureBeanType):
59347
57805
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
59348
57806
  return {
59349
57807
  'resource_types': ConjureFieldDefinition('resourceTypes', OptionalTypeWrapper[List[scout_metadata_ResourceType]]),
59350
- 'workspaces': ConjureFieldDefinition('workspaces', OptionalTypeWrapper[List[api_ids_WorkspaceId]])
57808
+ 'workspaces': ConjureFieldDefinition('workspaces', OptionalTypeWrapper[List[api_rids_WorkspaceRid]])
59351
57809
  }
59352
57810
 
59353
57811
  __slots__: List[str] = ['_resource_types', '_workspaces']
@@ -59522,7 +57980,7 @@ class scout_notebook_api_CreateNotebookRequest(ConjureBeanType):
59522
57980
  'content_v2': ConjureFieldDefinition('contentV2', OptionalTypeWrapper[scout_workbookcommon_api_UnifiedWorkbookContent]),
59523
57981
  'event_refs': ConjureFieldDefinition('eventRefs', List[scout_workbookcommon_api_EventReference]),
59524
57982
  'check_alert_refs': ConjureFieldDefinition('checkAlertRefs', List[scout_workbookcommon_api_CheckAlertReference]),
59525
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
57983
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
59526
57984
  }
59527
57985
 
59528
57986
  __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']
@@ -60026,7 +58484,7 @@ class scout_notebook_api_SearchNotebooksQuery(ConjureUnionType):
60026
58484
  'notebook_type': ConjureFieldDefinition('notebookType', scout_notebook_api_NotebookType),
60027
58485
  'draft_state': ConjureFieldDefinition('draftState', bool),
60028
58486
  'archived': ConjureFieldDefinition('archived', bool),
60029
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
58487
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
60030
58488
  }
60031
58489
 
60032
58490
  def __init__(
@@ -61005,7 +59463,7 @@ class scout_run_api_CreateRunRequest(ConjureBeanType):
61005
59463
  'attachments': ConjureFieldDefinition('attachments', List[api_rids_AttachmentRid]),
61006
59464
  'asset': ConjureFieldDefinition('asset', OptionalTypeWrapper[scout_rids_api_AssetRid]),
61007
59465
  'assets': ConjureFieldDefinition('assets', List[scout_rids_api_AssetRid]),
61008
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
59466
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
61009
59467
  }
61010
59468
 
61011
59469
  __slots__: List[str] = ['_title', '_description', '_start_time', '_end_time', '_properties', '_labels', '_links', '_run_prefix', '_data_sources', '_attachments', '_asset', '_assets', '_workspace']
@@ -61436,7 +59894,7 @@ class scout_run_api_GetRunByIdRequest(ConjureBeanType):
61436
59894
  return {
61437
59895
  'run_number': ConjureFieldDefinition('runNumber', int),
61438
59896
  'run_prefix': ConjureFieldDefinition('runPrefix', OptionalTypeWrapper[str]),
61439
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
59897
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
61440
59898
  }
61441
59899
 
61442
59900
  __slots__: List[str] = ['_run_number', '_run_prefix', '_workspace']
@@ -61950,7 +60408,7 @@ class scout_run_api_SearchQuery(ConjureUnionType):
61950
60408
  'check_alert_states_filter': ConjureFieldDefinition('checkAlertStatesFilter', scout_run_api_CheckAlertStatesFilter),
61951
60409
  'and_': ConjureFieldDefinition('and', List[scout_run_api_SearchQuery]),
61952
60410
  'or_': ConjureFieldDefinition('or', List[scout_run_api_SearchQuery]),
61953
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
60411
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
61954
60412
  }
61955
60413
 
61956
60414
  def __init__(
@@ -62819,7 +61277,7 @@ class scout_template_api_CreateTemplateRequest(ConjureBeanType):
62819
61277
  'layout': ConjureFieldDefinition('layout', scout_layout_api_WorkbookLayout),
62820
61278
  'content': ConjureFieldDefinition('content', scout_workbookcommon_api_WorkbookContent),
62821
61279
  'message': ConjureFieldDefinition('message', str),
62822
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
61280
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
62823
61281
  }
62824
61282
 
62825
61283
  __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_is_published', '_charts', '_layout', '_content', '_message', '_workspace']
@@ -63029,7 +61487,7 @@ class scout_template_api_SearchTemplatesQuery(ConjureUnionType):
63029
61487
  'created_by': ConjureFieldDefinition('createdBy', scout_rids_api_UserRid),
63030
61488
  'is_archived': ConjureFieldDefinition('isArchived', bool),
63031
61489
  'is_published': ConjureFieldDefinition('isPublished', bool),
63032
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
61490
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
63033
61491
  }
63034
61492
 
63035
61493
  def __init__(
@@ -65514,7 +63972,7 @@ class scout_video_api_CreateVideoRequest(ConjureBeanType):
65514
63972
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
65515
63973
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
65516
63974
  'origin_metadata': ConjureFieldDefinition('originMetadata', OptionalTypeWrapper[scout_video_api_VideoOriginMetadata]),
65517
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
63975
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
65518
63976
  }
65519
63977
 
65520
63978
  __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_origin_metadata', '_workspace']
@@ -66247,7 +64705,7 @@ class scout_video_api_SearchVideosQuery(ConjureUnionType):
66247
64705
  'and_': ConjureFieldDefinition('and', List[scout_video_api_SearchVideosQuery]),
66248
64706
  'or_': ConjureFieldDefinition('or', List[scout_video_api_SearchVideosQuery]),
66249
64707
  'ingest_status': ConjureFieldDefinition('ingestStatus', api_IngestStatus),
66250
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
64708
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
66251
64709
  }
66252
64710
 
66253
64711
  def __init__(
@@ -67919,7 +66377,7 @@ class secrets_api_CreateSecretRequest(ConjureBeanType):
67919
66377
  'decrypted_value': ConjureFieldDefinition('decryptedValue', str),
67920
66378
  'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
67921
66379
  'labels': ConjureFieldDefinition('labels', List[api_Label]),
67922
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
66380
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
67923
66381
  }
67924
66382
 
67925
66383
  __slots__: List[str] = ['_name', '_description', '_decrypted_value', '_properties', '_labels', '_workspace']
@@ -68029,7 +66487,7 @@ class secrets_api_SearchSecretsQuery(ConjureUnionType):
68029
66487
  'property': ConjureFieldDefinition('property', api_Property),
68030
66488
  'and_': ConjureFieldDefinition('and', List[secrets_api_SearchSecretsQuery]),
68031
66489
  'or_': ConjureFieldDefinition('or', List[secrets_api_SearchSecretsQuery]),
68032
- 'workspace': ConjureFieldDefinition('workspace', api_ids_WorkspaceId)
66490
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid)
68033
66491
  }
68034
66492
 
68035
66493
  def __init__(
@@ -68673,87 +67131,6 @@ secrets_api_UpdateSecretRequest.__qualname__ = "UpdateSecretRequest"
68673
67131
  secrets_api_UpdateSecretRequest.__module__ = "nominal_api.secrets_api"
68674
67132
 
68675
67133
 
68676
- class security_api_workspace_Workspace(ConjureBeanType):
68677
-
68678
- @builtins.classmethod
68679
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
68680
- return {
68681
- 'id': ConjureFieldDefinition('id', api_ids_WorkspaceId),
68682
- 'rid': ConjureFieldDefinition('rid', api_rids_WorkspaceRid),
68683
- 'org': ConjureFieldDefinition('org', authentication_api_OrgRid)
68684
- }
68685
-
68686
- __slots__: List[str] = ['_id', '_rid', '_org']
68687
-
68688
- def __init__(self, id: str, org: str, rid: str) -> None:
68689
- self._id = id
68690
- self._rid = rid
68691
- self._org = org
68692
-
68693
- @builtins.property
68694
- def id(self) -> str:
68695
- """
68696
- A unique identifier for the workspace within the organization. The workspace ID must be lower case alphanumeric characters, optionally separated by hyphens.
68697
- """
68698
- return self._id
68699
-
68700
- @builtins.property
68701
- def rid(self) -> str:
68702
- return self._rid
68703
-
68704
- @builtins.property
68705
- def org(self) -> str:
68706
- return self._org
68707
-
68708
-
68709
- security_api_workspace_Workspace.__name__ = "Workspace"
68710
- security_api_workspace_Workspace.__qualname__ = "Workspace"
68711
- security_api_workspace_Workspace.__module__ = "nominal_api.security_api_workspace"
68712
-
68713
-
68714
- class security_api_workspace_WorkspaceService(Service):
68715
- """
68716
- This service provides information about workspaces. Workspaces provide access control boundaries. All resources in
68717
- Nominal live within a workspace.
68718
- """
68719
-
68720
- def get_workspaces(self, auth_header: str) -> List["security_api_workspace_Workspace"]:
68721
- """
68722
- Gets all workspaces that the requesting user belongs to.
68723
- """
68724
-
68725
- _headers: Dict[str, Any] = {
68726
- 'Accept': 'application/json',
68727
- 'Authorization': auth_header,
68728
- }
68729
-
68730
- _params: Dict[str, Any] = {
68731
- }
68732
-
68733
- _path_params: Dict[str, Any] = {
68734
- }
68735
-
68736
- _json: Any = None
68737
-
68738
- _path = '/workspaces/v1/workspaces'
68739
- _path = _path.format(**_path_params)
68740
-
68741
- _response: Response = self._request(
68742
- 'GET',
68743
- self._uri + _path,
68744
- params=_params,
68745
- headers=_headers,
68746
- json=_json)
68747
-
68748
- _decoder = ConjureDecoder()
68749
- return _decoder.decode(_response.json(), List[security_api_workspace_Workspace], self._return_none_for_unknown_union_types)
68750
-
68751
-
68752
- security_api_workspace_WorkspaceService.__name__ = "WorkspaceService"
68753
- security_api_workspace_WorkspaceService.__qualname__ = "WorkspaceService"
68754
- security_api_workspace_WorkspaceService.__module__ = "nominal_api.security_api_workspace"
68755
-
68756
-
68757
67134
  class storage_datasource_api_CreateNominalDataSourceRequest(ConjureBeanType):
68758
67135
 
68759
67136
  @builtins.classmethod
@@ -68763,7 +67140,7 @@ class storage_datasource_api_CreateNominalDataSourceRequest(ConjureBeanType):
68763
67140
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
68764
67141
  'granularity': ConjureFieldDefinition('granularity', OptionalTypeWrapper[api_Granularity]),
68765
67142
  'in_memory_streaming_enabled': ConjureFieldDefinition('inMemoryStreamingEnabled', OptionalTypeWrapper[bool]),
68766
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
67143
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
68767
67144
  }
68768
67145
 
68769
67146
  __slots__: List[str] = ['_id', '_description', '_granularity', '_in_memory_streaming_enabled', '_workspace']
@@ -69983,7 +68360,7 @@ class storage_writer_api_WriteBatchesRequest(ConjureBeanType):
69983
68360
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
69984
68361
  return {
69985
68362
  'batches': ConjureFieldDefinition('batches', List[storage_writer_api_RecordsBatch]),
69986
- 'data_source_rid': ConjureFieldDefinition('dataSourceRid', api_rids_NominalDataSourceRid),
68363
+ 'data_source_rid': ConjureFieldDefinition('dataSourceRid', api_rids_NominalDataSourceOrDatasetRid),
69987
68364
  'asynchronous_insert': ConjureFieldDefinition('asynchronousInsert', OptionalTypeWrapper[bool])
69988
68365
  }
69989
68366
 
@@ -70022,7 +68399,7 @@ class storage_writer_api_WriteBatchesRequestExternal(ConjureBeanType):
70022
68399
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70023
68400
  return {
70024
68401
  'batches': ConjureFieldDefinition('batches', List[storage_writer_api_RecordsBatchExternal]),
70025
- 'data_source_rid': ConjureFieldDefinition('dataSourceRid', api_rids_NominalDataSourceRid),
68402
+ 'data_source_rid': ConjureFieldDefinition('dataSourceRid', api_rids_NominalDataSourceOrDatasetRid),
70026
68403
  'asynchronous_insert': ConjureFieldDefinition('asynchronousInsert', OptionalTypeWrapper[bool])
70027
68404
  }
70028
68405
 
@@ -70445,7 +68822,7 @@ class themes_api_CreateChartThemeRequest(ConjureBeanType):
70445
68822
  return {
70446
68823
  'name': ConjureFieldDefinition('name', str),
70447
68824
  'content': ConjureFieldDefinition('content', themes_api_ChartThemeContent),
70448
- 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_ids_WorkspaceId])
68825
+ 'workspace': ConjureFieldDefinition('workspace', OptionalTypeWrapper[api_rids_WorkspaceRid])
70449
68826
  }
70450
68827
 
70451
68828
  __slots__: List[str] = ['_name', '_content', '_workspace']
@@ -74615,8 +72992,6 @@ scout_channelvariables_api_ChannelVariableName = str
74615
72992
 
74616
72993
  scout_datareview_api_ManualCheckEvaluationRid = str
74617
72994
 
74618
- api_ids_WorkspaceId = str
74619
-
74620
72995
  scout_asset_api_Channel = str
74621
72996
 
74622
72997
  scout_rids_api_FunctionRid = str
@@ -74691,8 +73066,6 @@ storage_writer_api_Field = str
74691
73066
 
74692
73067
  api_TagName = str
74693
73068
 
74694
- authentication_api_UserRid = str
74695
-
74696
73069
  scout_datasource_connection_api_ConnectionRid = str
74697
73070
 
74698
73071
  scout_channelvariables_api_ComputeSpecV1 = str
@@ -74779,6 +73152,8 @@ scout_run_api_ConnectionRid = str
74779
73152
 
74780
73153
  timeseries_logicalseries_api_DatasetName = str
74781
73154
 
73155
+ api_rids_NominalDataSourceOrDatasetRid = str
73156
+
74782
73157
  api_SeriesArchetypeRid = str
74783
73158
 
74784
73159
  scout_versioning_api_TagRid = str
@@ -74793,8 +73168,6 @@ scout_api_HexColor = str
74793
73168
 
74794
73169
  scout_datasource_connection_api_SecretRid = str
74795
73170
 
74796
- authorization_ApiKeyRid = str
74797
-
74798
73171
  scout_rids_api_ApiKeyRid = str
74799
73172
 
74800
73173
  ingest_api_ChannelPrefix = OptionalTypeWrapper[str]