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