class UserSchema(BaseSchema): id = fields.Int(dump_only=True) name = fields.Str(description="The user's name") created = fields.DateTime(dump_only=True, format="iso8601", default=dt.datetime.utcnow, doc_default="The current datetime")
class CreateDowntimeBase(BaseSchema): downtime_type = fields.String( required=True, description="The type of downtime to create.", enum=[ 'host', 'service', 'hostgroup', 'servicegroup', 'host_by_query', 'service_by_query' ], example="host", ) start_time = fields.DateTime( format="iso8601", required=True, example="2017-07-21T17:32:28Z", description= "The start datetime of the new downtime. The format has to conform to the ISO 8601 profile", ) end_time = fields.DateTime( required=True, example="2017-07-21T17:32:28Z", description= "The end datetime of the new downtime. The format has to conform to the ISO 8601 profile", format="iso8601", ) recur = fields.String( required=False, enum=[ "fixed", "hour", "day", "week", "second_week", "fourth_week", "weekday_start", "weekday_end", "day_of_month" ], description=param_description(schedule_host_downtime.__doc__, 'recur'), example="hour", missing="fixed", ) duration = fields.Integer( required=False, description=param_description(schedule_host_downtime.__doc__, 'duration'), example=3600, missing=0, ) comment = fields.String(required=False, example="Security updates")