Initial commit from monorepo
This commit is contained in:
30
billing_app/views.py
Normal file
30
billing_app/views.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from graphene_django.views import GraphQLView
|
||||
from .graphql_middleware import M2MNoAuthMiddleware, PublicNoAuthMiddleware, BillingJWTMiddleware
|
||||
|
||||
|
||||
class PublicGraphQLView(GraphQLView):
|
||||
"""GraphQL view for public operations (no authentication)."""
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
kwargs['middleware'] = [PublicNoAuthMiddleware()]
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
|
||||
class M2MGraphQLView(GraphQLView):
|
||||
"""GraphQL view for M2M (machine-to-machine) operations.
|
||||
No authentication required - used by internal services (Temporal, etc.)
|
||||
"""
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
kwargs['middleware'] = [M2MNoAuthMiddleware()]
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
|
||||
class TeamGraphQLView(GraphQLView):
|
||||
"""GraphQL view for team-level operations.
|
||||
Requires Access token with teams:member scope.
|
||||
"""
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
kwargs['middleware'] = [BillingJWTMiddleware()]
|
||||
super().__init__(*args, **kwargs)
|
||||
Reference in New Issue
Block a user