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
62 changes: 46 additions & 16 deletions src/metorial/_generated/src/mt_2025_01_01_dashboard/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,9 @@
# These types are automatically exported for better IDE support

# Type classes
# ApiKeysCreateBody
# ApiKeysCreateOutput
# ApiKeysGetOutput
# ApiKeysListOutput
# ApiKeysListQuery
# ApiKeysRevealOutput
# ApiKeysRevokeOutput
# ApiKeysRotateBody
# ApiKeysRotateOutput
# ApiKeysUpdateBody
# ApiKeysUpdateOutput
# DashboardBootBody
# DashboardBootOutput
# DashboardInstanceCallbacksCreateBody
Expand Down Expand Up @@ -46,6 +38,21 @@
# DashboardInstanceCallbacksNotificationsListQuery
# DashboardInstanceCallbacksUpdateBody
# DashboardInstanceCallbacksUpdateOutput
# DashboardInstanceConsumerSurfacesGetOutput
# DashboardInstanceConsumerSurfacesListOutput
# DashboardInstanceConsumerSurfacesListQuery
# DashboardInstanceConsumersCreateBody
# DashboardInstanceConsumersCreateOutput
# DashboardInstanceConsumersGetMemberConsumerBody
# DashboardInstanceConsumersGetMemberConsumerOutput
# DashboardInstanceConsumersGetOutput
# DashboardInstanceConsumersListOutput
# DashboardInstanceConsumersListQuery
# DashboardInstanceConsumersProfilesGetOutput
# DashboardInstanceConsumersProfilesListOutput
# DashboardInstanceConsumersProfilesListQuery
# DashboardInstanceConsumersUpdateBody
# DashboardInstanceConsumersUpdateOutput
# DashboardInstanceCustomProvidersCodeGetCodeEditorTokenOutput
# DashboardInstanceCustomProvidersCommitsCreateBody
# DashboardInstanceCustomProvidersCommitsCreateOutput
Expand Down Expand Up @@ -421,6 +428,14 @@
# DashboardOrganizationsAccessRolesUpdateOutput
# DashboardOrganizationsAccessRolesVersionsOutput
# DashboardOrganizationsAccessRolesVersionsQuery
# DashboardOrganizationsApiKeysCreateBody
# DashboardOrganizationsApiKeysCreateOutput
# DashboardOrganizationsApiKeysGetOutput
# DashboardOrganizationsApiKeysListOutput
# DashboardOrganizationsApiKeysListQuery
# DashboardOrganizationsApiKeysRevokeOutput
# DashboardOrganizationsApiKeysUpdateBody
# DashboardOrganizationsApiKeysUpdateOutput
# DashboardOrganizationsCreateBody
# DashboardOrganizationsCreateOutput
# DashboardOrganizationsDeleteOutput
Expand Down Expand Up @@ -541,17 +556,9 @@
# OrganizationsProfileUpdateOutput

# Mapper classes
# mapApiKeysCreateBody
# mapApiKeysCreateOutput
# mapApiKeysGetOutput
# mapApiKeysListOutput
# mapApiKeysListQuery
# mapApiKeysRevealOutput
# mapApiKeysRevokeOutput
# mapApiKeysRotateBody
# mapApiKeysRotateOutput
# mapApiKeysUpdateBody
# mapApiKeysUpdateOutput
# mapDashboardBootBody
# mapDashboardBootOutput
# mapDashboardInstanceCallbacksCreateBody
Expand Down Expand Up @@ -581,6 +588,21 @@
# mapDashboardInstanceCallbacksNotificationsListQuery
# mapDashboardInstanceCallbacksUpdateBody
# mapDashboardInstanceCallbacksUpdateOutput
# mapDashboardInstanceConsumerSurfacesGetOutput
# mapDashboardInstanceConsumerSurfacesListOutput
# mapDashboardInstanceConsumerSurfacesListQuery
# mapDashboardInstanceConsumersCreateBody
# mapDashboardInstanceConsumersCreateOutput
# mapDashboardInstanceConsumersGetMemberConsumerBody
# mapDashboardInstanceConsumersGetMemberConsumerOutput
# mapDashboardInstanceConsumersGetOutput
# mapDashboardInstanceConsumersListOutput
# mapDashboardInstanceConsumersListQuery
# mapDashboardInstanceConsumersProfilesGetOutput
# mapDashboardInstanceConsumersProfilesListOutput
# mapDashboardInstanceConsumersProfilesListQuery
# mapDashboardInstanceConsumersUpdateBody
# mapDashboardInstanceConsumersUpdateOutput
# mapDashboardInstanceCustomProvidersCodeGetCodeEditorTokenOutput
# mapDashboardInstanceCustomProvidersCommitsCreateBody
# mapDashboardInstanceCustomProvidersCommitsCreateOutput
Expand Down Expand Up @@ -956,6 +978,14 @@
# mapDashboardOrganizationsAccessRolesUpdateOutput
# mapDashboardOrganizationsAccessRolesVersionsOutput
# mapDashboardOrganizationsAccessRolesVersionsQuery
# mapDashboardOrganizationsApiKeysCreateBody
# mapDashboardOrganizationsApiKeysCreateOutput
# mapDashboardOrganizationsApiKeysGetOutput
# mapDashboardOrganizationsApiKeysListOutput
# mapDashboardOrganizationsApiKeysListQuery
# mapDashboardOrganizationsApiKeysRevokeOutput
# mapDashboardOrganizationsApiKeysUpdateBody
# mapDashboardOrganizationsApiKeysUpdateOutput
# mapDashboardOrganizationsCreateBody
# mapDashboardOrganizationsCreateOutput
# mapDashboardOrganizationsDeleteOutput
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
from .callbacks_events import *
from .callbacks_instances import *
from .callbacks_notifications import *
from .consumer_surfaces import *
from .consumers import *
from .consumers_profiles import *
from .custom_providers import *
from .custom_providers_code import *
from .custom_providers_commits import *
Expand All @@ -16,6 +19,9 @@
from .dashboard_instance_callbacks_events import *
from .dashboard_instance_callbacks_instances import *
from .dashboard_instance_callbacks_notifications import *
from .dashboard_instance_consumer_surfaces import *
from .dashboard_instance_consumers import *
from .dashboard_instance_consumers_profiles import *
from .dashboard_instance_custom_providers import *
from .dashboard_instance_custom_providers_code import *
from .dashboard_instance_custom_providers_commits import *
Expand Down Expand Up @@ -83,6 +89,7 @@
from .dashboard_organizations import *
from .dashboard_organizations_access_policies import *
from .dashboard_organizations_access_roles import *
from .dashboard_organizations_api_keys import *
from .dashboard_organizations_instances import *
from .dashboard_organizations_invites import *
from .dashboard_organizations_join import *
Expand Down Expand Up @@ -122,6 +129,9 @@
from .management_instance_callbacks_events import *
from .management_instance_callbacks_instances import *
from .management_instance_callbacks_notifications import *
from .management_instance_consumer_surfaces import *
from .management_instance_consumers import *
from .management_instance_consumers_profiles import *
from .management_instance_custom_providers import *
from .management_instance_custom_providers_code import *
from .management_instance_custom_providers_commits import *
Expand Down Expand Up @@ -187,6 +197,7 @@
from .management_organization import *
from .management_organization_access_policies import *
from .management_organization_access_roles import *
from .management_organization_api_keys import *
from .management_organization_instances import *
from .management_organization_invites import *
from .management_organization_members import *
Expand Down
Original file line number Diff line number Diff line change
@@ -1,144 +1,14 @@
from typing import Any, Dict, List, Optional, Union
from datetime import datetime
from metorial_util_endpoint import BaseMetorialEndpoint, MetorialEndpointManager, MetorialRequest
from ..resources import mapApiKeysListOutput, ApiKeysListOutput, mapApiKeysListQuery, ApiKeysListQuery, mapApiKeysGetOutput, ApiKeysGetOutput, mapApiKeysCreateOutput, ApiKeysCreateOutput, mapApiKeysCreateBody, ApiKeysCreateBody, mapApiKeysUpdateOutput, ApiKeysUpdateOutput, mapApiKeysUpdateBody, ApiKeysUpdateBody, mapApiKeysRevokeOutput, ApiKeysRevokeOutput, mapApiKeysRotateOutput, ApiKeysRotateOutput, mapApiKeysRotateBody, ApiKeysRotateBody, mapApiKeysRevealOutput, ApiKeysRevealOutput
from ..resources import mapApiKeysRotateOutput, ApiKeysRotateOutput, mapApiKeysRotateBody, ApiKeysRotateBody, mapApiKeysRevealOutput, ApiKeysRevealOutput

class MetorialApiKeysEndpoint(BaseMetorialEndpoint):
"""Read and write API key information"""

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

def list(self, organization_id: str, *, limit: Optional[float] = None, after: Optional[str] = None, before: Optional[str] = None, cursor: Optional[str] = None, order: Optional[str] = None, type: Any = None, instance_id: str = None) -> ApiKeysListOutput:
"""
Get user
Get the current user information

:param organization_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 type: Any (optional)
:param instance_id: str (optional)
:return: ApiKeysListOutput
"""
# 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 type is not None:
query_dict["type"] = type
if instance_id is not None:
query_dict["instance_id"] = instance_id

request = MetorialRequest(
path=['dashboard', 'organizations', organization_id, 'api-keys'],
query=query_dict
)
return self._get(request).transform(mapApiKeysListOutput.from_dict)

def get(self, organization_id: str, api_key_id: str) -> ApiKeysGetOutput:
"""
Get API key
Get the information of a specific API key

:param organization_id: str
:param api_key_id: str
:return: ApiKeysGetOutput
"""
request = MetorialRequest(
path=['dashboard', 'organizations', organization_id, 'api-keys', api_key_id]
)
return self._get(request).transform(mapApiKeysGetOutput.from_dict)

def create(self, organization_id: str, *, name: str, type: Any = None, instance_id: str = None, description: Optional[str] = None, expires_at: Optional[datetime] = None, ip_filters: Optional[List[str]] = None) -> ApiKeysCreateOutput:
"""
Create API key
Create a new API key

:param organization_id: str
:param type: Any (optional)
:param instance_id: str (optional)
:param name: str
:param description: Optional[str] (optional)
:param expires_at: Optional[datetime] (optional)
:param ip_filters: Optional[List[str]] (optional)
:return: ApiKeysCreateOutput
"""
# Build body parameters from keyword arguments
body_dict = {}
if type is not None:
body_dict["type"] = type
if instance_id is not None:
body_dict["instance_id"] = instance_id
body_dict["name"] = name
if description is not None:
body_dict["description"] = description
if expires_at is not None:
body_dict["expires_at"] = expires_at
if ip_filters is not None:
body_dict["ip_filters"] = ip_filters

request = MetorialRequest(
path=['dashboard', 'organizations', organization_id, 'api-keys'],
body=body_dict
)
return self._post(request).transform(mapApiKeysCreateOutput.from_dict)

def update(self, organization_id: str, api_key_id: str, *, name: Optional[str] = None, description: Optional[str] = None, expires_at: Optional[datetime] = None, ip_filters: Optional[List[str]] = None) -> ApiKeysUpdateOutput:
"""
Update API key
Update the information of a specific API key

:param organization_id: str
:param api_key_id: str
:param name: Optional[str] (optional)
:param description: Optional[str] (optional)
:param expires_at: Optional[datetime] (optional)
:param ip_filters: Optional[List[str]] (optional)
:return: ApiKeysUpdateOutput
"""
# 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 expires_at is not None:
body_dict["expires_at"] = expires_at
if ip_filters is not None:
body_dict["ip_filters"] = ip_filters

request = MetorialRequest(
path=['dashboard', 'organizations', organization_id, 'api-keys', api_key_id],
body=body_dict
)
return self._post(request).transform(mapApiKeysUpdateOutput.from_dict)

def revoke(self, organization_id: str, api_key_id: str) -> ApiKeysRevokeOutput:
"""
Revoke API key
Revoke a specific API key

:param organization_id: str
:param api_key_id: str
:return: ApiKeysRevokeOutput
"""
request = MetorialRequest(
path=['dashboard', 'organizations', organization_id, 'api-keys', api_key_id]
)
return self._delete(request).transform(mapApiKeysRevokeOutput.from_dict)

def rotate(self, organization_id: str, api_key_id: str, *, current_expires_at: Optional[datetime] = None) -> ApiKeysRotateOutput:
"""
Rotate API key
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
from typing import Any, Dict, List, Optional, Union
from metorial_util_endpoint import BaseMetorialEndpoint, MetorialEndpointManager, MetorialRequest
from ..resources import mapDashboardInstanceConsumerSurfacesListOutput, DashboardInstanceConsumerSurfacesListOutput, mapDashboardInstanceConsumerSurfacesListQuery, DashboardInstanceConsumerSurfacesListQuery, mapDashboardInstanceConsumerSurfacesGetOutput, DashboardInstanceConsumerSurfacesGetOutput

class MetorialConsumerSurfacesEndpoint(BaseMetorialEndpoint):
"""List and retrieve consumer surfaces for an instance."""

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

def list(self, *, limit: Optional[float] = None, after: Optional[str] = None, before: Optional[str] = None, cursor: Optional[str] = None, order: Optional[str] = None) -> DashboardInstanceConsumerSurfacesListOutput:
"""
List consumer surfaces
Returns a paginated list of consumer surfaces for an instance.

: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: DashboardInstanceConsumerSurfacesListOutput
"""
# 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=['consumer-surfaces'],
query=query_dict
)
return self._get(request).transform(mapDashboardInstanceConsumerSurfacesListOutput.from_dict)

def get(self, consumer_surface_id: str) -> DashboardInstanceConsumerSurfacesGetOutput:
"""
Get consumer surface
Retrieves a consumer surface by ID.

:param consumer_surface_id: str
:return: DashboardInstanceConsumerSurfacesGetOutput
"""
request = MetorialRequest(
path=['consumer-surfaces', consumer_surface_id]
)
return self._get(request).transform(mapDashboardInstanceConsumerSurfacesGetOutput.from_dict)
Loading
Loading