miro_api.models.resource_type
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 20from typing import Any, ClassVar, Dict, List, Optional 21from miro_api.models.resource_type_list_response_resources_inner_schema_extensions_inner import ( 22 ResourceTypeListResponseResourcesInnerSchemaExtensionsInner, 23) 24from typing import Optional, Set 25from typing_extensions import Self 26 27 28class ResourceType(BaseModel): 29 """ 30 Metadata for the available resource types (User and Group) 31 """ # noqa: E501 32 33 schemas: Optional[List[StrictStr]] = Field( 34 default=None, 35 description="An array of URNs that identify the schema(s) that define the structure of this resource type.", 36 ) 37 id: Optional[StrictStr] = Field(default=None, description="Identifier of the resource type.") 38 name: Optional[StrictStr] = Field(default=None, description="Name of the resource type.") 39 description: Optional[StrictStr] = Field(default=None, description="Name of the resource type.") 40 endpoint: Optional[StrictStr] = Field(default=None, description="Endpoint extension of the resource type.") 41 var_schema: Optional[StrictStr] = Field( 42 default=None, description="Schema URI of the resource type.", alias="schema" 43 ) 44 schema_extensions: Optional[List[ResourceTypeListResponseResourcesInnerSchemaExtensionsInner]] = Field( 45 default=None, description="Schema extensions supported for the resource type.", alias="schemaExtensions" 46 ) 47 additional_properties: Dict[str, Any] = {} 48 __properties: ClassVar[List[str]] = [ 49 "schemas", 50 "id", 51 "name", 52 "description", 53 "endpoint", 54 "schema", 55 "schemaExtensions", 56 ] 57 58 model_config = { 59 "populate_by_name": True, 60 "validate_assignment": True, 61 "protected_namespaces": (), 62 } 63 64 def to_str(self) -> str: 65 """Returns the string representation of the model using alias""" 66 return pprint.pformat(self.model_dump(by_alias=True)) 67 68 def to_json(self) -> str: 69 """Returns the JSON representation of the model using alias""" 70 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 71 return json.dumps(self.to_dict()) 72 73 @classmethod 74 def from_json(cls, json_str: str) -> Optional[Self]: 75 """Create an instance of ResourceType from a JSON string""" 76 return cls.from_dict(json.loads(json_str)) 77 78 def to_dict(self) -> Dict[str, Any]: 79 """Return the dictionary representation of the model using alias. 80 81 This has the following differences from calling pydantic's 82 `self.model_dump(by_alias=True)`: 83 84 * `None` is only added to the output dict for nullable fields that 85 were set at model initialization. Other fields with value `None` 86 are ignored. 87 * Fields in `self.additional_properties` are added to the output dict. 88 """ 89 excluded_fields: Set[str] = set( 90 [ 91 "additional_properties", 92 ] 93 ) 94 95 _dict = self.model_dump( 96 by_alias=True, 97 exclude=excluded_fields, 98 exclude_none=True, 99 ) 100 # override the default output from pydantic by calling `to_dict()` of each item in schema_extensions (list) 101 _items = [] 102 if self.schema_extensions: 103 for _item in self.schema_extensions: 104 if _item: 105 _items.append(_item.to_dict()) 106 _dict["schemaExtensions"] = _items 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 ResourceType 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 "schemas": obj.get("schemas"), 126 "id": obj.get("id"), 127 "name": obj.get("name"), 128 "description": obj.get("description"), 129 "endpoint": obj.get("endpoint"), 130 "schema": obj.get("schema"), 131 "schemaExtensions": ( 132 [ 133 ResourceTypeListResponseResourcesInnerSchemaExtensionsInner.from_dict(_item) 134 for _item in obj["schemaExtensions"] 135 ] 136 if obj.get("schemaExtensions") is not None 137 else None 138 ), 139 } 140 ) 141 # store additional fields in additional_properties 142 for _key in obj.keys(): 143 if _key not in cls.__properties: 144 _obj.additional_properties[_key] = obj.get(_key) 145 146 return _obj
29class ResourceType(BaseModel): 30 """ 31 Metadata for the available resource types (User and Group) 32 """ # noqa: E501 33 34 schemas: Optional[List[StrictStr]] = Field( 35 default=None, 36 description="An array of URNs that identify the schema(s) that define the structure of this resource type.", 37 ) 38 id: Optional[StrictStr] = Field(default=None, description="Identifier of the resource type.") 39 name: Optional[StrictStr] = Field(default=None, description="Name of the resource type.") 40 description: Optional[StrictStr] = Field(default=None, description="Name of the resource type.") 41 endpoint: Optional[StrictStr] = Field(default=None, description="Endpoint extension of the resource type.") 42 var_schema: Optional[StrictStr] = Field( 43 default=None, description="Schema URI of the resource type.", alias="schema" 44 ) 45 schema_extensions: Optional[List[ResourceTypeListResponseResourcesInnerSchemaExtensionsInner]] = Field( 46 default=None, description="Schema extensions supported for the resource type.", alias="schemaExtensions" 47 ) 48 additional_properties: Dict[str, Any] = {} 49 __properties: ClassVar[List[str]] = [ 50 "schemas", 51 "id", 52 "name", 53 "description", 54 "endpoint", 55 "schema", 56 "schemaExtensions", 57 ] 58 59 model_config = { 60 "populate_by_name": True, 61 "validate_assignment": True, 62 "protected_namespaces": (), 63 } 64 65 def to_str(self) -> str: 66 """Returns the string representation of the model using alias""" 67 return pprint.pformat(self.model_dump(by_alias=True)) 68 69 def to_json(self) -> str: 70 """Returns the JSON representation of the model using alias""" 71 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 72 return json.dumps(self.to_dict()) 73 74 @classmethod 75 def from_json(cls, json_str: str) -> Optional[Self]: 76 """Create an instance of ResourceType from a JSON string""" 77 return cls.from_dict(json.loads(json_str)) 78 79 def to_dict(self) -> Dict[str, Any]: 80 """Return the dictionary representation of the model using alias. 81 82 This has the following differences from calling pydantic's 83 `self.model_dump(by_alias=True)`: 84 85 * `None` is only added to the output dict for nullable fields that 86 were set at model initialization. Other fields with value `None` 87 are ignored. 88 * Fields in `self.additional_properties` are added to the output dict. 89 """ 90 excluded_fields: Set[str] = set( 91 [ 92 "additional_properties", 93 ] 94 ) 95 96 _dict = self.model_dump( 97 by_alias=True, 98 exclude=excluded_fields, 99 exclude_none=True, 100 ) 101 # override the default output from pydantic by calling `to_dict()` of each item in schema_extensions (list) 102 _items = [] 103 if self.schema_extensions: 104 for _item in self.schema_extensions: 105 if _item: 106 _items.append(_item.to_dict()) 107 _dict["schemaExtensions"] = _items 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 ResourceType 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 "schemas": obj.get("schemas"), 127 "id": obj.get("id"), 128 "name": obj.get("name"), 129 "description": obj.get("description"), 130 "endpoint": obj.get("endpoint"), 131 "schema": obj.get("schema"), 132 "schemaExtensions": ( 133 [ 134 ResourceTypeListResponseResourcesInnerSchemaExtensionsInner.from_dict(_item) 135 for _item in obj["schemaExtensions"] 136 ] 137 if obj.get("schemaExtensions") is not None 138 else None 139 ), 140 } 141 ) 142 # store additional fields in additional_properties 143 for _key in obj.keys(): 144 if _key not in cls.__properties: 145 _obj.additional_properties[_key] = obj.get(_key) 146 147 return _obj
Metadata for the available resource types (User and Group)
65 def to_str(self) -> str: 66 """Returns the string representation of the model using alias""" 67 return pprint.pformat(self.model_dump(by_alias=True))
Returns the string representation of the model using alias
69 def to_json(self) -> str: 70 """Returns the JSON representation of the model using alias""" 71 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 72 return json.dumps(self.to_dict())
Returns the JSON representation of the model using alias
74 @classmethod 75 def from_json(cls, json_str: str) -> Optional[Self]: 76 """Create an instance of ResourceType from a JSON string""" 77 return cls.from_dict(json.loads(json_str))
Create an instance of ResourceType from a JSON string
79 def to_dict(self) -> Dict[str, Any]: 80 """Return the dictionary representation of the model using alias. 81 82 This has the following differences from calling pydantic's 83 `self.model_dump(by_alias=True)`: 84 85 * `None` is only added to the output dict for nullable fields that 86 were set at model initialization. Other fields with value `None` 87 are ignored. 88 * Fields in `self.additional_properties` are added to the output dict. 89 """ 90 excluded_fields: Set[str] = set( 91 [ 92 "additional_properties", 93 ] 94 ) 95 96 _dict = self.model_dump( 97 by_alias=True, 98 exclude=excluded_fields, 99 exclude_none=True, 100 ) 101 # override the default output from pydantic by calling `to_dict()` of each item in schema_extensions (list) 102 _items = [] 103 if self.schema_extensions: 104 for _item in self.schema_extensions: 105 if _item: 106 _items.append(_item.to_dict()) 107 _dict["schemaExtensions"] = _items 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
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.
115 @classmethod 116 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 117 """Create an instance of ResourceType 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 "schemas": obj.get("schemas"), 127 "id": obj.get("id"), 128 "name": obj.get("name"), 129 "description": obj.get("description"), 130 "endpoint": obj.get("endpoint"), 131 "schema": obj.get("schema"), 132 "schemaExtensions": ( 133 [ 134 ResourceTypeListResponseResourcesInnerSchemaExtensionsInner.from_dict(_item) 135 for _item in obj["schemaExtensions"] 136 ] 137 if obj.get("schemaExtensions") is not None 138 else None 139 ), 140 } 141 ) 142 # store additional fields in additional_properties 143 for _key in obj.keys(): 144 if _key not in cls.__properties: 145 _obj.additional_properties[_key] = obj.get(_key) 146 147 return _obj
Create an instance of ResourceType 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