Source code for illumio.reporting.report

# -*- coding: utf-8 -*-

"""This module provides classes related to reports and report schedules.

Copyright:
    © 2022 Illumio

License:
    Apache2, see LICENSE for more details.
"""
from dataclasses import dataclass
from typing import List

from illumio.util import Reference, MutableObject, pce_api


[docs] @dataclass @pce_api('reports') class Report(MutableObject): """Represents a report in the PCE.""" report_type: str = None status: str = None report_template: Reference = None report_parameters: dict = None send_to: List[str] = None send_by_email: bool = None generated_at: str = None progress_percentage: int = None
[docs] @dataclass @pce_api('report_schedules') class ReportSchedule(MutableObject): """Represents a report schedule in the PCE.""" report_type: str = None schedule: dict = None report_parameters: dict = None report_template: Reference = None send_to: List[str] = None enabled: bool = None report_generation_frequency: str = None scheduled_at: str = None send_by_email: bool = None
[docs] @dataclass @pce_api('report_templates') class ReportTemplate(Reference): """Represents a report template in the PCE. Read-only. Templates define the structure and parameters for reports. """ name: str = None description: str = None enabled: bool = None report_parameters: dict = None show_in_ui: bool = None template_type: str = None format: str = None created_at: str = None updated_at: str = None
__all__ = [ 'Report', 'ReportSchedule', 'ReportTemplate', ]