"""Store Activity schema.""" from marshmallow import Schema, fields, validate from notifications.constants import store as store_constants SUPPORTED_STORES = (store_constants.SPOTIFY_STORE, store_constants.APPLE_MUSIC_STORE) class StreamsUpdated(Schema): """Schema for streams updated event. Properties: - timestamp (str): timestamp of event in ISO format - available_date (str): date of stream data availability in ISO format - store (int): store (DSP) id """ timestamp = fields.DateTime(required=True, format='%Y-%m-%d %H:%M:%S') available_date = fields.Date(required=True, format='iso') store_id = fields.Integer(required=True, validate=validate.OneOf(SUPPORTED_STORES))