miro_api.models.case_response
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 datetime import datetime 20from pydantic import BaseModel, Field, StrictStr, field_validator 21from typing import Any, ClassVar, Dict, List, Optional 22from typing_extensions import Annotated 23from miro_api.models.user import User 24from typing import Optional, Set 25from typing_extensions import Self 26 27 28class CaseResponse(BaseModel): 29 """ 30 CaseResponse 31 """ # noqa: E501 32 33 id: Annotated[str, Field(strict=True)] = Field(description="Unique identifier of the case.") 34 organization_id: Annotated[str, Field(strict=True)] = Field( 35 description="Unique identifier of the organization.", alias="organizationId" 36 ) 37 name: StrictStr = Field(description="The name of the case.") 38 description: Optional[StrictStr] = Field(default=None, description="The description of the case.") 39 created_by: User = Field(alias="createdBy") 40 last_modified_by: Optional[User] = Field(default=None, alias="lastModifiedBy") 41 created_at: datetime = Field(alias="createdAt") 42 last_modified_at: datetime = Field(alias="lastModifiedAt") 43 additional_properties: Dict[str, Any] = {} 44 __properties: ClassVar[List[str]] = [ 45 "id", 46 "organizationId", 47 "name", 48 "description", 49 "createdBy", 50 "lastModifiedBy", 51 "createdAt", 52 "lastModifiedAt", 53 ] 54 55 @field_validator("id") 56 def id_validate_regular_expression(cls, value): 57 """Validates the regular expression""" 58 if not re.match(r"^[0-9]+$", value): 59 raise ValueError(r"must validate the regular expression /^[0-9]+$/") 60 return value 61 62 @field_validator("organization_id") 63 def organization_id_validate_regular_expression(cls, value): 64 """Validates the regular expression""" 65 if not re.match(r"^[0-9]+$", value): 66 raise ValueError(r"must validate the regular expression /^[0-9]+$/") 67 return value 68 69 model_config = { 70 "populate_by_name": True, 71 "validate_assignment": True, 72 "protected_namespaces": (), 73 } 74 75 def to_str(self) -> str: 76 """Returns the string representation of the model using alias""" 77 return pprint.pformat(self.model_dump(by_alias=True)) 78 79 def to_json(self) -> str: 80 """Returns the JSON representation of the model using alias""" 81 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 82 return json.dumps(self.to_dict()) 83 84 @classmethod 85 def from_json(cls, json_str: str) -> Optional[Self]: 86 """Create an instance of CaseResponse from a JSON string""" 87 return cls.from_dict(json.loads(json_str)) 88 89 def to_dict(self) -> Dict[str, Any]: 90 """Return the dictionary representation of the model using alias. 91 92 This has the following differences from calling pydantic's 93 `self.model_dump(by_alias=True)`: 94 95 * `None` is only added to the output dict for nullable fields that 96 were set at model initialization. Other fields with value `None` 97 are ignored. 98 * Fields in `self.additional_properties` are added to the output dict. 99 """ 100 excluded_fields: Set[str] = set( 101 [ 102 "additional_properties", 103 ] 104 ) 105 106 _dict = self.model_dump( 107 by_alias=True, 108 exclude=excluded_fields, 109 exclude_none=True, 110 ) 111 # override the default output from pydantic by calling `to_dict()` of created_by 112 if self.created_by: 113 _dict["createdBy"] = self.created_by.to_dict() 114 # override the default output from pydantic by calling `to_dict()` of last_modified_by 115 if self.last_modified_by: 116 _dict["lastModifiedBy"] = self.last_modified_by.to_dict() 117 # puts key-value pairs in additional_properties in the top level 118 if self.additional_properties is not None: 119 for _key, _value in self.additional_properties.items(): 120 _dict[_key] = _value 121 122 return _dict 123 124 @classmethod 125 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 126 """Create an instance of CaseResponse from a dict""" 127 if obj is None: 128 return None 129 130 if not isinstance(obj, dict): 131 return cls.model_validate(obj) 132 133 _obj = cls.model_validate( 134 { 135 "id": obj.get("id"), 136 "organizationId": obj.get("organizationId"), 137 "name": obj.get("name"), 138 "description": obj.get("description"), 139 "createdBy": User.from_dict(obj["createdBy"]) if obj.get("createdBy") is not None else None, 140 "lastModifiedBy": ( 141 User.from_dict(obj["lastModifiedBy"]) if obj.get("lastModifiedBy") is not None else None 142 ), 143 "createdAt": obj.get("createdAt"), 144 "lastModifiedAt": obj.get("lastModifiedAt"), 145 } 146 ) 147 # store additional fields in additional_properties 148 for _key in obj.keys(): 149 if _key not in cls.__properties: 150 _obj.additional_properties[_key] = obj.get(_key) 151 152 return _obj
29class CaseResponse(BaseModel): 30 """ 31 CaseResponse 32 """ # noqa: E501 33 34 id: Annotated[str, Field(strict=True)] = Field(description="Unique identifier of the case.") 35 organization_id: Annotated[str, Field(strict=True)] = Field( 36 description="Unique identifier of the organization.", alias="organizationId" 37 ) 38 name: StrictStr = Field(description="The name of the case.") 39 description: Optional[StrictStr] = Field(default=None, description="The description of the case.") 40 created_by: User = Field(alias="createdBy") 41 last_modified_by: Optional[User] = Field(default=None, alias="lastModifiedBy") 42 created_at: datetime = Field(alias="createdAt") 43 last_modified_at: datetime = Field(alias="lastModifiedAt") 44 additional_properties: Dict[str, Any] = {} 45 __properties: ClassVar[List[str]] = [ 46 "id", 47 "organizationId", 48 "name", 49 "description", 50 "createdBy", 51 "lastModifiedBy", 52 "createdAt", 53 "lastModifiedAt", 54 ] 55 56 @field_validator("id") 57 def id_validate_regular_expression(cls, value): 58 """Validates the regular expression""" 59 if not re.match(r"^[0-9]+$", value): 60 raise ValueError(r"must validate the regular expression /^[0-9]+$/") 61 return value 62 63 @field_validator("organization_id") 64 def organization_id_validate_regular_expression(cls, value): 65 """Validates the regular expression""" 66 if not re.match(r"^[0-9]+$", value): 67 raise ValueError(r"must validate the regular expression /^[0-9]+$/") 68 return value 69 70 model_config = { 71 "populate_by_name": True, 72 "validate_assignment": True, 73 "protected_namespaces": (), 74 } 75 76 def to_str(self) -> str: 77 """Returns the string representation of the model using alias""" 78 return pprint.pformat(self.model_dump(by_alias=True)) 79 80 def to_json(self) -> str: 81 """Returns the JSON representation of the model using alias""" 82 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 83 return json.dumps(self.to_dict()) 84 85 @classmethod 86 def from_json(cls, json_str: str) -> Optional[Self]: 87 """Create an instance of CaseResponse from a JSON string""" 88 return cls.from_dict(json.loads(json_str)) 89 90 def to_dict(self) -> Dict[str, Any]: 91 """Return the dictionary representation of the model using alias. 92 93 This has the following differences from calling pydantic's 94 `self.model_dump(by_alias=True)`: 95 96 * `None` is only added to the output dict for nullable fields that 97 were set at model initialization. Other fields with value `None` 98 are ignored. 99 * Fields in `self.additional_properties` are added to the output dict. 100 """ 101 excluded_fields: Set[str] = set( 102 [ 103 "additional_properties", 104 ] 105 ) 106 107 _dict = self.model_dump( 108 by_alias=True, 109 exclude=excluded_fields, 110 exclude_none=True, 111 ) 112 # override the default output from pydantic by calling `to_dict()` of created_by 113 if self.created_by: 114 _dict["createdBy"] = self.created_by.to_dict() 115 # override the default output from pydantic by calling `to_dict()` of last_modified_by 116 if self.last_modified_by: 117 _dict["lastModifiedBy"] = self.last_modified_by.to_dict() 118 # puts key-value pairs in additional_properties in the top level 119 if self.additional_properties is not None: 120 for _key, _value in self.additional_properties.items(): 121 _dict[_key] = _value 122 123 return _dict 124 125 @classmethod 126 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 127 """Create an instance of CaseResponse from a dict""" 128 if obj is None: 129 return None 130 131 if not isinstance(obj, dict): 132 return cls.model_validate(obj) 133 134 _obj = cls.model_validate( 135 { 136 "id": obj.get("id"), 137 "organizationId": obj.get("organizationId"), 138 "name": obj.get("name"), 139 "description": obj.get("description"), 140 "createdBy": User.from_dict(obj["createdBy"]) if obj.get("createdBy") is not None else None, 141 "lastModifiedBy": ( 142 User.from_dict(obj["lastModifiedBy"]) if obj.get("lastModifiedBy") is not None else None 143 ), 144 "createdAt": obj.get("createdAt"), 145 "lastModifiedAt": obj.get("lastModifiedAt"), 146 } 147 ) 148 # store additional fields in additional_properties 149 for _key in obj.keys(): 150 if _key not in cls.__properties: 151 _obj.additional_properties[_key] = obj.get(_key) 152 153 return _obj
CaseResponse
56 @field_validator("id") 57 def id_validate_regular_expression(cls, value): 58 """Validates the regular expression""" 59 if not re.match(r"^[0-9]+$", value): 60 raise ValueError(r"must validate the regular expression /^[0-9]+$/") 61 return value
Validates the regular expression
63 @field_validator("organization_id") 64 def organization_id_validate_regular_expression(cls, value): 65 """Validates the regular expression""" 66 if not re.match(r"^[0-9]+$", value): 67 raise ValueError(r"must validate the regular expression /^[0-9]+$/") 68 return value
Validates the regular expression
76 def to_str(self) -> str: 77 """Returns the string representation of the model using alias""" 78 return pprint.pformat(self.model_dump(by_alias=True))
Returns the string representation of the model using alias
80 def to_json(self) -> str: 81 """Returns the JSON representation of the model using alias""" 82 # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead 83 return json.dumps(self.to_dict())
Returns the JSON representation of the model using alias
85 @classmethod 86 def from_json(cls, json_str: str) -> Optional[Self]: 87 """Create an instance of CaseResponse from a JSON string""" 88 return cls.from_dict(json.loads(json_str))
Create an instance of CaseResponse from a JSON string
90 def to_dict(self) -> Dict[str, Any]: 91 """Return the dictionary representation of the model using alias. 92 93 This has the following differences from calling pydantic's 94 `self.model_dump(by_alias=True)`: 95 96 * `None` is only added to the output dict for nullable fields that 97 were set at model initialization. Other fields with value `None` 98 are ignored. 99 * Fields in `self.additional_properties` are added to the output dict. 100 """ 101 excluded_fields: Set[str] = set( 102 [ 103 "additional_properties", 104 ] 105 ) 106 107 _dict = self.model_dump( 108 by_alias=True, 109 exclude=excluded_fields, 110 exclude_none=True, 111 ) 112 # override the default output from pydantic by calling `to_dict()` of created_by 113 if self.created_by: 114 _dict["createdBy"] = self.created_by.to_dict() 115 # override the default output from pydantic by calling `to_dict()` of last_modified_by 116 if self.last_modified_by: 117 _dict["lastModifiedBy"] = self.last_modified_by.to_dict() 118 # puts key-value pairs in additional_properties in the top level 119 if self.additional_properties is not None: 120 for _key, _value in self.additional_properties.items(): 121 _dict[_key] = _value 122 123 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.
125 @classmethod 126 def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: 127 """Create an instance of CaseResponse from a dict""" 128 if obj is None: 129 return None 130 131 if not isinstance(obj, dict): 132 return cls.model_validate(obj) 133 134 _obj = cls.model_validate( 135 { 136 "id": obj.get("id"), 137 "organizationId": obj.get("organizationId"), 138 "name": obj.get("name"), 139 "description": obj.get("description"), 140 "createdBy": User.from_dict(obj["createdBy"]) if obj.get("createdBy") is not None else None, 141 "lastModifiedBy": ( 142 User.from_dict(obj["lastModifiedBy"]) if obj.get("lastModifiedBy") is not None else None 143 ), 144 "createdAt": obj.get("createdAt"), 145 "lastModifiedAt": obj.get("lastModifiedAt"), 146 } 147 ) 148 # store additional fields in additional_properties 149 for _key in obj.keys(): 150 if _key not in cls.__properties: 151 _obj.additional_properties[_key] = obj.get(_key) 152 153 return _obj
Create an instance of CaseResponse 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