"""Marshmallow Schema for input validation.""" from marshmallow import Schema, fields from marshmallow.fields import Field class StringOrNumeric(Field): """Class for string or numeric formats.""" def _deserialize(self, value, attr, obj, **kwargs): if not value: return None return str(value) class Contact(Schema): """Class for contact request.""" participant_id = StringOrNumeric(required=False) participant_name = fields.String(required=False) product_id = fields.Int(required=False) product_name = fields.String(required=False) upc = fields.String(required=False) message = fields.String(required=True) vendor_id = fields.Int(required=True) subaccount_id = fields.Int(required=True) current_artist_name = fields.String(required=False) new_artist_name = fields.String(required=False)