miro_api.models.frame_item
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 datetime 21from pydantic import BaseModel, Field, StrictStr 22from typing import Any, ClassVar, Dict, List, Optional 23from miro_api.models.created_by import CreatedBy 24from miro_api.models.frame_data import FrameData 25from miro_api.models.frame_style import FrameStyle 26from miro_api.models.geometry import Geometry 27from miro_api.models.modified_by import ModifiedBy 28from miro_api.models.position import Position 29from miro_api.models.widget_links import WidgetLinks 30from typing import Optional, Set 31from typing_extensions import Self 32 33 34class FrameItem(BaseModel): 35 """ 36 FrameItem 37 """ # noqa: E501 38 39 id: StrictStr = Field(description="Unique identifier (ID) of an item.") 40 data: Optional[FrameData] = None 41 style: Optional[FrameStyle] = None 42 position: Optional[Position] = None 43 geometry: Optional[Geometry] = None 44 created_at: Optional[datetime] = Field( 45 default=None, 46 description="Date and time when the item was created. <br>Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).", 47 alias="createdAt", 48 ) 49 created_by: Optional[CreatedBy] = Field(default=None, alias="createdBy") 50 modified_at: Optional[datetime] = Field( 51 default=None, 52 description="Date and time when the item was last modified. <br>Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).", 53 alias="modifiedAt", 54 ) 55 modified_by: Optional[ModifiedBy] = Field(default=None, alias="modifiedBy") 56 links: Optional[WidgetLinks] = None 57 type: StrictStr = Field(description="Type of item that is returned.") 58 additional_properties: Dict[str, Any] = {} 59 __properties: ClassVar[List[str]] = [ 60 "id", 61 "data", 62 "style", 63 "position", 64 "geometry", 65 "createdAt", 66 "createdBy", 67 "modifiedAt", 68 "modifiedBy", 69 "links", 70 "type", 71 ] 72 73 model_config = { 74 "populate_by_name": True, 75 "validate_assignment": True, 76 "protected_namespaces": (), 77 } 78 79 def to_str(self) -> str: 80 """Returns the string representation of the model using alias""" 81 return pprint.pformat(self.model_dump(by_alias=True)) 82 83 def to_json(self) -> str: 84 """Returns the JSON representation of the model using alias""" 85 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 86 return json.dumps(self.to_dict()) 87 88 @classmethod 89 def from_json(cls, json_str: str) -> Optional[Self]: 90 """Create an instance of FrameItem from a JSON string""" 91 return cls.from_dict(json.loads(json_str)) 92 93 def to_dict(self) -> Dict[str, Any]: 94 """Return the dictionary representation of the model using alias. 95 96 This has the following differences from calling pydantic's 97 `self.model_dump(by_alias=True)`: 98 99 * `None` is only added to the output dict for nullable fields that 100 were set at model initialization. Other fields with value `None` 101 are ignored. 102 * Fields in `self.additional_properties` are added to the output dict. 103 """ 104 excluded_fields: Set[str] = set( 105 [ 106 "additional_properties", 107 ] 108 ) 109 110 _dict = self.model_dump( 111 by_alias=True, 112 exclude=excluded_fields, 113 exclude_none=True, 114 ) 115 # override the default output from pydantic by calling `to_dict()` of data 116 if self.data: 117 _dict["data"] = self.data.to_dict() 118 # override the default output from pydantic by calling `to_dict()` of style 119 if self.style: 120 _dict["style"] = self.style.to_dict() 121 # override the default output from pydantic by calling `to_dict()` of position 122 if self.position: 123 _dict["position"] = self.position.to_dict() 124 # override the default output from pydantic by calling `to_dict()` of geometry 125 if self.geometry: 126 _dict["geometry"] = self.geometry.to_dict() 127 # override the default output from pydantic by calling `to_dict()` of created_by 128 if self.created_by: 129 _dict["createdBy"] = self.created_by.to_dict() 130 # override the default output from pydantic by calling `to_dict()` of modified_by 131 if self.modified_by: 132 _dict["modifiedBy"] = self.modified_by.to_dict() 133 # override the default output from pydantic by calling `to_dict()` of links 134 if self.links: 135 _dict["links"] = self.links.to_dict() 136 # puts key-value pairs in additional_properties in the top level 137 if self.additional_properties is not None: 138 for _key, _value in self.additional_properties.items(): 139 _dict[_key] = _value 140 141 return _dict 142 143 @classmethod 144 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 145 """Create an instance of FrameItem from a dict""" 146 if obj is None: 147 return None 148 149 if not isinstance(obj, dict): 150 return cls.model_validate(obj) 151 152 _obj = cls.model_validate( 153 { 154 "id": obj.get("id"), 155 "data": FrameData.from_dict(obj["data"]) if obj.get("data") is not None else None, 156 "style": FrameStyle.from_dict(obj["style"]) if obj.get("style") is not None else None, 157 "position": Position.from_dict(obj["position"]) if obj.get("position") is not None else None, 158 "geometry": Geometry.from_dict(obj["geometry"]) if obj.get("geometry") is not None else None, 159 "createdAt": obj.get("createdAt"), 160 "createdBy": CreatedBy.from_dict(obj["createdBy"]) if obj.get("createdBy") is not None else None, 161 "modifiedAt": obj.get("modifiedAt"), 162 "modifiedBy": ModifiedBy.from_dict(obj["modifiedBy"]) if obj.get("modifiedBy") is not None else None, 163 "links": WidgetLinks.from_dict(obj["links"]) if obj.get("links") is not None else None, 164 "type": obj.get("type"), 165 } 166 ) 167 # store additional fields in additional_properties 168 for _key in obj.keys(): 169 if _key not in cls.__properties: 170 _obj.additional_properties[_key] = obj.get(_key) 171 172 return _obj
35class FrameItem(BaseModel): 36 """ 37 FrameItem 38 """ # noqa: E501 39 40 id: StrictStr = Field(description="Unique identifier (ID) of an item.") 41 data: Optional[FrameData] = None 42 style: Optional[FrameStyle] = None 43 position: Optional[Position] = None 44 geometry: Optional[Geometry] = None 45 created_at: Optional[datetime] = Field( 46 default=None, 47 description="Date and time when the item was created. <br>Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).", 48 alias="createdAt", 49 ) 50 created_by: Optional[CreatedBy] = Field(default=None, alias="createdBy") 51 modified_at: Optional[datetime] = Field( 52 default=None, 53 description="Date and time when the item was last modified. <br>Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).", 54 alias="modifiedAt", 55 ) 56 modified_by: Optional[ModifiedBy] = Field(default=None, alias="modifiedBy") 57 links: Optional[WidgetLinks] = None 58 type: StrictStr = Field(description="Type of item that is returned.") 59 additional_properties: Dict[str, Any] = {} 60 __properties: ClassVar[List[str]] = [ 61 "id", 62 "data", 63 "style", 64 "position", 65 "geometry", 66 "createdAt", 67 "createdBy", 68 "modifiedAt", 69 "modifiedBy", 70 "links", 71 "type", 72 ] 73 74 model_config = { 75 "populate_by_name": True, 76 "validate_assignment": True, 77 "protected_namespaces": (), 78 } 79 80 def to_str(self) -> str: 81 """Returns the string representation of the model using alias""" 82 return pprint.pformat(self.model_dump(by_alias=True)) 83 84 def to_json(self) -> str: 85 """Returns the JSON representation of the model using alias""" 86 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 87 return json.dumps(self.to_dict()) 88 89 @classmethod 90 def from_json(cls, json_str: str) -> Optional[Self]: 91 """Create an instance of FrameItem from a JSON string""" 92 return cls.from_dict(json.loads(json_str)) 93 94 def to_dict(self) -> Dict[str, Any]: 95 """Return the dictionary representation of the model using alias. 96 97 This has the following differences from calling pydantic's 98 `self.model_dump(by_alias=True)`: 99 100 * `None` is only added to the output dict for nullable fields that 101 were set at model initialization. Other fields with value `None` 102 are ignored. 103 * Fields in `self.additional_properties` are added to the output dict. 104 """ 105 excluded_fields: Set[str] = set( 106 [ 107 "additional_properties", 108 ] 109 ) 110 111 _dict = self.model_dump( 112 by_alias=True, 113 exclude=excluded_fields, 114 exclude_none=True, 115 ) 116 # override the default output from pydantic by calling `to_dict()` of data 117 if self.data: 118 _dict["data"] = self.data.to_dict() 119 # override the default output from pydantic by calling `to_dict()` of style 120 if self.style: 121 _dict["style"] = self.style.to_dict() 122 # override the default output from pydantic by calling `to_dict()` of position 123 if self.position: 124 _dict["position"] = self.position.to_dict() 125 # override the default output from pydantic by calling `to_dict()` of geometry 126 if self.geometry: 127 _dict["geometry"] = self.geometry.to_dict() 128 # override the default output from pydantic by calling `to_dict()` of created_by 129 if self.created_by: 130 _dict["createdBy"] = self.created_by.to_dict() 131 # override the default output from pydantic by calling `to_dict()` of modified_by 132 if self.modified_by: 133 _dict["modifiedBy"] = self.modified_by.to_dict() 134 # override the default output from pydantic by calling `to_dict()` of links 135 if self.links: 136 _dict["links"] = self.links.to_dict() 137 # puts key-value pairs in additional_properties in the top level 138 if self.additional_properties is not None: 139 for _key, _value in self.additional_properties.items(): 140 _dict[_key] = _value 141 142 return _dict 143 144 @classmethod 145 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 146 """Create an instance of FrameItem from a dict""" 147 if obj is None: 148 return None 149 150 if not isinstance(obj, dict): 151 return cls.model_validate(obj) 152 153 _obj = cls.model_validate( 154 { 155 "id": obj.get("id"), 156 "data": FrameData.from_dict(obj["data"]) if obj.get("data") is not None else None, 157 "style": FrameStyle.from_dict(obj["style"]) if obj.get("style") is not None else None, 158 "position": Position.from_dict(obj["position"]) if obj.get("position") is not None else None, 159 "geometry": Geometry.from_dict(obj["geometry"]) if obj.get("geometry") is not None else None, 160 "createdAt": obj.get("createdAt"), 161 "createdBy": CreatedBy.from_dict(obj["createdBy"]) if obj.get("createdBy") is not None else None, 162 "modifiedAt": obj.get("modifiedAt"), 163 "modifiedBy": ModifiedBy.from_dict(obj["modifiedBy"]) if obj.get("modifiedBy") is not None else None, 164 "links": WidgetLinks.from_dict(obj["links"]) if obj.get("links") is not None else None, 165 "type": obj.get("type"), 166 } 167 ) 168 # store additional fields in additional_properties 169 for _key in obj.keys(): 170 if _key not in cls.__properties: 171 _obj.additional_properties[_key] = obj.get(_key) 172 173 return _obj
FrameItem
80 def to_str(self) -> str: 81 """Returns the string representation of the model using alias""" 82 return pprint.pformat(self.model_dump(by_alias=True))
Returns the string representation of the model using alias
84 def to_json(self) -> str: 85 """Returns the JSON representation of the model using alias""" 86 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 87 return json.dumps(self.to_dict())
Returns the JSON representation of the model using alias
89 @classmethod 90 def from_json(cls, json_str: str) -> Optional[Self]: 91 """Create an instance of FrameItem from a JSON string""" 92 return cls.from_dict(json.loads(json_str))
Create an instance of FrameItem from a JSON string
94 def to_dict(self) -> Dict[str, Any]: 95 """Return the dictionary representation of the model using alias. 96 97 This has the following differences from calling pydantic's 98 `self.model_dump(by_alias=True)`: 99 100 * `None` is only added to the output dict for nullable fields that 101 were set at model initialization. Other fields with value `None` 102 are ignored. 103 * Fields in `self.additional_properties` are added to the output dict. 104 """ 105 excluded_fields: Set[str] = set( 106 [ 107 "additional_properties", 108 ] 109 ) 110 111 _dict = self.model_dump( 112 by_alias=True, 113 exclude=excluded_fields, 114 exclude_none=True, 115 ) 116 # override the default output from pydantic by calling `to_dict()` of data 117 if self.data: 118 _dict["data"] = self.data.to_dict() 119 # override the default output from pydantic by calling `to_dict()` of style 120 if self.style: 121 _dict["style"] = self.style.to_dict() 122 # override the default output from pydantic by calling `to_dict()` of position 123 if self.position: 124 _dict["position"] = self.position.to_dict() 125 # override the default output from pydantic by calling `to_dict()` of geometry 126 if self.geometry: 127 _dict["geometry"] = self.geometry.to_dict() 128 # override the default output from pydantic by calling `to_dict()` of created_by 129 if self.created_by: 130 _dict["createdBy"] = self.created_by.to_dict() 131 # override the default output from pydantic by calling `to_dict()` of modified_by 132 if self.modified_by: 133 _dict["modifiedBy"] = self.modified_by.to_dict() 134 # override the default output from pydantic by calling `to_dict()` of links 135 if self.links: 136 _dict["links"] = self.links.to_dict() 137 # puts key-value pairs in additional_properties in the top level 138 if self.additional_properties is not None: 139 for _key, _value in self.additional_properties.items(): 140 _dict[_key] = _value 141 142 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.
144 @classmethod 145 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 146 """Create an instance of FrameItem from a dict""" 147 if obj is None: 148 return None 149 150 if not isinstance(obj, dict): 151 return cls.model_validate(obj) 152 153 _obj = cls.model_validate( 154 { 155 "id": obj.get("id"), 156 "data": FrameData.from_dict(obj["data"]) if obj.get("data") is not None else None, 157 "style": FrameStyle.from_dict(obj["style"]) if obj.get("style") is not None else None, 158 "position": Position.from_dict(obj["position"]) if obj.get("position") is not None else None, 159 "geometry": Geometry.from_dict(obj["geometry"]) if obj.get("geometry") is not None else None, 160 "createdAt": obj.get("createdAt"), 161 "createdBy": CreatedBy.from_dict(obj["createdBy"]) if obj.get("createdBy") is not None else None, 162 "modifiedAt": obj.get("modifiedAt"), 163 "modifiedBy": ModifiedBy.from_dict(obj["modifiedBy"]) if obj.get("modifiedBy") is not None else None, 164 "links": WidgetLinks.from_dict(obj["links"]) if obj.get("links") is not None else None, 165 "type": obj.get("type"), 166 } 167 ) 168 # store additional fields in additional_properties 169 for _key in obj.keys(): 170 if _key not in cls.__properties: 171 _obj.additional_properties[_key] = obj.get(_key) 172 173 return _obj
Create an instance of FrameItem 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