from rest_framework import serializers from .models import ( InboundEndpoint, InboundEvent, OutboundDelivery, OutboundEndpoint, OutboundSubscription, ) class OutboundEndpointSerializer(serializers.ModelSerializer): class Meta: model = OutboundEndpoint fields = "__all__" read_only_fields = ["created_at", "updated_at"] class OutboundEndpointInfoSerializer(serializers.ModelSerializer): class Meta: model = OutboundEndpoint fields = ["id", "name", "url"] class OutboundSubscriptionSerializer(serializers.ModelSerializer): endpoint_info = OutboundEndpointInfoSerializer(source="endpoint", read_only=True) class Meta: model = OutboundSubscription fields = "__all__" read_only_fields = ["created_at", "updated_at"] class OutboundDeliverySerializer(serializers.ModelSerializer): class Meta: model = OutboundDelivery fields = "__all__" read_only_fields = ["created_at", "completed_at"] class InboundEndpointSerializer(serializers.ModelSerializer): class Meta: model = InboundEndpoint fields = "__all__" read_only_fields = ["created_at", "updated_at"] class InboundEventSerializer(serializers.ModelSerializer): class Meta: model = InboundEvent fields = "__all__" read_only_fields = ["received_at", "processed_at"] class InboundReceiveSerializer(serializers.Serializer): payload = serializers.JSONField() headers = serializers.JSONField()