vectorize_client.models.zoomadmin_config

Vectorize API

API for Vectorize services (Beta)

The version of the OpenAPI document: 0.1.2 Generated by OpenAPI Generator (https://openapi-generator.tech)

Do not edit the class manually.

 1# coding: utf-8
 2
 3"""
 4    Vectorize API
 5
 6    API for Vectorize services (Beta)
 7
 8    The version of the OpenAPI document: 0.1.2
 9    Generated by OpenAPI Generator (https://openapi-generator.tech)
10
11    Do not edit the class manually.
12"""  # noqa: E501
13
14
15from __future__ import annotations
16import pprint
17import re  # noqa: F401
18import json
19
20from datetime import date
21from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
22from typing import Any, ClassVar, Dict, List, Optional, Union
23from typing import Optional, Set
24from typing_extensions import Self
25
26class ZOOMADMINConfig(BaseModel):
27    """
28    Configuration for Zoom Admin connector
29    """ # noqa: E501
30    start_date: date = Field(description="Start Date. Include meetings from this date forward. Example: Enter a date: Example 2023-12-31", alias="start-date")
31    end_date: Optional[date] = Field(default=None, description="End Date. Include meetings up to this date only. Example: Enter a date: Example 2023-12-31", alias="end-date")
32    user_emails: Optional[List[StrictStr]] = Field(default=None, description="Recording hosts. Specify user emails to automatically fetch their meeting recordings. When not provided, all users in the account will be processed.. Example: Enter user email addresses", alias="user-emails")
33    title_filter: Optional[List[StrictStr]] = Field(default=None, description="Title Filter. Only include meetings containing any of these keywords in the title. Example: Enter meeting title keywords", alias="title-filter")
34    max_meetings: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Maximum Meetings. Leave blank for no limit, or specify a maximum number. Example: Enter maximum number of meetings to retrieve (leave blank for no limit)", alias="max-meetings")
35    participant_filter_type: StrictStr = Field(alias="participant-filter-type")
36    participant_filter: Optional[StrictStr] = Field(default=None, description="Participant Filter (Admin Only). Only include meetings with these participants (requires admin permissions). Example: Enter participant email or name", alias="participant-filter")
37    __properties: ClassVar[List[str]] = ["start-date", "end-date", "user-emails", "title-filter", "max-meetings", "participant-filter-type", "participant-filter"]
38
39    model_config = ConfigDict(
40        populate_by_name=True,
41        validate_assignment=True,
42        protected_namespaces=(),
43    )
44
45
46    def to_str(self) -> str:
47        """Returns the string representation of the model using alias"""
48        return pprint.pformat(self.model_dump(by_alias=True))
49
50    def to_json(self) -> str:
51        """Returns the JSON representation of the model using alias"""
52        # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
53        return json.dumps(self.to_dict())
54
55    @classmethod
56    def from_json(cls, json_str: str) -> Optional[Self]:
57        """Create an instance of ZOOMADMINConfig from a JSON string"""
58        return cls.from_dict(json.loads(json_str))
59
60    def to_dict(self) -> Dict[str, Any]:
61        """Return the dictionary representation of the model using alias.
62
63        This has the following differences from calling pydantic's
64        `self.model_dump(by_alias=True)`:
65
66        * `None` is only added to the output dict for nullable fields that
67          were set at model initialization. Other fields with value `None`
68          are ignored.
69        """
70        excluded_fields: Set[str] = set([
71        ])
72
73        _dict = self.model_dump(
74            by_alias=True,
75            exclude=excluded_fields,
76            exclude_none=True,
77        )
78        return _dict
79
80    @classmethod
81    def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
82        """Create an instance of ZOOMADMINConfig from a dict"""
83        if obj is None:
84            return None
85
86        if not isinstance(obj, dict):
87            return cls.model_validate(obj)
88
89        _obj = cls.model_validate({
90            "start-date": obj.get("start-date"),
91            "end-date": obj.get("end-date"),
92            "user-emails": obj.get("user-emails"),
93            "title-filter": obj.get("title-filter"),
94            "max-meetings": obj.get("max-meetings"),
95            "participant-filter-type": obj.get("participant-filter-type") if obj.get("participant-filter-type") is not None else 'OR',
96            "participant-filter": obj.get("participant-filter")
97        })
98        return _obj
class ZOOMADMINConfig(pydantic.main.BaseModel):
27class ZOOMADMINConfig(BaseModel):
28    """
29    Configuration for Zoom Admin connector
30    """ # noqa: E501
31    start_date: date = Field(description="Start Date. Include meetings from this date forward. Example: Enter a date: Example 2023-12-31", alias="start-date")
32    end_date: Optional[date] = Field(default=None, description="End Date. Include meetings up to this date only. Example: Enter a date: Example 2023-12-31", alias="end-date")
33    user_emails: Optional[List[StrictStr]] = Field(default=None, description="Recording hosts. Specify user emails to automatically fetch their meeting recordings. When not provided, all users in the account will be processed.. Example: Enter user email addresses", alias="user-emails")
34    title_filter: Optional[List[StrictStr]] = Field(default=None, description="Title Filter. Only include meetings containing any of these keywords in the title. Example: Enter meeting title keywords", alias="title-filter")
35    max_meetings: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Maximum Meetings. Leave blank for no limit, or specify a maximum number. Example: Enter maximum number of meetings to retrieve (leave blank for no limit)", alias="max-meetings")
36    participant_filter_type: StrictStr = Field(alias="participant-filter-type")
37    participant_filter: Optional[StrictStr] = Field(default=None, description="Participant Filter (Admin Only). Only include meetings with these participants (requires admin permissions). Example: Enter participant email or name", alias="participant-filter")
38    __properties: ClassVar[List[str]] = ["start-date", "end-date", "user-emails", "title-filter", "max-meetings", "participant-filter-type", "participant-filter"]
39
40    model_config = ConfigDict(
41        populate_by_name=True,
42        validate_assignment=True,
43        protected_namespaces=(),
44    )
45
46
47    def to_str(self) -> str:
48        """Returns the string representation of the model using alias"""
49        return pprint.pformat(self.model_dump(by_alias=True))
50
51    def to_json(self) -> str:
52        """Returns the JSON representation of the model using alias"""
53        # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
54        return json.dumps(self.to_dict())
55
56    @classmethod
57    def from_json(cls, json_str: str) -> Optional[Self]:
58        """Create an instance of ZOOMADMINConfig from a JSON string"""
59        return cls.from_dict(json.loads(json_str))
60
61    def to_dict(self) -> Dict[str, Any]:
62        """Return the dictionary representation of the model using alias.
63
64        This has the following differences from calling pydantic's
65        `self.model_dump(by_alias=True)`:
66
67        * `None` is only added to the output dict for nullable fields that
68          were set at model initialization. Other fields with value `None`
69          are ignored.
70        """
71        excluded_fields: Set[str] = set([
72        ])
73
74        _dict = self.model_dump(
75            by_alias=True,
76            exclude=excluded_fields,
77            exclude_none=True,
78        )
79        return _dict
80
81    @classmethod
82    def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
83        """Create an instance of ZOOMADMINConfig from a dict"""
84        if obj is None:
85            return None
86
87        if not isinstance(obj, dict):
88            return cls.model_validate(obj)
89
90        _obj = cls.model_validate({
91            "start-date": obj.get("start-date"),
92            "end-date": obj.get("end-date"),
93            "user-emails": obj.get("user-emails"),
94            "title-filter": obj.get("title-filter"),
95            "max-meetings": obj.get("max-meetings"),
96            "participant-filter-type": obj.get("participant-filter-type") if obj.get("participant-filter-type") is not None else 'OR',
97            "participant-filter": obj.get("participant-filter")
98        })
99        return _obj

Configuration for Zoom Admin connector

start_date: datetime.date
end_date: Optional[datetime.date]
user_emails: Optional[List[Annotated[str, Strict(strict=True)]]]
title_filter: Optional[List[Annotated[str, Strict(strict=True)]]]
max_meetings: Union[Annotated[float, Strict(strict=True)], Annotated[int, Strict(strict=True)], NoneType]
participant_filter_type: typing.Annotated[str, Strict(strict=True)]
participant_filter: Optional[Annotated[str, Strict(strict=True)]]
model_config = {'populate_by_name': True, 'validate_assignment': True, 'protected_namespaces': ()}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

def to_str(self) -> str:
47    def to_str(self) -> str:
48        """Returns the string representation of the model using alias"""
49        return pprint.pformat(self.model_dump(by_alias=True))

Returns the string representation of the model using alias

def to_json(self) -> str:
51    def to_json(self) -> str:
52        """Returns the JSON representation of the model using alias"""
53        # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
54        return json.dumps(self.to_dict())

Returns the JSON representation of the model using alias

@classmethod
def from_json(cls, json_str: str) -> Optional[Self]:
56    @classmethod
57    def from_json(cls, json_str: str) -> Optional[Self]:
58        """Create an instance of ZOOMADMINConfig from a JSON string"""
59        return cls.from_dict(json.loads(json_str))

Create an instance of ZOOMADMINConfig from a JSON string

def to_dict(self) -> Dict[str, Any]:
61    def to_dict(self) -> Dict[str, Any]:
62        """Return the dictionary representation of the model using alias.
63
64        This has the following differences from calling pydantic's
65        `self.model_dump(by_alias=True)`:
66
67        * `None` is only added to the output dict for nullable fields that
68          were set at model initialization. Other fields with value `None`
69          are ignored.
70        """
71        excluded_fields: Set[str] = set([
72        ])
73
74        _dict = self.model_dump(
75            by_alias=True,
76            exclude=excluded_fields,
77            exclude_none=True,
78        )
79        return _dict

Return the dictionary representation of the model using alias.

This has the following differences from calling pydantic's self.model_dump(by_alias=True):

  • None is only added to the output dict for nullable fields that were set at model initialization. Other fields with value None are ignored.
@classmethod
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
81    @classmethod
82    def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
83        """Create an instance of ZOOMADMINConfig from a dict"""
84        if obj is None:
85            return None
86
87        if not isinstance(obj, dict):
88            return cls.model_validate(obj)
89
90        _obj = cls.model_validate({
91            "start-date": obj.get("start-date"),
92            "end-date": obj.get("end-date"),
93            "user-emails": obj.get("user-emails"),
94            "title-filter": obj.get("title-filter"),
95            "max-meetings": obj.get("max-meetings"),
96            "participant-filter-type": obj.get("participant-filter-type") if obj.get("participant-filter-type") is not None else 'OR',
97            "participant-filter": obj.get("participant-filter")
98        })
99        return _obj

Create an instance of ZOOMADMINConfig from a dict