rxfoundry.clients.swifty-api 0.0.680__py3-none-any.whl → 0.1.1005__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 (74) hide show
  1. rxfoundry/clients/swifty_api/__init__.py +37 -3
  2. rxfoundry/clients/swifty_api/api/__init__.py +3 -1
  3. rxfoundry/clients/swifty_api/api/async_api.py +2336 -52
  4. rxfoundry/clients/swifty_api/api/code_api.py +281 -0
  5. rxfoundry/clients/swifty_api/api/default_api.py +318 -0
  6. rxfoundry/clients/swifty_api/api/medication_api.py +647 -51
  7. rxfoundry/clients/swifty_api/api/patient_api.py +1126 -35
  8. rxfoundry/clients/swifty_api/api/pharmacist_api.py +24 -24
  9. rxfoundry/clients/swifty_api/api/pharmacy_api.py +48 -48
  10. rxfoundry/clients/swifty_api/api/prescriber_api.py +24 -24
  11. rxfoundry/clients/swifty_api/api/prescription_api.py +934 -130
  12. rxfoundry/clients/swifty_api/api/task_api.py +1835 -0
  13. rxfoundry/clients/swifty_api/api/tasks_api.py +374 -0
  14. rxfoundry/clients/swifty_api/api/validation_api.py +311 -0
  15. rxfoundry/clients/swifty_api/api/virtual_pharmacy_api.py +262 -0
  16. rxfoundry/clients/swifty_api/api/workflow_api.py +633 -0
  17. rxfoundry/clients/swifty_api/models/__init__.py +34 -2
  18. rxfoundry/clients/swifty_api/models/address.py +11 -10
  19. rxfoundry/clients/swifty_api/models/code_type.py +92 -0
  20. rxfoundry/clients/swifty_api/models/formulary.py +96 -0
  21. rxfoundry/clients/swifty_api/models/insurance.py +96 -0
  22. rxfoundry/clients/swifty_api/models/medication_instruction.py +92 -0
  23. rxfoundry/clients/swifty_api/models/medication_ref.py +100 -0
  24. rxfoundry/clients/swifty_api/models/patient.py +85 -2
  25. rxfoundry/clients/swifty_api/models/patient_activity_data.py +169 -0
  26. rxfoundry/clients/swifty_api/models/patient_activity_message.py +112 -0
  27. rxfoundry/clients/swifty_api/models/patient_activity_notification.py +9 -17
  28. rxfoundry/clients/swifty_api/models/patient_activity_notification_activity_data.py +39 -8
  29. rxfoundry/clients/swifty_api/models/patient_address_activity_notification.py +105 -0
  30. rxfoundry/clients/swifty_api/models/patient_address_data.py +25 -9
  31. rxfoundry/clients/swifty_api/models/patient_allergy.py +92 -0
  32. rxfoundry/clients/swifty_api/models/patient_condition.py +92 -0
  33. rxfoundry/clients/swifty_api/models/patient_data.py +13 -2
  34. rxfoundry/clients/swifty_api/models/patient_external_identifier.py +6 -5
  35. rxfoundry/clients/swifty_api/models/patient_health_profile_data.py +127 -0
  36. rxfoundry/clients/swifty_api/models/patient_insurance.py +106 -0
  37. rxfoundry/clients/swifty_api/models/patient_insurance_data.py +105 -0
  38. rxfoundry/clients/swifty_api/models/patient_medication.py +92 -0
  39. rxfoundry/clients/swifty_api/models/patient_name.py +99 -0
  40. rxfoundry/clients/swifty_api/models/patient_name_data.py +108 -0
  41. rxfoundry/clients/swifty_api/models/patient_phone_number.py +89 -0
  42. rxfoundry/clients/swifty_api/models/patient_phone_number_data.py +98 -0
  43. rxfoundry/clients/swifty_api/models/patient_task.py +115 -0
  44. rxfoundry/clients/swifty_api/models/patient_task_status.py +105 -0
  45. rxfoundry/clients/swifty_api/models/patient_task_type.py +45 -0
  46. rxfoundry/clients/swifty_api/models/prescription.py +35 -30
  47. rxfoundry/clients/swifty_api/models/prescription_change_request.py +24 -36
  48. rxfoundry/clients/swifty_api/models/prescription_change_request_and_response.py +145 -0
  49. rxfoundry/clients/swifty_api/models/prescription_change_request_response.py +134 -0
  50. rxfoundry/clients/swifty_api/models/prescription_data.py +126 -0
  51. rxfoundry/clients/swifty_api/models/prescription_message.py +100 -0
  52. rxfoundry/clients/swifty_api/models/prescription_message_task.py +109 -0
  53. rxfoundry/clients/swifty_api/models/prescription_message_task_status.py +99 -0
  54. rxfoundry/clients/swifty_api/models/prescription_message_task_type.py +43 -0
  55. rxfoundry/clients/swifty_api/models/prescription_message_type.py +53 -0
  56. rxfoundry/clients/swifty_api/models/prescription_patch.py +6 -2
  57. rxfoundry/clients/swifty_api/models/prescription_status_type.py +40 -0
  58. rxfoundry/clients/swifty_api/models/prescription_task.py +14 -12
  59. rxfoundry/clients/swifty_api/models/prescription_task_status.py +6 -2
  60. rxfoundry/clients/swifty_api/models/prescription_task_type.py +42 -0
  61. rxfoundry/clients/swifty_api/models/prescription_transfer_request_and_response.py +145 -0
  62. rxfoundry/clients/swifty_api/models/prescription_transfer_request_response.py +128 -0
  63. rxfoundry/clients/swifty_api/models/status_type.py +92 -0
  64. rxfoundry/clients/swifty_api/models/workflow.py +108 -0
  65. rxfoundry/clients/swifty_api/models/workflow_sub_task.py +96 -0
  66. rxfoundry/clients/swifty_api/models/workflow_sub_task_sub_task.py +155 -0
  67. rxfoundry/clients/swifty_api/models/workflow_task.py +111 -0
  68. rxfoundry/clients/swifty_api/models/workflow_task_task.py +155 -0
  69. rxfoundry/clients/swifty_api/models/workflow_type.py +55 -0
  70. {rxfoundry_clients_swifty_api-0.0.680.dist-info → rxfoundry_clients_swifty_api-0.1.1005.dist-info}/METADATA +1 -1
  71. rxfoundry_clients_swifty_api-0.1.1005.dist-info/RECORD +109 -0
  72. rxfoundry_clients_swifty_api-0.0.680.dist-info/RECORD +0 -64
  73. {rxfoundry_clients_swifty_api-0.0.680.dist-info → rxfoundry_clients_swifty_api-0.1.1005.dist-info}/WHEEL +0 -0
  74. {rxfoundry_clients_swifty_api-0.0.680.dist-info → rxfoundry_clients_swifty_api-0.1.1005.dist-info}/top_level.txt +0 -0
@@ -17,10 +17,12 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
17
17
  from typing import Any, Dict, List, Optional, Tuple, Union
18
18
  from typing_extensions import Annotated
19
19
 
20
- from pydantic import Field, StrictBool, StrictInt, StrictStr
20
+ from pydantic import Field, StrictInt, StrictStr, field_validator
21
21
  from typing import List, Optional
22
22
  from typing_extensions import Annotated
23
+ from rxfoundry.clients.swifty_api.models.formulary import Formulary
23
24
  from rxfoundry.clients.swifty_api.models.medication import Medication
25
+ from rxfoundry.clients.swifty_api.models.medication_instruction import MedicationInstruction
24
26
 
25
27
  from rxfoundry.clients.swifty_api.api_client import ApiClient, RequestSerialized
26
28
  from rxfoundry.clients.swifty_api.api_response import ApiResponse
@@ -45,7 +47,7 @@ class MedicationApi:
45
47
  self,
46
48
  medication_uuid: StrictStr,
47
49
  pricing_program: Optional[StrictStr] = None,
48
- deep: Optional[StrictBool] = None,
50
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The list of contained objects to return as well. Defaults to none.")] = None,
49
51
  _request_timeout: Union[
50
52
  None,
51
53
  Annotated[StrictFloat, Field(gt=0)],
@@ -66,8 +68,8 @@ class MedicationApi:
66
68
  :type medication_uuid: str
67
69
  :param pricing_program:
68
70
  :type pricing_program: str
69
- :param deep:
70
- :type deep: bool
71
+ :param expand: The list of contained objects to return as well. Defaults to none.
72
+ :type expand: List[str]
71
73
  :param _request_timeout: timeout setting for this request. If one
72
74
  number provided, it will be total request
73
75
  timeout. It can also be a pair (tuple) of
@@ -93,7 +95,7 @@ class MedicationApi:
93
95
  _param = self._get_medication_serialize(
94
96
  medication_uuid=medication_uuid,
95
97
  pricing_program=pricing_program,
96
- deep=deep,
98
+ expand=expand,
97
99
  _request_auth=_request_auth,
98
100
  _content_type=_content_type,
99
101
  _headers=_headers,
@@ -120,7 +122,7 @@ class MedicationApi:
120
122
  self,
121
123
  medication_uuid: StrictStr,
122
124
  pricing_program: Optional[StrictStr] = None,
123
- deep: Optional[StrictBool] = None,
125
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The list of contained objects to return as well. Defaults to none.")] = None,
124
126
  _request_timeout: Union[
125
127
  None,
126
128
  Annotated[StrictFloat, Field(gt=0)],
@@ -141,8 +143,8 @@ class MedicationApi:
141
143
  :type medication_uuid: str
142
144
  :param pricing_program:
143
145
  :type pricing_program: str
144
- :param deep:
145
- :type deep: bool
146
+ :param expand: The list of contained objects to return as well. Defaults to none.
147
+ :type expand: List[str]
146
148
  :param _request_timeout: timeout setting for this request. If one
147
149
  number provided, it will be total request
148
150
  timeout. It can also be a pair (tuple) of
@@ -168,7 +170,7 @@ class MedicationApi:
168
170
  _param = self._get_medication_serialize(
169
171
  medication_uuid=medication_uuid,
170
172
  pricing_program=pricing_program,
171
- deep=deep,
173
+ expand=expand,
172
174
  _request_auth=_request_auth,
173
175
  _content_type=_content_type,
174
176
  _headers=_headers,
@@ -195,7 +197,7 @@ class MedicationApi:
195
197
  self,
196
198
  medication_uuid: StrictStr,
197
199
  pricing_program: Optional[StrictStr] = None,
198
- deep: Optional[StrictBool] = None,
200
+ expand: Annotated[Optional[List[StrictStr]], Field(description="The list of contained objects to return as well. Defaults to none.")] = None,
199
201
  _request_timeout: Union[
200
202
  None,
201
203
  Annotated[StrictFloat, Field(gt=0)],
@@ -216,8 +218,8 @@ class MedicationApi:
216
218
  :type medication_uuid: str
217
219
  :param pricing_program:
218
220
  :type pricing_program: str
219
- :param deep:
220
- :type deep: bool
221
+ :param expand: The list of contained objects to return as well. Defaults to none.
222
+ :type expand: List[str]
221
223
  :param _request_timeout: timeout setting for this request. If one
222
224
  number provided, it will be total request
223
225
  timeout. It can also be a pair (tuple) of
@@ -243,7 +245,7 @@ class MedicationApi:
243
245
  _param = self._get_medication_serialize(
244
246
  medication_uuid=medication_uuid,
245
247
  pricing_program=pricing_program,
246
- deep=deep,
248
+ expand=expand,
247
249
  _request_auth=_request_auth,
248
250
  _content_type=_content_type,
249
251
  _headers=_headers,
@@ -265,7 +267,7 @@ class MedicationApi:
265
267
  self,
266
268
  medication_uuid,
267
269
  pricing_program,
268
- deep,
270
+ expand,
269
271
  _request_auth,
270
272
  _content_type,
271
273
  _headers,
@@ -275,6 +277,7 @@ class MedicationApi:
275
277
  _host = None
276
278
 
277
279
  _collection_formats: Dict[str, str] = {
280
+ 'expand': 'csv',
278
281
  }
279
282
 
280
283
  _path_params: Dict[str, str] = {}
@@ -294,9 +297,9 @@ class MedicationApi:
294
297
 
295
298
  _query_params.append(('pricing_program', pricing_program))
296
299
 
297
- if deep is not None:
300
+ if expand is not None:
298
301
 
299
- _query_params.append(('deep', deep))
302
+ _query_params.append(('expand', expand))
300
303
 
301
304
  # process the header parameters
302
305
  # process the form parameters
@@ -335,14 +338,623 @@ class MedicationApi:
335
338
 
336
339
 
337
340
 
341
+ @validate_call
342
+ def get_medication_formularies(
343
+ self,
344
+ medication_uuid: StrictStr,
345
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
346
+ results_per_page: Optional[StrictInt] = None,
347
+ _request_timeout: Union[
348
+ None,
349
+ Annotated[StrictFloat, Field(gt=0)],
350
+ Tuple[
351
+ Annotated[StrictFloat, Field(gt=0)],
352
+ Annotated[StrictFloat, Field(gt=0)]
353
+ ]
354
+ ] = None,
355
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
356
+ _content_type: Optional[StrictStr] = None,
357
+ _headers: Optional[Dict[StrictStr, Any]] = None,
358
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
359
+ ) -> List[Formulary]:
360
+ """Get a medication's formularies by medication UUID
361
+
362
+ Number of results to return per page. Defaults to 10.
363
+
364
+ :param medication_uuid: (required)
365
+ :type medication_uuid: str
366
+ :param page: Page number to return. Defaults to 1.
367
+ :type page: int
368
+ :param results_per_page:
369
+ :type results_per_page: int
370
+ :param _request_timeout: timeout setting for this request. If one
371
+ number provided, it will be total request
372
+ timeout. It can also be a pair (tuple) of
373
+ (connection, read) timeouts.
374
+ :type _request_timeout: int, tuple(int, int), optional
375
+ :param _request_auth: set to override the auth_settings for an a single
376
+ request; this effectively ignores the
377
+ authentication in the spec for a single request.
378
+ :type _request_auth: dict, optional
379
+ :param _content_type: force content-type for the request.
380
+ :type _content_type: str, Optional
381
+ :param _headers: set to override the headers for a single
382
+ request; this effectively ignores the headers
383
+ in the spec for a single request.
384
+ :type _headers: dict, optional
385
+ :param _host_index: set to override the host_index for a single
386
+ request; this effectively ignores the host_index
387
+ in the spec for a single request.
388
+ :type _host_index: int, optional
389
+ :return: Returns the result object.
390
+ """ # noqa: E501
391
+
392
+ _param = self._get_medication_formularies_serialize(
393
+ medication_uuid=medication_uuid,
394
+ page=page,
395
+ results_per_page=results_per_page,
396
+ _request_auth=_request_auth,
397
+ _content_type=_content_type,
398
+ _headers=_headers,
399
+ _host_index=_host_index
400
+ )
401
+
402
+ _response_types_map: Dict[str, Optional[str]] = {
403
+ '200': "List[Formulary]",
404
+ '404': None,
405
+ }
406
+ response_data = self.api_client.call_api(
407
+ *_param,
408
+ _request_timeout=_request_timeout
409
+ )
410
+ response_data.read()
411
+ return self.api_client.response_deserialize(
412
+ response_data=response_data,
413
+ response_types_map=_response_types_map,
414
+ ).data
415
+
416
+
417
+ @validate_call
418
+ def get_medication_formularies_with_http_info(
419
+ self,
420
+ medication_uuid: StrictStr,
421
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
422
+ results_per_page: Optional[StrictInt] = None,
423
+ _request_timeout: Union[
424
+ None,
425
+ Annotated[StrictFloat, Field(gt=0)],
426
+ Tuple[
427
+ Annotated[StrictFloat, Field(gt=0)],
428
+ Annotated[StrictFloat, Field(gt=0)]
429
+ ]
430
+ ] = None,
431
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
432
+ _content_type: Optional[StrictStr] = None,
433
+ _headers: Optional[Dict[StrictStr, Any]] = None,
434
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
435
+ ) -> ApiResponse[List[Formulary]]:
436
+ """Get a medication's formularies by medication UUID
437
+
438
+ Number of results to return per page. Defaults to 10.
439
+
440
+ :param medication_uuid: (required)
441
+ :type medication_uuid: str
442
+ :param page: Page number to return. Defaults to 1.
443
+ :type page: int
444
+ :param results_per_page:
445
+ :type results_per_page: int
446
+ :param _request_timeout: timeout setting for this request. If one
447
+ number provided, it will be total request
448
+ timeout. It can also be a pair (tuple) of
449
+ (connection, read) timeouts.
450
+ :type _request_timeout: int, tuple(int, int), optional
451
+ :param _request_auth: set to override the auth_settings for an a single
452
+ request; this effectively ignores the
453
+ authentication in the spec for a single request.
454
+ :type _request_auth: dict, optional
455
+ :param _content_type: force content-type for the request.
456
+ :type _content_type: str, Optional
457
+ :param _headers: set to override the headers for a single
458
+ request; this effectively ignores the headers
459
+ in the spec for a single request.
460
+ :type _headers: dict, optional
461
+ :param _host_index: set to override the host_index for a single
462
+ request; this effectively ignores the host_index
463
+ in the spec for a single request.
464
+ :type _host_index: int, optional
465
+ :return: Returns the result object.
466
+ """ # noqa: E501
467
+
468
+ _param = self._get_medication_formularies_serialize(
469
+ medication_uuid=medication_uuid,
470
+ page=page,
471
+ results_per_page=results_per_page,
472
+ _request_auth=_request_auth,
473
+ _content_type=_content_type,
474
+ _headers=_headers,
475
+ _host_index=_host_index
476
+ )
477
+
478
+ _response_types_map: Dict[str, Optional[str]] = {
479
+ '200': "List[Formulary]",
480
+ '404': None,
481
+ }
482
+ response_data = self.api_client.call_api(
483
+ *_param,
484
+ _request_timeout=_request_timeout
485
+ )
486
+ response_data.read()
487
+ return self.api_client.response_deserialize(
488
+ response_data=response_data,
489
+ response_types_map=_response_types_map,
490
+ )
491
+
492
+
493
+ @validate_call
494
+ def get_medication_formularies_without_preload_content(
495
+ self,
496
+ medication_uuid: StrictStr,
497
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
498
+ results_per_page: Optional[StrictInt] = None,
499
+ _request_timeout: Union[
500
+ None,
501
+ Annotated[StrictFloat, Field(gt=0)],
502
+ Tuple[
503
+ Annotated[StrictFloat, Field(gt=0)],
504
+ Annotated[StrictFloat, Field(gt=0)]
505
+ ]
506
+ ] = None,
507
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
508
+ _content_type: Optional[StrictStr] = None,
509
+ _headers: Optional[Dict[StrictStr, Any]] = None,
510
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
511
+ ) -> RESTResponseType:
512
+ """Get a medication's formularies by medication UUID
513
+
514
+ Number of results to return per page. Defaults to 10.
515
+
516
+ :param medication_uuid: (required)
517
+ :type medication_uuid: str
518
+ :param page: Page number to return. Defaults to 1.
519
+ :type page: int
520
+ :param results_per_page:
521
+ :type results_per_page: int
522
+ :param _request_timeout: timeout setting for this request. If one
523
+ number provided, it will be total request
524
+ timeout. It can also be a pair (tuple) of
525
+ (connection, read) timeouts.
526
+ :type _request_timeout: int, tuple(int, int), optional
527
+ :param _request_auth: set to override the auth_settings for an a single
528
+ request; this effectively ignores the
529
+ authentication in the spec for a single request.
530
+ :type _request_auth: dict, optional
531
+ :param _content_type: force content-type for the request.
532
+ :type _content_type: str, Optional
533
+ :param _headers: set to override the headers for a single
534
+ request; this effectively ignores the headers
535
+ in the spec for a single request.
536
+ :type _headers: dict, optional
537
+ :param _host_index: set to override the host_index for a single
538
+ request; this effectively ignores the host_index
539
+ in the spec for a single request.
540
+ :type _host_index: int, optional
541
+ :return: Returns the result object.
542
+ """ # noqa: E501
543
+
544
+ _param = self._get_medication_formularies_serialize(
545
+ medication_uuid=medication_uuid,
546
+ page=page,
547
+ results_per_page=results_per_page,
548
+ _request_auth=_request_auth,
549
+ _content_type=_content_type,
550
+ _headers=_headers,
551
+ _host_index=_host_index
552
+ )
553
+
554
+ _response_types_map: Dict[str, Optional[str]] = {
555
+ '200': "List[Formulary]",
556
+ '404': None,
557
+ }
558
+ response_data = self.api_client.call_api(
559
+ *_param,
560
+ _request_timeout=_request_timeout
561
+ )
562
+ return response_data.response
563
+
564
+
565
+ def _get_medication_formularies_serialize(
566
+ self,
567
+ medication_uuid,
568
+ page,
569
+ results_per_page,
570
+ _request_auth,
571
+ _content_type,
572
+ _headers,
573
+ _host_index,
574
+ ) -> RequestSerialized:
575
+
576
+ _host = None
577
+
578
+ _collection_formats: Dict[str, str] = {
579
+ }
580
+
581
+ _path_params: Dict[str, str] = {}
582
+ _query_params: List[Tuple[str, str]] = []
583
+ _header_params: Dict[str, Optional[str]] = _headers or {}
584
+ _form_params: List[Tuple[str, str]] = []
585
+ _files: Dict[
586
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
587
+ ] = {}
588
+ _body_params: Optional[bytes] = None
589
+
590
+ # process the path parameters
591
+ if medication_uuid is not None:
592
+ _path_params['medication_uuid'] = medication_uuid
593
+ # process the query parameters
594
+ if page is not None:
595
+
596
+ _query_params.append(('page', page))
597
+
598
+ if results_per_page is not None:
599
+
600
+ _query_params.append(('results_per_page', results_per_page))
601
+
602
+ # process the header parameters
603
+ # process the form parameters
604
+ # process the body parameter
605
+
606
+
607
+ # set the HTTP header `Accept`
608
+ if 'Accept' not in _header_params:
609
+ _header_params['Accept'] = self.api_client.select_header_accept(
610
+ [
611
+ 'application/json'
612
+ ]
613
+ )
614
+
615
+
616
+ # authentication setting
617
+ _auth_settings: List[str] = [
618
+ 'opaque_token'
619
+ ]
620
+
621
+ return self.api_client.param_serialize(
622
+ method='GET',
623
+ resource_path='/swifty/1/medications/{medication_uuid}/formularies',
624
+ path_params=_path_params,
625
+ query_params=_query_params,
626
+ header_params=_header_params,
627
+ body=_body_params,
628
+ post_params=_form_params,
629
+ files=_files,
630
+ auth_settings=_auth_settings,
631
+ collection_formats=_collection_formats,
632
+ _host=_host,
633
+ _request_auth=_request_auth
634
+ )
635
+
636
+
637
+
638
+
639
+ @validate_call
640
+ def get_medication_instructions(
641
+ self,
642
+ medication_uuid: StrictStr,
643
+ q: Optional[StrictStr] = None,
644
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
645
+ results_per_page: Optional[StrictInt] = None,
646
+ _request_timeout: Union[
647
+ None,
648
+ Annotated[StrictFloat, Field(gt=0)],
649
+ Tuple[
650
+ Annotated[StrictFloat, Field(gt=0)],
651
+ Annotated[StrictFloat, Field(gt=0)]
652
+ ]
653
+ ] = None,
654
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
655
+ _content_type: Optional[StrictStr] = None,
656
+ _headers: Optional[Dict[StrictStr, Any]] = None,
657
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
658
+ ) -> List[MedicationInstruction]:
659
+ """Get a medication by UUID
660
+
661
+
662
+ :param medication_uuid: (required)
663
+ :type medication_uuid: str
664
+ :param q:
665
+ :type q: str
666
+ :param page: Page number to return. Defaults to 1.
667
+ :type page: int
668
+ :param results_per_page:
669
+ :type results_per_page: int
670
+ :param _request_timeout: timeout setting for this request. If one
671
+ number provided, it will be total request
672
+ timeout. It can also be a pair (tuple) of
673
+ (connection, read) timeouts.
674
+ :type _request_timeout: int, tuple(int, int), optional
675
+ :param _request_auth: set to override the auth_settings for an a single
676
+ request; this effectively ignores the
677
+ authentication in the spec for a single request.
678
+ :type _request_auth: dict, optional
679
+ :param _content_type: force content-type for the request.
680
+ :type _content_type: str, Optional
681
+ :param _headers: set to override the headers for a single
682
+ request; this effectively ignores the headers
683
+ in the spec for a single request.
684
+ :type _headers: dict, optional
685
+ :param _host_index: set to override the host_index for a single
686
+ request; this effectively ignores the host_index
687
+ in the spec for a single request.
688
+ :type _host_index: int, optional
689
+ :return: Returns the result object.
690
+ """ # noqa: E501
691
+
692
+ _param = self._get_medication_instructions_serialize(
693
+ medication_uuid=medication_uuid,
694
+ q=q,
695
+ page=page,
696
+ results_per_page=results_per_page,
697
+ _request_auth=_request_auth,
698
+ _content_type=_content_type,
699
+ _headers=_headers,
700
+ _host_index=_host_index
701
+ )
702
+
703
+ _response_types_map: Dict[str, Optional[str]] = {
704
+ '200': "List[MedicationInstruction]",
705
+ '404': None,
706
+ }
707
+ response_data = self.api_client.call_api(
708
+ *_param,
709
+ _request_timeout=_request_timeout
710
+ )
711
+ response_data.read()
712
+ return self.api_client.response_deserialize(
713
+ response_data=response_data,
714
+ response_types_map=_response_types_map,
715
+ ).data
716
+
717
+
718
+ @validate_call
719
+ def get_medication_instructions_with_http_info(
720
+ self,
721
+ medication_uuid: StrictStr,
722
+ q: Optional[StrictStr] = None,
723
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
724
+ results_per_page: Optional[StrictInt] = None,
725
+ _request_timeout: Union[
726
+ None,
727
+ Annotated[StrictFloat, Field(gt=0)],
728
+ Tuple[
729
+ Annotated[StrictFloat, Field(gt=0)],
730
+ Annotated[StrictFloat, Field(gt=0)]
731
+ ]
732
+ ] = None,
733
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
734
+ _content_type: Optional[StrictStr] = None,
735
+ _headers: Optional[Dict[StrictStr, Any]] = None,
736
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
737
+ ) -> ApiResponse[List[MedicationInstruction]]:
738
+ """Get a medication by UUID
739
+
740
+
741
+ :param medication_uuid: (required)
742
+ :type medication_uuid: str
743
+ :param q:
744
+ :type q: str
745
+ :param page: Page number to return. Defaults to 1.
746
+ :type page: int
747
+ :param results_per_page:
748
+ :type results_per_page: int
749
+ :param _request_timeout: timeout setting for this request. If one
750
+ number provided, it will be total request
751
+ timeout. It can also be a pair (tuple) of
752
+ (connection, read) timeouts.
753
+ :type _request_timeout: int, tuple(int, int), optional
754
+ :param _request_auth: set to override the auth_settings for an a single
755
+ request; this effectively ignores the
756
+ authentication in the spec for a single request.
757
+ :type _request_auth: dict, optional
758
+ :param _content_type: force content-type for the request.
759
+ :type _content_type: str, Optional
760
+ :param _headers: set to override the headers for a single
761
+ request; this effectively ignores the headers
762
+ in the spec for a single request.
763
+ :type _headers: dict, optional
764
+ :param _host_index: set to override the host_index for a single
765
+ request; this effectively ignores the host_index
766
+ in the spec for a single request.
767
+ :type _host_index: int, optional
768
+ :return: Returns the result object.
769
+ """ # noqa: E501
770
+
771
+ _param = self._get_medication_instructions_serialize(
772
+ medication_uuid=medication_uuid,
773
+ q=q,
774
+ page=page,
775
+ results_per_page=results_per_page,
776
+ _request_auth=_request_auth,
777
+ _content_type=_content_type,
778
+ _headers=_headers,
779
+ _host_index=_host_index
780
+ )
781
+
782
+ _response_types_map: Dict[str, Optional[str]] = {
783
+ '200': "List[MedicationInstruction]",
784
+ '404': None,
785
+ }
786
+ response_data = self.api_client.call_api(
787
+ *_param,
788
+ _request_timeout=_request_timeout
789
+ )
790
+ response_data.read()
791
+ return self.api_client.response_deserialize(
792
+ response_data=response_data,
793
+ response_types_map=_response_types_map,
794
+ )
795
+
796
+
797
+ @validate_call
798
+ def get_medication_instructions_without_preload_content(
799
+ self,
800
+ medication_uuid: StrictStr,
801
+ q: Optional[StrictStr] = None,
802
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
803
+ results_per_page: Optional[StrictInt] = None,
804
+ _request_timeout: Union[
805
+ None,
806
+ Annotated[StrictFloat, Field(gt=0)],
807
+ Tuple[
808
+ Annotated[StrictFloat, Field(gt=0)],
809
+ Annotated[StrictFloat, Field(gt=0)]
810
+ ]
811
+ ] = None,
812
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
813
+ _content_type: Optional[StrictStr] = None,
814
+ _headers: Optional[Dict[StrictStr, Any]] = None,
815
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
816
+ ) -> RESTResponseType:
817
+ """Get a medication by UUID
818
+
819
+
820
+ :param medication_uuid: (required)
821
+ :type medication_uuid: str
822
+ :param q:
823
+ :type q: str
824
+ :param page: Page number to return. Defaults to 1.
825
+ :type page: int
826
+ :param results_per_page:
827
+ :type results_per_page: int
828
+ :param _request_timeout: timeout setting for this request. If one
829
+ number provided, it will be total request
830
+ timeout. It can also be a pair (tuple) of
831
+ (connection, read) timeouts.
832
+ :type _request_timeout: int, tuple(int, int), optional
833
+ :param _request_auth: set to override the auth_settings for an a single
834
+ request; this effectively ignores the
835
+ authentication in the spec for a single request.
836
+ :type _request_auth: dict, optional
837
+ :param _content_type: force content-type for the request.
838
+ :type _content_type: str, Optional
839
+ :param _headers: set to override the headers for a single
840
+ request; this effectively ignores the headers
841
+ in the spec for a single request.
842
+ :type _headers: dict, optional
843
+ :param _host_index: set to override the host_index for a single
844
+ request; this effectively ignores the host_index
845
+ in the spec for a single request.
846
+ :type _host_index: int, optional
847
+ :return: Returns the result object.
848
+ """ # noqa: E501
849
+
850
+ _param = self._get_medication_instructions_serialize(
851
+ medication_uuid=medication_uuid,
852
+ q=q,
853
+ page=page,
854
+ results_per_page=results_per_page,
855
+ _request_auth=_request_auth,
856
+ _content_type=_content_type,
857
+ _headers=_headers,
858
+ _host_index=_host_index
859
+ )
860
+
861
+ _response_types_map: Dict[str, Optional[str]] = {
862
+ '200': "List[MedicationInstruction]",
863
+ '404': None,
864
+ }
865
+ response_data = self.api_client.call_api(
866
+ *_param,
867
+ _request_timeout=_request_timeout
868
+ )
869
+ return response_data.response
870
+
871
+
872
+ def _get_medication_instructions_serialize(
873
+ self,
874
+ medication_uuid,
875
+ q,
876
+ page,
877
+ results_per_page,
878
+ _request_auth,
879
+ _content_type,
880
+ _headers,
881
+ _host_index,
882
+ ) -> RequestSerialized:
883
+
884
+ _host = None
885
+
886
+ _collection_formats: Dict[str, str] = {
887
+ }
888
+
889
+ _path_params: Dict[str, str] = {}
890
+ _query_params: List[Tuple[str, str]] = []
891
+ _header_params: Dict[str, Optional[str]] = _headers or {}
892
+ _form_params: List[Tuple[str, str]] = []
893
+ _files: Dict[
894
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
895
+ ] = {}
896
+ _body_params: Optional[bytes] = None
897
+
898
+ # process the path parameters
899
+ if medication_uuid is not None:
900
+ _path_params['medication_uuid'] = medication_uuid
901
+ # process the query parameters
902
+ if q is not None:
903
+
904
+ _query_params.append(('q', q))
905
+
906
+ if page is not None:
907
+
908
+ _query_params.append(('page', page))
909
+
910
+ if results_per_page is not None:
911
+
912
+ _query_params.append(('results_per_page', results_per_page))
913
+
914
+ # process the header parameters
915
+ # process the form parameters
916
+ # process the body parameter
917
+
918
+
919
+ # set the HTTP header `Accept`
920
+ if 'Accept' not in _header_params:
921
+ _header_params['Accept'] = self.api_client.select_header_accept(
922
+ [
923
+ 'application/json'
924
+ ]
925
+ )
926
+
927
+
928
+ # authentication setting
929
+ _auth_settings: List[str] = [
930
+ 'opaque_token'
931
+ ]
932
+
933
+ return self.api_client.param_serialize(
934
+ method='GET',
935
+ resource_path='/swifty/1/medications/{medication_uuid}/instructions',
936
+ path_params=_path_params,
937
+ query_params=_query_params,
938
+ header_params=_header_params,
939
+ body=_body_params,
940
+ post_params=_form_params,
941
+ files=_files,
942
+ auth_settings=_auth_settings,
943
+ collection_formats=_collection_formats,
944
+ _host=_host,
945
+ _request_auth=_request_auth
946
+ )
947
+
948
+
949
+
950
+
338
951
  @validate_call
339
952
  def get_medications(
340
953
  self,
341
- q: Annotated[Optional[StrictStr], Field(description="Filter medications by query")] = None,
954
+ q: Annotated[Optional[StrictStr], Field(description="Filter medications by query. Searches the drug description, scd, sbd, strength, drug form and NDCs for the medication.")] = None,
342
955
  pricing_program: Optional[StrictStr] = None,
343
- page: Optional[StrictInt] = None,
344
- results_per_page: Optional[StrictInt] = None,
345
- deep: Optional[StrictBool] = None,
956
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
957
+ results_per_page: Annotated[Optional[StrictInt], Field(description="Number of results to return per page. Defaults to 10.")] = None,
346
958
  _request_timeout: Union[
347
959
  None,
348
960
  Annotated[StrictFloat, Field(gt=0)],
@@ -359,16 +971,14 @@ class MedicationApi:
359
971
  """Get all medications
360
972
 
361
973
 
362
- :param q: Filter medications by query
974
+ :param q: Filter medications by query. Searches the drug description, scd, sbd, strength, drug form and NDCs for the medication.
363
975
  :type q: str
364
976
  :param pricing_program:
365
977
  :type pricing_program: str
366
- :param page:
978
+ :param page: Page number to return. Defaults to 1.
367
979
  :type page: int
368
- :param results_per_page:
980
+ :param results_per_page: Number of results to return per page. Defaults to 10.
369
981
  :type results_per_page: int
370
- :param deep:
371
- :type deep: bool
372
982
  :param _request_timeout: timeout setting for this request. If one
373
983
  number provided, it will be total request
374
984
  timeout. It can also be a pair (tuple) of
@@ -396,7 +1006,6 @@ class MedicationApi:
396
1006
  pricing_program=pricing_program,
397
1007
  page=page,
398
1008
  results_per_page=results_per_page,
399
- deep=deep,
400
1009
  _request_auth=_request_auth,
401
1010
  _content_type=_content_type,
402
1011
  _headers=_headers,
@@ -421,11 +1030,10 @@ class MedicationApi:
421
1030
  @validate_call
422
1031
  def get_medications_with_http_info(
423
1032
  self,
424
- q: Annotated[Optional[StrictStr], Field(description="Filter medications by query")] = None,
1033
+ q: Annotated[Optional[StrictStr], Field(description="Filter medications by query. Searches the drug description, scd, sbd, strength, drug form and NDCs for the medication.")] = None,
425
1034
  pricing_program: Optional[StrictStr] = None,
426
- page: Optional[StrictInt] = None,
427
- results_per_page: Optional[StrictInt] = None,
428
- deep: Optional[StrictBool] = None,
1035
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
1036
+ results_per_page: Annotated[Optional[StrictInt], Field(description="Number of results to return per page. Defaults to 10.")] = None,
429
1037
  _request_timeout: Union[
430
1038
  None,
431
1039
  Annotated[StrictFloat, Field(gt=0)],
@@ -442,16 +1050,14 @@ class MedicationApi:
442
1050
  """Get all medications
443
1051
 
444
1052
 
445
- :param q: Filter medications by query
1053
+ :param q: Filter medications by query. Searches the drug description, scd, sbd, strength, drug form and NDCs for the medication.
446
1054
  :type q: str
447
1055
  :param pricing_program:
448
1056
  :type pricing_program: str
449
- :param page:
1057
+ :param page: Page number to return. Defaults to 1.
450
1058
  :type page: int
451
- :param results_per_page:
1059
+ :param results_per_page: Number of results to return per page. Defaults to 10.
452
1060
  :type results_per_page: int
453
- :param deep:
454
- :type deep: bool
455
1061
  :param _request_timeout: timeout setting for this request. If one
456
1062
  number provided, it will be total request
457
1063
  timeout. It can also be a pair (tuple) of
@@ -479,7 +1085,6 @@ class MedicationApi:
479
1085
  pricing_program=pricing_program,
480
1086
  page=page,
481
1087
  results_per_page=results_per_page,
482
- deep=deep,
483
1088
  _request_auth=_request_auth,
484
1089
  _content_type=_content_type,
485
1090
  _headers=_headers,
@@ -504,11 +1109,10 @@ class MedicationApi:
504
1109
  @validate_call
505
1110
  def get_medications_without_preload_content(
506
1111
  self,
507
- q: Annotated[Optional[StrictStr], Field(description="Filter medications by query")] = None,
1112
+ q: Annotated[Optional[StrictStr], Field(description="Filter medications by query. Searches the drug description, scd, sbd, strength, drug form and NDCs for the medication.")] = None,
508
1113
  pricing_program: Optional[StrictStr] = None,
509
- page: Optional[StrictInt] = None,
510
- results_per_page: Optional[StrictInt] = None,
511
- deep: Optional[StrictBool] = None,
1114
+ page: Annotated[Optional[StrictInt], Field(description="Page number to return. Defaults to 1.")] = None,
1115
+ results_per_page: Annotated[Optional[StrictInt], Field(description="Number of results to return per page. Defaults to 10.")] = None,
512
1116
  _request_timeout: Union[
513
1117
  None,
514
1118
  Annotated[StrictFloat, Field(gt=0)],
@@ -525,16 +1129,14 @@ class MedicationApi:
525
1129
  """Get all medications
526
1130
 
527
1131
 
528
- :param q: Filter medications by query
1132
+ :param q: Filter medications by query. Searches the drug description, scd, sbd, strength, drug form and NDCs for the medication.
529
1133
  :type q: str
530
1134
  :param pricing_program:
531
1135
  :type pricing_program: str
532
- :param page:
1136
+ :param page: Page number to return. Defaults to 1.
533
1137
  :type page: int
534
- :param results_per_page:
1138
+ :param results_per_page: Number of results to return per page. Defaults to 10.
535
1139
  :type results_per_page: int
536
- :param deep:
537
- :type deep: bool
538
1140
  :param _request_timeout: timeout setting for this request. If one
539
1141
  number provided, it will be total request
540
1142
  timeout. It can also be a pair (tuple) of
@@ -562,7 +1164,6 @@ class MedicationApi:
562
1164
  pricing_program=pricing_program,
563
1165
  page=page,
564
1166
  results_per_page=results_per_page,
565
- deep=deep,
566
1167
  _request_auth=_request_auth,
567
1168
  _content_type=_content_type,
568
1169
  _headers=_headers,
@@ -586,7 +1187,6 @@ class MedicationApi:
586
1187
  pricing_program,
587
1188
  page,
588
1189
  results_per_page,
589
- deep,
590
1190
  _request_auth,
591
1191
  _content_type,
592
1192
  _headers,
@@ -625,10 +1225,6 @@ class MedicationApi:
625
1225
 
626
1226
  _query_params.append(('results_per_page', results_per_page))
627
1227
 
628
- if deep is not None:
629
-
630
- _query_params.append(('deep', deep))
631
-
632
1228
  # process the header parameters
633
1229
  # process the form parameters
634
1230
  # process the body parameter