in src/lambdas/modular_api_handler/processors/tenant_processor.py [0:0]
def routes(cls) -> tuple[Route, ...]:
return (
cls.route(
Endpoint.TENANTS,
HTTPMethod.GET,
'query',
response=(HTTPStatus.OK, TenantsResponse, None),
permission=Permission.TENANT_DESCRIBE
),
cls.route(
Endpoint.TENANTS_NAME,
HTTPMethod.GET,
'get',
summary='Queries a specific tenant',
description='Either tenant name or tenant account id can be used to retrieve a tenant',
response=(HTTPStatus.OK, TenantResponse, None),
permission=Permission.TENANT_DESCRIBE
),
cls.route(
Endpoint.TENANTS,
HTTPMethod.POST,
'create',
response=[(HTTPStatus.CREATED, TenantResponse, None),
(HTTPStatus.CONFLICT, MessageModel, 'Tenant already exists')],
description='Creates a new tenant',
permission=Permission.TENANT_CREATE
),
cls.route(
Endpoint.TENANTS_NAME_ACTIVATE,
HTTPMethod.POST,
'activate',
response=(HTTPStatus.OK, TenantResponse, None),
description='Activates an existing tenant',
permission=Permission.TENANT_ACTIVATE
),
cls.route(
Endpoint.TENANTS_NAME_DEACTIVATE,
HTTPMethod.POST,
'deactivate',
response=(HTTPStatus.OK, TenantResponse, None),
description='Deactivates an existing tenant',
permission=Permission.TENANT_DEACTIVATE
),
cls.route(
Endpoint.TENANTS_NAME,
HTTPMethod.DELETE,
'delete',
summary='Guarantees that tenant is completely removed from the DB',
response=(HTTPStatus.NO_CONTENT, None, None),
permission=Permission.TENANT_DELETE
),
)