miro_api.models.frame_data
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 14from __future__ import annotations 15import pprint 16import re # noqa: F401 17import json 18 19from pydantic import BaseModel, Field, StrictStr, field_validator 20from typing import Any, ClassVar, Dict, List, Optional 21from typing import Optional, Set 22from typing_extensions import Self 23 24 25class FrameData(BaseModel): 26 """ 27 Contains frame item data, such as the title, frame type, or frame format. 28 """ # noqa: E501 29 30 format: Optional[StrictStr] = Field(default="custom", description="Only custom frames are supported at the moment.") 31 title: Optional[StrictStr] = Field( 32 default=None, description="Title of the frame. This title appears at the top of the frame." 33 ) 34 type: Optional[StrictStr] = Field( 35 default="freeform", description="Only free form frames are supported at the moment." 36 ) 37 additional_properties: Dict[str, Any] = {} 38 __properties: ClassVar[List[str]] = ["format", "title", "type"] 39 40 @field_validator("format") 41 def format_validate_enum(cls, value): 42 """Validates the enum""" 43 if value is None: 44 return value 45 46 if value not in set( 47 ["custom", "desktop", "phone", "tablet", "a4", "letter", "ratio_1x1", "ratio_4x3", "ratio_16x9"] 48 ): 49 raise ValueError( 50 "must be one of enum values ('custom', 'desktop', 'phone', 'tablet', 'a4', 'letter', 'ratio_1x1', 'ratio_4x3', 'ratio_16x9')" 51 ) 52 return value 53 54 @field_validator("type") 55 def type_validate_enum(cls, value): 56 """Validates the enum""" 57 if value is None: 58 return value 59 60 if value not in set(["freeform", "heap", "grid", "rows", "columns"]): 61 raise ValueError("must be one of enum values ('freeform', 'heap', 'grid', 'rows', 'columns')") 62 return value 63 64 model_config = { 65 "populate_by_name": True, 66 "validate_assignment": True, 67 "protected_namespaces": (), 68 } 69 70 def to_str(self) -> str: 71 """Returns the string representation of the model using alias""" 72 return pprint.pformat(self.model_dump(by_alias=True)) 73 74 def to_json(self) -> str: 75 """Returns the JSON representation of the model using alias""" 76 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 77 return json.dumps(self.to_dict()) 78 79 @classmethod 80 def from_json(cls, json_str: str) -> Optional[Self]: 81 """Create an instance of FrameData from a JSON string""" 82 return cls.from_dict(json.loads(json_str)) 83 84 def to_dict(self) -> Dict[str, Any]: 85 """Return the dictionary representation of the model using alias. 86 87 This has the following differences from calling pydantic's 88 `self.model_dump(by_alias=True)`: 89 90 * `None` is only added to the output dict for nullable fields that 91 were set at model initialization. Other fields with value `None` 92 are ignored. 93 * Fields in `self.additional_properties` are added to the output dict. 94 """ 95 excluded_fields: Set[str] = set( 96 [ 97 "additional_properties", 98 ] 99 ) 100 101 _dict = self.model_dump( 102 by_alias=True, 103 exclude=excluded_fields, 104 exclude_none=True, 105 ) 106 # puts key-value pairs in additional_properties in the top level 107 if self.additional_properties is not None: 108 for _key, _value in self.additional_properties.items(): 109 _dict[_key] = _value 110 111 return _dict 112 113 @classmethod 114 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 115 """Create an instance of FrameData from a dict""" 116 if obj is None: 117 return None 118 119 if not isinstance(obj, dict): 120 return cls.model_validate(obj) 121 122 _obj = cls.model_validate( 123 { 124 "format": obj.get("format") if obj.get("format") is not None else "custom", 125 "title": obj.get("title"), 126 "type": obj.get("type") if obj.get("type") is not None else "freeform", 127 } 128 ) 129 # store additional fields in additional_properties 130 for _key in obj.keys(): 131 if _key not in cls.__properties: 132 _obj.additional_properties[_key] = obj.get(_key) 133 134 return _obj
26class FrameData(BaseModel): 27 """ 28 Contains frame item data, such as the title, frame type, or frame format. 29 """ # noqa: E501 30 31 format: Optional[StrictStr] = Field(default="custom", description="Only custom frames are supported at the moment.") 32 title: Optional[StrictStr] = Field( 33 default=None, description="Title of the frame. This title appears at the top of the frame." 34 ) 35 type: Optional[StrictStr] = Field( 36 default="freeform", description="Only free form frames are supported at the moment." 37 ) 38 additional_properties: Dict[str, Any] = {} 39 __properties: ClassVar[List[str]] = ["format", "title", "type"] 40 41 @field_validator("format") 42 def format_validate_enum(cls, value): 43 """Validates the enum""" 44 if value is None: 45 return value 46 47 if value not in set( 48 ["custom", "desktop", "phone", "tablet", "a4", "letter", "ratio_1x1", "ratio_4x3", "ratio_16x9"] 49 ): 50 raise ValueError( 51 "must be one of enum values ('custom', 'desktop', 'phone', 'tablet', 'a4', 'letter', 'ratio_1x1', 'ratio_4x3', 'ratio_16x9')" 52 ) 53 return value 54 55 @field_validator("type") 56 def type_validate_enum(cls, value): 57 """Validates the enum""" 58 if value is None: 59 return value 60 61 if value not in set(["freeform", "heap", "grid", "rows", "columns"]): 62 raise ValueError("must be one of enum values ('freeform', 'heap', 'grid', 'rows', 'columns')") 63 return value 64 65 model_config = { 66 "populate_by_name": True, 67 "validate_assignment": True, 68 "protected_namespaces": (), 69 } 70 71 def to_str(self) -> str: 72 """Returns the string representation of the model using alias""" 73 return pprint.pformat(self.model_dump(by_alias=True)) 74 75 def to_json(self) -> str: 76 """Returns the JSON representation of the model using alias""" 77 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 78 return json.dumps(self.to_dict()) 79 80 @classmethod 81 def from_json(cls, json_str: str) -> Optional[Self]: 82 """Create an instance of FrameData from a JSON string""" 83 return cls.from_dict(json.loads(json_str)) 84 85 def to_dict(self) -> Dict[str, Any]: 86 """Return the dictionary representation of the model using alias. 87 88 This has the following differences from calling pydantic's 89 `self.model_dump(by_alias=True)`: 90 91 * `None` is only added to the output dict for nullable fields that 92 were set at model initialization. Other fields with value `None` 93 are ignored. 94 * Fields in `self.additional_properties` are added to the output dict. 95 """ 96 excluded_fields: Set[str] = set( 97 [ 98 "additional_properties", 99 ] 100 ) 101 102 _dict = self.model_dump( 103 by_alias=True, 104 exclude=excluded_fields, 105 exclude_none=True, 106 ) 107 # puts key-value pairs in additional_properties in the top level 108 if self.additional_properties is not None: 109 for _key, _value in self.additional_properties.items(): 110 _dict[_key] = _value 111 112 return _dict 113 114 @classmethod 115 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 116 """Create an instance of FrameData from a dict""" 117 if obj is None: 118 return None 119 120 if not isinstance(obj, dict): 121 return cls.model_validate(obj) 122 123 _obj = cls.model_validate( 124 { 125 "format": obj.get("format") if obj.get("format") is not None else "custom", 126 "title": obj.get("title"), 127 "type": obj.get("type") if obj.get("type") is not None else "freeform", 128 } 129 ) 130 # store additional fields in additional_properties 131 for _key in obj.keys(): 132 if _key not in cls.__properties: 133 _obj.additional_properties[_key] = obj.get(_key) 134 135 return _obj
Contains frame item data, such as the title, frame type, or frame format.
41 @field_validator("format") 42 def format_validate_enum(cls, value): 43 """Validates the enum""" 44 if value is None: 45 return value 46 47 if value not in set( 48 ["custom", "desktop", "phone", "tablet", "a4", "letter", "ratio_1x1", "ratio_4x3", "ratio_16x9"] 49 ): 50 raise ValueError( 51 "must be one of enum values ('custom', 'desktop', 'phone', 'tablet', 'a4', 'letter', 'ratio_1x1', 'ratio_4x3', 'ratio_16x9')" 52 ) 53 return value
Validates the enum
55 @field_validator("type") 56 def type_validate_enum(cls, value): 57 """Validates the enum""" 58 if value is None: 59 return value 60 61 if value not in set(["freeform", "heap", "grid", "rows", "columns"]): 62 raise ValueError("must be one of enum values ('freeform', 'heap', 'grid', 'rows', 'columns')") 63 return value
Validates the enum
71 def to_str(self) -> str: 72 """Returns the string representation of the model using alias""" 73 return pprint.pformat(self.model_dump(by_alias=True))
Returns the string representation of the model using alias
75 def to_json(self) -> str: 76 """Returns the JSON representation of the model using alias""" 77 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 78 return json.dumps(self.to_dict())
Returns the JSON representation of the model using alias
80 @classmethod 81 def from_json(cls, json_str: str) -> Optional[Self]: 82 """Create an instance of FrameData from a JSON string""" 83 return cls.from_dict(json.loads(json_str))
Create an instance of FrameData from a JSON string
85 def to_dict(self) -> Dict[str, Any]: 86 """Return the dictionary representation of the model using alias. 87 88 This has the following differences from calling pydantic's 89 `self.model_dump(by_alias=True)`: 90 91 * `None` is only added to the output dict for nullable fields that 92 were set at model initialization. Other fields with value `None` 93 are ignored. 94 * Fields in `self.additional_properties` are added to the output dict. 95 """ 96 excluded_fields: Set[str] = set( 97 [ 98 "additional_properties", 99 ] 100 ) 101 102 _dict = self.model_dump( 103 by_alias=True, 104 exclude=excluded_fields, 105 exclude_none=True, 106 ) 107 # puts key-value pairs in additional_properties in the top level 108 if self.additional_properties is not None: 109 for _key, _value in self.additional_properties.items(): 110 _dict[_key] = _value 111 112 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):
Noneis only added to the output dict for nullable fields that were set at model initialization. Other fields with valueNoneare ignored.- Fields in
self.additional_propertiesare added to the output dict.
114 @classmethod 115 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 116 """Create an instance of FrameData from a dict""" 117 if obj is None: 118 return None 119 120 if not isinstance(obj, dict): 121 return cls.model_validate(obj) 122 123 _obj = cls.model_validate( 124 { 125 "format": obj.get("format") if obj.get("format") is not None else "custom", 126 "title": obj.get("title"), 127 "type": obj.get("type") if obj.get("type") is not None else "freeform", 128 } 129 ) 130 # store additional fields in additional_properties 131 for _key in obj.keys(): 132 if _key not in cls.__properties: 133 _obj.additional_properties[_key] = obj.get(_key) 134 135 return _obj
Create an instance of FrameData 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