from marshmallow import Schema, fields, validate from src.legacy.charts.constants import Vendors from src.legacy.core.serializers import QueryWebArgs class ChartMonitoring: """Schema for input and output validation of ChartMonitoringView.""" class Request(QueryWebArgs): dsp = fields.List(fields.String(validate=validate.OneOf(Vendors.ALL), required=True)) chart_id = fields.String(load_default=None) class Response(Schema): dsp = fields.String() chart_id = fields.String() updated_at = fields.DateTime() chart_datetime = fields.DateTime() data = fields.String() class RequestBodyPut(QueryWebArgs): dsp = fields.String(validate=validate.OneOf(Vendors.ALL), required=True) chart_id = fields.String(required=True) updated_at = fields.DateTime(required=True) chart_datetime = fields.DateTime(required=True) data = fields.String(load_default=None)