miro_api.models.subscription_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 14 15from __future__ import annotations 16import json 17import pprint 18from pydantic import BaseModel, Field, StrictStr, ValidationError, field_validator 19from typing import Any, List, Optional 20from miro_api.models.board_subscription_data import BoardSubscriptionData 21from pydantic import StrictStr, Field 22from typing import Union, List, Optional, Dict 23from typing_extensions import Literal, Self 24 25SUBSCRIPTIONDATA_ONE_OF_SCHEMAS = ["BoardSubscriptionData"] 26 27 28class SubscriptionData(BaseModel): 29 """ 30 Contains information about a webhook subscription, such as the board ID that the webhook subscription is associated with. 31 """ 32 33 # data type: BoardSubscriptionData 34 oneof_schema_1_validator: Optional[BoardSubscriptionData] = None 35 actual_instance: Optional[Union[BoardSubscriptionData]] = None 36 one_of_schemas: List[str] = Field(default=Literal["BoardSubscriptionData"]) 37 38 model_config = { 39 "validate_assignment": True, 40 "protected_namespaces": (), 41 } 42 43 def __init__(self, *args, **kwargs) -> None: 44 if args: 45 if len(args) > 1: 46 raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`") 47 if kwargs: 48 raise ValueError("If a position argument is used, keyword arguments cannot be used.") 49 super().__init__(actual_instance=args[0]) 50 else: 51 super().__init__(**kwargs) 52 53 def __getattr__(self, attr: str): 54 return getattr(self.actual_instance, attr) 55 56 @field_validator("actual_instance") 57 def actual_instance_must_validate_oneof(cls, v): 58 instance = SubscriptionData.model_construct() 59 error_messages = [] 60 match = 0 61 # validate data type: BoardSubscriptionData 62 if not isinstance(v, BoardSubscriptionData): 63 error_messages.append(f"Error! Input type `{type(v)}` is not `BoardSubscriptionData`") 64 else: 65 match += 1 66 if match > 1: 67 # more than 1 match 68 raise ValueError( 69 "Multiple matches found when setting `actual_instance` in SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 70 + ", ".join(error_messages) 71 ) 72 elif match == 0: 73 # no match 74 raise ValueError( 75 "No match found when setting `actual_instance` in SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 76 + ", ".join(error_messages) 77 ) 78 else: 79 return v 80 81 @classmethod 82 def from_dict(cls, obj: Union[str, Dict[str, Any]]) -> Self: 83 return cls.from_json(json.dumps(obj)) 84 85 @classmethod 86 def from_json(cls, json_str: str) -> Union[BoardSubscriptionData]: 87 """Returns the object represented by the json string""" 88 instance = cls.model_construct() 89 error_messages = [] 90 matches = [] 91 92 # deserialize data into BoardSubscriptionData 93 try: 94 instance.actual_instance = BoardSubscriptionData.from_json(json_str) 95 matches.append(instance.actual_instance) 96 except (ValidationError, ValueError) as e: 97 error_messages.append(str(e)) 98 99 if not matches: 100 # no match 101 raise ValueError( 102 "No match found when deserializing the JSON string into SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 103 + ", ".join(error_messages) 104 ) 105 106 # Return one match that has least additional_properties 107 if len(matches) > 1: 108 instance.actual_instance = sorted(matches, key=lambda m: len(m.additional_properties))[0] 109 110 return instance 111 112 def to_json(self) -> str: 113 """Returns the JSON representation of the actual instance""" 114 if self.actual_instance is None: 115 return "null" 116 117 if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json): 118 return self.actual_instance.to_json() 119 else: 120 return json.dumps(self.actual_instance) 121 122 def to_dict(self) -> Optional[Union[Dict[str, Any], BoardSubscriptionData]]: 123 """Returns the dict representation of the actual instance""" 124 if self.actual_instance is None: 125 return None 126 127 if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict): 128 return self.actual_instance.to_dict() 129 else: 130 # primitive type 131 return self.actual_instance 132 133 def to_str(self) -> str: 134 """Returns the string representation of the actual instance""" 135 return pprint.pformat(self.model_dump())
29class SubscriptionData(BaseModel): 30 """ 31 Contains information about a webhook subscription, such as the board ID that the webhook subscription is associated with. 32 """ 33 34 # data type: BoardSubscriptionData 35 oneof_schema_1_validator: Optional[BoardSubscriptionData] = None 36 actual_instance: Optional[Union[BoardSubscriptionData]] = None 37 one_of_schemas: List[str] = Field(default=Literal["BoardSubscriptionData"]) 38 39 model_config = { 40 "validate_assignment": True, 41 "protected_namespaces": (), 42 } 43 44 def __init__(self, *args, **kwargs) -> None: 45 if args: 46 if len(args) > 1: 47 raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`") 48 if kwargs: 49 raise ValueError("If a position argument is used, keyword arguments cannot be used.") 50 super().__init__(actual_instance=args[0]) 51 else: 52 super().__init__(**kwargs) 53 54 def __getattr__(self, attr: str): 55 return getattr(self.actual_instance, attr) 56 57 @field_validator("actual_instance") 58 def actual_instance_must_validate_oneof(cls, v): 59 instance = SubscriptionData.model_construct() 60 error_messages = [] 61 match = 0 62 # validate data type: BoardSubscriptionData 63 if not isinstance(v, BoardSubscriptionData): 64 error_messages.append(f"Error! Input type `{type(v)}` is not `BoardSubscriptionData`") 65 else: 66 match += 1 67 if match > 1: 68 # more than 1 match 69 raise ValueError( 70 "Multiple matches found when setting `actual_instance` in SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 71 + ", ".join(error_messages) 72 ) 73 elif match == 0: 74 # no match 75 raise ValueError( 76 "No match found when setting `actual_instance` in SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 77 + ", ".join(error_messages) 78 ) 79 else: 80 return v 81 82 @classmethod 83 def from_dict(cls, obj: Union[str, Dict[str, Any]]) -> Self: 84 return cls.from_json(json.dumps(obj)) 85 86 @classmethod 87 def from_json(cls, json_str: str) -> Union[BoardSubscriptionData]: 88 """Returns the object represented by the json string""" 89 instance = cls.model_construct() 90 error_messages = [] 91 matches = [] 92 93 # deserialize data into BoardSubscriptionData 94 try: 95 instance.actual_instance = BoardSubscriptionData.from_json(json_str) 96 matches.append(instance.actual_instance) 97 except (ValidationError, ValueError) as e: 98 error_messages.append(str(e)) 99 100 if not matches: 101 # no match 102 raise ValueError( 103 "No match found when deserializing the JSON string into SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 104 + ", ".join(error_messages) 105 ) 106 107 # Return one match that has least additional_properties 108 if len(matches) > 1: 109 instance.actual_instance = sorted(matches, key=lambda m: len(m.additional_properties))[0] 110 111 return instance 112 113 def to_json(self) -> str: 114 """Returns the JSON representation of the actual instance""" 115 if self.actual_instance is None: 116 return "null" 117 118 if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json): 119 return self.actual_instance.to_json() 120 else: 121 return json.dumps(self.actual_instance) 122 123 def to_dict(self) -> Optional[Union[Dict[str, Any], BoardSubscriptionData]]: 124 """Returns the dict representation of the actual instance""" 125 if self.actual_instance is None: 126 return None 127 128 if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict): 129 return self.actual_instance.to_dict() 130 else: 131 # primitive type 132 return self.actual_instance 133 134 def to_str(self) -> str: 135 """Returns the string representation of the actual instance""" 136 return pprint.pformat(self.model_dump())
Contains information about a webhook subscription, such as the board ID that the webhook subscription is associated with.
44 def __init__(self, *args, **kwargs) -> None: 45 if args: 46 if len(args) > 1: 47 raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`") 48 if kwargs: 49 raise ValueError("If a position argument is used, keyword arguments cannot be used.") 50 super().__init__(actual_instance=args[0]) 51 else: 52 super().__init__(**kwargs)
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError
][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
self
is explicitly positional-only to allow self
as a field name.
57 @field_validator("actual_instance") 58 def actual_instance_must_validate_oneof(cls, v): 59 instance = SubscriptionData.model_construct() 60 error_messages = [] 61 match = 0 62 # validate data type: BoardSubscriptionData 63 if not isinstance(v, BoardSubscriptionData): 64 error_messages.append(f"Error! Input type `{type(v)}` is not `BoardSubscriptionData`") 65 else: 66 match += 1 67 if match > 1: 68 # more than 1 match 69 raise ValueError( 70 "Multiple matches found when setting `actual_instance` in SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 71 + ", ".join(error_messages) 72 ) 73 elif match == 0: 74 # no match 75 raise ValueError( 76 "No match found when setting `actual_instance` in SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 77 + ", ".join(error_messages) 78 ) 79 else: 80 return v
86 @classmethod 87 def from_json(cls, json_str: str) -> Union[BoardSubscriptionData]: 88 """Returns the object represented by the json string""" 89 instance = cls.model_construct() 90 error_messages = [] 91 matches = [] 92 93 # deserialize data into BoardSubscriptionData 94 try: 95 instance.actual_instance = BoardSubscriptionData.from_json(json_str) 96 matches.append(instance.actual_instance) 97 except (ValidationError, ValueError) as e: 98 error_messages.append(str(e)) 99 100 if not matches: 101 # no match 102 raise ValueError( 103 "No match found when deserializing the JSON string into SubscriptionData with oneOf schemas: BoardSubscriptionData. Details: " 104 + ", ".join(error_messages) 105 ) 106 107 # Return one match that has least additional_properties 108 if len(matches) > 1: 109 instance.actual_instance = sorted(matches, key=lambda m: len(m.additional_properties))[0] 110 111 return instance
Returns the object represented by the json string
113 def to_json(self) -> str: 114 """Returns the JSON representation of the actual instance""" 115 if self.actual_instance is None: 116 return "null" 117 118 if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json): 119 return self.actual_instance.to_json() 120 else: 121 return json.dumps(self.actual_instance)
Returns the JSON representation of the actual instance
123 def to_dict(self) -> Optional[Union[Dict[str, Any], BoardSubscriptionData]]: 124 """Returns the dict representation of the actual instance""" 125 if self.actual_instance is None: 126 return None 127 128 if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict): 129 return self.actual_instance.to_dict() 130 else: 131 # primitive type 132 return self.actual_instance
Returns the dict representation of the actual instance
134 def to_str(self) -> str: 135 """Returns the string representation of the actual instance""" 136 return pprint.pformat(self.model_dump())
Returns the string representation of the actual instance
Inherited Members
- pydantic.main.BaseModel
- model_extra
- model_fields_set
- model_construct
- model_copy
- model_dump
- model_dump_json
- model_json_schema
- model_parametrized_name
- model_post_init
- 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