across-server-openapi-python 0.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. across/__init__.py +0 -0
  2. across/sdk/__init__.py +0 -0
  3. across/sdk/v1/__init__.py +251 -0
  4. across/sdk/v1/abstract_credential_storage.py +16 -0
  5. across/sdk/v1/api/__init__.py +20 -0
  6. across/sdk/v1/api/auth_api.py +1097 -0
  7. across/sdk/v1/api/filter_api.py +623 -0
  8. across/sdk/v1/api/group_api.py +586 -0
  9. across/sdk/v1/api/group_invite_api.py +1165 -0
  10. across/sdk/v1/api/group_role_api.py +2070 -0
  11. across/sdk/v1/api/instrument_api.py +633 -0
  12. across/sdk/v1/api/internal_api.py +571 -0
  13. across/sdk/v1/api/observation_api.py +940 -0
  14. across/sdk/v1/api/observatory_api.py +670 -0
  15. across/sdk/v1/api/permission_api.py +285 -0
  16. across/sdk/v1/api/role_api.py +552 -0
  17. across/sdk/v1/api/schedule_api.py +1914 -0
  18. across/sdk/v1/api/service_account_api.py +2353 -0
  19. across/sdk/v1/api/telescope_api.py +667 -0
  20. across/sdk/v1/api/tle_api.py +317 -0
  21. across/sdk/v1/api/tools_api.py +812 -0
  22. across/sdk/v1/api/user_api.py +2263 -0
  23. across/sdk/v1/api_client.py +801 -0
  24. across/sdk/v1/api_client_wrapper.py +239 -0
  25. across/sdk/v1/api_response.py +21 -0
  26. across/sdk/v1/configuration.py +605 -0
  27. across/sdk/v1/exceptions.py +216 -0
  28. across/sdk/v1/models/__init__.py +103 -0
  29. across/sdk/v1/models/access_token_response.py +89 -0
  30. across/sdk/v1/models/across_server_routes_v1_group_invite_schemas_group_invite.py +104 -0
  31. across/sdk/v1/models/across_server_routes_v1_group_role_schemas_group_role.py +124 -0
  32. across/sdk/v1/models/across_server_routes_v1_group_role_schemas_service_account.py +106 -0
  33. across/sdk/v1/models/across_server_routes_v1_group_role_schemas_user.py +95 -0
  34. across/sdk/v1/models/across_server_routes_v1_group_schemas_group.py +111 -0
  35. across/sdk/v1/models/across_server_routes_v1_group_schemas_user.py +105 -0
  36. across/sdk/v1/models/across_server_routes_v1_role_schemas_user.py +96 -0
  37. across/sdk/v1/models/across_server_routes_v1_system_service_account_schemas_service_account.py +90 -0
  38. across/sdk/v1/models/across_server_routes_v1_system_service_account_schemas_service_account_secret.py +92 -0
  39. across/sdk/v1/models/across_server_routes_v1_user_schemas_group.py +101 -0
  40. across/sdk/v1/models/across_server_routes_v1_user_schemas_group_invite.py +99 -0
  41. across/sdk/v1/models/across_server_routes_v1_user_schemas_group_role.py +99 -0
  42. across/sdk/v1/models/across_server_routes_v1_user_schemas_user.py +135 -0
  43. across/sdk/v1/models/across_server_routes_v1_user_service_account_schemas_service_account.py +111 -0
  44. across/sdk/v1/models/across_server_routes_v1_user_service_account_schemas_service_account_secret.py +118 -0
  45. across/sdk/v1/models/alt_az_constraint.py +130 -0
  46. across/sdk/v1/models/bandpass.py +149 -0
  47. across/sdk/v1/models/bandpass_type.py +155 -0
  48. across/sdk/v1/models/constrained_date.py +93 -0
  49. across/sdk/v1/models/constraint_reason.py +89 -0
  50. across/sdk/v1/models/constraint_type.py +43 -0
  51. across/sdk/v1/models/coordinate.py +100 -0
  52. across/sdk/v1/models/date_range.py +90 -0
  53. across/sdk/v1/models/depth_unit.py +39 -0
  54. across/sdk/v1/models/earth_limb_constraint.py +124 -0
  55. across/sdk/v1/models/energy_bandpass.py +121 -0
  56. across/sdk/v1/models/energy_unit.py +40 -0
  57. across/sdk/v1/models/ephemeris_type.py +39 -0
  58. across/sdk/v1/models/filter.py +135 -0
  59. across/sdk/v1/models/frequency_bandpass.py +121 -0
  60. across/sdk/v1/models/frequency_unit.py +40 -0
  61. across/sdk/v1/models/grant_type.py +37 -0
  62. across/sdk/v1/models/ground_parameters.py +91 -0
  63. across/sdk/v1/models/group_invite_create.py +87 -0
  64. across/sdk/v1/models/group_invite_group_details.py +94 -0
  65. across/sdk/v1/models/group_read.py +91 -0
  66. across/sdk/v1/models/group_role_create.py +89 -0
  67. across/sdk/v1/models/group_role_read.py +99 -0
  68. across/sdk/v1/models/http_validation_error.py +95 -0
  69. across/sdk/v1/models/id_name_schema.py +96 -0
  70. across/sdk/v1/models/instrument.py +163 -0
  71. across/sdk/v1/models/instrument_constraints_inner.py +237 -0
  72. across/sdk/v1/models/ivoa_obs_category.py +39 -0
  73. across/sdk/v1/models/ivoa_obs_tracking_type.py +38 -0
  74. across/sdk/v1/models/jpl_parameters.py +87 -0
  75. across/sdk/v1/models/moon_angle_constraint.py +124 -0
  76. across/sdk/v1/models/nullable_date_range.py +100 -0
  77. across/sdk/v1/models/observation.py +248 -0
  78. across/sdk/v1/models/observation_create.py +249 -0
  79. across/sdk/v1/models/observation_status.py +40 -0
  80. across/sdk/v1/models/observation_type.py +39 -0
  81. across/sdk/v1/models/observatory.py +145 -0
  82. across/sdk/v1/models/observatory_ephemeris_type.py +96 -0
  83. across/sdk/v1/models/observatory_type.py +37 -0
  84. across/sdk/v1/models/page_observation.py +116 -0
  85. across/sdk/v1/models/page_schedule.py +116 -0
  86. across/sdk/v1/models/parameters.py +164 -0
  87. across/sdk/v1/models/permission.py +89 -0
  88. across/sdk/v1/models/point.py +89 -0
  89. across/sdk/v1/models/role.py +100 -0
  90. across/sdk/v1/models/role_base.py +89 -0
  91. across/sdk/v1/models/saa_polygon_constraint.py +101 -0
  92. across/sdk/v1/models/schedule.py +144 -0
  93. across/sdk/v1/models/schedule_cadence.py +99 -0
  94. across/sdk/v1/models/schedule_create.py +123 -0
  95. across/sdk/v1/models/schedule_create_many.py +97 -0
  96. across/sdk/v1/models/schedule_fidelity.py +37 -0
  97. across/sdk/v1/models/schedule_status.py +38 -0
  98. across/sdk/v1/models/service_account_create.py +101 -0
  99. across/sdk/v1/models/service_account_secret.py +103 -0
  100. across/sdk/v1/models/service_account_update.py +106 -0
  101. across/sdk/v1/models/spice_parameters.py +89 -0
  102. across/sdk/v1/models/sun_angle_constraint.py +124 -0
  103. across/sdk/v1/models/system_service_account.py +121 -0
  104. across/sdk/v1/models/system_service_account_secret.py +123 -0
  105. across/sdk/v1/models/telescope.py +135 -0
  106. across/sdk/v1/models/telescope_instrument.py +163 -0
  107. across/sdk/v1/models/tle.py +99 -0
  108. across/sdk/v1/models/tle_create.py +94 -0
  109. across/sdk/v1/models/tle_parameters.py +89 -0
  110. across/sdk/v1/models/unit_value.py +94 -0
  111. across/sdk/v1/models/user_create.py +93 -0
  112. across/sdk/v1/models/user_info.py +95 -0
  113. across/sdk/v1/models/user_update.py +106 -0
  114. across/sdk/v1/models/validation_error.py +99 -0
  115. across/sdk/v1/models/validation_error_loc_inner.py +138 -0
  116. across/sdk/v1/models/visibility_result.py +97 -0
  117. across/sdk/v1/models/visibility_type.py +38 -0
  118. across/sdk/v1/models/visibility_window.py +99 -0
  119. across/sdk/v1/models/wavelength_bandpass.py +142 -0
  120. across/sdk/v1/models/wavelength_unit.py +39 -0
  121. across/sdk/v1/models/window.py +96 -0
  122. across/sdk/v1/py.typed +0 -0
  123. across/sdk/v1/rest.py +258 -0
  124. across_server_openapi_python-0.0.1.dist-info/METADATA +326 -0
  125. across_server_openapi_python-0.0.1.dist-info/RECORD +128 -0
  126. across_server_openapi_python-0.0.1.dist-info/WHEEL +5 -0
  127. across_server_openapi_python-0.0.1.dist-info/licenses/LICENSE +42 -0
  128. across_server_openapi_python-0.0.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,670 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ACROSS Server
5
+
6
+ Server providing tools and utilities for various NASA missions to aid in coordination of large observation efforts.
7
+
8
+ The version of the OpenAPI document: 0.3.2
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from datetime import datetime
20
+ from pydantic import StrictStr
21
+ from typing import List, Optional
22
+ from across.sdk.v1.models.ephemeris_type import EphemerisType
23
+ from across.sdk.v1.models.observatory import Observatory
24
+ from across.sdk.v1.models.observatory_type import ObservatoryType
25
+
26
+ from across.sdk.v1.api_client import ApiClient, RequestSerialized
27
+ from across.sdk.v1.api_response import ApiResponse
28
+ from across.sdk.v1.rest import RESTResponseType
29
+
30
+
31
+ class ObservatoryApi:
32
+ """NOTE: This class is auto generated by OpenAPI Generator
33
+ Ref: https://openapi-generator.tech
34
+
35
+ Do not edit the class manually.
36
+ """
37
+
38
+ def __init__(self, api_client=None) -> None:
39
+ if api_client is None:
40
+ api_client = ApiClient.get_default()
41
+ self.api_client = api_client
42
+
43
+
44
+ @validate_call
45
+ def get_observatories(
46
+ self,
47
+ name: Optional[StrictStr] = None,
48
+ type: Optional[ObservatoryType] = None,
49
+ telescope_name: Optional[StrictStr] = None,
50
+ telescope_id: Optional[StrictStr] = None,
51
+ ephemeris_type: Optional[List[EphemerisType]] = None,
52
+ created_on: Optional[datetime] = None,
53
+ _request_timeout: Union[
54
+ None,
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Tuple[
57
+ Annotated[StrictFloat, Field(gt=0)],
58
+ Annotated[StrictFloat, Field(gt=0)]
59
+ ]
60
+ ] = None,
61
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
62
+ _content_type: Optional[StrictStr] = None,
63
+ _headers: Optional[Dict[StrictStr, Any]] = None,
64
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
65
+ ) -> List[Observatory]:
66
+ """Read observatory(s)
67
+
68
+ Read many observatories based on query params
69
+
70
+ :param name:
71
+ :type name: str
72
+ :param type:
73
+ :type type: ObservatoryType
74
+ :param telescope_name:
75
+ :type telescope_name: str
76
+ :param telescope_id:
77
+ :type telescope_id: str
78
+ :param ephemeris_type:
79
+ :type ephemeris_type: List[EphemerisType]
80
+ :param created_on:
81
+ :type created_on: datetime
82
+ :param _request_timeout: timeout setting for this request. If one
83
+ number provided, it will be total request
84
+ timeout. It can also be a pair (tuple) of
85
+ (connection, read) timeouts.
86
+ :type _request_timeout: int, tuple(int, int), optional
87
+ :param _request_auth: set to override the auth_settings for an a single
88
+ request; this effectively ignores the
89
+ authentication in the spec for a single request.
90
+ :type _request_auth: dict, optional
91
+ :param _content_type: force content-type for the request.
92
+ :type _content_type: str, Optional
93
+ :param _headers: set to override the headers for a single
94
+ request; this effectively ignores the headers
95
+ in the spec for a single request.
96
+ :type _headers: dict, optional
97
+ :param _host_index: set to override the host_index for a single
98
+ request; this effectively ignores the host_index
99
+ in the spec for a single request.
100
+ :type _host_index: int, optional
101
+ :return: Returns the result object.
102
+ """ # noqa: E501
103
+
104
+ _param = self._get_observatories_serialize(
105
+ name=name,
106
+ type=type,
107
+ telescope_name=telescope_name,
108
+ telescope_id=telescope_id,
109
+ ephemeris_type=ephemeris_type,
110
+ created_on=created_on,
111
+ _request_auth=_request_auth,
112
+ _content_type=_content_type,
113
+ _headers=_headers,
114
+ _host_index=_host_index
115
+ )
116
+
117
+ _response_types_map: Dict[str, Optional[str]] = {
118
+ '200': "List[Observatory]",
119
+ '404': None,
120
+ '422': "HTTPValidationError",
121
+ }
122
+ response_data = self.api_client.call_api(
123
+ *_param,
124
+ _request_timeout=_request_timeout
125
+ )
126
+ response_data.read()
127
+ return self.api_client.response_deserialize(
128
+ response_data=response_data,
129
+ response_types_map=_response_types_map,
130
+ ).data
131
+
132
+
133
+ @validate_call
134
+ def get_observatories_with_http_info(
135
+ self,
136
+ name: Optional[StrictStr] = None,
137
+ type: Optional[ObservatoryType] = None,
138
+ telescope_name: Optional[StrictStr] = None,
139
+ telescope_id: Optional[StrictStr] = None,
140
+ ephemeris_type: Optional[List[EphemerisType]] = None,
141
+ created_on: Optional[datetime] = None,
142
+ _request_timeout: Union[
143
+ None,
144
+ Annotated[StrictFloat, Field(gt=0)],
145
+ Tuple[
146
+ Annotated[StrictFloat, Field(gt=0)],
147
+ Annotated[StrictFloat, Field(gt=0)]
148
+ ]
149
+ ] = None,
150
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
151
+ _content_type: Optional[StrictStr] = None,
152
+ _headers: Optional[Dict[StrictStr, Any]] = None,
153
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
154
+ ) -> ApiResponse[List[Observatory]]:
155
+ """Read observatory(s)
156
+
157
+ Read many observatories based on query params
158
+
159
+ :param name:
160
+ :type name: str
161
+ :param type:
162
+ :type type: ObservatoryType
163
+ :param telescope_name:
164
+ :type telescope_name: str
165
+ :param telescope_id:
166
+ :type telescope_id: str
167
+ :param ephemeris_type:
168
+ :type ephemeris_type: List[EphemerisType]
169
+ :param created_on:
170
+ :type created_on: datetime
171
+ :param _request_timeout: timeout setting for this request. If one
172
+ number provided, it will be total request
173
+ timeout. It can also be a pair (tuple) of
174
+ (connection, read) timeouts.
175
+ :type _request_timeout: int, tuple(int, int), optional
176
+ :param _request_auth: set to override the auth_settings for an a single
177
+ request; this effectively ignores the
178
+ authentication in the spec for a single request.
179
+ :type _request_auth: dict, optional
180
+ :param _content_type: force content-type for the request.
181
+ :type _content_type: str, Optional
182
+ :param _headers: set to override the headers for a single
183
+ request; this effectively ignores the headers
184
+ in the spec for a single request.
185
+ :type _headers: dict, optional
186
+ :param _host_index: set to override the host_index for a single
187
+ request; this effectively ignores the host_index
188
+ in the spec for a single request.
189
+ :type _host_index: int, optional
190
+ :return: Returns the result object.
191
+ """ # noqa: E501
192
+
193
+ _param = self._get_observatories_serialize(
194
+ name=name,
195
+ type=type,
196
+ telescope_name=telescope_name,
197
+ telescope_id=telescope_id,
198
+ ephemeris_type=ephemeris_type,
199
+ created_on=created_on,
200
+ _request_auth=_request_auth,
201
+ _content_type=_content_type,
202
+ _headers=_headers,
203
+ _host_index=_host_index
204
+ )
205
+
206
+ _response_types_map: Dict[str, Optional[str]] = {
207
+ '200': "List[Observatory]",
208
+ '404': None,
209
+ '422': "HTTPValidationError",
210
+ }
211
+ response_data = self.api_client.call_api(
212
+ *_param,
213
+ _request_timeout=_request_timeout
214
+ )
215
+ response_data.read()
216
+ return self.api_client.response_deserialize(
217
+ response_data=response_data,
218
+ response_types_map=_response_types_map,
219
+ )
220
+
221
+
222
+ @validate_call
223
+ def get_observatories_without_preload_content(
224
+ self,
225
+ name: Optional[StrictStr] = None,
226
+ type: Optional[ObservatoryType] = None,
227
+ telescope_name: Optional[StrictStr] = None,
228
+ telescope_id: Optional[StrictStr] = None,
229
+ ephemeris_type: Optional[List[EphemerisType]] = None,
230
+ created_on: Optional[datetime] = None,
231
+ _request_timeout: Union[
232
+ None,
233
+ Annotated[StrictFloat, Field(gt=0)],
234
+ Tuple[
235
+ Annotated[StrictFloat, Field(gt=0)],
236
+ Annotated[StrictFloat, Field(gt=0)]
237
+ ]
238
+ ] = None,
239
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
240
+ _content_type: Optional[StrictStr] = None,
241
+ _headers: Optional[Dict[StrictStr, Any]] = None,
242
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
243
+ ) -> RESTResponseType:
244
+ """Read observatory(s)
245
+
246
+ Read many observatories based on query params
247
+
248
+ :param name:
249
+ :type name: str
250
+ :param type:
251
+ :type type: ObservatoryType
252
+ :param telescope_name:
253
+ :type telescope_name: str
254
+ :param telescope_id:
255
+ :type telescope_id: str
256
+ :param ephemeris_type:
257
+ :type ephemeris_type: List[EphemerisType]
258
+ :param created_on:
259
+ :type created_on: datetime
260
+ :param _request_timeout: timeout setting for this request. If one
261
+ number provided, it will be total request
262
+ timeout. It can also be a pair (tuple) of
263
+ (connection, read) timeouts.
264
+ :type _request_timeout: int, tuple(int, int), optional
265
+ :param _request_auth: set to override the auth_settings for an a single
266
+ request; this effectively ignores the
267
+ authentication in the spec for a single request.
268
+ :type _request_auth: dict, optional
269
+ :param _content_type: force content-type for the request.
270
+ :type _content_type: str, Optional
271
+ :param _headers: set to override the headers for a single
272
+ request; this effectively ignores the headers
273
+ in the spec for a single request.
274
+ :type _headers: dict, optional
275
+ :param _host_index: set to override the host_index for a single
276
+ request; this effectively ignores the host_index
277
+ in the spec for a single request.
278
+ :type _host_index: int, optional
279
+ :return: Returns the result object.
280
+ """ # noqa: E501
281
+
282
+ _param = self._get_observatories_serialize(
283
+ name=name,
284
+ type=type,
285
+ telescope_name=telescope_name,
286
+ telescope_id=telescope_id,
287
+ ephemeris_type=ephemeris_type,
288
+ created_on=created_on,
289
+ _request_auth=_request_auth,
290
+ _content_type=_content_type,
291
+ _headers=_headers,
292
+ _host_index=_host_index
293
+ )
294
+
295
+ _response_types_map: Dict[str, Optional[str]] = {
296
+ '200': "List[Observatory]",
297
+ '404': None,
298
+ '422': "HTTPValidationError",
299
+ }
300
+ response_data = self.api_client.call_api(
301
+ *_param,
302
+ _request_timeout=_request_timeout
303
+ )
304
+ return response_data.response
305
+
306
+
307
+ def _get_observatories_serialize(
308
+ self,
309
+ name,
310
+ type,
311
+ telescope_name,
312
+ telescope_id,
313
+ ephemeris_type,
314
+ created_on,
315
+ _request_auth,
316
+ _content_type,
317
+ _headers,
318
+ _host_index,
319
+ ) -> RequestSerialized:
320
+
321
+ _host = None
322
+
323
+ _collection_formats: Dict[str, str] = {
324
+ 'ephemeris_type': 'multi',
325
+ }
326
+
327
+ _path_params: Dict[str, str] = {}
328
+ _query_params: List[Tuple[str, str]] = []
329
+ _header_params: Dict[str, Optional[str]] = _headers or {}
330
+ _form_params: List[Tuple[str, str]] = []
331
+ _files: Dict[
332
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
333
+ ] = {}
334
+ _body_params: Optional[bytes] = None
335
+
336
+ # process the path parameters
337
+ # process the query parameters
338
+ if name is not None:
339
+
340
+ _query_params.append(('name', name))
341
+
342
+ if type is not None:
343
+
344
+ _query_params.append(('type', type.value))
345
+
346
+ if telescope_name is not None:
347
+
348
+ _query_params.append(('telescope_name', telescope_name))
349
+
350
+ if telescope_id is not None:
351
+
352
+ _query_params.append(('telescope_id', telescope_id))
353
+
354
+ if ephemeris_type is not None:
355
+
356
+ _query_params.append(('ephemeris_type', ephemeris_type))
357
+
358
+ if created_on is not None:
359
+ if isinstance(created_on, datetime):
360
+ _query_params.append(
361
+ (
362
+ 'created_on',
363
+ created_on.strftime(
364
+ self.api_client.configuration.datetime_format
365
+ )
366
+ )
367
+ )
368
+ else:
369
+ _query_params.append(('created_on', created_on))
370
+
371
+ # process the header parameters
372
+ # process the form parameters
373
+ # process the body parameter
374
+
375
+
376
+ # set the HTTP header `Accept`
377
+ if 'Accept' not in _header_params:
378
+ _header_params['Accept'] = self.api_client.select_header_accept(
379
+ [
380
+ 'application/json'
381
+ ]
382
+ )
383
+
384
+
385
+ # authentication setting
386
+ _auth_settings: List[str] = [
387
+ ]
388
+
389
+ return self.api_client.param_serialize(
390
+ method='GET',
391
+ resource_path='/observatory/',
392
+ path_params=_path_params,
393
+ query_params=_query_params,
394
+ header_params=_header_params,
395
+ body=_body_params,
396
+ post_params=_form_params,
397
+ files=_files,
398
+ auth_settings=_auth_settings,
399
+ collection_formats=_collection_formats,
400
+ _host=_host,
401
+ _request_auth=_request_auth
402
+ )
403
+
404
+
405
+
406
+
407
+ @validate_call
408
+ def get_observatory(
409
+ self,
410
+ observatory_id: StrictStr,
411
+ _request_timeout: Union[
412
+ None,
413
+ Annotated[StrictFloat, Field(gt=0)],
414
+ Tuple[
415
+ Annotated[StrictFloat, Field(gt=0)],
416
+ Annotated[StrictFloat, Field(gt=0)]
417
+ ]
418
+ ] = None,
419
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
420
+ _content_type: Optional[StrictStr] = None,
421
+ _headers: Optional[Dict[StrictStr, Any]] = None,
422
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
423
+ ) -> Observatory:
424
+ """Read an observatory
425
+
426
+ Read a observatory by a observatory ID.
427
+
428
+ :param observatory_id: (required)
429
+ :type observatory_id: str
430
+ :param _request_timeout: timeout setting for this request. If one
431
+ number provided, it will be total request
432
+ timeout. It can also be a pair (tuple) of
433
+ (connection, read) timeouts.
434
+ :type _request_timeout: int, tuple(int, int), optional
435
+ :param _request_auth: set to override the auth_settings for an a single
436
+ request; this effectively ignores the
437
+ authentication in the spec for a single request.
438
+ :type _request_auth: dict, optional
439
+ :param _content_type: force content-type for the request.
440
+ :type _content_type: str, Optional
441
+ :param _headers: set to override the headers for a single
442
+ request; this effectively ignores the headers
443
+ in the spec for a single request.
444
+ :type _headers: dict, optional
445
+ :param _host_index: set to override the host_index for a single
446
+ request; this effectively ignores the host_index
447
+ in the spec for a single request.
448
+ :type _host_index: int, optional
449
+ :return: Returns the result object.
450
+ """ # noqa: E501
451
+
452
+ _param = self._get_observatory_serialize(
453
+ observatory_id=observatory_id,
454
+ _request_auth=_request_auth,
455
+ _content_type=_content_type,
456
+ _headers=_headers,
457
+ _host_index=_host_index
458
+ )
459
+
460
+ _response_types_map: Dict[str, Optional[str]] = {
461
+ '200': "Observatory",
462
+ '404': None,
463
+ '422': "HTTPValidationError",
464
+ }
465
+ response_data = self.api_client.call_api(
466
+ *_param,
467
+ _request_timeout=_request_timeout
468
+ )
469
+ response_data.read()
470
+ return self.api_client.response_deserialize(
471
+ response_data=response_data,
472
+ response_types_map=_response_types_map,
473
+ ).data
474
+
475
+
476
+ @validate_call
477
+ def get_observatory_with_http_info(
478
+ self,
479
+ observatory_id: StrictStr,
480
+ _request_timeout: Union[
481
+ None,
482
+ Annotated[StrictFloat, Field(gt=0)],
483
+ Tuple[
484
+ Annotated[StrictFloat, Field(gt=0)],
485
+ Annotated[StrictFloat, Field(gt=0)]
486
+ ]
487
+ ] = None,
488
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
489
+ _content_type: Optional[StrictStr] = None,
490
+ _headers: Optional[Dict[StrictStr, Any]] = None,
491
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
492
+ ) -> ApiResponse[Observatory]:
493
+ """Read an observatory
494
+
495
+ Read a observatory by a observatory ID.
496
+
497
+ :param observatory_id: (required)
498
+ :type observatory_id: str
499
+ :param _request_timeout: timeout setting for this request. If one
500
+ number provided, it will be total request
501
+ timeout. It can also be a pair (tuple) of
502
+ (connection, read) timeouts.
503
+ :type _request_timeout: int, tuple(int, int), optional
504
+ :param _request_auth: set to override the auth_settings for an a single
505
+ request; this effectively ignores the
506
+ authentication in the spec for a single request.
507
+ :type _request_auth: dict, optional
508
+ :param _content_type: force content-type for the request.
509
+ :type _content_type: str, Optional
510
+ :param _headers: set to override the headers for a single
511
+ request; this effectively ignores the headers
512
+ in the spec for a single request.
513
+ :type _headers: dict, optional
514
+ :param _host_index: set to override the host_index for a single
515
+ request; this effectively ignores the host_index
516
+ in the spec for a single request.
517
+ :type _host_index: int, optional
518
+ :return: Returns the result object.
519
+ """ # noqa: E501
520
+
521
+ _param = self._get_observatory_serialize(
522
+ observatory_id=observatory_id,
523
+ _request_auth=_request_auth,
524
+ _content_type=_content_type,
525
+ _headers=_headers,
526
+ _host_index=_host_index
527
+ )
528
+
529
+ _response_types_map: Dict[str, Optional[str]] = {
530
+ '200': "Observatory",
531
+ '404': None,
532
+ '422': "HTTPValidationError",
533
+ }
534
+ response_data = self.api_client.call_api(
535
+ *_param,
536
+ _request_timeout=_request_timeout
537
+ )
538
+ response_data.read()
539
+ return self.api_client.response_deserialize(
540
+ response_data=response_data,
541
+ response_types_map=_response_types_map,
542
+ )
543
+
544
+
545
+ @validate_call
546
+ def get_observatory_without_preload_content(
547
+ self,
548
+ observatory_id: StrictStr,
549
+ _request_timeout: Union[
550
+ None,
551
+ Annotated[StrictFloat, Field(gt=0)],
552
+ Tuple[
553
+ Annotated[StrictFloat, Field(gt=0)],
554
+ Annotated[StrictFloat, Field(gt=0)]
555
+ ]
556
+ ] = None,
557
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
558
+ _content_type: Optional[StrictStr] = None,
559
+ _headers: Optional[Dict[StrictStr, Any]] = None,
560
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
561
+ ) -> RESTResponseType:
562
+ """Read an observatory
563
+
564
+ Read a observatory by a observatory ID.
565
+
566
+ :param observatory_id: (required)
567
+ :type observatory_id: str
568
+ :param _request_timeout: timeout setting for this request. If one
569
+ number provided, it will be total request
570
+ timeout. It can also be a pair (tuple) of
571
+ (connection, read) timeouts.
572
+ :type _request_timeout: int, tuple(int, int), optional
573
+ :param _request_auth: set to override the auth_settings for an a single
574
+ request; this effectively ignores the
575
+ authentication in the spec for a single request.
576
+ :type _request_auth: dict, optional
577
+ :param _content_type: force content-type for the request.
578
+ :type _content_type: str, Optional
579
+ :param _headers: set to override the headers for a single
580
+ request; this effectively ignores the headers
581
+ in the spec for a single request.
582
+ :type _headers: dict, optional
583
+ :param _host_index: set to override the host_index for a single
584
+ request; this effectively ignores the host_index
585
+ in the spec for a single request.
586
+ :type _host_index: int, optional
587
+ :return: Returns the result object.
588
+ """ # noqa: E501
589
+
590
+ _param = self._get_observatory_serialize(
591
+ observatory_id=observatory_id,
592
+ _request_auth=_request_auth,
593
+ _content_type=_content_type,
594
+ _headers=_headers,
595
+ _host_index=_host_index
596
+ )
597
+
598
+ _response_types_map: Dict[str, Optional[str]] = {
599
+ '200': "Observatory",
600
+ '404': None,
601
+ '422': "HTTPValidationError",
602
+ }
603
+ response_data = self.api_client.call_api(
604
+ *_param,
605
+ _request_timeout=_request_timeout
606
+ )
607
+ return response_data.response
608
+
609
+
610
+ def _get_observatory_serialize(
611
+ self,
612
+ observatory_id,
613
+ _request_auth,
614
+ _content_type,
615
+ _headers,
616
+ _host_index,
617
+ ) -> RequestSerialized:
618
+
619
+ _host = None
620
+
621
+ _collection_formats: Dict[str, str] = {
622
+ }
623
+
624
+ _path_params: Dict[str, str] = {}
625
+ _query_params: List[Tuple[str, str]] = []
626
+ _header_params: Dict[str, Optional[str]] = _headers or {}
627
+ _form_params: List[Tuple[str, str]] = []
628
+ _files: Dict[
629
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
630
+ ] = {}
631
+ _body_params: Optional[bytes] = None
632
+
633
+ # process the path parameters
634
+ if observatory_id is not None:
635
+ _path_params['observatory_id'] = observatory_id
636
+ # process the query parameters
637
+ # process the header parameters
638
+ # process the form parameters
639
+ # process the body parameter
640
+
641
+
642
+ # set the HTTP header `Accept`
643
+ if 'Accept' not in _header_params:
644
+ _header_params['Accept'] = self.api_client.select_header_accept(
645
+ [
646
+ 'application/json'
647
+ ]
648
+ )
649
+
650
+
651
+ # authentication setting
652
+ _auth_settings: List[str] = [
653
+ ]
654
+
655
+ return self.api_client.param_serialize(
656
+ method='GET',
657
+ resource_path='/observatory/{observatory_id}',
658
+ path_params=_path_params,
659
+ query_params=_query_params,
660
+ header_params=_header_params,
661
+ body=_body_params,
662
+ post_params=_form_params,
663
+ files=_files,
664
+ auth_settings=_auth_settings,
665
+ collection_formats=_collection_formats,
666
+ _host=_host,
667
+ _request_auth=_request_auth
668
+ )
669
+
670
+