Skip to content

Commit 53c1e3e

Browse files
committed
add consumer listing groups
1 parent 610bc93 commit 53c1e3e

57 files changed

Lines changed: 2775 additions & 7 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/metorial/_generated/src/mt_2025_01_01_dashboard/__init__.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,9 @@
210210
# DashboardInstancePortalsConsumerAccessGetOutput
211211
# DashboardInstancePortalsConsumerAccessListOutput
212212
# DashboardInstancePortalsConsumerAccessListQuery
213+
# DashboardInstancePortalsConsumerAccessListingsGetOutput
214+
# DashboardInstancePortalsConsumerAccessListingsListOutput
215+
# DashboardInstancePortalsConsumerAccessListingsListQuery
213216
# DashboardInstancePortalsConsumerAccessUpdateBody
214217
# DashboardInstancePortalsConsumerAccessUpdateOutput
215218
# DashboardInstancePortalsConsumerGroupsCreateBody
@@ -238,6 +241,17 @@
238241
# DashboardInstancePortalsGetOutput
239242
# DashboardInstancePortalsListOutput
240243
# DashboardInstancePortalsListQuery
244+
# DashboardInstancePortalsSurfaceProviderGroupsAddListingBody
245+
# DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput
246+
# DashboardInstancePortalsSurfaceProviderGroupsCreateBody
247+
# DashboardInstancePortalsSurfaceProviderGroupsCreateOutput
248+
# DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput
249+
# DashboardInstancePortalsSurfaceProviderGroupsGetOutput
250+
# DashboardInstancePortalsSurfaceProviderGroupsListOutput
251+
# DashboardInstancePortalsSurfaceProviderGroupsListQuery
252+
# DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
253+
# DashboardInstancePortalsSurfaceProviderGroupsUpdateBody
254+
# DashboardInstancePortalsSurfaceProviderGroupsUpdateOutput
241255
# DashboardInstancePortalsUpdateBody
242256
# DashboardInstancePortalsUpdateOutput
243257
# DashboardInstanceProviderCategoriesGetOutput
@@ -793,6 +807,9 @@
793807
# mapDashboardInstancePortalsConsumerAccessGetOutput
794808
# mapDashboardInstancePortalsConsumerAccessListOutput
795809
# mapDashboardInstancePortalsConsumerAccessListQuery
810+
# mapDashboardInstancePortalsConsumerAccessListingsGetOutput
811+
# mapDashboardInstancePortalsConsumerAccessListingsListOutput
812+
# mapDashboardInstancePortalsConsumerAccessListingsListQuery
796813
# mapDashboardInstancePortalsConsumerAccessUpdateBody
797814
# mapDashboardInstancePortalsConsumerAccessUpdateOutput
798815
# mapDashboardInstancePortalsConsumerGroupsCreateBody
@@ -821,6 +838,17 @@
821838
# mapDashboardInstancePortalsGetOutput
822839
# mapDashboardInstancePortalsListOutput
823840
# mapDashboardInstancePortalsListQuery
841+
# mapDashboardInstancePortalsSurfaceProviderGroupsAddListingBody
842+
# mapDashboardInstancePortalsSurfaceProviderGroupsAddListingOutput
843+
# mapDashboardInstancePortalsSurfaceProviderGroupsCreateBody
844+
# mapDashboardInstancePortalsSurfaceProviderGroupsCreateOutput
845+
# mapDashboardInstancePortalsSurfaceProviderGroupsDeleteOutput
846+
# mapDashboardInstancePortalsSurfaceProviderGroupsGetOutput
847+
# mapDashboardInstancePortalsSurfaceProviderGroupsListOutput
848+
# mapDashboardInstancePortalsSurfaceProviderGroupsListQuery
849+
# mapDashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
850+
# mapDashboardInstancePortalsSurfaceProviderGroupsUpdateBody
851+
# mapDashboardInstancePortalsSurfaceProviderGroupsUpdateOutput
824852
# mapDashboardInstancePortalsUpdateBody
825853
# mapDashboardInstancePortalsUpdateOutput
826854
# mapDashboardInstanceProviderCategoriesGetOutput

src/metorial/_generated/src/mt_2025_01_01_dashboard/endpoints/__init__.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,11 @@
4747
from .dashboard_instance_portals_auth_sso_tenants import *
4848
from .dashboard_instance_portals_auth_sso_tenants_connections import *
4949
from .dashboard_instance_portals_consumer_access import *
50+
from .dashboard_instance_portals_consumer_access_listings import *
5051
from .dashboard_instance_portals_consumer_groups import *
5152
from .dashboard_instance_portals_consumer_invites import *
5253
from .dashboard_instance_portals_consumer_profiles import *
54+
from .dashboard_instance_portals_surface_provider_groups import *
5355
from .dashboard_instance_provider_categories import *
5456
from .dashboard_instance_provider_collections import *
5557
from .dashboard_instance_provider_deployments import *
@@ -162,9 +164,11 @@
162164
from .management_instance_portals_auth_sso_tenants import *
163165
from .management_instance_portals_auth_sso_tenants_connections import *
164166
from .management_instance_portals_consumer_access import *
167+
from .management_instance_portals_consumer_access_listings import *
165168
from .management_instance_portals_consumer_groups import *
166169
from .management_instance_portals_consumer_invites import *
167170
from .management_instance_portals_consumer_profiles import *
171+
from .management_instance_portals_surface_provider_groups import *
168172
from .management_instance_provider_categories import *
169173
from .management_instance_provider_collections import *
170174
from .management_instance_provider_deployments import *
@@ -235,9 +239,11 @@
235239
from .portals_auth_sso_tenants import *
236240
from .portals_auth_sso_tenants_connections import *
237241
from .portals_consumer_access import *
242+
from .portals_consumer_access_listings import *
238243
from .portals_consumer_groups import *
239244
from .portals_consumer_invites import *
240245
from .portals_consumer_profiles import *
246+
from .portals_surface_provider_groups import *
241247
from .provider_categories import *
242248
from .provider_collections import *
243249
from .provider_deployments import *
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
from typing import Any, Dict, List, Optional, Union
2+
from metorial_util_endpoint import BaseMetorialEndpoint, MetorialEndpointManager, MetorialRequest
3+
from ..resources import mapDashboardInstancePortalsConsumerAccessListingsListOutput, DashboardInstancePortalsConsumerAccessListingsListOutput, mapDashboardInstancePortalsConsumerAccessListingsListQuery, DashboardInstancePortalsConsumerAccessListingsListQuery, mapDashboardInstancePortalsConsumerAccessListingsGetOutput, DashboardInstancePortalsConsumerAccessListingsGetOutput
4+
5+
class MetorialDashboardInstancePortalsConsumerAccessListingsEndpoint(BaseMetorialEndpoint):
6+
"""Read the shared consumer access listings available on a portal surface."""
7+
8+
def __init__(self, config: MetorialEndpointManager):
9+
super().__init__(config)
10+
11+
def list(self, instance_id: str, portal_id: str, *, limit: Optional[float] = None, after: Optional[str] = None, before: Optional[str] = None, cursor: Optional[str] = None, order: Optional[str] = None, search: Optional[str] = None, consumer_surface_provider_group_id: Optional[Union[str, List[str]]] = None, provider_template_id: Optional[Union[str, List[str]]] = None, magic_mcp_server_id: Optional[Union[str, List[str]]] = None, type: Optional[Union[str, List[str]]] = None) -> DashboardInstancePortalsConsumerAccessListingsListOutput:
12+
"""
13+
List portal consumer access listings
14+
Returns a paginated list of shared consumer access listings for a portal.
15+
16+
:param instance_id: str
17+
:param portal_id: str
18+
:param limit: Optional[float] (optional)
19+
:param after: Optional[str] (optional)
20+
:param before: Optional[str] (optional)
21+
:param cursor: Optional[str] (optional)
22+
:param order: Optional[str] (optional)
23+
:param search: Optional[str] (optional)
24+
:param consumer_surface_provider_group_id: Optional[Union[str, List[str]]] (optional)
25+
:param provider_template_id: Optional[Union[str, List[str]]] (optional)
26+
:param magic_mcp_server_id: Optional[Union[str, List[str]]] (optional)
27+
:param type: Optional[Union[str, List[str]]] (optional)
28+
:return: DashboardInstancePortalsConsumerAccessListingsListOutput
29+
"""
30+
# Build query parameters from keyword arguments
31+
query_dict = {}
32+
if limit is not None:
33+
query_dict["limit"] = limit
34+
if after is not None:
35+
query_dict["after"] = after
36+
if before is not None:
37+
query_dict["before"] = before
38+
if cursor is not None:
39+
query_dict["cursor"] = cursor
40+
if order is not None:
41+
query_dict["order"] = order
42+
if search is not None:
43+
query_dict["search"] = search
44+
if consumer_surface_provider_group_id is not None:
45+
query_dict["consumer_surface_provider_group_id"] = consumer_surface_provider_group_id
46+
if provider_template_id is not None:
47+
query_dict["provider_template_id"] = provider_template_id
48+
if magic_mcp_server_id is not None:
49+
query_dict["magic_mcp_server_id"] = magic_mcp_server_id
50+
if type is not None:
51+
query_dict["type"] = type
52+
53+
request = MetorialRequest(
54+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'consumer-access-listings'],
55+
query=query_dict
56+
)
57+
return self._get(request).transform(mapDashboardInstancePortalsConsumerAccessListingsListOutput.from_dict)
58+
59+
def get(self, instance_id: str, portal_id: str, consumer_access_listing_id: str) -> DashboardInstancePortalsConsumerAccessListingsGetOutput:
60+
"""
61+
Get portal consumer access listing
62+
Retrieves one shared consumer access listing for a portal.
63+
64+
:param instance_id: str
65+
:param portal_id: str
66+
:param consumer_access_listing_id: str
67+
:return: DashboardInstancePortalsConsumerAccessListingsGetOutput
68+
"""
69+
request = MetorialRequest(
70+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'consumer-access-listings', consumer_access_listing_id]
71+
)
72+
return self._get(request).transform(mapDashboardInstancePortalsConsumerAccessListingsGetOutput.from_dict)
Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,160 @@
1+
from typing import Any, Dict, List, Optional, Union
2+
from metorial_util_endpoint import BaseMetorialEndpoint, MetorialEndpointManager, MetorialRequest
3+
from ..resources import mapDashboardInstancePortalsSurfaceProviderGroupsListOutput, DashboardInstancePortalsSurfaceProviderGroupsListOutput, mapDashboardInstancePortalsSurfaceProviderGroupsListQuery, DashboardInstancePortalsSurfaceProviderGroupsListQuery, mapDashboardInstancePortalsSurfaceProviderGroupsGetOutput, DashboardInstancePortalsSurfaceProviderGroupsGetOutput, mapDashboardInstancePortalsSurfaceProviderGroupsCreateOutput, DashboardInstancePortalsSurfaceProviderGroupsCreateOutput, mapDashboardInstancePortalsSurfaceProviderGroupsCreateBody, DashboardInstancePortalsSurfaceProviderGroupsCreateBody, mapDashboardInstancePortalsSurfaceProviderGroupsUpdateOutput, DashboardInstancePortalsSurfaceProviderGroupsUpdateOutput, mapDashboardInstancePortalsSurfaceProviderGroupsUpdateBody, DashboardInstancePortalsSurfaceProviderGroupsUpdateBody, mapDashboardInstancePortalsSurfaceProviderGroupsDeleteOutput, DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput, mapDashboardInstancePortalsSurfaceProviderGroupsAddListingOutput, DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput, mapDashboardInstancePortalsSurfaceProviderGroupsAddListingBody, DashboardInstancePortalsSurfaceProviderGroupsAddListingBody, mapDashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput, DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
4+
5+
class MetorialDashboardInstancePortalsSurfaceProviderGroupsEndpoint(BaseMetorialEndpoint):
6+
"""Manage the provider groups linked to a portal consumer surface for organizing providers."""
7+
8+
def __init__(self, config: MetorialEndpointManager):
9+
super().__init__(config)
10+
11+
def list(self, instance_id: str, portal_id: str, *, limit: Optional[float] = None, after: Optional[str] = None, before: Optional[str] = None, cursor: Optional[str] = None, order: Optional[str] = None) -> DashboardInstancePortalsSurfaceProviderGroupsListOutput:
12+
"""
13+
List portal surface provider groups
14+
Returns a paginated list of provider groups linked to the portal consumer surface.
15+
16+
:param instance_id: str
17+
:param portal_id: str
18+
:param limit: Optional[float] (optional)
19+
:param after: Optional[str] (optional)
20+
:param before: Optional[str] (optional)
21+
:param cursor: Optional[str] (optional)
22+
:param order: Optional[str] (optional)
23+
:return: DashboardInstancePortalsSurfaceProviderGroupsListOutput
24+
"""
25+
# Build query parameters from keyword arguments
26+
query_dict = {}
27+
if limit is not None:
28+
query_dict["limit"] = limit
29+
if after is not None:
30+
query_dict["after"] = after
31+
if before is not None:
32+
query_dict["before"] = before
33+
if cursor is not None:
34+
query_dict["cursor"] = cursor
35+
if order is not None:
36+
query_dict["order"] = order
37+
38+
request = MetorialRequest(
39+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups'],
40+
query=query_dict
41+
)
42+
return self._get(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsListOutput.from_dict)
43+
44+
def get(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsGetOutput:
45+
"""
46+
Get portal surface provider group
47+
Retrieves a portal surface provider group by ID.
48+
49+
:param instance_id: str
50+
:param portal_id: str
51+
:param consumer_surface_provider_group_id: str
52+
:return: DashboardInstancePortalsSurfaceProviderGroupsGetOutput
53+
"""
54+
request = MetorialRequest(
55+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id]
56+
)
57+
return self._get(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsGetOutput.from_dict)
58+
59+
def create(self, instance_id: str, portal_id: str, *, name: str, description: Optional[str] = None) -> DashboardInstancePortalsSurfaceProviderGroupsCreateOutput:
60+
"""
61+
Create portal surface provider group
62+
Creates a new provider group linked to the portal consumer surface.
63+
64+
:param instance_id: str
65+
:param portal_id: str
66+
:param name: str
67+
:param description: Optional[str] (optional)
68+
:return: DashboardInstancePortalsSurfaceProviderGroupsCreateOutput
69+
"""
70+
# Build body parameters from keyword arguments
71+
body_dict = {}
72+
body_dict["name"] = name
73+
if description is not None:
74+
body_dict["description"] = description
75+
76+
request = MetorialRequest(
77+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups'],
78+
body=body_dict
79+
)
80+
return self._post(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsCreateOutput.from_dict)
81+
82+
def update(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str, *, name: Optional[str] = None, description: Optional[str] = None, index: Optional[float] = None) -> DashboardInstancePortalsSurfaceProviderGroupsUpdateOutput:
83+
"""
84+
Update portal surface provider group
85+
Updates a provider group linked to the portal consumer surface.
86+
87+
:param instance_id: str
88+
:param portal_id: str
89+
:param consumer_surface_provider_group_id: str
90+
:param name: Optional[str] (optional)
91+
:param description: Optional[str] (optional)
92+
:param index: Optional[float] (optional)
93+
:return: DashboardInstancePortalsSurfaceProviderGroupsUpdateOutput
94+
"""
95+
# Build body parameters from keyword arguments
96+
body_dict = {}
97+
if name is not None:
98+
body_dict["name"] = name
99+
if description is not None:
100+
body_dict["description"] = description
101+
if index is not None:
102+
body_dict["index"] = index
103+
104+
request = MetorialRequest(
105+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id],
106+
body=body_dict
107+
)
108+
return self._patch(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsUpdateOutput.from_dict)
109+
110+
def delete(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput:
111+
"""
112+
Delete portal surface provider group
113+
Deletes a provider group linked to the portal consumer surface.
114+
115+
:param instance_id: str
116+
:param portal_id: str
117+
:param consumer_surface_provider_group_id: str
118+
:return: DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput
119+
"""
120+
request = MetorialRequest(
121+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id]
122+
)
123+
return self._delete(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsDeleteOutput.from_dict)
124+
125+
def add_listing(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str, *, consumer_access_listing_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput:
126+
"""
127+
Add listing to surface provider group
128+
Adds a consumer access listing to the surface provider group.
129+
130+
:param instance_id: str
131+
:param portal_id: str
132+
:param consumer_surface_provider_group_id: str
133+
:param consumer_access_listing_id: str
134+
:return: DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput
135+
"""
136+
# Build body parameters from keyword arguments
137+
body_dict = {}
138+
body_dict["consumer_access_listing_id"] = consumer_access_listing_id
139+
140+
request = MetorialRequest(
141+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id, 'listings'],
142+
body=body_dict
143+
)
144+
return self._post(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsAddListingOutput.from_dict)
145+
146+
def remove_listing(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str, consumer_access_listing_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput:
147+
"""
148+
Remove listing from surface provider group
149+
Removes a consumer access listing from the surface provider group.
150+
151+
:param instance_id: str
152+
:param portal_id: str
153+
:param consumer_surface_provider_group_id: str
154+
:param consumer_access_listing_id: str
155+
:return: DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
156+
"""
157+
request = MetorialRequest(
158+
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id, 'listings', consumer_access_listing_id]
159+
)
160+
return self._delete(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput.from_dict)

0 commit comments

Comments
 (0)