1212from uuid import UUID
1313
1414from pydantic import BaseModel , Field , constr
15+ from pydantic .networks import AnyUrl
1516
1617from .basic_regex import UUID_RE
18+ from .generics import ListModel
1719
1820
1921# /
@@ -24,11 +26,6 @@ class HealthCheck(BaseModel):
2426 version : Optional [str ]
2527
2628
27- class HealthCheckEnveloped (BaseModel ):
28- data : HealthCheck
29- error : Any
30-
31-
3229# /check/{action}:
3330class Fake (BaseModel ):
3431 path_value : str
@@ -49,19 +46,7 @@ class Config:
4946 }
5047
5148
52- class FileLocationArray (BaseModel ):
53- __root__ : List [FileLocation ]
54-
55-
56- class FileLocationEnveloped (BaseModel ):
57- data : FileLocation
58- error : Any
59-
60-
61- class FileLocationArrayEnveloped (BaseModel ):
62- data : FileLocationArray
63- error : Any
64-
49+ FileLocationArray = ListModel [FileLocation ]
6550
6651# /locations/{location_id}/datasets
6752
@@ -101,18 +86,7 @@ class Config:
10186 }
10287
10388
104- class DatasetMetaDataArray (BaseModel ):
105- __root__ : List [DatasetMetaData ] = []
106-
107-
108- class DatasetMetaDataEnveloped (BaseModel ):
109- data : DatasetMetaData
110- error : Any
111-
112-
113- class DatasetMetaDataArrayEnveloped (BaseModel ):
114- data : DatasetMetaDataArray
115- error : Any
89+ DatasetMetaDataArray = ListModel [DatasetMetaData ]
11690
11791
11892# /locations/{location_id}/files/metadata:
@@ -215,26 +189,11 @@ class FileMetaDataArray(BaseModel):
215189 __root__ : List [FileMetaData ] = []
216190
217191
218- class FileMetaDataEnveloped (BaseModel ):
219- data : FileMetaData
220- error : Any
221-
222-
223- class FileMetaDataArrayEnveloped (BaseModel ):
224- data : FileMetaDataArray
225- error : Any
226-
227-
228192# /locations/{location_id}/files/{fileId}
229193
230194
231195class PresignedLink (BaseModel ):
232- link : str
233-
234-
235- class PresignedLinkEnveloped (BaseModel ):
236- data : PresignedLink
237- error : Any
196+ link : AnyUrl
238197
239198
240199# /simcore-s3/
@@ -279,18 +238,3 @@ class Error(BaseModel):
279238 logs : Optional [List [LogMessage ]] = Field (description = "Log messages" )
280239 errors : Optional [List [ErrorItem ]] = Field (description = "Errors metadata" )
281240 status : Optional [int ] = Field (description = "HTTP error code" )
282-
283-
284- class LogMessageEnveloped (BaseModel ):
285- data : LogMessage
286- error : Any
287-
288-
289- class FakeEnveloped (BaseModel ):
290- data : Fake
291- error : Any
292-
293-
294- class ErrorEnveloped (BaseModel ):
295- data : Any
296- error : Error
0 commit comments