wallaroo.wallaroo_ml_ops_api_client.models.assays_get_results_response_200_item

  1import datetime
  2from typing import Any, Dict, List, Type, TypeVar, Union, cast
  3
  4import attr
  5from dateutil.parser import isoparse
  6
  7from ..models.assays_get_results_response_200_item_baseline_summary import \
  8    AssaysGetResultsResponse200ItemBaselineSummary
  9from ..models.assays_get_results_response_200_item_status import \
 10    AssaysGetResultsResponse200ItemStatus
 11from ..models.assays_get_results_response_200_item_summarizer_type_0 import \
 12    AssaysGetResultsResponse200ItemSummarizerType0
 13from ..models.assays_get_results_response_200_item_summarizer_type_1 import \
 14    AssaysGetResultsResponse200ItemSummarizerType1
 15from ..models.assays_get_results_response_200_item_window_summary import \
 16    AssaysGetResultsResponse200ItemWindowSummary
 17from ..types import UNSET, Unset
 18
 19T = TypeVar("T", bound="AssaysGetResultsResponse200Item")
 20
 21@attr.s(auto_attribs=True)
 22class AssaysGetResultsResponse200Item:
 23    """
 24    Attributes:
 25        window_start (datetime.datetime):
 26        analyzed_at (datetime.datetime):
 27        elapsed_millis (int):
 28        iopath (str):
 29        baseline_summary (AssaysGetResultsResponse200ItemBaselineSummary):  Result from summarizing one sample
 30            collection.
 31        window_summary (AssaysGetResultsResponse200ItemWindowSummary):  Result from summarizing one sample collection.
 32        alert_threshold (float):
 33        score (float):
 34        scores (List[float]):
 35        summarizer (Union[AssaysGetResultsResponse200ItemSummarizerType0,
 36            AssaysGetResultsResponse200ItemSummarizerType1]):
 37        status (AssaysGetResultsResponse200ItemStatus):
 38        id (Union[Unset, None, int]):
 39        assay_id (Union[Unset, None, int]):
 40        pipeline_id (Union[Unset, None, int]):
 41        warning_threshold (Union[Unset, None, float]):
 42        bin_index (Union[Unset, None, int]):
 43        created_at (Union[Unset, None, datetime.datetime]):
 44    """
 45
 46    window_start: datetime.datetime
 47    analyzed_at: datetime.datetime
 48    elapsed_millis: int
 49    iopath: str
 50    baseline_summary: AssaysGetResultsResponse200ItemBaselineSummary
 51    window_summary: AssaysGetResultsResponse200ItemWindowSummary
 52    alert_threshold: float
 53    score: float
 54    scores: List[float]
 55    summarizer: Union[AssaysGetResultsResponse200ItemSummarizerType0, AssaysGetResultsResponse200ItemSummarizerType1]
 56    status: AssaysGetResultsResponse200ItemStatus
 57    id: Union[Unset, None, int] = UNSET
 58    assay_id: Union[Unset, None, int] = UNSET
 59    pipeline_id: Union[Unset, None, int] = UNSET
 60    warning_threshold: Union[Unset, None, float] = UNSET
 61    bin_index: Union[Unset, None, int] = UNSET
 62    created_at: Union[Unset, None, datetime.datetime] = UNSET
 63    additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
 64
 65
 66    def to_dict(self) -> Dict[str, Any]:
 67        window_start = self.window_start.isoformat()
 68
 69        analyzed_at = self.analyzed_at.isoformat()
 70
 71        elapsed_millis = self.elapsed_millis
 72        iopath = self.iopath
 73        baseline_summary = self.baseline_summary.to_dict()
 74
 75        window_summary = self.window_summary.to_dict()
 76
 77        alert_threshold = self.alert_threshold
 78        score = self.score
 79        scores = self.scores
 80
 81
 82
 83
 84        summarizer: Dict[str, Any]
 85
 86        if isinstance(self.summarizer, AssaysGetResultsResponse200ItemSummarizerType0):
 87            summarizer = self.summarizer.to_dict()
 88
 89        else:
 90            summarizer = self.summarizer.to_dict()
 91
 92
 93
 94        status = self.status.value
 95
 96        id = self.id
 97        assay_id = self.assay_id
 98        pipeline_id = self.pipeline_id
 99        warning_threshold = self.warning_threshold
100        bin_index = self.bin_index
101        created_at: Union[Unset, None, str] = UNSET
102        if not isinstance(self.created_at, Unset):
103            created_at = self.created_at.isoformat() if self.created_at else None
104
105
106        field_dict: Dict[str, Any] = {}
107        field_dict.update(self.additional_properties)
108        field_dict.update({
109            "window_start": window_start,
110            "analyzed_at": analyzed_at,
111            "elapsed_millis": elapsed_millis,
112            "iopath": iopath,
113            "baseline_summary": baseline_summary,
114            "window_summary": window_summary,
115            "alert_threshold": alert_threshold,
116            "score": score,
117            "scores": scores,
118            "summarizer": summarizer,
119            "status": status,
120        })
121        if id is not UNSET:
122            field_dict["id"] = id
123        if assay_id is not UNSET:
124            field_dict["assay_id"] = assay_id
125        if pipeline_id is not UNSET:
126            field_dict["pipeline_id"] = pipeline_id
127        if warning_threshold is not UNSET:
128            field_dict["warning_threshold"] = warning_threshold
129        if bin_index is not UNSET:
130            field_dict["bin_index"] = bin_index
131        if created_at is not UNSET:
132            field_dict["created_at"] = created_at
133
134        return field_dict
135
136
137
138    @classmethod
139    def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
140        d = src_dict.copy()
141        window_start = isoparse(d.pop("window_start"))
142
143
144
145
146        analyzed_at = isoparse(d.pop("analyzed_at"))
147
148
149
150
151        elapsed_millis = d.pop("elapsed_millis")
152
153        iopath = d.pop("iopath")
154
155        baseline_summary = AssaysGetResultsResponse200ItemBaselineSummary.from_dict(d.pop("baseline_summary"))
156
157
158
159
160        window_summary = AssaysGetResultsResponse200ItemWindowSummary.from_dict(d.pop("window_summary"))
161
162
163
164
165        alert_threshold = d.pop("alert_threshold")
166
167        score = d.pop("score")
168
169        scores = cast(List[float], d.pop("scores"))
170
171
172        def _parse_summarizer(data: object) -> Union[AssaysGetResultsResponse200ItemSummarizerType0, AssaysGetResultsResponse200ItemSummarizerType1]:
173            try:
174                if not isinstance(data, dict):
175                    raise TypeError()
176                summarizer_type_0 = AssaysGetResultsResponse200ItemSummarizerType0.from_dict(data)
177
178
179
180                return summarizer_type_0
181            except: # noqa: E722
182                pass
183            if not isinstance(data, dict):
184                raise TypeError()
185            summarizer_type_1 = AssaysGetResultsResponse200ItemSummarizerType1.from_dict(data)
186
187
188
189            return summarizer_type_1
190
191        summarizer = _parse_summarizer(d.pop("summarizer"))
192
193
194        status = AssaysGetResultsResponse200ItemStatus(d.pop("status"))
195
196
197
198
199        id = d.pop("id", UNSET)
200
201        assay_id = d.pop("assay_id", UNSET)
202
203        pipeline_id = d.pop("pipeline_id", UNSET)
204
205        warning_threshold = d.pop("warning_threshold", UNSET)
206
207        bin_index = d.pop("bin_index", UNSET)
208
209        _created_at = d.pop("created_at", UNSET)
210        created_at: Union[Unset, None, datetime.datetime]
211        if _created_at is None:
212            created_at = None
213        elif isinstance(_created_at,  Unset):
214            created_at = UNSET
215        else:
216            created_at = isoparse(_created_at)
217
218
219
220
221        assays_get_results_response_200_item = cls(
222            window_start=window_start,
223            analyzed_at=analyzed_at,
224            elapsed_millis=elapsed_millis,
225            iopath=iopath,
226            baseline_summary=baseline_summary,
227            window_summary=window_summary,
228            alert_threshold=alert_threshold,
229            score=score,
230            scores=scores,
231            summarizer=summarizer,
232            status=status,
233            id=id,
234            assay_id=assay_id,
235            pipeline_id=pipeline_id,
236            warning_threshold=warning_threshold,
237            bin_index=bin_index,
238            created_at=created_at,
239        )
240
241        assays_get_results_response_200_item.additional_properties = d
242        return assays_get_results_response_200_item
243
244    @property
245    def additional_keys(self) -> List[str]:
246        return list(self.additional_properties.keys())
247
248    def __getitem__(self, key: str) -> Any:
249        return self.additional_properties[key]
250
251    def __setitem__(self, key: str, value: Any) -> None:
252        self.additional_properties[key] = value
253
254    def __delitem__(self, key: str) -> None:
255        del self.additional_properties[key]
256
257    def __contains__(self, key: str) -> bool:
258        return key in self.additional_properties
@attr.s(auto_attribs=True)
class AssaysGetResultsResponse200Item:
 22@attr.s(auto_attribs=True)
 23class AssaysGetResultsResponse200Item:
 24    """
 25    Attributes:
 26        window_start (datetime.datetime):
 27        analyzed_at (datetime.datetime):
 28        elapsed_millis (int):
 29        iopath (str):
 30        baseline_summary (AssaysGetResultsResponse200ItemBaselineSummary):  Result from summarizing one sample
 31            collection.
 32        window_summary (AssaysGetResultsResponse200ItemWindowSummary):  Result from summarizing one sample collection.
 33        alert_threshold (float):
 34        score (float):
 35        scores (List[float]):
 36        summarizer (Union[AssaysGetResultsResponse200ItemSummarizerType0,
 37            AssaysGetResultsResponse200ItemSummarizerType1]):
 38        status (AssaysGetResultsResponse200ItemStatus):
 39        id (Union[Unset, None, int]):
 40        assay_id (Union[Unset, None, int]):
 41        pipeline_id (Union[Unset, None, int]):
 42        warning_threshold (Union[Unset, None, float]):
 43        bin_index (Union[Unset, None, int]):
 44        created_at (Union[Unset, None, datetime.datetime]):
 45    """
 46
 47    window_start: datetime.datetime
 48    analyzed_at: datetime.datetime
 49    elapsed_millis: int
 50    iopath: str
 51    baseline_summary: AssaysGetResultsResponse200ItemBaselineSummary
 52    window_summary: AssaysGetResultsResponse200ItemWindowSummary
 53    alert_threshold: float
 54    score: float
 55    scores: List[float]
 56    summarizer: Union[AssaysGetResultsResponse200ItemSummarizerType0, AssaysGetResultsResponse200ItemSummarizerType1]
 57    status: AssaysGetResultsResponse200ItemStatus
 58    id: Union[Unset, None, int] = UNSET
 59    assay_id: Union[Unset, None, int] = UNSET
 60    pipeline_id: Union[Unset, None, int] = UNSET
 61    warning_threshold: Union[Unset, None, float] = UNSET
 62    bin_index: Union[Unset, None, int] = UNSET
 63    created_at: Union[Unset, None, datetime.datetime] = UNSET
 64    additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
 65
 66
 67    def to_dict(self) -> Dict[str, Any]:
 68        window_start = self.window_start.isoformat()
 69
 70        analyzed_at = self.analyzed_at.isoformat()
 71
 72        elapsed_millis = self.elapsed_millis
 73        iopath = self.iopath
 74        baseline_summary = self.baseline_summary.to_dict()
 75
 76        window_summary = self.window_summary.to_dict()
 77
 78        alert_threshold = self.alert_threshold
 79        score = self.score
 80        scores = self.scores
 81
 82
 83
 84
 85        summarizer: Dict[str, Any]
 86
 87        if isinstance(self.summarizer, AssaysGetResultsResponse200ItemSummarizerType0):
 88            summarizer = self.summarizer.to_dict()
 89
 90        else:
 91            summarizer = self.summarizer.to_dict()
 92
 93
 94
 95        status = self.status.value
 96
 97        id = self.id
 98        assay_id = self.assay_id
 99        pipeline_id = self.pipeline_id
100        warning_threshold = self.warning_threshold
101        bin_index = self.bin_index
102        created_at: Union[Unset, None, str] = UNSET
103        if not isinstance(self.created_at, Unset):
104            created_at = self.created_at.isoformat() if self.created_at else None
105
106
107        field_dict: Dict[str, Any] = {}
108        field_dict.update(self.additional_properties)
109        field_dict.update({
110            "window_start": window_start,
111            "analyzed_at": analyzed_at,
112            "elapsed_millis": elapsed_millis,
113            "iopath": iopath,
114            "baseline_summary": baseline_summary,
115            "window_summary": window_summary,
116            "alert_threshold": alert_threshold,
117            "score": score,
118            "scores": scores,
119            "summarizer": summarizer,
120            "status": status,
121        })
122        if id is not UNSET:
123            field_dict["id"] = id
124        if assay_id is not UNSET:
125            field_dict["assay_id"] = assay_id
126        if pipeline_id is not UNSET:
127            field_dict["pipeline_id"] = pipeline_id
128        if warning_threshold is not UNSET:
129            field_dict["warning_threshold"] = warning_threshold
130        if bin_index is not UNSET:
131            field_dict["bin_index"] = bin_index
132        if created_at is not UNSET:
133            field_dict["created_at"] = created_at
134
135        return field_dict
136
137
138
139    @classmethod
140    def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
141        d = src_dict.copy()
142        window_start = isoparse(d.pop("window_start"))
143
144
145
146
147        analyzed_at = isoparse(d.pop("analyzed_at"))
148
149
150
151
152        elapsed_millis = d.pop("elapsed_millis")
153
154        iopath = d.pop("iopath")
155
156        baseline_summary = AssaysGetResultsResponse200ItemBaselineSummary.from_dict(d.pop("baseline_summary"))
157
158
159
160
161        window_summary = AssaysGetResultsResponse200ItemWindowSummary.from_dict(d.pop("window_summary"))
162
163
164
165
166        alert_threshold = d.pop("alert_threshold")
167
168        score = d.pop("score")
169
170        scores = cast(List[float], d.pop("scores"))
171
172
173        def _parse_summarizer(data: object) -> Union[AssaysGetResultsResponse200ItemSummarizerType0, AssaysGetResultsResponse200ItemSummarizerType1]:
174            try:
175                if not isinstance(data, dict):
176                    raise TypeError()
177                summarizer_type_0 = AssaysGetResultsResponse200ItemSummarizerType0.from_dict(data)
178
179
180
181                return summarizer_type_0
182            except: # noqa: E722
183                pass
184            if not isinstance(data, dict):
185                raise TypeError()
186            summarizer_type_1 = AssaysGetResultsResponse200ItemSummarizerType1.from_dict(data)
187
188
189
190            return summarizer_type_1
191
192        summarizer = _parse_summarizer(d.pop("summarizer"))
193
194
195        status = AssaysGetResultsResponse200ItemStatus(d.pop("status"))
196
197
198
199
200        id = d.pop("id", UNSET)
201
202        assay_id = d.pop("assay_id", UNSET)
203
204        pipeline_id = d.pop("pipeline_id", UNSET)
205
206        warning_threshold = d.pop("warning_threshold", UNSET)
207
208        bin_index = d.pop("bin_index", UNSET)
209
210        _created_at = d.pop("created_at", UNSET)
211        created_at: Union[Unset, None, datetime.datetime]
212        if _created_at is None:
213            created_at = None
214        elif isinstance(_created_at,  Unset):
215            created_at = UNSET
216        else:
217            created_at = isoparse(_created_at)
218
219
220
221
222        assays_get_results_response_200_item = cls(
223            window_start=window_start,
224            analyzed_at=analyzed_at,
225            elapsed_millis=elapsed_millis,
226            iopath=iopath,
227            baseline_summary=baseline_summary,
228            window_summary=window_summary,
229            alert_threshold=alert_threshold,
230            score=score,
231            scores=scores,
232            summarizer=summarizer,
233            status=status,
234            id=id,
235            assay_id=assay_id,
236            pipeline_id=pipeline_id,
237            warning_threshold=warning_threshold,
238            bin_index=bin_index,
239            created_at=created_at,
240        )
241
242        assays_get_results_response_200_item.additional_properties = d
243        return assays_get_results_response_200_item
244
245    @property
246    def additional_keys(self) -> List[str]:
247        return list(self.additional_properties.keys())
248
249    def __getitem__(self, key: str) -> Any:
250        return self.additional_properties[key]
251
252    def __setitem__(self, key: str, value: Any) -> None:
253        self.additional_properties[key] = value
254
255    def __delitem__(self, key: str) -> None:
256        del self.additional_properties[key]
257
258    def __contains__(self, key: str) -> bool:
259        return key in self.additional_properties

Attributes: window_start (datetime.datetime): analyzed_at (datetime.datetime): elapsed_millis (int): iopath (str): baseline_summary (AssaysGetResultsResponse200ItemBaselineSummary): Result from summarizing one sample collection. window_summary (AssaysGetResultsResponse200ItemWindowSummary): Result from summarizing one sample collection. alert_threshold (float): score (float): scores (List[float]): summarizer (Union[AssaysGetResultsResponse200ItemSummarizerType0, AssaysGetResultsResponse200ItemSummarizerType1]): status (AssaysGetResultsResponse200ItemStatus): id (Union[Unset, None, int]): assay_id (Union[Unset, None, int]): pipeline_id (Union[Unset, None, int]): warning_threshold (Union[Unset, None, float]): bin_index (Union[Unset, None, int]): created_at (Union[Unset, None, datetime.datetime]):

AssaysGetResultsResponse200Item( window_start: datetime.datetime, analyzed_at: datetime.datetime, elapsed_millis: int, iopath: str, baseline_summary: wallaroo.wallaroo_ml_ops_api_client.models.assays_get_results_response_200_item_baseline_summary.AssaysGetResultsResponse200ItemBaselineSummary, window_summary: wallaroo.wallaroo_ml_ops_api_client.models.assays_get_results_response_200_item_window_summary.AssaysGetResultsResponse200ItemWindowSummary, alert_threshold: float, score: float, scores: List[float], summarizer: Union[wallaroo.wallaroo_ml_ops_api_client.models.assays_get_results_response_200_item_summarizer_type_0.AssaysGetResultsResponse200ItemSummarizerType0, wallaroo.wallaroo_ml_ops_api_client.models.assays_get_results_response_200_item_summarizer_type_1.AssaysGetResultsResponse200ItemSummarizerType1], status: wallaroo.wallaroo_ml_ops_api_client.models.assays_get_results_response_200_item_status.AssaysGetResultsResponse200ItemStatus, id: Union[wallaroo.wallaroo_ml_ops_api_client.types.Unset, NoneType, int] = <wallaroo.wallaroo_ml_ops_api_client.types.Unset object>, assay_id: Union[wallaroo.wallaroo_ml_ops_api_client.types.Unset, NoneType, int] = <wallaroo.wallaroo_ml_ops_api_client.types.Unset object>, pipeline_id: Union[wallaroo.wallaroo_ml_ops_api_client.types.Unset, NoneType, int] = <wallaroo.wallaroo_ml_ops_api_client.types.Unset object>, warning_threshold: Union[wallaroo.wallaroo_ml_ops_api_client.types.Unset, NoneType, float] = <wallaroo.wallaroo_ml_ops_api_client.types.Unset object>, bin_index: Union[wallaroo.wallaroo_ml_ops_api_client.types.Unset, NoneType, int] = <wallaroo.wallaroo_ml_ops_api_client.types.Unset object>, created_at: Union[wallaroo.wallaroo_ml_ops_api_client.types.Unset, NoneType, datetime.datetime] = <wallaroo.wallaroo_ml_ops_api_client.types.Unset object>)
 2def __init__(self, window_start, analyzed_at, elapsed_millis, iopath, baseline_summary, window_summary, alert_threshold, score, scores, summarizer, status, id=attr_dict['id'].default, assay_id=attr_dict['assay_id'].default, pipeline_id=attr_dict['pipeline_id'].default, warning_threshold=attr_dict['warning_threshold'].default, bin_index=attr_dict['bin_index'].default, created_at=attr_dict['created_at'].default):
 3    self.window_start = window_start
 4    self.analyzed_at = analyzed_at
 5    self.elapsed_millis = elapsed_millis
 6    self.iopath = iopath
 7    self.baseline_summary = baseline_summary
 8    self.window_summary = window_summary
 9    self.alert_threshold = alert_threshold
10    self.score = score
11    self.scores = scores
12    self.summarizer = summarizer
13    self.status = status
14    self.id = id
15    self.assay_id = assay_id
16    self.pipeline_id = pipeline_id
17    self.warning_threshold = warning_threshold
18    self.bin_index = bin_index
19    self.created_at = created_at
20    self.additional_properties = __attr_factory_additional_properties()

Method generated by attrs for class AssaysGetResultsResponse200Item.

def to_dict(self) -> Dict[str, Any]:
 67    def to_dict(self) -> Dict[str, Any]:
 68        window_start = self.window_start.isoformat()
 69
 70        analyzed_at = self.analyzed_at.isoformat()
 71
 72        elapsed_millis = self.elapsed_millis
 73        iopath = self.iopath
 74        baseline_summary = self.baseline_summary.to_dict()
 75
 76        window_summary = self.window_summary.to_dict()
 77
 78        alert_threshold = self.alert_threshold
 79        score = self.score
 80        scores = self.scores
 81
 82
 83
 84
 85        summarizer: Dict[str, Any]
 86
 87        if isinstance(self.summarizer, AssaysGetResultsResponse200ItemSummarizerType0):
 88            summarizer = self.summarizer.to_dict()
 89
 90        else:
 91            summarizer = self.summarizer.to_dict()
 92
 93
 94
 95        status = self.status.value
 96
 97        id = self.id
 98        assay_id = self.assay_id
 99        pipeline_id = self.pipeline_id
100        warning_threshold = self.warning_threshold
101        bin_index = self.bin_index
102        created_at: Union[Unset, None, str] = UNSET
103        if not isinstance(self.created_at, Unset):
104            created_at = self.created_at.isoformat() if self.created_at else None
105
106
107        field_dict: Dict[str, Any] = {}
108        field_dict.update(self.additional_properties)
109        field_dict.update({
110            "window_start": window_start,
111            "analyzed_at": analyzed_at,
112            "elapsed_millis": elapsed_millis,
113            "iopath": iopath,
114            "baseline_summary": baseline_summary,
115            "window_summary": window_summary,
116            "alert_threshold": alert_threshold,
117            "score": score,
118            "scores": scores,
119            "summarizer": summarizer,
120            "status": status,
121        })
122        if id is not UNSET:
123            field_dict["id"] = id
124        if assay_id is not UNSET:
125            field_dict["assay_id"] = assay_id
126        if pipeline_id is not UNSET:
127            field_dict["pipeline_id"] = pipeline_id
128        if warning_threshold is not UNSET:
129            field_dict["warning_threshold"] = warning_threshold
130        if bin_index is not UNSET:
131            field_dict["bin_index"] = bin_index
132        if created_at is not UNSET:
133            field_dict["created_at"] = created_at
134
135        return field_dict
@classmethod
def from_dict(cls: Type[~T], src_dict: Dict[str, Any]) -> ~T:
139    @classmethod
140    def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
141        d = src_dict.copy()
142        window_start = isoparse(d.pop("window_start"))
143
144
145
146
147        analyzed_at = isoparse(d.pop("analyzed_at"))
148
149
150
151
152        elapsed_millis = d.pop("elapsed_millis")
153
154        iopath = d.pop("iopath")
155
156        baseline_summary = AssaysGetResultsResponse200ItemBaselineSummary.from_dict(d.pop("baseline_summary"))
157
158
159
160
161        window_summary = AssaysGetResultsResponse200ItemWindowSummary.from_dict(d.pop("window_summary"))
162
163
164
165
166        alert_threshold = d.pop("alert_threshold")
167
168        score = d.pop("score")
169
170        scores = cast(List[float], d.pop("scores"))
171
172
173        def _parse_summarizer(data: object) -> Union[AssaysGetResultsResponse200ItemSummarizerType0, AssaysGetResultsResponse200ItemSummarizerType1]:
174            try:
175                if not isinstance(data, dict):
176                    raise TypeError()
177                summarizer_type_0 = AssaysGetResultsResponse200ItemSummarizerType0.from_dict(data)
178
179
180
181                return summarizer_type_0
182            except: # noqa: E722
183                pass
184            if not isinstance(data, dict):
185                raise TypeError()
186            summarizer_type_1 = AssaysGetResultsResponse200ItemSummarizerType1.from_dict(data)
187
188
189
190            return summarizer_type_1
191
192        summarizer = _parse_summarizer(d.pop("summarizer"))
193
194
195        status = AssaysGetResultsResponse200ItemStatus(d.pop("status"))
196
197
198
199
200        id = d.pop("id", UNSET)
201
202        assay_id = d.pop("assay_id", UNSET)
203
204        pipeline_id = d.pop("pipeline_id", UNSET)
205
206        warning_threshold = d.pop("warning_threshold", UNSET)
207
208        bin_index = d.pop("bin_index", UNSET)
209
210        _created_at = d.pop("created_at", UNSET)
211        created_at: Union[Unset, None, datetime.datetime]
212        if _created_at is None:
213            created_at = None
214        elif isinstance(_created_at,  Unset):
215            created_at = UNSET
216        else:
217            created_at = isoparse(_created_at)
218
219
220
221
222        assays_get_results_response_200_item = cls(
223            window_start=window_start,
224            analyzed_at=analyzed_at,
225            elapsed_millis=elapsed_millis,
226            iopath=iopath,
227            baseline_summary=baseline_summary,
228            window_summary=window_summary,
229            alert_threshold=alert_threshold,
230            score=score,
231            scores=scores,
232            summarizer=summarizer,
233            status=status,
234            id=id,
235            assay_id=assay_id,
236            pipeline_id=pipeline_id,
237            warning_threshold=warning_threshold,
238            bin_index=bin_index,
239            created_at=created_at,
240        )
241
242        assays_get_results_response_200_item.additional_properties = d
243        return assays_get_results_response_200_item
additional_keys: List[str]