Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions src/metorial/_generated/src/mt_2025_01_01_dashboard/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,9 @@
# DashboardInstancePortalsConsumerAccessGetOutput
# DashboardInstancePortalsConsumerAccessListOutput
# DashboardInstancePortalsConsumerAccessListQuery
# DashboardInstancePortalsConsumerAccessListingsGetOutput
# DashboardInstancePortalsConsumerAccessListingsListOutput
# DashboardInstancePortalsConsumerAccessListingsListQuery
# DashboardInstancePortalsConsumerAccessUpdateBody
# DashboardInstancePortalsConsumerAccessUpdateOutput
# DashboardInstancePortalsConsumerGroupsCreateBody
Expand Down Expand Up @@ -238,6 +241,17 @@
# DashboardInstancePortalsGetOutput
# DashboardInstancePortalsListOutput
# DashboardInstancePortalsListQuery
# DashboardInstancePortalsSurfaceProviderGroupsAddListingBody
# DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput
# DashboardInstancePortalsSurfaceProviderGroupsCreateBody
# DashboardInstancePortalsSurfaceProviderGroupsCreateOutput
# DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput
# DashboardInstancePortalsSurfaceProviderGroupsGetOutput
# DashboardInstancePortalsSurfaceProviderGroupsListOutput
# DashboardInstancePortalsSurfaceProviderGroupsListQuery
# DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
# DashboardInstancePortalsSurfaceProviderGroupsUpdateBody
# DashboardInstancePortalsSurfaceProviderGroupsUpdateOutput
# DashboardInstancePortalsUpdateBody
# DashboardInstancePortalsUpdateOutput
# DashboardInstanceProviderCategoriesGetOutput
Expand Down Expand Up @@ -793,6 +807,9 @@
# mapDashboardInstancePortalsConsumerAccessGetOutput
# mapDashboardInstancePortalsConsumerAccessListOutput
# mapDashboardInstancePortalsConsumerAccessListQuery
# mapDashboardInstancePortalsConsumerAccessListingsGetOutput
# mapDashboardInstancePortalsConsumerAccessListingsListOutput
# mapDashboardInstancePortalsConsumerAccessListingsListQuery
# mapDashboardInstancePortalsConsumerAccessUpdateBody
# mapDashboardInstancePortalsConsumerAccessUpdateOutput
# mapDashboardInstancePortalsConsumerGroupsCreateBody
Expand Down Expand Up @@ -821,6 +838,17 @@
# mapDashboardInstancePortalsGetOutput
# mapDashboardInstancePortalsListOutput
# mapDashboardInstancePortalsListQuery
# mapDashboardInstancePortalsSurfaceProviderGroupsAddListingBody
# mapDashboardInstancePortalsSurfaceProviderGroupsAddListingOutput
# mapDashboardInstancePortalsSurfaceProviderGroupsCreateBody
# mapDashboardInstancePortalsSurfaceProviderGroupsCreateOutput
# mapDashboardInstancePortalsSurfaceProviderGroupsDeleteOutput
# mapDashboardInstancePortalsSurfaceProviderGroupsGetOutput
# mapDashboardInstancePortalsSurfaceProviderGroupsListOutput
# mapDashboardInstancePortalsSurfaceProviderGroupsListQuery
# mapDashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
# mapDashboardInstancePortalsSurfaceProviderGroupsUpdateBody
# mapDashboardInstancePortalsSurfaceProviderGroupsUpdateOutput
# mapDashboardInstancePortalsUpdateBody
# mapDashboardInstancePortalsUpdateOutput
# mapDashboardInstanceProviderCategoriesGetOutput
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,11 @@
from .dashboard_instance_portals_auth_sso_tenants import *
from .dashboard_instance_portals_auth_sso_tenants_connections import *
from .dashboard_instance_portals_consumer_access import *
from .dashboard_instance_portals_consumer_access_listings import *
from .dashboard_instance_portals_consumer_groups import *
from .dashboard_instance_portals_consumer_invites import *
from .dashboard_instance_portals_consumer_profiles import *
from .dashboard_instance_portals_surface_provider_groups import *
from .dashboard_instance_provider_categories import *
from .dashboard_instance_provider_collections import *
from .dashboard_instance_provider_deployments import *
Expand Down Expand Up @@ -162,9 +164,11 @@
from .management_instance_portals_auth_sso_tenants import *
from .management_instance_portals_auth_sso_tenants_connections import *
from .management_instance_portals_consumer_access import *
from .management_instance_portals_consumer_access_listings import *
from .management_instance_portals_consumer_groups import *
from .management_instance_portals_consumer_invites import *
from .management_instance_portals_consumer_profiles import *
from .management_instance_portals_surface_provider_groups import *
from .management_instance_provider_categories import *
from .management_instance_provider_collections import *
from .management_instance_provider_deployments import *
Expand Down Expand Up @@ -235,9 +239,11 @@
from .portals_auth_sso_tenants import *
from .portals_auth_sso_tenants_connections import *
from .portals_consumer_access import *
from .portals_consumer_access_listings import *
from .portals_consumer_groups import *
from .portals_consumer_invites import *
from .portals_consumer_profiles import *
from .portals_surface_provider_groups import *
from .provider_categories import *
from .provider_collections import *
from .provider_deployments import *
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
from typing import Any, Dict, List, Optional, Union
from metorial_util_endpoint import BaseMetorialEndpoint, MetorialEndpointManager, MetorialRequest
from ..resources import mapDashboardInstancePortalsConsumerAccessListingsListOutput, DashboardInstancePortalsConsumerAccessListingsListOutput, mapDashboardInstancePortalsConsumerAccessListingsListQuery, DashboardInstancePortalsConsumerAccessListingsListQuery, mapDashboardInstancePortalsConsumerAccessListingsGetOutput, DashboardInstancePortalsConsumerAccessListingsGetOutput

class MetorialDashboardInstancePortalsConsumerAccessListingsEndpoint(BaseMetorialEndpoint):
"""Read the shared consumer access listings available on a portal surface."""

def __init__(self, config: MetorialEndpointManager):
super().__init__(config)

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:
"""
List portal consumer access listings
Returns a paginated list of shared consumer access listings for a portal.

:param instance_id: str
:param portal_id: str
:param limit: Optional[float] (optional)
:param after: Optional[str] (optional)
:param before: Optional[str] (optional)
:param cursor: Optional[str] (optional)
:param order: Optional[str] (optional)
:param search: Optional[str] (optional)
:param consumer_surface_provider_group_id: Optional[Union[str, List[str]]] (optional)
:param provider_template_id: Optional[Union[str, List[str]]] (optional)
:param magic_mcp_server_id: Optional[Union[str, List[str]]] (optional)
:param type: Optional[Union[str, List[str]]] (optional)
:return: DashboardInstancePortalsConsumerAccessListingsListOutput
"""
# Build query parameters from keyword arguments
query_dict = {}
if limit is not None:
query_dict["limit"] = limit
if after is not None:
query_dict["after"] = after
if before is not None:
query_dict["before"] = before
if cursor is not None:
query_dict["cursor"] = cursor
if order is not None:
query_dict["order"] = order
if search is not None:
query_dict["search"] = search
if consumer_surface_provider_group_id is not None:
query_dict["consumer_surface_provider_group_id"] = consumer_surface_provider_group_id
if provider_template_id is not None:
query_dict["provider_template_id"] = provider_template_id
if magic_mcp_server_id is not None:
query_dict["magic_mcp_server_id"] = magic_mcp_server_id
if type is not None:
query_dict["type"] = type

request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'consumer-access-listings'],
query=query_dict
)
return self._get(request).transform(mapDashboardInstancePortalsConsumerAccessListingsListOutput.from_dict)

def get(self, instance_id: str, portal_id: str, consumer_access_listing_id: str) -> DashboardInstancePortalsConsumerAccessListingsGetOutput:
"""
Get portal consumer access listing
Retrieves one shared consumer access listing for a portal.

:param instance_id: str
:param portal_id: str
:param consumer_access_listing_id: str
:return: DashboardInstancePortalsConsumerAccessListingsGetOutput
"""
request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'consumer-access-listings', consumer_access_listing_id]
)
return self._get(request).transform(mapDashboardInstancePortalsConsumerAccessListingsGetOutput.from_dict)
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
from typing import Any, Dict, List, Optional, Union
from metorial_util_endpoint import BaseMetorialEndpoint, MetorialEndpointManager, MetorialRequest
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

class MetorialDashboardInstancePortalsSurfaceProviderGroupsEndpoint(BaseMetorialEndpoint):
"""Manage the provider groups linked to a portal consumer surface for organizing providers."""

def __init__(self, config: MetorialEndpointManager):
super().__init__(config)

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:
"""
List portal surface provider groups
Returns a paginated list of provider groups linked to the portal consumer surface.

:param instance_id: str
:param portal_id: str
:param limit: Optional[float] (optional)
:param after: Optional[str] (optional)
:param before: Optional[str] (optional)
:param cursor: Optional[str] (optional)
:param order: Optional[str] (optional)
:return: DashboardInstancePortalsSurfaceProviderGroupsListOutput
"""
# Build query parameters from keyword arguments
query_dict = {}
if limit is not None:
query_dict["limit"] = limit
if after is not None:
query_dict["after"] = after
if before is not None:
query_dict["before"] = before
if cursor is not None:
query_dict["cursor"] = cursor
if order is not None:
query_dict["order"] = order

request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups'],
query=query_dict
)
return self._get(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsListOutput.from_dict)

def get(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsGetOutput:
"""
Get portal surface provider group
Retrieves a portal surface provider group by ID.

:param instance_id: str
:param portal_id: str
:param consumer_surface_provider_group_id: str
:return: DashboardInstancePortalsSurfaceProviderGroupsGetOutput
"""
request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id]
)
return self._get(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsGetOutput.from_dict)

def create(self, instance_id: str, portal_id: str, *, name: str, description: Optional[str] = None) -> DashboardInstancePortalsSurfaceProviderGroupsCreateOutput:
"""
Create portal surface provider group
Creates a new provider group linked to the portal consumer surface.

:param instance_id: str
:param portal_id: str
:param name: str
:param description: Optional[str] (optional)
:return: DashboardInstancePortalsSurfaceProviderGroupsCreateOutput
"""
# Build body parameters from keyword arguments
body_dict = {}
body_dict["name"] = name
if description is not None:
body_dict["description"] = description

request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups'],
body=body_dict
)
return self._post(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsCreateOutput.from_dict)

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:
"""
Update portal surface provider group
Updates a provider group linked to the portal consumer surface.

:param instance_id: str
:param portal_id: str
:param consumer_surface_provider_group_id: str
:param name: Optional[str] (optional)
:param description: Optional[str] (optional)
:param index: Optional[float] (optional)
:return: DashboardInstancePortalsSurfaceProviderGroupsUpdateOutput
"""
# Build body parameters from keyword arguments
body_dict = {}
if name is not None:
body_dict["name"] = name
if description is not None:
body_dict["description"] = description
if index is not None:
body_dict["index"] = index

request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id],
body=body_dict
)
return self._patch(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsUpdateOutput.from_dict)

def delete(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput:
"""
Delete portal surface provider group
Deletes a provider group linked to the portal consumer surface.

:param instance_id: str
:param portal_id: str
:param consumer_surface_provider_group_id: str
:return: DashboardInstancePortalsSurfaceProviderGroupsDeleteOutput
"""
request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id]
)
return self._delete(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsDeleteOutput.from_dict)

def add_listing(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str, *, consumer_access_listing_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput:
"""
Add listing to surface provider group
Adds a consumer access listing to the surface provider group.

:param instance_id: str
:param portal_id: str
:param consumer_surface_provider_group_id: str
:param consumer_access_listing_id: str
:return: DashboardInstancePortalsSurfaceProviderGroupsAddListingOutput
"""
# Build body parameters from keyword arguments
body_dict = {}
body_dict["consumer_access_listing_id"] = consumer_access_listing_id

request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id, 'listings'],
body=body_dict
)
return self._post(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsAddListingOutput.from_dict)

def remove_listing(self, instance_id: str, portal_id: str, consumer_surface_provider_group_id: str, consumer_access_listing_id: str) -> DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput:
"""
Remove listing from surface provider group
Removes a consumer access listing from the surface provider group.

:param instance_id: str
:param portal_id: str
:param consumer_surface_provider_group_id: str
:param consumer_access_listing_id: str
:return: DashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput
"""
request = MetorialRequest(
path=['dashboard', 'instances', instance_id, 'portals', portal_id, 'surface-provider-groups', consumer_surface_provider_group_id, 'listings', consumer_access_listing_id]
)
return self._delete(request).transform(mapDashboardInstancePortalsSurfaceProviderGroupsRemoveListingOutput.from_dict)
Loading
Loading