miro_api.models.get_metrics200_response_inner
Miro Developer Platform
### Miro Developer Platform concepts - New to the Miro Developer Platform? Interested in learning more about platform concepts?? Read our introduction page and familiarize yourself with the Miro Developer Platform capabilities in a few minutes. ### Getting started with the Miro REST API - Quickstart (video): try the REST API in less than 3 minutes. - Quickstart (article): get started and try the REST API in less than 3 minutes. ### Miro REST API tutorials Check out our how-to articles with step-by-step instructions and code examples so you can: - Get started with OAuth 2.0 and Miro ### Miro App Examples Clone our Miro App Examples repository to get inspiration, customize, and explore apps built on top of Miro's Developer Platform 2.0.
The version of the OpenAPI document: v2.0 Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
1# coding: utf-8 2 3""" 4Miro Developer Platform 5 6<img src=\"https://content.pstmn.io/47449ea6-0ef7-4af2-bac1-e58a70e61c58/aW1hZ2UucG5n\" width=\"1685\" height=\"593\"> ### Miro Developer Platform concepts - New to the Miro Developer Platform? Interested in learning more about platform concepts?? [Read our introduction page](https://beta.developers.miro.com/docs/introduction) and familiarize yourself with the Miro Developer Platform capabilities in a few minutes. ### Getting started with the Miro REST API - [Quickstart (video):](https://beta.developers.miro.com/docs/try-out-the-rest-api-in-less-than-3-minutes) try the REST API in less than 3 minutes. - [Quickstart (article):](https://beta.developers.miro.com/docs/build-your-first-hello-world-app-1) get started and try the REST API in less than 3 minutes. ### Miro REST API tutorials Check out our how-to articles with step-by-step instructions and code examples so you can: - [Get started with OAuth 2.0 and Miro](https://beta.developers.miro.com/docs/getting-started-with-oauth) ### Miro App Examples Clone our [Miro App Examples repository](https://github.com/miroapp/app-examples) to get inspiration, customize, and explore apps built on top of Miro's Developer Platform 2.0. 7 8The version of the OpenAPI document: v2.0 9Generated by OpenAPI Generator (https://openapi-generator.tech) 10 11Do 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, Field, StrictInt 22from typing import Any, ClassVar, Dict, List, Optional 23from typing import Optional, Set 24from typing_extensions import Self 25 26 27class GetMetrics200ResponseInner(BaseModel): 28 """ 29 GetMetrics200ResponseInner 30 """ # noqa: E501 31 32 period_start: Optional[date] = Field( 33 default=None, description="Date from which the metrics are aggregated.", alias="periodStart" 34 ) 35 unique_users: Optional[StrictInt] = Field( 36 default=None, 37 description="Number of unique users who performed at least one activity in the application.", 38 alias="uniqueUsers", 39 ) 40 unique_recurring_users: Optional[StrictInt] = Field( 41 default=None, 42 description="Number of unique users who have been active for more than one day over the past 30 days.", 43 alias="uniqueRecurringUsers", 44 ) 45 unique_organizations: Optional[StrictInt] = Field( 46 default=None, 47 description="Number of unique company accounts that have installed the application.", 48 alias="uniqueOrganizations", 49 ) 50 installations: Optional[StrictInt] = Field( 51 default=None, description="Number of application installations for a team." 52 ) 53 uninstallations: Optional[StrictInt] = Field( 54 default=None, description="Number of application uninstallations for a team." 55 ) 56 additional_properties: Dict[str, Any] = {} 57 __properties: ClassVar[List[str]] = [ 58 "periodStart", 59 "uniqueUsers", 60 "uniqueRecurringUsers", 61 "uniqueOrganizations", 62 "installations", 63 "uninstallations", 64 ] 65 66 model_config = { 67 "populate_by_name": True, 68 "validate_assignment": True, 69 "protected_namespaces": (), 70 } 71 72 def to_str(self) -> str: 73 """Returns the string representation of the model using alias""" 74 return pprint.pformat(self.model_dump(by_alias=True)) 75 76 def to_json(self) -> str: 77 """Returns the JSON representation of the model using alias""" 78 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 79 return json.dumps(self.to_dict()) 80 81 @classmethod 82 def from_json(cls, json_str: str) -> Optional[Self]: 83 """Create an instance of GetMetrics200ResponseInner from a JSON string""" 84 return cls.from_dict(json.loads(json_str)) 85 86 def to_dict(self) -> Dict[str, Any]: 87 """Return the dictionary representation of the model using alias. 88 89 This has the following differences from calling pydantic's 90 `self.model_dump(by_alias=True)`: 91 92 * `None` is only added to the output dict for nullable fields that 93 were set at model initialization. Other fields with value `None` 94 are ignored. 95 * Fields in `self.additional_properties` are added to the output dict. 96 """ 97 excluded_fields: Set[str] = set( 98 [ 99 "additional_properties", 100 ] 101 ) 102 103 _dict = self.model_dump( 104 by_alias=True, 105 exclude=excluded_fields, 106 exclude_none=True, 107 ) 108 # puts key-value pairs in additional_properties in the top level 109 if self.additional_properties is not None: 110 for _key, _value in self.additional_properties.items(): 111 _dict[_key] = _value 112 113 return _dict 114 115 @classmethod 116 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 117 """Create an instance of GetMetrics200ResponseInner from a dict""" 118 if obj is None: 119 return None 120 121 if not isinstance(obj, dict): 122 return cls.model_validate(obj) 123 124 _obj = cls.model_validate( 125 { 126 "periodStart": obj.get("periodStart"), 127 "uniqueUsers": obj.get("uniqueUsers"), 128 "uniqueRecurringUsers": obj.get("uniqueRecurringUsers"), 129 "uniqueOrganizations": obj.get("uniqueOrganizations"), 130 "installations": obj.get("installations"), 131 "uninstallations": obj.get("uninstallations"), 132 } 133 ) 134 # store additional fields in additional_properties 135 for _key in obj.keys(): 136 if _key not in cls.__properties: 137 _obj.additional_properties[_key] = obj.get(_key) 138 139 return _obj
28class GetMetrics200ResponseInner(BaseModel): 29 """ 30 GetMetrics200ResponseInner 31 """ # noqa: E501 32 33 period_start: Optional[date] = Field( 34 default=None, description="Date from which the metrics are aggregated.", alias="periodStart" 35 ) 36 unique_users: Optional[StrictInt] = Field( 37 default=None, 38 description="Number of unique users who performed at least one activity in the application.", 39 alias="uniqueUsers", 40 ) 41 unique_recurring_users: Optional[StrictInt] = Field( 42 default=None, 43 description="Number of unique users who have been active for more than one day over the past 30 days.", 44 alias="uniqueRecurringUsers", 45 ) 46 unique_organizations: Optional[StrictInt] = Field( 47 default=None, 48 description="Number of unique company accounts that have installed the application.", 49 alias="uniqueOrganizations", 50 ) 51 installations: Optional[StrictInt] = Field( 52 default=None, description="Number of application installations for a team." 53 ) 54 uninstallations: Optional[StrictInt] = Field( 55 default=None, description="Number of application uninstallations for a team." 56 ) 57 additional_properties: Dict[str, Any] = {} 58 __properties: ClassVar[List[str]] = [ 59 "periodStart", 60 "uniqueUsers", 61 "uniqueRecurringUsers", 62 "uniqueOrganizations", 63 "installations", 64 "uninstallations", 65 ] 66 67 model_config = { 68 "populate_by_name": True, 69 "validate_assignment": True, 70 "protected_namespaces": (), 71 } 72 73 def to_str(self) -> str: 74 """Returns the string representation of the model using alias""" 75 return pprint.pformat(self.model_dump(by_alias=True)) 76 77 def to_json(self) -> str: 78 """Returns the JSON representation of the model using alias""" 79 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 80 return json.dumps(self.to_dict()) 81 82 @classmethod 83 def from_json(cls, json_str: str) -> Optional[Self]: 84 """Create an instance of GetMetrics200ResponseInner from a JSON string""" 85 return cls.from_dict(json.loads(json_str)) 86 87 def to_dict(self) -> Dict[str, Any]: 88 """Return the dictionary representation of the model using alias. 89 90 This has the following differences from calling pydantic's 91 `self.model_dump(by_alias=True)`: 92 93 * `None` is only added to the output dict for nullable fields that 94 were set at model initialization. Other fields with value `None` 95 are ignored. 96 * Fields in `self.additional_properties` are added to the output dict. 97 """ 98 excluded_fields: Set[str] = set( 99 [ 100 "additional_properties", 101 ] 102 ) 103 104 _dict = self.model_dump( 105 by_alias=True, 106 exclude=excluded_fields, 107 exclude_none=True, 108 ) 109 # puts key-value pairs in additional_properties in the top level 110 if self.additional_properties is not None: 111 for _key, _value in self.additional_properties.items(): 112 _dict[_key] = _value 113 114 return _dict 115 116 @classmethod 117 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 118 """Create an instance of GetMetrics200ResponseInner from a dict""" 119 if obj is None: 120 return None 121 122 if not isinstance(obj, dict): 123 return cls.model_validate(obj) 124 125 _obj = cls.model_validate( 126 { 127 "periodStart": obj.get("periodStart"), 128 "uniqueUsers": obj.get("uniqueUsers"), 129 "uniqueRecurringUsers": obj.get("uniqueRecurringUsers"), 130 "uniqueOrganizations": obj.get("uniqueOrganizations"), 131 "installations": obj.get("installations"), 132 "uninstallations": obj.get("uninstallations"), 133 } 134 ) 135 # store additional fields in additional_properties 136 for _key in obj.keys(): 137 if _key not in cls.__properties: 138 _obj.additional_properties[_key] = obj.get(_key) 139 140 return _obj
GetMetrics200ResponseInner
73 def to_str(self) -> str: 74 """Returns the string representation of the model using alias""" 75 return pprint.pformat(self.model_dump(by_alias=True))
Returns the string representation of the model using alias
77 def to_json(self) -> str: 78 """Returns the JSON representation of the model using alias""" 79 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 80 return json.dumps(self.to_dict())
Returns the JSON representation of the model using alias
82 @classmethod 83 def from_json(cls, json_str: str) -> Optional[Self]: 84 """Create an instance of GetMetrics200ResponseInner from a JSON string""" 85 return cls.from_dict(json.loads(json_str))
Create an instance of GetMetrics200ResponseInner from a JSON string
87 def to_dict(self) -> Dict[str, Any]: 88 """Return the dictionary representation of the model using alias. 89 90 This has the following differences from calling pydantic's 91 `self.model_dump(by_alias=True)`: 92 93 * `None` is only added to the output dict for nullable fields that 94 were set at model initialization. Other fields with value `None` 95 are ignored. 96 * Fields in `self.additional_properties` are added to the output dict. 97 """ 98 excluded_fields: Set[str] = set( 99 [ 100 "additional_properties", 101 ] 102 ) 103 104 _dict = self.model_dump( 105 by_alias=True, 106 exclude=excluded_fields, 107 exclude_none=True, 108 ) 109 # puts key-value pairs in additional_properties in the top level 110 if self.additional_properties is not None: 111 for _key, _value in self.additional_properties.items(): 112 _dict[_key] = _value 113 114 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 valueNone
are ignored.- Fields in
self.additional_properties
are added to the output dict.
116 @classmethod 117 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 118 """Create an instance of GetMetrics200ResponseInner from a dict""" 119 if obj is None: 120 return None 121 122 if not isinstance(obj, dict): 123 return cls.model_validate(obj) 124 125 _obj = cls.model_validate( 126 { 127 "periodStart": obj.get("periodStart"), 128 "uniqueUsers": obj.get("uniqueUsers"), 129 "uniqueRecurringUsers": obj.get("uniqueRecurringUsers"), 130 "uniqueOrganizations": obj.get("uniqueOrganizations"), 131 "installations": obj.get("installations"), 132 "uninstallations": obj.get("uninstallations"), 133 } 134 ) 135 # store additional fields in additional_properties 136 for _key in obj.keys(): 137 if _key not in cls.__properties: 138 _obj.additional_properties[_key] = obj.get(_key) 139 140 return _obj
Create an instance of GetMetrics200ResponseInner from a dict
265def init_private_attributes(self: BaseModel, __context: Any) -> None: 266 """This function is meant to behave like a BaseModel method to initialise private attributes. 267 268 It takes context as an argument since that's what pydantic-core passes when calling it. 269 270 Args: 271 self: The BaseModel instance. 272 __context: The context. 273 """ 274 if getattr(self, '__pydantic_private__', None) is None: 275 pydantic_private = {} 276 for name, private_attr in self.__private_attributes__.items(): 277 default = private_attr.get_default() 278 if default is not PydanticUndefined: 279 pydantic_private[name] = default 280 object_setattr(self, '__pydantic_private__', pydantic_private)
This function is meant to behave like a BaseModel method to initialise private attributes.
It takes context as an argument since that's what pydantic-core passes when calling it.
Args: self: The BaseModel instance. __context: The context.
Inherited Members
- pydantic.main.BaseModel
- BaseModel
- model_extra
- model_fields_set
- model_construct
- model_copy
- model_dump
- model_dump_json
- model_json_schema
- model_parametrized_name
- model_rebuild
- model_validate
- model_validate_json
- model_validate_strings
- dict
- json
- parse_obj
- parse_raw
- parse_file
- from_orm
- construct
- copy
- schema
- schema_json
- validate
- update_forward_refs