rxfoundry.clients.swifty-api 0.0.668__py3-none-any.whl → 0.1.1008__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 (75) hide show
  1. rxfoundry/clients/swifty_api/__init__.py +38 -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 +1429 -49
  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 +35 -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/create_patient_request.py +98 -0
  21. rxfoundry/clients/swifty_api/models/formulary.py +96 -0
  22. rxfoundry/clients/swifty_api/models/insurance.py +96 -0
  23. rxfoundry/clients/swifty_api/models/medication_instruction.py +92 -0
  24. rxfoundry/clients/swifty_api/models/medication_ref.py +100 -0
  25. rxfoundry/clients/swifty_api/models/patient.py +88 -3
  26. rxfoundry/clients/swifty_api/models/patient_activity_data.py +169 -0
  27. rxfoundry/clients/swifty_api/models/patient_activity_message.py +112 -0
  28. rxfoundry/clients/swifty_api/models/patient_activity_notification.py +9 -17
  29. rxfoundry/clients/swifty_api/models/patient_activity_notification_activity_data.py +39 -8
  30. rxfoundry/clients/swifty_api/models/patient_address_activity_notification.py +105 -0
  31. rxfoundry/clients/swifty_api/models/patient_address_data.py +25 -9
  32. rxfoundry/clients/swifty_api/models/patient_allergy.py +92 -0
  33. rxfoundry/clients/swifty_api/models/patient_condition.py +92 -0
  34. rxfoundry/clients/swifty_api/models/patient_data.py +13 -2
  35. rxfoundry/clients/swifty_api/models/patient_external_identifier.py +6 -5
  36. rxfoundry/clients/swifty_api/models/patient_health_profile_data.py +127 -0
  37. rxfoundry/clients/swifty_api/models/patient_insurance.py +106 -0
  38. rxfoundry/clients/swifty_api/models/patient_insurance_data.py +105 -0
  39. rxfoundry/clients/swifty_api/models/patient_medication.py +92 -0
  40. rxfoundry/clients/swifty_api/models/patient_name.py +99 -0
  41. rxfoundry/clients/swifty_api/models/patient_name_data.py +108 -0
  42. rxfoundry/clients/swifty_api/models/patient_phone_number.py +89 -0
  43. rxfoundry/clients/swifty_api/models/patient_phone_number_data.py +98 -0
  44. rxfoundry/clients/swifty_api/models/patient_task.py +115 -0
  45. rxfoundry/clients/swifty_api/models/patient_task_status.py +105 -0
  46. rxfoundry/clients/swifty_api/models/patient_task_type.py +45 -0
  47. rxfoundry/clients/swifty_api/models/prescription.py +35 -30
  48. rxfoundry/clients/swifty_api/models/prescription_change_request.py +24 -36
  49. rxfoundry/clients/swifty_api/models/prescription_change_request_and_response.py +145 -0
  50. rxfoundry/clients/swifty_api/models/prescription_change_request_response.py +134 -0
  51. rxfoundry/clients/swifty_api/models/prescription_data.py +126 -0
  52. rxfoundry/clients/swifty_api/models/prescription_message.py +100 -0
  53. rxfoundry/clients/swifty_api/models/prescription_message_task.py +109 -0
  54. rxfoundry/clients/swifty_api/models/prescription_message_task_status.py +99 -0
  55. rxfoundry/clients/swifty_api/models/prescription_message_task_type.py +43 -0
  56. rxfoundry/clients/swifty_api/models/prescription_message_type.py +53 -0
  57. rxfoundry/clients/swifty_api/models/prescription_patch.py +6 -2
  58. rxfoundry/clients/swifty_api/models/prescription_status_type.py +40 -0
  59. rxfoundry/clients/swifty_api/models/prescription_task.py +14 -12
  60. rxfoundry/clients/swifty_api/models/prescription_task_status.py +6 -2
  61. rxfoundry/clients/swifty_api/models/prescription_task_type.py +42 -0
  62. rxfoundry/clients/swifty_api/models/prescription_transfer_request_and_response.py +145 -0
  63. rxfoundry/clients/swifty_api/models/prescription_transfer_request_response.py +128 -0
  64. rxfoundry/clients/swifty_api/models/status_type.py +92 -0
  65. rxfoundry/clients/swifty_api/models/workflow.py +108 -0
  66. rxfoundry/clients/swifty_api/models/workflow_sub_task.py +96 -0
  67. rxfoundry/clients/swifty_api/models/workflow_sub_task_sub_task.py +155 -0
  68. rxfoundry/clients/swifty_api/models/workflow_task.py +111 -0
  69. rxfoundry/clients/swifty_api/models/workflow_task_task.py +155 -0
  70. rxfoundry/clients/swifty_api/models/workflow_type.py +55 -0
  71. {rxfoundry_clients_swifty_api-0.0.668.dist-info → rxfoundry_clients_swifty_api-0.1.1008.dist-info}/METADATA +1 -1
  72. rxfoundry_clients_swifty_api-0.1.1008.dist-info/RECORD +110 -0
  73. {rxfoundry_clients_swifty_api-0.0.668.dist-info → rxfoundry_clients_swifty_api-0.1.1008.dist-info}/WHEEL +1 -1
  74. rxfoundry_clients_swifty_api-0.0.668.dist-info/RECORD +0 -64
  75. {rxfoundry_clients_swifty_api-0.0.668.dist-info → rxfoundry_clients_swifty_api-0.1.1008.dist-info}/top_level.txt +0 -0
@@ -17,8 +17,14 @@ 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 StrictBool, StrictInt, StrictStr
21
+ from typing import List, Optional
20
22
  from rxfoundry.clients.swifty_api.models.asynchronous_response import AsynchronousResponse
23
+ from rxfoundry.clients.swifty_api.models.patient_activity_message import PatientActivityMessage
21
24
  from rxfoundry.clients.swifty_api.models.patient_activity_notification import PatientActivityNotification
25
+ from rxfoundry.clients.swifty_api.models.prescription_change_request import PrescriptionChangeRequest
26
+ from rxfoundry.clients.swifty_api.models.prescription_change_request_response import PrescriptionChangeRequestResponse
27
+ from rxfoundry.clients.swifty_api.models.prescription_data import PrescriptionData
22
28
  from rxfoundry.clients.swifty_api.models.prescription_transfer_request import PrescriptionTransferRequest
23
29
  from rxfoundry.clients.swifty_api.models.workflow_request import WorkflowRequest
24
30
 
@@ -315,9 +321,9 @@ class AsyncApi:
315
321
 
316
322
 
317
323
  @validate_call
318
- def create_prescription_transfer_request(
324
+ def create_prescription(
319
325
  self,
320
- prescription_transfer_request: PrescriptionTransferRequest,
326
+ prescription_data: PrescriptionData,
321
327
  _request_timeout: Union[
322
328
  None,
323
329
  Annotated[StrictFloat, Field(gt=0)],
@@ -331,11 +337,11 @@ class AsyncApi:
331
337
  _headers: Optional[Dict[StrictStr, Any]] = None,
332
338
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
333
339
  ) -> AsynchronousResponse:
334
- """Create a new prescription transfer request that will be processed asynchronously.
340
+ """Create a new prescription that will be processed asynchronously.
335
341
 
336
342
 
337
- :param prescription_transfer_request: (required)
338
- :type prescription_transfer_request: PrescriptionTransferRequest
343
+ :param prescription_data: (required)
344
+ :type prescription_data: PrescriptionData
339
345
  :param _request_timeout: timeout setting for this request. If one
340
346
  number provided, it will be total request
341
347
  timeout. It can also be a pair (tuple) of
@@ -358,8 +364,8 @@ class AsyncApi:
358
364
  :return: Returns the result object.
359
365
  """ # noqa: E501
360
366
 
361
- _param = self._create_prescription_transfer_request_serialize(
362
- prescription_transfer_request=prescription_transfer_request,
367
+ _param = self._create_prescription_serialize(
368
+ prescription_data=prescription_data,
363
369
  _request_auth=_request_auth,
364
370
  _content_type=_content_type,
365
371
  _headers=_headers,
@@ -382,9 +388,9 @@ class AsyncApi:
382
388
 
383
389
 
384
390
  @validate_call
385
- def create_prescription_transfer_request_with_http_info(
391
+ def create_prescription_with_http_info(
386
392
  self,
387
- prescription_transfer_request: PrescriptionTransferRequest,
393
+ prescription_data: PrescriptionData,
388
394
  _request_timeout: Union[
389
395
  None,
390
396
  Annotated[StrictFloat, Field(gt=0)],
@@ -398,11 +404,11 @@ class AsyncApi:
398
404
  _headers: Optional[Dict[StrictStr, Any]] = None,
399
405
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
400
406
  ) -> ApiResponse[AsynchronousResponse]:
401
- """Create a new prescription transfer request that will be processed asynchronously.
407
+ """Create a new prescription that will be processed asynchronously.
402
408
 
403
409
 
404
- :param prescription_transfer_request: (required)
405
- :type prescription_transfer_request: PrescriptionTransferRequest
410
+ :param prescription_data: (required)
411
+ :type prescription_data: PrescriptionData
406
412
  :param _request_timeout: timeout setting for this request. If one
407
413
  number provided, it will be total request
408
414
  timeout. It can also be a pair (tuple) of
@@ -425,8 +431,8 @@ class AsyncApi:
425
431
  :return: Returns the result object.
426
432
  """ # noqa: E501
427
433
 
428
- _param = self._create_prescription_transfer_request_serialize(
429
- prescription_transfer_request=prescription_transfer_request,
434
+ _param = self._create_prescription_serialize(
435
+ prescription_data=prescription_data,
430
436
  _request_auth=_request_auth,
431
437
  _content_type=_content_type,
432
438
  _headers=_headers,
@@ -449,9 +455,9 @@ class AsyncApi:
449
455
 
450
456
 
451
457
  @validate_call
452
- def create_prescription_transfer_request_without_preload_content(
458
+ def create_prescription_without_preload_content(
453
459
  self,
454
- prescription_transfer_request: PrescriptionTransferRequest,
460
+ prescription_data: PrescriptionData,
455
461
  _request_timeout: Union[
456
462
  None,
457
463
  Annotated[StrictFloat, Field(gt=0)],
@@ -465,11 +471,11 @@ class AsyncApi:
465
471
  _headers: Optional[Dict[StrictStr, Any]] = None,
466
472
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
467
473
  ) -> RESTResponseType:
468
- """Create a new prescription transfer request that will be processed asynchronously.
474
+ """Create a new prescription that will be processed asynchronously.
469
475
 
470
476
 
471
- :param prescription_transfer_request: (required)
472
- :type prescription_transfer_request: PrescriptionTransferRequest
477
+ :param prescription_data: (required)
478
+ :type prescription_data: PrescriptionData
473
479
  :param _request_timeout: timeout setting for this request. If one
474
480
  number provided, it will be total request
475
481
  timeout. It can also be a pair (tuple) of
@@ -492,8 +498,8 @@ class AsyncApi:
492
498
  :return: Returns the result object.
493
499
  """ # noqa: E501
494
500
 
495
- _param = self._create_prescription_transfer_request_serialize(
496
- prescription_transfer_request=prescription_transfer_request,
501
+ _param = self._create_prescription_serialize(
502
+ prescription_data=prescription_data,
497
503
  _request_auth=_request_auth,
498
504
  _content_type=_content_type,
499
505
  _headers=_headers,
@@ -511,9 +517,9 @@ class AsyncApi:
511
517
  return response_data.response
512
518
 
513
519
 
514
- def _create_prescription_transfer_request_serialize(
520
+ def _create_prescription_serialize(
515
521
  self,
516
- prescription_transfer_request,
522
+ prescription_data,
517
523
  _request_auth,
518
524
  _content_type,
519
525
  _headers,
@@ -539,8 +545,8 @@ class AsyncApi:
539
545
  # process the header parameters
540
546
  # process the form parameters
541
547
  # process the body parameter
542
- if prescription_transfer_request is not None:
543
- _body_params = prescription_transfer_request
548
+ if prescription_data is not None:
549
+ _body_params = prescription_data
544
550
 
545
551
 
546
552
  # set the HTTP header `Accept`
@@ -572,7 +578,7 @@ class AsyncApi:
572
578
 
573
579
  return self.api_client.param_serialize(
574
580
  method='POST',
575
- resource_path='/swifty/1/async/prescription/request_transfer',
581
+ resource_path='/swifty/1/async/prescription',
576
582
  path_params=_path_params,
577
583
  query_params=_query_params,
578
584
  header_params=_header_params,
@@ -589,9 +595,9 @@ class AsyncApi:
589
595
 
590
596
 
591
597
  @validate_call
592
- def create_workflow_request(
598
+ def create_prescription_change_request(
593
599
  self,
594
- workflow_request: WorkflowRequest,
600
+ prescription_change_request: PrescriptionChangeRequest,
595
601
  _request_timeout: Union[
596
602
  None,
597
603
  Annotated[StrictFloat, Field(gt=0)],
@@ -605,11 +611,11 @@ class AsyncApi:
605
611
  _headers: Optional[Dict[StrictStr, Any]] = None,
606
612
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
607
613
  ) -> AsynchronousResponse:
608
- """Create a new workflow request that will be processed asynchronously. Only use this endpoint if instructed to do so by Swifty support team.
614
+ """Create a new prescription change request that will be processed asynchronously.
609
615
 
610
616
 
611
- :param workflow_request: (required)
612
- :type workflow_request: WorkflowRequest
617
+ :param prescription_change_request: (required)
618
+ :type prescription_change_request: PrescriptionChangeRequest
613
619
  :param _request_timeout: timeout setting for this request. If one
614
620
  number provided, it will be total request
615
621
  timeout. It can also be a pair (tuple) of
@@ -632,8 +638,8 @@ class AsyncApi:
632
638
  :return: Returns the result object.
633
639
  """ # noqa: E501
634
640
 
635
- _param = self._create_workflow_request_serialize(
636
- workflow_request=workflow_request,
641
+ _param = self._create_prescription_change_request_serialize(
642
+ prescription_change_request=prescription_change_request,
637
643
  _request_auth=_request_auth,
638
644
  _content_type=_content_type,
639
645
  _headers=_headers,
@@ -656,9 +662,9 @@ class AsyncApi:
656
662
 
657
663
 
658
664
  @validate_call
659
- def create_workflow_request_with_http_info(
665
+ def create_prescription_change_request_with_http_info(
660
666
  self,
661
- workflow_request: WorkflowRequest,
667
+ prescription_change_request: PrescriptionChangeRequest,
662
668
  _request_timeout: Union[
663
669
  None,
664
670
  Annotated[StrictFloat, Field(gt=0)],
@@ -672,11 +678,11 @@ class AsyncApi:
672
678
  _headers: Optional[Dict[StrictStr, Any]] = None,
673
679
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
674
680
  ) -> ApiResponse[AsynchronousResponse]:
675
- """Create a new workflow request that will be processed asynchronously. Only use this endpoint if instructed to do so by Swifty support team.
681
+ """Create a new prescription change request that will be processed asynchronously.
676
682
 
677
683
 
678
- :param workflow_request: (required)
679
- :type workflow_request: WorkflowRequest
684
+ :param prescription_change_request: (required)
685
+ :type prescription_change_request: PrescriptionChangeRequest
680
686
  :param _request_timeout: timeout setting for this request. If one
681
687
  number provided, it will be total request
682
688
  timeout. It can also be a pair (tuple) of
@@ -699,8 +705,8 @@ class AsyncApi:
699
705
  :return: Returns the result object.
700
706
  """ # noqa: E501
701
707
 
702
- _param = self._create_workflow_request_serialize(
703
- workflow_request=workflow_request,
708
+ _param = self._create_prescription_change_request_serialize(
709
+ prescription_change_request=prescription_change_request,
704
710
  _request_auth=_request_auth,
705
711
  _content_type=_content_type,
706
712
  _headers=_headers,
@@ -723,9 +729,9 @@ class AsyncApi:
723
729
 
724
730
 
725
731
  @validate_call
726
- def create_workflow_request_without_preload_content(
732
+ def create_prescription_change_request_without_preload_content(
727
733
  self,
728
- workflow_request: WorkflowRequest,
734
+ prescription_change_request: PrescriptionChangeRequest,
729
735
  _request_timeout: Union[
730
736
  None,
731
737
  Annotated[StrictFloat, Field(gt=0)],
@@ -739,11 +745,11 @@ class AsyncApi:
739
745
  _headers: Optional[Dict[StrictStr, Any]] = None,
740
746
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
741
747
  ) -> RESTResponseType:
742
- """Create a new workflow request that will be processed asynchronously. Only use this endpoint if instructed to do so by Swifty support team.
748
+ """Create a new prescription change request that will be processed asynchronously.
743
749
 
744
750
 
745
- :param workflow_request: (required)
746
- :type workflow_request: WorkflowRequest
751
+ :param prescription_change_request: (required)
752
+ :type prescription_change_request: PrescriptionChangeRequest
747
753
  :param _request_timeout: timeout setting for this request. If one
748
754
  number provided, it will be total request
749
755
  timeout. It can also be a pair (tuple) of
@@ -766,8 +772,8 @@ class AsyncApi:
766
772
  :return: Returns the result object.
767
773
  """ # noqa: E501
768
774
 
769
- _param = self._create_workflow_request_serialize(
770
- workflow_request=workflow_request,
775
+ _param = self._create_prescription_change_request_serialize(
776
+ prescription_change_request=prescription_change_request,
771
777
  _request_auth=_request_auth,
772
778
  _content_type=_content_type,
773
779
  _headers=_headers,
@@ -785,9 +791,9 @@ class AsyncApi:
785
791
  return response_data.response
786
792
 
787
793
 
788
- def _create_workflow_request_serialize(
794
+ def _create_prescription_change_request_serialize(
789
795
  self,
790
- workflow_request,
796
+ prescription_change_request,
791
797
  _request_auth,
792
798
  _content_type,
793
799
  _headers,
@@ -813,8 +819,8 @@ class AsyncApi:
813
819
  # process the header parameters
814
820
  # process the form parameters
815
821
  # process the body parameter
816
- if workflow_request is not None:
817
- _body_params = workflow_request
822
+ if prescription_change_request is not None:
823
+ _body_params = prescription_change_request
818
824
 
819
825
 
820
826
  # set the HTTP header `Accept`
@@ -846,7 +852,2285 @@ class AsyncApi:
846
852
 
847
853
  return self.api_client.param_serialize(
848
854
  method='POST',
849
- resource_path='/swifty/1/async/workflow/request',
855
+ resource_path='/swifty/1/async/prescription/change_request',
856
+ path_params=_path_params,
857
+ query_params=_query_params,
858
+ header_params=_header_params,
859
+ body=_body_params,
860
+ post_params=_form_params,
861
+ files=_files,
862
+ auth_settings=_auth_settings,
863
+ collection_formats=_collection_formats,
864
+ _host=_host,
865
+ _request_auth=_request_auth
866
+ )
867
+
868
+
869
+
870
+
871
+ @validate_call
872
+ def create_prescription_change_request_response(
873
+ self,
874
+ prescription_change_request_response: PrescriptionChangeRequestResponse,
875
+ _request_timeout: Union[
876
+ None,
877
+ Annotated[StrictFloat, Field(gt=0)],
878
+ Tuple[
879
+ Annotated[StrictFloat, Field(gt=0)],
880
+ Annotated[StrictFloat, Field(gt=0)]
881
+ ]
882
+ ] = None,
883
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
884
+ _content_type: Optional[StrictStr] = None,
885
+ _headers: Optional[Dict[StrictStr, Any]] = None,
886
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
887
+ ) -> AsynchronousResponse:
888
+ """Approves a prescription change request and creates a new prescription with the changes.
889
+
890
+
891
+ :param prescription_change_request_response: (required)
892
+ :type prescription_change_request_response: PrescriptionChangeRequestResponse
893
+ :param _request_timeout: timeout setting for this request. If one
894
+ number provided, it will be total request
895
+ timeout. It can also be a pair (tuple) of
896
+ (connection, read) timeouts.
897
+ :type _request_timeout: int, tuple(int, int), optional
898
+ :param _request_auth: set to override the auth_settings for an a single
899
+ request; this effectively ignores the
900
+ authentication in the spec for a single request.
901
+ :type _request_auth: dict, optional
902
+ :param _content_type: force content-type for the request.
903
+ :type _content_type: str, Optional
904
+ :param _headers: set to override the headers for a single
905
+ request; this effectively ignores the headers
906
+ in the spec for a single request.
907
+ :type _headers: dict, optional
908
+ :param _host_index: set to override the host_index for a single
909
+ request; this effectively ignores the host_index
910
+ in the spec for a single request.
911
+ :type _host_index: int, optional
912
+ :return: Returns the result object.
913
+ """ # noqa: E501
914
+
915
+ _param = self._create_prescription_change_request_response_serialize(
916
+ prescription_change_request_response=prescription_change_request_response,
917
+ _request_auth=_request_auth,
918
+ _content_type=_content_type,
919
+ _headers=_headers,
920
+ _host_index=_host_index
921
+ )
922
+
923
+ _response_types_map: Dict[str, Optional[str]] = {
924
+ '201': "AsynchronousResponse",
925
+ '400': None,
926
+ }
927
+ response_data = self.api_client.call_api(
928
+ *_param,
929
+ _request_timeout=_request_timeout
930
+ )
931
+ response_data.read()
932
+ return self.api_client.response_deserialize(
933
+ response_data=response_data,
934
+ response_types_map=_response_types_map,
935
+ ).data
936
+
937
+
938
+ @validate_call
939
+ def create_prescription_change_request_response_with_http_info(
940
+ self,
941
+ prescription_change_request_response: PrescriptionChangeRequestResponse,
942
+ _request_timeout: Union[
943
+ None,
944
+ Annotated[StrictFloat, Field(gt=0)],
945
+ Tuple[
946
+ Annotated[StrictFloat, Field(gt=0)],
947
+ Annotated[StrictFloat, Field(gt=0)]
948
+ ]
949
+ ] = None,
950
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
951
+ _content_type: Optional[StrictStr] = None,
952
+ _headers: Optional[Dict[StrictStr, Any]] = None,
953
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
954
+ ) -> ApiResponse[AsynchronousResponse]:
955
+ """Approves a prescription change request and creates a new prescription with the changes.
956
+
957
+
958
+ :param prescription_change_request_response: (required)
959
+ :type prescription_change_request_response: PrescriptionChangeRequestResponse
960
+ :param _request_timeout: timeout setting for this request. If one
961
+ number provided, it will be total request
962
+ timeout. It can also be a pair (tuple) of
963
+ (connection, read) timeouts.
964
+ :type _request_timeout: int, tuple(int, int), optional
965
+ :param _request_auth: set to override the auth_settings for an a single
966
+ request; this effectively ignores the
967
+ authentication in the spec for a single request.
968
+ :type _request_auth: dict, optional
969
+ :param _content_type: force content-type for the request.
970
+ :type _content_type: str, Optional
971
+ :param _headers: set to override the headers for a single
972
+ request; this effectively ignores the headers
973
+ in the spec for a single request.
974
+ :type _headers: dict, optional
975
+ :param _host_index: set to override the host_index for a single
976
+ request; this effectively ignores the host_index
977
+ in the spec for a single request.
978
+ :type _host_index: int, optional
979
+ :return: Returns the result object.
980
+ """ # noqa: E501
981
+
982
+ _param = self._create_prescription_change_request_response_serialize(
983
+ prescription_change_request_response=prescription_change_request_response,
984
+ _request_auth=_request_auth,
985
+ _content_type=_content_type,
986
+ _headers=_headers,
987
+ _host_index=_host_index
988
+ )
989
+
990
+ _response_types_map: Dict[str, Optional[str]] = {
991
+ '201': "AsynchronousResponse",
992
+ '400': None,
993
+ }
994
+ response_data = self.api_client.call_api(
995
+ *_param,
996
+ _request_timeout=_request_timeout
997
+ )
998
+ response_data.read()
999
+ return self.api_client.response_deserialize(
1000
+ response_data=response_data,
1001
+ response_types_map=_response_types_map,
1002
+ )
1003
+
1004
+
1005
+ @validate_call
1006
+ def create_prescription_change_request_response_without_preload_content(
1007
+ self,
1008
+ prescription_change_request_response: PrescriptionChangeRequestResponse,
1009
+ _request_timeout: Union[
1010
+ None,
1011
+ Annotated[StrictFloat, Field(gt=0)],
1012
+ Tuple[
1013
+ Annotated[StrictFloat, Field(gt=0)],
1014
+ Annotated[StrictFloat, Field(gt=0)]
1015
+ ]
1016
+ ] = None,
1017
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1018
+ _content_type: Optional[StrictStr] = None,
1019
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1020
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1021
+ ) -> RESTResponseType:
1022
+ """Approves a prescription change request and creates a new prescription with the changes.
1023
+
1024
+
1025
+ :param prescription_change_request_response: (required)
1026
+ :type prescription_change_request_response: PrescriptionChangeRequestResponse
1027
+ :param _request_timeout: timeout setting for this request. If one
1028
+ number provided, it will be total request
1029
+ timeout. It can also be a pair (tuple) of
1030
+ (connection, read) timeouts.
1031
+ :type _request_timeout: int, tuple(int, int), optional
1032
+ :param _request_auth: set to override the auth_settings for an a single
1033
+ request; this effectively ignores the
1034
+ authentication in the spec for a single request.
1035
+ :type _request_auth: dict, optional
1036
+ :param _content_type: force content-type for the request.
1037
+ :type _content_type: str, Optional
1038
+ :param _headers: set to override the headers for a single
1039
+ request; this effectively ignores the headers
1040
+ in the spec for a single request.
1041
+ :type _headers: dict, optional
1042
+ :param _host_index: set to override the host_index for a single
1043
+ request; this effectively ignores the host_index
1044
+ in the spec for a single request.
1045
+ :type _host_index: int, optional
1046
+ :return: Returns the result object.
1047
+ """ # noqa: E501
1048
+
1049
+ _param = self._create_prescription_change_request_response_serialize(
1050
+ prescription_change_request_response=prescription_change_request_response,
1051
+ _request_auth=_request_auth,
1052
+ _content_type=_content_type,
1053
+ _headers=_headers,
1054
+ _host_index=_host_index
1055
+ )
1056
+
1057
+ _response_types_map: Dict[str, Optional[str]] = {
1058
+ '201': "AsynchronousResponse",
1059
+ '400': None,
1060
+ }
1061
+ response_data = self.api_client.call_api(
1062
+ *_param,
1063
+ _request_timeout=_request_timeout
1064
+ )
1065
+ return response_data.response
1066
+
1067
+
1068
+ def _create_prescription_change_request_response_serialize(
1069
+ self,
1070
+ prescription_change_request_response,
1071
+ _request_auth,
1072
+ _content_type,
1073
+ _headers,
1074
+ _host_index,
1075
+ ) -> RequestSerialized:
1076
+
1077
+ _host = None
1078
+
1079
+ _collection_formats: Dict[str, str] = {
1080
+ }
1081
+
1082
+ _path_params: Dict[str, str] = {}
1083
+ _query_params: List[Tuple[str, str]] = []
1084
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1085
+ _form_params: List[Tuple[str, str]] = []
1086
+ _files: Dict[
1087
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1088
+ ] = {}
1089
+ _body_params: Optional[bytes] = None
1090
+
1091
+ # process the path parameters
1092
+ # process the query parameters
1093
+ # process the header parameters
1094
+ # process the form parameters
1095
+ # process the body parameter
1096
+ if prescription_change_request_response is not None:
1097
+ _body_params = prescription_change_request_response
1098
+
1099
+
1100
+ # set the HTTP header `Accept`
1101
+ if 'Accept' not in _header_params:
1102
+ _header_params['Accept'] = self.api_client.select_header_accept(
1103
+ [
1104
+ 'application/json'
1105
+ ]
1106
+ )
1107
+
1108
+ # set the HTTP header `Content-Type`
1109
+ if _content_type:
1110
+ _header_params['Content-Type'] = _content_type
1111
+ else:
1112
+ _default_content_type = (
1113
+ self.api_client.select_header_content_type(
1114
+ [
1115
+ 'application/json'
1116
+ ]
1117
+ )
1118
+ )
1119
+ if _default_content_type is not None:
1120
+ _header_params['Content-Type'] = _default_content_type
1121
+
1122
+ # authentication setting
1123
+ _auth_settings: List[str] = [
1124
+ 'opaque_token'
1125
+ ]
1126
+
1127
+ return self.api_client.param_serialize(
1128
+ method='POST',
1129
+ resource_path='/swifty/1/async/prescription/change_request/{message_id}/response',
1130
+ path_params=_path_params,
1131
+ query_params=_query_params,
1132
+ header_params=_header_params,
1133
+ body=_body_params,
1134
+ post_params=_form_params,
1135
+ files=_files,
1136
+ auth_settings=_auth_settings,
1137
+ collection_formats=_collection_formats,
1138
+ _host=_host,
1139
+ _request_auth=_request_auth
1140
+ )
1141
+
1142
+
1143
+
1144
+
1145
+ @validate_call
1146
+ def create_prescription_transfer_in_request(
1147
+ self,
1148
+ prescription_data: PrescriptionData,
1149
+ _request_timeout: Union[
1150
+ None,
1151
+ Annotated[StrictFloat, Field(gt=0)],
1152
+ Tuple[
1153
+ Annotated[StrictFloat, Field(gt=0)],
1154
+ Annotated[StrictFloat, Field(gt=0)]
1155
+ ]
1156
+ ] = None,
1157
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1158
+ _content_type: Optional[StrictStr] = None,
1159
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1160
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1161
+ ) -> AsynchronousResponse:
1162
+ """Create a new prescription transfer in request that will be processed asynchronously.
1163
+
1164
+
1165
+ :param prescription_data: (required)
1166
+ :type prescription_data: PrescriptionData
1167
+ :param _request_timeout: timeout setting for this request. If one
1168
+ number provided, it will be total request
1169
+ timeout. It can also be a pair (tuple) of
1170
+ (connection, read) timeouts.
1171
+ :type _request_timeout: int, tuple(int, int), optional
1172
+ :param _request_auth: set to override the auth_settings for an a single
1173
+ request; this effectively ignores the
1174
+ authentication in the spec for a single request.
1175
+ :type _request_auth: dict, optional
1176
+ :param _content_type: force content-type for the request.
1177
+ :type _content_type: str, Optional
1178
+ :param _headers: set to override the headers for a single
1179
+ request; this effectively ignores the headers
1180
+ in the spec for a single request.
1181
+ :type _headers: dict, optional
1182
+ :param _host_index: set to override the host_index for a single
1183
+ request; this effectively ignores the host_index
1184
+ in the spec for a single request.
1185
+ :type _host_index: int, optional
1186
+ :return: Returns the result object.
1187
+ """ # noqa: E501
1188
+
1189
+ _param = self._create_prescription_transfer_in_request_serialize(
1190
+ prescription_data=prescription_data,
1191
+ _request_auth=_request_auth,
1192
+ _content_type=_content_type,
1193
+ _headers=_headers,
1194
+ _host_index=_host_index
1195
+ )
1196
+
1197
+ _response_types_map: Dict[str, Optional[str]] = {
1198
+ '201': "AsynchronousResponse",
1199
+ '400': None,
1200
+ }
1201
+ response_data = self.api_client.call_api(
1202
+ *_param,
1203
+ _request_timeout=_request_timeout
1204
+ )
1205
+ response_data.read()
1206
+ return self.api_client.response_deserialize(
1207
+ response_data=response_data,
1208
+ response_types_map=_response_types_map,
1209
+ ).data
1210
+
1211
+
1212
+ @validate_call
1213
+ def create_prescription_transfer_in_request_with_http_info(
1214
+ self,
1215
+ prescription_data: PrescriptionData,
1216
+ _request_timeout: Union[
1217
+ None,
1218
+ Annotated[StrictFloat, Field(gt=0)],
1219
+ Tuple[
1220
+ Annotated[StrictFloat, Field(gt=0)],
1221
+ Annotated[StrictFloat, Field(gt=0)]
1222
+ ]
1223
+ ] = None,
1224
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1225
+ _content_type: Optional[StrictStr] = None,
1226
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1227
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1228
+ ) -> ApiResponse[AsynchronousResponse]:
1229
+ """Create a new prescription transfer in request that will be processed asynchronously.
1230
+
1231
+
1232
+ :param prescription_data: (required)
1233
+ :type prescription_data: PrescriptionData
1234
+ :param _request_timeout: timeout setting for this request. If one
1235
+ number provided, it will be total request
1236
+ timeout. It can also be a pair (tuple) of
1237
+ (connection, read) timeouts.
1238
+ :type _request_timeout: int, tuple(int, int), optional
1239
+ :param _request_auth: set to override the auth_settings for an a single
1240
+ request; this effectively ignores the
1241
+ authentication in the spec for a single request.
1242
+ :type _request_auth: dict, optional
1243
+ :param _content_type: force content-type for the request.
1244
+ :type _content_type: str, Optional
1245
+ :param _headers: set to override the headers for a single
1246
+ request; this effectively ignores the headers
1247
+ in the spec for a single request.
1248
+ :type _headers: dict, optional
1249
+ :param _host_index: set to override the host_index for a single
1250
+ request; this effectively ignores the host_index
1251
+ in the spec for a single request.
1252
+ :type _host_index: int, optional
1253
+ :return: Returns the result object.
1254
+ """ # noqa: E501
1255
+
1256
+ _param = self._create_prescription_transfer_in_request_serialize(
1257
+ prescription_data=prescription_data,
1258
+ _request_auth=_request_auth,
1259
+ _content_type=_content_type,
1260
+ _headers=_headers,
1261
+ _host_index=_host_index
1262
+ )
1263
+
1264
+ _response_types_map: Dict[str, Optional[str]] = {
1265
+ '201': "AsynchronousResponse",
1266
+ '400': None,
1267
+ }
1268
+ response_data = self.api_client.call_api(
1269
+ *_param,
1270
+ _request_timeout=_request_timeout
1271
+ )
1272
+ response_data.read()
1273
+ return self.api_client.response_deserialize(
1274
+ response_data=response_data,
1275
+ response_types_map=_response_types_map,
1276
+ )
1277
+
1278
+
1279
+ @validate_call
1280
+ def create_prescription_transfer_in_request_without_preload_content(
1281
+ self,
1282
+ prescription_data: PrescriptionData,
1283
+ _request_timeout: Union[
1284
+ None,
1285
+ Annotated[StrictFloat, Field(gt=0)],
1286
+ Tuple[
1287
+ Annotated[StrictFloat, Field(gt=0)],
1288
+ Annotated[StrictFloat, Field(gt=0)]
1289
+ ]
1290
+ ] = None,
1291
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1292
+ _content_type: Optional[StrictStr] = None,
1293
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1294
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1295
+ ) -> RESTResponseType:
1296
+ """Create a new prescription transfer in request that will be processed asynchronously.
1297
+
1298
+
1299
+ :param prescription_data: (required)
1300
+ :type prescription_data: PrescriptionData
1301
+ :param _request_timeout: timeout setting for this request. If one
1302
+ number provided, it will be total request
1303
+ timeout. It can also be a pair (tuple) of
1304
+ (connection, read) timeouts.
1305
+ :type _request_timeout: int, tuple(int, int), optional
1306
+ :param _request_auth: set to override the auth_settings for an a single
1307
+ request; this effectively ignores the
1308
+ authentication in the spec for a single request.
1309
+ :type _request_auth: dict, optional
1310
+ :param _content_type: force content-type for the request.
1311
+ :type _content_type: str, Optional
1312
+ :param _headers: set to override the headers for a single
1313
+ request; this effectively ignores the headers
1314
+ in the spec for a single request.
1315
+ :type _headers: dict, optional
1316
+ :param _host_index: set to override the host_index for a single
1317
+ request; this effectively ignores the host_index
1318
+ in the spec for a single request.
1319
+ :type _host_index: int, optional
1320
+ :return: Returns the result object.
1321
+ """ # noqa: E501
1322
+
1323
+ _param = self._create_prescription_transfer_in_request_serialize(
1324
+ prescription_data=prescription_data,
1325
+ _request_auth=_request_auth,
1326
+ _content_type=_content_type,
1327
+ _headers=_headers,
1328
+ _host_index=_host_index
1329
+ )
1330
+
1331
+ _response_types_map: Dict[str, Optional[str]] = {
1332
+ '201': "AsynchronousResponse",
1333
+ '400': None,
1334
+ }
1335
+ response_data = self.api_client.call_api(
1336
+ *_param,
1337
+ _request_timeout=_request_timeout
1338
+ )
1339
+ return response_data.response
1340
+
1341
+
1342
+ def _create_prescription_transfer_in_request_serialize(
1343
+ self,
1344
+ prescription_data,
1345
+ _request_auth,
1346
+ _content_type,
1347
+ _headers,
1348
+ _host_index,
1349
+ ) -> RequestSerialized:
1350
+
1351
+ _host = None
1352
+
1353
+ _collection_formats: Dict[str, str] = {
1354
+ }
1355
+
1356
+ _path_params: Dict[str, str] = {}
1357
+ _query_params: List[Tuple[str, str]] = []
1358
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1359
+ _form_params: List[Tuple[str, str]] = []
1360
+ _files: Dict[
1361
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1362
+ ] = {}
1363
+ _body_params: Optional[bytes] = None
1364
+
1365
+ # process the path parameters
1366
+ # process the query parameters
1367
+ # process the header parameters
1368
+ # process the form parameters
1369
+ # process the body parameter
1370
+ if prescription_data is not None:
1371
+ _body_params = prescription_data
1372
+
1373
+
1374
+ # set the HTTP header `Accept`
1375
+ if 'Accept' not in _header_params:
1376
+ _header_params['Accept'] = self.api_client.select_header_accept(
1377
+ [
1378
+ 'application/json'
1379
+ ]
1380
+ )
1381
+
1382
+ # set the HTTP header `Content-Type`
1383
+ if _content_type:
1384
+ _header_params['Content-Type'] = _content_type
1385
+ else:
1386
+ _default_content_type = (
1387
+ self.api_client.select_header_content_type(
1388
+ [
1389
+ 'application/json'
1390
+ ]
1391
+ )
1392
+ )
1393
+ if _default_content_type is not None:
1394
+ _header_params['Content-Type'] = _default_content_type
1395
+
1396
+ # authentication setting
1397
+ _auth_settings: List[str] = [
1398
+ 'opaque_token'
1399
+ ]
1400
+
1401
+ return self.api_client.param_serialize(
1402
+ method='POST',
1403
+ resource_path='/swifty/1/async/prescription/transfer_in_request',
1404
+ path_params=_path_params,
1405
+ query_params=_query_params,
1406
+ header_params=_header_params,
1407
+ body=_body_params,
1408
+ post_params=_form_params,
1409
+ files=_files,
1410
+ auth_settings=_auth_settings,
1411
+ collection_formats=_collection_formats,
1412
+ _host=_host,
1413
+ _request_auth=_request_auth
1414
+ )
1415
+
1416
+
1417
+
1418
+
1419
+ @validate_call
1420
+ def create_prescription_transfer_out_request(
1421
+ self,
1422
+ prescription_transfer_request: PrescriptionTransferRequest,
1423
+ _request_timeout: Union[
1424
+ None,
1425
+ Annotated[StrictFloat, Field(gt=0)],
1426
+ Tuple[
1427
+ Annotated[StrictFloat, Field(gt=0)],
1428
+ Annotated[StrictFloat, Field(gt=0)]
1429
+ ]
1430
+ ] = None,
1431
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1432
+ _content_type: Optional[StrictStr] = None,
1433
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1434
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1435
+ ) -> AsynchronousResponse:
1436
+ """Create a new prescription transfer request that will be processed asynchronously.
1437
+
1438
+
1439
+ :param prescription_transfer_request: (required)
1440
+ :type prescription_transfer_request: PrescriptionTransferRequest
1441
+ :param _request_timeout: timeout setting for this request. If one
1442
+ number provided, it will be total request
1443
+ timeout. It can also be a pair (tuple) of
1444
+ (connection, read) timeouts.
1445
+ :type _request_timeout: int, tuple(int, int), optional
1446
+ :param _request_auth: set to override the auth_settings for an a single
1447
+ request; this effectively ignores the
1448
+ authentication in the spec for a single request.
1449
+ :type _request_auth: dict, optional
1450
+ :param _content_type: force content-type for the request.
1451
+ :type _content_type: str, Optional
1452
+ :param _headers: set to override the headers for a single
1453
+ request; this effectively ignores the headers
1454
+ in the spec for a single request.
1455
+ :type _headers: dict, optional
1456
+ :param _host_index: set to override the host_index for a single
1457
+ request; this effectively ignores the host_index
1458
+ in the spec for a single request.
1459
+ :type _host_index: int, optional
1460
+ :return: Returns the result object.
1461
+ """ # noqa: E501
1462
+
1463
+ _param = self._create_prescription_transfer_out_request_serialize(
1464
+ prescription_transfer_request=prescription_transfer_request,
1465
+ _request_auth=_request_auth,
1466
+ _content_type=_content_type,
1467
+ _headers=_headers,
1468
+ _host_index=_host_index
1469
+ )
1470
+
1471
+ _response_types_map: Dict[str, Optional[str]] = {
1472
+ '201': "AsynchronousResponse",
1473
+ '400': None,
1474
+ }
1475
+ response_data = self.api_client.call_api(
1476
+ *_param,
1477
+ _request_timeout=_request_timeout
1478
+ )
1479
+ response_data.read()
1480
+ return self.api_client.response_deserialize(
1481
+ response_data=response_data,
1482
+ response_types_map=_response_types_map,
1483
+ ).data
1484
+
1485
+
1486
+ @validate_call
1487
+ def create_prescription_transfer_out_request_with_http_info(
1488
+ self,
1489
+ prescription_transfer_request: PrescriptionTransferRequest,
1490
+ _request_timeout: Union[
1491
+ None,
1492
+ Annotated[StrictFloat, Field(gt=0)],
1493
+ Tuple[
1494
+ Annotated[StrictFloat, Field(gt=0)],
1495
+ Annotated[StrictFloat, Field(gt=0)]
1496
+ ]
1497
+ ] = None,
1498
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1499
+ _content_type: Optional[StrictStr] = None,
1500
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1501
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1502
+ ) -> ApiResponse[AsynchronousResponse]:
1503
+ """Create a new prescription transfer request that will be processed asynchronously.
1504
+
1505
+
1506
+ :param prescription_transfer_request: (required)
1507
+ :type prescription_transfer_request: PrescriptionTransferRequest
1508
+ :param _request_timeout: timeout setting for this request. If one
1509
+ number provided, it will be total request
1510
+ timeout. It can also be a pair (tuple) of
1511
+ (connection, read) timeouts.
1512
+ :type _request_timeout: int, tuple(int, int), optional
1513
+ :param _request_auth: set to override the auth_settings for an a single
1514
+ request; this effectively ignores the
1515
+ authentication in the spec for a single request.
1516
+ :type _request_auth: dict, optional
1517
+ :param _content_type: force content-type for the request.
1518
+ :type _content_type: str, Optional
1519
+ :param _headers: set to override the headers for a single
1520
+ request; this effectively ignores the headers
1521
+ in the spec for a single request.
1522
+ :type _headers: dict, optional
1523
+ :param _host_index: set to override the host_index for a single
1524
+ request; this effectively ignores the host_index
1525
+ in the spec for a single request.
1526
+ :type _host_index: int, optional
1527
+ :return: Returns the result object.
1528
+ """ # noqa: E501
1529
+
1530
+ _param = self._create_prescription_transfer_out_request_serialize(
1531
+ prescription_transfer_request=prescription_transfer_request,
1532
+ _request_auth=_request_auth,
1533
+ _content_type=_content_type,
1534
+ _headers=_headers,
1535
+ _host_index=_host_index
1536
+ )
1537
+
1538
+ _response_types_map: Dict[str, Optional[str]] = {
1539
+ '201': "AsynchronousResponse",
1540
+ '400': None,
1541
+ }
1542
+ response_data = self.api_client.call_api(
1543
+ *_param,
1544
+ _request_timeout=_request_timeout
1545
+ )
1546
+ response_data.read()
1547
+ return self.api_client.response_deserialize(
1548
+ response_data=response_data,
1549
+ response_types_map=_response_types_map,
1550
+ )
1551
+
1552
+
1553
+ @validate_call
1554
+ def create_prescription_transfer_out_request_without_preload_content(
1555
+ self,
1556
+ prescription_transfer_request: PrescriptionTransferRequest,
1557
+ _request_timeout: Union[
1558
+ None,
1559
+ Annotated[StrictFloat, Field(gt=0)],
1560
+ Tuple[
1561
+ Annotated[StrictFloat, Field(gt=0)],
1562
+ Annotated[StrictFloat, Field(gt=0)]
1563
+ ]
1564
+ ] = None,
1565
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1566
+ _content_type: Optional[StrictStr] = None,
1567
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1568
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1569
+ ) -> RESTResponseType:
1570
+ """Create a new prescription transfer request that will be processed asynchronously.
1571
+
1572
+
1573
+ :param prescription_transfer_request: (required)
1574
+ :type prescription_transfer_request: PrescriptionTransferRequest
1575
+ :param _request_timeout: timeout setting for this request. If one
1576
+ number provided, it will be total request
1577
+ timeout. It can also be a pair (tuple) of
1578
+ (connection, read) timeouts.
1579
+ :type _request_timeout: int, tuple(int, int), optional
1580
+ :param _request_auth: set to override the auth_settings for an a single
1581
+ request; this effectively ignores the
1582
+ authentication in the spec for a single request.
1583
+ :type _request_auth: dict, optional
1584
+ :param _content_type: force content-type for the request.
1585
+ :type _content_type: str, Optional
1586
+ :param _headers: set to override the headers for a single
1587
+ request; this effectively ignores the headers
1588
+ in the spec for a single request.
1589
+ :type _headers: dict, optional
1590
+ :param _host_index: set to override the host_index for a single
1591
+ request; this effectively ignores the host_index
1592
+ in the spec for a single request.
1593
+ :type _host_index: int, optional
1594
+ :return: Returns the result object.
1595
+ """ # noqa: E501
1596
+
1597
+ _param = self._create_prescription_transfer_out_request_serialize(
1598
+ prescription_transfer_request=prescription_transfer_request,
1599
+ _request_auth=_request_auth,
1600
+ _content_type=_content_type,
1601
+ _headers=_headers,
1602
+ _host_index=_host_index
1603
+ )
1604
+
1605
+ _response_types_map: Dict[str, Optional[str]] = {
1606
+ '201': "AsynchronousResponse",
1607
+ '400': None,
1608
+ }
1609
+ response_data = self.api_client.call_api(
1610
+ *_param,
1611
+ _request_timeout=_request_timeout
1612
+ )
1613
+ return response_data.response
1614
+
1615
+
1616
+ def _create_prescription_transfer_out_request_serialize(
1617
+ self,
1618
+ prescription_transfer_request,
1619
+ _request_auth,
1620
+ _content_type,
1621
+ _headers,
1622
+ _host_index,
1623
+ ) -> RequestSerialized:
1624
+
1625
+ _host = None
1626
+
1627
+ _collection_formats: Dict[str, str] = {
1628
+ }
1629
+
1630
+ _path_params: Dict[str, str] = {}
1631
+ _query_params: List[Tuple[str, str]] = []
1632
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1633
+ _form_params: List[Tuple[str, str]] = []
1634
+ _files: Dict[
1635
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1636
+ ] = {}
1637
+ _body_params: Optional[bytes] = None
1638
+
1639
+ # process the path parameters
1640
+ # process the query parameters
1641
+ # process the header parameters
1642
+ # process the form parameters
1643
+ # process the body parameter
1644
+ if prescription_transfer_request is not None:
1645
+ _body_params = prescription_transfer_request
1646
+
1647
+
1648
+ # set the HTTP header `Accept`
1649
+ if 'Accept' not in _header_params:
1650
+ _header_params['Accept'] = self.api_client.select_header_accept(
1651
+ [
1652
+ 'application/json'
1653
+ ]
1654
+ )
1655
+
1656
+ # set the HTTP header `Content-Type`
1657
+ if _content_type:
1658
+ _header_params['Content-Type'] = _content_type
1659
+ else:
1660
+ _default_content_type = (
1661
+ self.api_client.select_header_content_type(
1662
+ [
1663
+ 'application/json'
1664
+ ]
1665
+ )
1666
+ )
1667
+ if _default_content_type is not None:
1668
+ _header_params['Content-Type'] = _default_content_type
1669
+
1670
+ # authentication setting
1671
+ _auth_settings: List[str] = [
1672
+ 'opaque_token'
1673
+ ]
1674
+
1675
+ return self.api_client.param_serialize(
1676
+ method='POST',
1677
+ resource_path='/swifty/1/async/prescription/transfer_out_request',
1678
+ path_params=_path_params,
1679
+ query_params=_query_params,
1680
+ header_params=_header_params,
1681
+ body=_body_params,
1682
+ post_params=_form_params,
1683
+ files=_files,
1684
+ auth_settings=_auth_settings,
1685
+ collection_formats=_collection_formats,
1686
+ _host=_host,
1687
+ _request_auth=_request_auth
1688
+ )
1689
+
1690
+
1691
+
1692
+
1693
+ @validate_call
1694
+ def create_workflow_request(
1695
+ self,
1696
+ workflow_request: WorkflowRequest,
1697
+ _request_timeout: Union[
1698
+ None,
1699
+ Annotated[StrictFloat, Field(gt=0)],
1700
+ Tuple[
1701
+ Annotated[StrictFloat, Field(gt=0)],
1702
+ Annotated[StrictFloat, Field(gt=0)]
1703
+ ]
1704
+ ] = None,
1705
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1706
+ _content_type: Optional[StrictStr] = None,
1707
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1708
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1709
+ ) -> AsynchronousResponse:
1710
+ """Create a new workflow request that will be processed asynchronously. Only use this endpoint if instructed to do so by Swifty support team.
1711
+
1712
+
1713
+ :param workflow_request: (required)
1714
+ :type workflow_request: WorkflowRequest
1715
+ :param _request_timeout: timeout setting for this request. If one
1716
+ number provided, it will be total request
1717
+ timeout. It can also be a pair (tuple) of
1718
+ (connection, read) timeouts.
1719
+ :type _request_timeout: int, tuple(int, int), optional
1720
+ :param _request_auth: set to override the auth_settings for an a single
1721
+ request; this effectively ignores the
1722
+ authentication in the spec for a single request.
1723
+ :type _request_auth: dict, optional
1724
+ :param _content_type: force content-type for the request.
1725
+ :type _content_type: str, Optional
1726
+ :param _headers: set to override the headers for a single
1727
+ request; this effectively ignores the headers
1728
+ in the spec for a single request.
1729
+ :type _headers: dict, optional
1730
+ :param _host_index: set to override the host_index for a single
1731
+ request; this effectively ignores the host_index
1732
+ in the spec for a single request.
1733
+ :type _host_index: int, optional
1734
+ :return: Returns the result object.
1735
+ """ # noqa: E501
1736
+
1737
+ _param = self._create_workflow_request_serialize(
1738
+ workflow_request=workflow_request,
1739
+ _request_auth=_request_auth,
1740
+ _content_type=_content_type,
1741
+ _headers=_headers,
1742
+ _host_index=_host_index
1743
+ )
1744
+
1745
+ _response_types_map: Dict[str, Optional[str]] = {
1746
+ '201': "AsynchronousResponse",
1747
+ '400': None,
1748
+ }
1749
+ response_data = self.api_client.call_api(
1750
+ *_param,
1751
+ _request_timeout=_request_timeout
1752
+ )
1753
+ response_data.read()
1754
+ return self.api_client.response_deserialize(
1755
+ response_data=response_data,
1756
+ response_types_map=_response_types_map,
1757
+ ).data
1758
+
1759
+
1760
+ @validate_call
1761
+ def create_workflow_request_with_http_info(
1762
+ self,
1763
+ workflow_request: WorkflowRequest,
1764
+ _request_timeout: Union[
1765
+ None,
1766
+ Annotated[StrictFloat, Field(gt=0)],
1767
+ Tuple[
1768
+ Annotated[StrictFloat, Field(gt=0)],
1769
+ Annotated[StrictFloat, Field(gt=0)]
1770
+ ]
1771
+ ] = None,
1772
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1773
+ _content_type: Optional[StrictStr] = None,
1774
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1775
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1776
+ ) -> ApiResponse[AsynchronousResponse]:
1777
+ """Create a new workflow request that will be processed asynchronously. Only use this endpoint if instructed to do so by Swifty support team.
1778
+
1779
+
1780
+ :param workflow_request: (required)
1781
+ :type workflow_request: WorkflowRequest
1782
+ :param _request_timeout: timeout setting for this request. If one
1783
+ number provided, it will be total request
1784
+ timeout. It can also be a pair (tuple) of
1785
+ (connection, read) timeouts.
1786
+ :type _request_timeout: int, tuple(int, int), optional
1787
+ :param _request_auth: set to override the auth_settings for an a single
1788
+ request; this effectively ignores the
1789
+ authentication in the spec for a single request.
1790
+ :type _request_auth: dict, optional
1791
+ :param _content_type: force content-type for the request.
1792
+ :type _content_type: str, Optional
1793
+ :param _headers: set to override the headers for a single
1794
+ request; this effectively ignores the headers
1795
+ in the spec for a single request.
1796
+ :type _headers: dict, optional
1797
+ :param _host_index: set to override the host_index for a single
1798
+ request; this effectively ignores the host_index
1799
+ in the spec for a single request.
1800
+ :type _host_index: int, optional
1801
+ :return: Returns the result object.
1802
+ """ # noqa: E501
1803
+
1804
+ _param = self._create_workflow_request_serialize(
1805
+ workflow_request=workflow_request,
1806
+ _request_auth=_request_auth,
1807
+ _content_type=_content_type,
1808
+ _headers=_headers,
1809
+ _host_index=_host_index
1810
+ )
1811
+
1812
+ _response_types_map: Dict[str, Optional[str]] = {
1813
+ '201': "AsynchronousResponse",
1814
+ '400': None,
1815
+ }
1816
+ response_data = self.api_client.call_api(
1817
+ *_param,
1818
+ _request_timeout=_request_timeout
1819
+ )
1820
+ response_data.read()
1821
+ return self.api_client.response_deserialize(
1822
+ response_data=response_data,
1823
+ response_types_map=_response_types_map,
1824
+ )
1825
+
1826
+
1827
+ @validate_call
1828
+ def create_workflow_request_without_preload_content(
1829
+ self,
1830
+ workflow_request: WorkflowRequest,
1831
+ _request_timeout: Union[
1832
+ None,
1833
+ Annotated[StrictFloat, Field(gt=0)],
1834
+ Tuple[
1835
+ Annotated[StrictFloat, Field(gt=0)],
1836
+ Annotated[StrictFloat, Field(gt=0)]
1837
+ ]
1838
+ ] = None,
1839
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1840
+ _content_type: Optional[StrictStr] = None,
1841
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1842
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1843
+ ) -> RESTResponseType:
1844
+ """Create a new workflow request that will be processed asynchronously. Only use this endpoint if instructed to do so by Swifty support team.
1845
+
1846
+
1847
+ :param workflow_request: (required)
1848
+ :type workflow_request: WorkflowRequest
1849
+ :param _request_timeout: timeout setting for this request. If one
1850
+ number provided, it will be total request
1851
+ timeout. It can also be a pair (tuple) of
1852
+ (connection, read) timeouts.
1853
+ :type _request_timeout: int, tuple(int, int), optional
1854
+ :param _request_auth: set to override the auth_settings for an a single
1855
+ request; this effectively ignores the
1856
+ authentication in the spec for a single request.
1857
+ :type _request_auth: dict, optional
1858
+ :param _content_type: force content-type for the request.
1859
+ :type _content_type: str, Optional
1860
+ :param _headers: set to override the headers for a single
1861
+ request; this effectively ignores the headers
1862
+ in the spec for a single request.
1863
+ :type _headers: dict, optional
1864
+ :param _host_index: set to override the host_index for a single
1865
+ request; this effectively ignores the host_index
1866
+ in the spec for a single request.
1867
+ :type _host_index: int, optional
1868
+ :return: Returns the result object.
1869
+ """ # noqa: E501
1870
+
1871
+ _param = self._create_workflow_request_serialize(
1872
+ workflow_request=workflow_request,
1873
+ _request_auth=_request_auth,
1874
+ _content_type=_content_type,
1875
+ _headers=_headers,
1876
+ _host_index=_host_index
1877
+ )
1878
+
1879
+ _response_types_map: Dict[str, Optional[str]] = {
1880
+ '201': "AsynchronousResponse",
1881
+ '400': None,
1882
+ }
1883
+ response_data = self.api_client.call_api(
1884
+ *_param,
1885
+ _request_timeout=_request_timeout
1886
+ )
1887
+ return response_data.response
1888
+
1889
+
1890
+ def _create_workflow_request_serialize(
1891
+ self,
1892
+ workflow_request,
1893
+ _request_auth,
1894
+ _content_type,
1895
+ _headers,
1896
+ _host_index,
1897
+ ) -> RequestSerialized:
1898
+
1899
+ _host = None
1900
+
1901
+ _collection_formats: Dict[str, str] = {
1902
+ }
1903
+
1904
+ _path_params: Dict[str, str] = {}
1905
+ _query_params: List[Tuple[str, str]] = []
1906
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1907
+ _form_params: List[Tuple[str, str]] = []
1908
+ _files: Dict[
1909
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1910
+ ] = {}
1911
+ _body_params: Optional[bytes] = None
1912
+
1913
+ # process the path parameters
1914
+ # process the query parameters
1915
+ # process the header parameters
1916
+ # process the form parameters
1917
+ # process the body parameter
1918
+ if workflow_request is not None:
1919
+ _body_params = workflow_request
1920
+
1921
+
1922
+ # set the HTTP header `Accept`
1923
+ if 'Accept' not in _header_params:
1924
+ _header_params['Accept'] = self.api_client.select_header_accept(
1925
+ [
1926
+ 'application/json'
1927
+ ]
1928
+ )
1929
+
1930
+ # set the HTTP header `Content-Type`
1931
+ if _content_type:
1932
+ _header_params['Content-Type'] = _content_type
1933
+ else:
1934
+ _default_content_type = (
1935
+ self.api_client.select_header_content_type(
1936
+ [
1937
+ 'application/json'
1938
+ ]
1939
+ )
1940
+ )
1941
+ if _default_content_type is not None:
1942
+ _header_params['Content-Type'] = _default_content_type
1943
+
1944
+ # authentication setting
1945
+ _auth_settings: List[str] = [
1946
+ 'opaque_token'
1947
+ ]
1948
+
1949
+ return self.api_client.param_serialize(
1950
+ method='POST',
1951
+ resource_path='/swifty/1/async/workflow/request',
1952
+ path_params=_path_params,
1953
+ query_params=_query_params,
1954
+ header_params=_header_params,
1955
+ body=_body_params,
1956
+ post_params=_form_params,
1957
+ files=_files,
1958
+ auth_settings=_auth_settings,
1959
+ collection_formats=_collection_formats,
1960
+ _host=_host,
1961
+ _request_auth=_request_auth
1962
+ )
1963
+
1964
+
1965
+
1966
+
1967
+ @validate_call
1968
+ def get_patient_activity(
1969
+ self,
1970
+ message_id: StrictStr,
1971
+ deep: Optional[StrictBool] = None,
1972
+ _request_timeout: Union[
1973
+ None,
1974
+ Annotated[StrictFloat, Field(gt=0)],
1975
+ Tuple[
1976
+ Annotated[StrictFloat, Field(gt=0)],
1977
+ Annotated[StrictFloat, Field(gt=0)]
1978
+ ]
1979
+ ] = None,
1980
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1981
+ _content_type: Optional[StrictStr] = None,
1982
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1983
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1984
+ ) -> PatientActivityMessage:
1985
+ """Check the processing status of a previously submitted patient activity
1986
+
1987
+
1988
+ :param message_id: (required)
1989
+ :type message_id: str
1990
+ :param deep:
1991
+ :type deep: bool
1992
+ :param _request_timeout: timeout setting for this request. If one
1993
+ number provided, it will be total request
1994
+ timeout. It can also be a pair (tuple) of
1995
+ (connection, read) timeouts.
1996
+ :type _request_timeout: int, tuple(int, int), optional
1997
+ :param _request_auth: set to override the auth_settings for an a single
1998
+ request; this effectively ignores the
1999
+ authentication in the spec for a single request.
2000
+ :type _request_auth: dict, optional
2001
+ :param _content_type: force content-type for the request.
2002
+ :type _content_type: str, Optional
2003
+ :param _headers: set to override the headers for a single
2004
+ request; this effectively ignores the headers
2005
+ in the spec for a single request.
2006
+ :type _headers: dict, optional
2007
+ :param _host_index: set to override the host_index for a single
2008
+ request; this effectively ignores the host_index
2009
+ in the spec for a single request.
2010
+ :type _host_index: int, optional
2011
+ :return: Returns the result object.
2012
+ """ # noqa: E501
2013
+
2014
+ _param = self._get_patient_activity_serialize(
2015
+ message_id=message_id,
2016
+ deep=deep,
2017
+ _request_auth=_request_auth,
2018
+ _content_type=_content_type,
2019
+ _headers=_headers,
2020
+ _host_index=_host_index
2021
+ )
2022
+
2023
+ _response_types_map: Dict[str, Optional[str]] = {
2024
+ '200': "PatientActivityMessage",
2025
+ '404': None,
2026
+ }
2027
+ response_data = self.api_client.call_api(
2028
+ *_param,
2029
+ _request_timeout=_request_timeout
2030
+ )
2031
+ response_data.read()
2032
+ return self.api_client.response_deserialize(
2033
+ response_data=response_data,
2034
+ response_types_map=_response_types_map,
2035
+ ).data
2036
+
2037
+
2038
+ @validate_call
2039
+ def get_patient_activity_with_http_info(
2040
+ self,
2041
+ message_id: StrictStr,
2042
+ deep: Optional[StrictBool] = None,
2043
+ _request_timeout: Union[
2044
+ None,
2045
+ Annotated[StrictFloat, Field(gt=0)],
2046
+ Tuple[
2047
+ Annotated[StrictFloat, Field(gt=0)],
2048
+ Annotated[StrictFloat, Field(gt=0)]
2049
+ ]
2050
+ ] = None,
2051
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2052
+ _content_type: Optional[StrictStr] = None,
2053
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2054
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2055
+ ) -> ApiResponse[PatientActivityMessage]:
2056
+ """Check the processing status of a previously submitted patient activity
2057
+
2058
+
2059
+ :param message_id: (required)
2060
+ :type message_id: str
2061
+ :param deep:
2062
+ :type deep: bool
2063
+ :param _request_timeout: timeout setting for this request. If one
2064
+ number provided, it will be total request
2065
+ timeout. It can also be a pair (tuple) of
2066
+ (connection, read) timeouts.
2067
+ :type _request_timeout: int, tuple(int, int), optional
2068
+ :param _request_auth: set to override the auth_settings for an a single
2069
+ request; this effectively ignores the
2070
+ authentication in the spec for a single request.
2071
+ :type _request_auth: dict, optional
2072
+ :param _content_type: force content-type for the request.
2073
+ :type _content_type: str, Optional
2074
+ :param _headers: set to override the headers for a single
2075
+ request; this effectively ignores the headers
2076
+ in the spec for a single request.
2077
+ :type _headers: dict, optional
2078
+ :param _host_index: set to override the host_index for a single
2079
+ request; this effectively ignores the host_index
2080
+ in the spec for a single request.
2081
+ :type _host_index: int, optional
2082
+ :return: Returns the result object.
2083
+ """ # noqa: E501
2084
+
2085
+ _param = self._get_patient_activity_serialize(
2086
+ message_id=message_id,
2087
+ deep=deep,
2088
+ _request_auth=_request_auth,
2089
+ _content_type=_content_type,
2090
+ _headers=_headers,
2091
+ _host_index=_host_index
2092
+ )
2093
+
2094
+ _response_types_map: Dict[str, Optional[str]] = {
2095
+ '200': "PatientActivityMessage",
2096
+ '404': None,
2097
+ }
2098
+ response_data = self.api_client.call_api(
2099
+ *_param,
2100
+ _request_timeout=_request_timeout
2101
+ )
2102
+ response_data.read()
2103
+ return self.api_client.response_deserialize(
2104
+ response_data=response_data,
2105
+ response_types_map=_response_types_map,
2106
+ )
2107
+
2108
+
2109
+ @validate_call
2110
+ def get_patient_activity_without_preload_content(
2111
+ self,
2112
+ message_id: StrictStr,
2113
+ deep: Optional[StrictBool] = None,
2114
+ _request_timeout: Union[
2115
+ None,
2116
+ Annotated[StrictFloat, Field(gt=0)],
2117
+ Tuple[
2118
+ Annotated[StrictFloat, Field(gt=0)],
2119
+ Annotated[StrictFloat, Field(gt=0)]
2120
+ ]
2121
+ ] = None,
2122
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2123
+ _content_type: Optional[StrictStr] = None,
2124
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2125
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2126
+ ) -> RESTResponseType:
2127
+ """Check the processing status of a previously submitted patient activity
2128
+
2129
+
2130
+ :param message_id: (required)
2131
+ :type message_id: str
2132
+ :param deep:
2133
+ :type deep: bool
2134
+ :param _request_timeout: timeout setting for this request. If one
2135
+ number provided, it will be total request
2136
+ timeout. It can also be a pair (tuple) of
2137
+ (connection, read) timeouts.
2138
+ :type _request_timeout: int, tuple(int, int), optional
2139
+ :param _request_auth: set to override the auth_settings for an a single
2140
+ request; this effectively ignores the
2141
+ authentication in the spec for a single request.
2142
+ :type _request_auth: dict, optional
2143
+ :param _content_type: force content-type for the request.
2144
+ :type _content_type: str, Optional
2145
+ :param _headers: set to override the headers for a single
2146
+ request; this effectively ignores the headers
2147
+ in the spec for a single request.
2148
+ :type _headers: dict, optional
2149
+ :param _host_index: set to override the host_index for a single
2150
+ request; this effectively ignores the host_index
2151
+ in the spec for a single request.
2152
+ :type _host_index: int, optional
2153
+ :return: Returns the result object.
2154
+ """ # noqa: E501
2155
+
2156
+ _param = self._get_patient_activity_serialize(
2157
+ message_id=message_id,
2158
+ deep=deep,
2159
+ _request_auth=_request_auth,
2160
+ _content_type=_content_type,
2161
+ _headers=_headers,
2162
+ _host_index=_host_index
2163
+ )
2164
+
2165
+ _response_types_map: Dict[str, Optional[str]] = {
2166
+ '200': "PatientActivityMessage",
2167
+ '404': None,
2168
+ }
2169
+ response_data = self.api_client.call_api(
2170
+ *_param,
2171
+ _request_timeout=_request_timeout
2172
+ )
2173
+ return response_data.response
2174
+
2175
+
2176
+ def _get_patient_activity_serialize(
2177
+ self,
2178
+ message_id,
2179
+ deep,
2180
+ _request_auth,
2181
+ _content_type,
2182
+ _headers,
2183
+ _host_index,
2184
+ ) -> RequestSerialized:
2185
+
2186
+ _host = None
2187
+
2188
+ _collection_formats: Dict[str, str] = {
2189
+ }
2190
+
2191
+ _path_params: Dict[str, str] = {}
2192
+ _query_params: List[Tuple[str, str]] = []
2193
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2194
+ _form_params: List[Tuple[str, str]] = []
2195
+ _files: Dict[
2196
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2197
+ ] = {}
2198
+ _body_params: Optional[bytes] = None
2199
+
2200
+ # process the path parameters
2201
+ if message_id is not None:
2202
+ _path_params['message_id'] = message_id
2203
+ # process the query parameters
2204
+ if deep is not None:
2205
+
2206
+ _query_params.append(('deep', deep))
2207
+
2208
+ # process the header parameters
2209
+ # process the form parameters
2210
+ # process the body parameter
2211
+
2212
+
2213
+ # set the HTTP header `Accept`
2214
+ if 'Accept' not in _header_params:
2215
+ _header_params['Accept'] = self.api_client.select_header_accept(
2216
+ [
2217
+ 'application/json'
2218
+ ]
2219
+ )
2220
+
2221
+
2222
+ # authentication setting
2223
+ _auth_settings: List[str] = [
2224
+ 'opaque_token'
2225
+ ]
2226
+
2227
+ return self.api_client.param_serialize(
2228
+ method='GET',
2229
+ resource_path='/swifty/1/async/patient_activity/{message_id}',
2230
+ path_params=_path_params,
2231
+ query_params=_query_params,
2232
+ header_params=_header_params,
2233
+ body=_body_params,
2234
+ post_params=_form_params,
2235
+ files=_files,
2236
+ auth_settings=_auth_settings,
2237
+ collection_formats=_collection_formats,
2238
+ _host=_host,
2239
+ _request_auth=_request_auth
2240
+ )
2241
+
2242
+
2243
+
2244
+
2245
+ @validate_call
2246
+ def get_prescription(
2247
+ self,
2248
+ message_id: StrictStr,
2249
+ deep: Optional[StrictBool] = None,
2250
+ _request_timeout: Union[
2251
+ None,
2252
+ Annotated[StrictFloat, Field(gt=0)],
2253
+ Tuple[
2254
+ Annotated[StrictFloat, Field(gt=0)],
2255
+ Annotated[StrictFloat, Field(gt=0)]
2256
+ ]
2257
+ ] = None,
2258
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2259
+ _content_type: Optional[StrictStr] = None,
2260
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2261
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2262
+ ) -> PrescriptionData:
2263
+ """Check the processing status of a previously submitted prescription
2264
+
2265
+
2266
+ :param message_id: (required)
2267
+ :type message_id: str
2268
+ :param deep:
2269
+ :type deep: bool
2270
+ :param _request_timeout: timeout setting for this request. If one
2271
+ number provided, it will be total request
2272
+ timeout. It can also be a pair (tuple) of
2273
+ (connection, read) timeouts.
2274
+ :type _request_timeout: int, tuple(int, int), optional
2275
+ :param _request_auth: set to override the auth_settings for an a single
2276
+ request; this effectively ignores the
2277
+ authentication in the spec for a single request.
2278
+ :type _request_auth: dict, optional
2279
+ :param _content_type: force content-type for the request.
2280
+ :type _content_type: str, Optional
2281
+ :param _headers: set to override the headers for a single
2282
+ request; this effectively ignores the headers
2283
+ in the spec for a single request.
2284
+ :type _headers: dict, optional
2285
+ :param _host_index: set to override the host_index for a single
2286
+ request; this effectively ignores the host_index
2287
+ in the spec for a single request.
2288
+ :type _host_index: int, optional
2289
+ :return: Returns the result object.
2290
+ """ # noqa: E501
2291
+
2292
+ _param = self._get_prescription_serialize(
2293
+ message_id=message_id,
2294
+ deep=deep,
2295
+ _request_auth=_request_auth,
2296
+ _content_type=_content_type,
2297
+ _headers=_headers,
2298
+ _host_index=_host_index
2299
+ )
2300
+
2301
+ _response_types_map: Dict[str, Optional[str]] = {
2302
+ '200': "PrescriptionData",
2303
+ '404': None,
2304
+ }
2305
+ response_data = self.api_client.call_api(
2306
+ *_param,
2307
+ _request_timeout=_request_timeout
2308
+ )
2309
+ response_data.read()
2310
+ return self.api_client.response_deserialize(
2311
+ response_data=response_data,
2312
+ response_types_map=_response_types_map,
2313
+ ).data
2314
+
2315
+
2316
+ @validate_call
2317
+ def get_prescription_with_http_info(
2318
+ self,
2319
+ message_id: StrictStr,
2320
+ deep: Optional[StrictBool] = None,
2321
+ _request_timeout: Union[
2322
+ None,
2323
+ Annotated[StrictFloat, Field(gt=0)],
2324
+ Tuple[
2325
+ Annotated[StrictFloat, Field(gt=0)],
2326
+ Annotated[StrictFloat, Field(gt=0)]
2327
+ ]
2328
+ ] = None,
2329
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2330
+ _content_type: Optional[StrictStr] = None,
2331
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2332
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2333
+ ) -> ApiResponse[PrescriptionData]:
2334
+ """Check the processing status of a previously submitted prescription
2335
+
2336
+
2337
+ :param message_id: (required)
2338
+ :type message_id: str
2339
+ :param deep:
2340
+ :type deep: bool
2341
+ :param _request_timeout: timeout setting for this request. If one
2342
+ number provided, it will be total request
2343
+ timeout. It can also be a pair (tuple) of
2344
+ (connection, read) timeouts.
2345
+ :type _request_timeout: int, tuple(int, int), optional
2346
+ :param _request_auth: set to override the auth_settings for an a single
2347
+ request; this effectively ignores the
2348
+ authentication in the spec for a single request.
2349
+ :type _request_auth: dict, optional
2350
+ :param _content_type: force content-type for the request.
2351
+ :type _content_type: str, Optional
2352
+ :param _headers: set to override the headers for a single
2353
+ request; this effectively ignores the headers
2354
+ in the spec for a single request.
2355
+ :type _headers: dict, optional
2356
+ :param _host_index: set to override the host_index for a single
2357
+ request; this effectively ignores the host_index
2358
+ in the spec for a single request.
2359
+ :type _host_index: int, optional
2360
+ :return: Returns the result object.
2361
+ """ # noqa: E501
2362
+
2363
+ _param = self._get_prescription_serialize(
2364
+ message_id=message_id,
2365
+ deep=deep,
2366
+ _request_auth=_request_auth,
2367
+ _content_type=_content_type,
2368
+ _headers=_headers,
2369
+ _host_index=_host_index
2370
+ )
2371
+
2372
+ _response_types_map: Dict[str, Optional[str]] = {
2373
+ '200': "PrescriptionData",
2374
+ '404': None,
2375
+ }
2376
+ response_data = self.api_client.call_api(
2377
+ *_param,
2378
+ _request_timeout=_request_timeout
2379
+ )
2380
+ response_data.read()
2381
+ return self.api_client.response_deserialize(
2382
+ response_data=response_data,
2383
+ response_types_map=_response_types_map,
2384
+ )
2385
+
2386
+
2387
+ @validate_call
2388
+ def get_prescription_without_preload_content(
2389
+ self,
2390
+ message_id: StrictStr,
2391
+ deep: Optional[StrictBool] = None,
2392
+ _request_timeout: Union[
2393
+ None,
2394
+ Annotated[StrictFloat, Field(gt=0)],
2395
+ Tuple[
2396
+ Annotated[StrictFloat, Field(gt=0)],
2397
+ Annotated[StrictFloat, Field(gt=0)]
2398
+ ]
2399
+ ] = None,
2400
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2401
+ _content_type: Optional[StrictStr] = None,
2402
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2403
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2404
+ ) -> RESTResponseType:
2405
+ """Check the processing status of a previously submitted prescription
2406
+
2407
+
2408
+ :param message_id: (required)
2409
+ :type message_id: str
2410
+ :param deep:
2411
+ :type deep: bool
2412
+ :param _request_timeout: timeout setting for this request. If one
2413
+ number provided, it will be total request
2414
+ timeout. It can also be a pair (tuple) of
2415
+ (connection, read) timeouts.
2416
+ :type _request_timeout: int, tuple(int, int), optional
2417
+ :param _request_auth: set to override the auth_settings for an a single
2418
+ request; this effectively ignores the
2419
+ authentication in the spec for a single request.
2420
+ :type _request_auth: dict, optional
2421
+ :param _content_type: force content-type for the request.
2422
+ :type _content_type: str, Optional
2423
+ :param _headers: set to override the headers for a single
2424
+ request; this effectively ignores the headers
2425
+ in the spec for a single request.
2426
+ :type _headers: dict, optional
2427
+ :param _host_index: set to override the host_index for a single
2428
+ request; this effectively ignores the host_index
2429
+ in the spec for a single request.
2430
+ :type _host_index: int, optional
2431
+ :return: Returns the result object.
2432
+ """ # noqa: E501
2433
+
2434
+ _param = self._get_prescription_serialize(
2435
+ message_id=message_id,
2436
+ deep=deep,
2437
+ _request_auth=_request_auth,
2438
+ _content_type=_content_type,
2439
+ _headers=_headers,
2440
+ _host_index=_host_index
2441
+ )
2442
+
2443
+ _response_types_map: Dict[str, Optional[str]] = {
2444
+ '200': "PrescriptionData",
2445
+ '404': None,
2446
+ }
2447
+ response_data = self.api_client.call_api(
2448
+ *_param,
2449
+ _request_timeout=_request_timeout
2450
+ )
2451
+ return response_data.response
2452
+
2453
+
2454
+ def _get_prescription_serialize(
2455
+ self,
2456
+ message_id,
2457
+ deep,
2458
+ _request_auth,
2459
+ _content_type,
2460
+ _headers,
2461
+ _host_index,
2462
+ ) -> RequestSerialized:
2463
+
2464
+ _host = None
2465
+
2466
+ _collection_formats: Dict[str, str] = {
2467
+ }
2468
+
2469
+ _path_params: Dict[str, str] = {}
2470
+ _query_params: List[Tuple[str, str]] = []
2471
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2472
+ _form_params: List[Tuple[str, str]] = []
2473
+ _files: Dict[
2474
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2475
+ ] = {}
2476
+ _body_params: Optional[bytes] = None
2477
+
2478
+ # process the path parameters
2479
+ if message_id is not None:
2480
+ _path_params['message_id'] = message_id
2481
+ # process the query parameters
2482
+ if deep is not None:
2483
+
2484
+ _query_params.append(('deep', deep))
2485
+
2486
+ # process the header parameters
2487
+ # process the form parameters
2488
+ # process the body parameter
2489
+
2490
+
2491
+ # set the HTTP header `Accept`
2492
+ if 'Accept' not in _header_params:
2493
+ _header_params['Accept'] = self.api_client.select_header_accept(
2494
+ [
2495
+ 'application/json'
2496
+ ]
2497
+ )
2498
+
2499
+
2500
+ # authentication setting
2501
+ _auth_settings: List[str] = [
2502
+ 'opaque_token'
2503
+ ]
2504
+
2505
+ return self.api_client.param_serialize(
2506
+ method='GET',
2507
+ resource_path='/swifty/1/async/prescription/{message_id}',
2508
+ path_params=_path_params,
2509
+ query_params=_query_params,
2510
+ header_params=_header_params,
2511
+ body=_body_params,
2512
+ post_params=_form_params,
2513
+ files=_files,
2514
+ auth_settings=_auth_settings,
2515
+ collection_formats=_collection_formats,
2516
+ _host=_host,
2517
+ _request_auth=_request_auth
2518
+ )
2519
+
2520
+
2521
+
2522
+
2523
+ @validate_call
2524
+ def get_prescription_change_request(
2525
+ self,
2526
+ message_id: StrictStr,
2527
+ deep: Optional[StrictBool] = None,
2528
+ _request_timeout: Union[
2529
+ None,
2530
+ Annotated[StrictFloat, Field(gt=0)],
2531
+ Tuple[
2532
+ Annotated[StrictFloat, Field(gt=0)],
2533
+ Annotated[StrictFloat, Field(gt=0)]
2534
+ ]
2535
+ ] = None,
2536
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2537
+ _content_type: Optional[StrictStr] = None,
2538
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2539
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2540
+ ) -> PrescriptionChangeRequest:
2541
+ """Check the processing status of a previously submitted prescription change request
2542
+
2543
+
2544
+ :param message_id: (required)
2545
+ :type message_id: str
2546
+ :param deep:
2547
+ :type deep: bool
2548
+ :param _request_timeout: timeout setting for this request. If one
2549
+ number provided, it will be total request
2550
+ timeout. It can also be a pair (tuple) of
2551
+ (connection, read) timeouts.
2552
+ :type _request_timeout: int, tuple(int, int), optional
2553
+ :param _request_auth: set to override the auth_settings for an a single
2554
+ request; this effectively ignores the
2555
+ authentication in the spec for a single request.
2556
+ :type _request_auth: dict, optional
2557
+ :param _content_type: force content-type for the request.
2558
+ :type _content_type: str, Optional
2559
+ :param _headers: set to override the headers for a single
2560
+ request; this effectively ignores the headers
2561
+ in the spec for a single request.
2562
+ :type _headers: dict, optional
2563
+ :param _host_index: set to override the host_index for a single
2564
+ request; this effectively ignores the host_index
2565
+ in the spec for a single request.
2566
+ :type _host_index: int, optional
2567
+ :return: Returns the result object.
2568
+ """ # noqa: E501
2569
+
2570
+ _param = self._get_prescription_change_request_serialize(
2571
+ message_id=message_id,
2572
+ deep=deep,
2573
+ _request_auth=_request_auth,
2574
+ _content_type=_content_type,
2575
+ _headers=_headers,
2576
+ _host_index=_host_index
2577
+ )
2578
+
2579
+ _response_types_map: Dict[str, Optional[str]] = {
2580
+ '200': "PrescriptionChangeRequest",
2581
+ '404': None,
2582
+ }
2583
+ response_data = self.api_client.call_api(
2584
+ *_param,
2585
+ _request_timeout=_request_timeout
2586
+ )
2587
+ response_data.read()
2588
+ return self.api_client.response_deserialize(
2589
+ response_data=response_data,
2590
+ response_types_map=_response_types_map,
2591
+ ).data
2592
+
2593
+
2594
+ @validate_call
2595
+ def get_prescription_change_request_with_http_info(
2596
+ self,
2597
+ message_id: StrictStr,
2598
+ deep: Optional[StrictBool] = None,
2599
+ _request_timeout: Union[
2600
+ None,
2601
+ Annotated[StrictFloat, Field(gt=0)],
2602
+ Tuple[
2603
+ Annotated[StrictFloat, Field(gt=0)],
2604
+ Annotated[StrictFloat, Field(gt=0)]
2605
+ ]
2606
+ ] = None,
2607
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2608
+ _content_type: Optional[StrictStr] = None,
2609
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2610
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2611
+ ) -> ApiResponse[PrescriptionChangeRequest]:
2612
+ """Check the processing status of a previously submitted prescription change request
2613
+
2614
+
2615
+ :param message_id: (required)
2616
+ :type message_id: str
2617
+ :param deep:
2618
+ :type deep: bool
2619
+ :param _request_timeout: timeout setting for this request. If one
2620
+ number provided, it will be total request
2621
+ timeout. It can also be a pair (tuple) of
2622
+ (connection, read) timeouts.
2623
+ :type _request_timeout: int, tuple(int, int), optional
2624
+ :param _request_auth: set to override the auth_settings for an a single
2625
+ request; this effectively ignores the
2626
+ authentication in the spec for a single request.
2627
+ :type _request_auth: dict, optional
2628
+ :param _content_type: force content-type for the request.
2629
+ :type _content_type: str, Optional
2630
+ :param _headers: set to override the headers for a single
2631
+ request; this effectively ignores the headers
2632
+ in the spec for a single request.
2633
+ :type _headers: dict, optional
2634
+ :param _host_index: set to override the host_index for a single
2635
+ request; this effectively ignores the host_index
2636
+ in the spec for a single request.
2637
+ :type _host_index: int, optional
2638
+ :return: Returns the result object.
2639
+ """ # noqa: E501
2640
+
2641
+ _param = self._get_prescription_change_request_serialize(
2642
+ message_id=message_id,
2643
+ deep=deep,
2644
+ _request_auth=_request_auth,
2645
+ _content_type=_content_type,
2646
+ _headers=_headers,
2647
+ _host_index=_host_index
2648
+ )
2649
+
2650
+ _response_types_map: Dict[str, Optional[str]] = {
2651
+ '200': "PrescriptionChangeRequest",
2652
+ '404': None,
2653
+ }
2654
+ response_data = self.api_client.call_api(
2655
+ *_param,
2656
+ _request_timeout=_request_timeout
2657
+ )
2658
+ response_data.read()
2659
+ return self.api_client.response_deserialize(
2660
+ response_data=response_data,
2661
+ response_types_map=_response_types_map,
2662
+ )
2663
+
2664
+
2665
+ @validate_call
2666
+ def get_prescription_change_request_without_preload_content(
2667
+ self,
2668
+ message_id: StrictStr,
2669
+ deep: Optional[StrictBool] = None,
2670
+ _request_timeout: Union[
2671
+ None,
2672
+ Annotated[StrictFloat, Field(gt=0)],
2673
+ Tuple[
2674
+ Annotated[StrictFloat, Field(gt=0)],
2675
+ Annotated[StrictFloat, Field(gt=0)]
2676
+ ]
2677
+ ] = None,
2678
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2679
+ _content_type: Optional[StrictStr] = None,
2680
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2681
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2682
+ ) -> RESTResponseType:
2683
+ """Check the processing status of a previously submitted prescription change request
2684
+
2685
+
2686
+ :param message_id: (required)
2687
+ :type message_id: str
2688
+ :param deep:
2689
+ :type deep: bool
2690
+ :param _request_timeout: timeout setting for this request. If one
2691
+ number provided, it will be total request
2692
+ timeout. It can also be a pair (tuple) of
2693
+ (connection, read) timeouts.
2694
+ :type _request_timeout: int, tuple(int, int), optional
2695
+ :param _request_auth: set to override the auth_settings for an a single
2696
+ request; this effectively ignores the
2697
+ authentication in the spec for a single request.
2698
+ :type _request_auth: dict, optional
2699
+ :param _content_type: force content-type for the request.
2700
+ :type _content_type: str, Optional
2701
+ :param _headers: set to override the headers for a single
2702
+ request; this effectively ignores the headers
2703
+ in the spec for a single request.
2704
+ :type _headers: dict, optional
2705
+ :param _host_index: set to override the host_index for a single
2706
+ request; this effectively ignores the host_index
2707
+ in the spec for a single request.
2708
+ :type _host_index: int, optional
2709
+ :return: Returns the result object.
2710
+ """ # noqa: E501
2711
+
2712
+ _param = self._get_prescription_change_request_serialize(
2713
+ message_id=message_id,
2714
+ deep=deep,
2715
+ _request_auth=_request_auth,
2716
+ _content_type=_content_type,
2717
+ _headers=_headers,
2718
+ _host_index=_host_index
2719
+ )
2720
+
2721
+ _response_types_map: Dict[str, Optional[str]] = {
2722
+ '200': "PrescriptionChangeRequest",
2723
+ '404': None,
2724
+ }
2725
+ response_data = self.api_client.call_api(
2726
+ *_param,
2727
+ _request_timeout=_request_timeout
2728
+ )
2729
+ return response_data.response
2730
+
2731
+
2732
+ def _get_prescription_change_request_serialize(
2733
+ self,
2734
+ message_id,
2735
+ deep,
2736
+ _request_auth,
2737
+ _content_type,
2738
+ _headers,
2739
+ _host_index,
2740
+ ) -> RequestSerialized:
2741
+
2742
+ _host = None
2743
+
2744
+ _collection_formats: Dict[str, str] = {
2745
+ }
2746
+
2747
+ _path_params: Dict[str, str] = {}
2748
+ _query_params: List[Tuple[str, str]] = []
2749
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2750
+ _form_params: List[Tuple[str, str]] = []
2751
+ _files: Dict[
2752
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2753
+ ] = {}
2754
+ _body_params: Optional[bytes] = None
2755
+
2756
+ # process the path parameters
2757
+ if message_id is not None:
2758
+ _path_params['message_id'] = message_id
2759
+ # process the query parameters
2760
+ if deep is not None:
2761
+
2762
+ _query_params.append(('deep', deep))
2763
+
2764
+ # process the header parameters
2765
+ # process the form parameters
2766
+ # process the body parameter
2767
+
2768
+
2769
+ # set the HTTP header `Accept`
2770
+ if 'Accept' not in _header_params:
2771
+ _header_params['Accept'] = self.api_client.select_header_accept(
2772
+ [
2773
+ 'application/json'
2774
+ ]
2775
+ )
2776
+
2777
+
2778
+ # authentication setting
2779
+ _auth_settings: List[str] = [
2780
+ 'opaque_token'
2781
+ ]
2782
+
2783
+ return self.api_client.param_serialize(
2784
+ method='GET',
2785
+ resource_path='/swifty/1/async/prescription/change_request/{message_id}',
2786
+ path_params=_path_params,
2787
+ query_params=_query_params,
2788
+ header_params=_header_params,
2789
+ body=_body_params,
2790
+ post_params=_form_params,
2791
+ files=_files,
2792
+ auth_settings=_auth_settings,
2793
+ collection_formats=_collection_formats,
2794
+ _host=_host,
2795
+ _request_auth=_request_auth
2796
+ )
2797
+
2798
+
2799
+
2800
+
2801
+ @validate_call
2802
+ def get_prescriptions(
2803
+ self,
2804
+ patient_uuid: Optional[StrictStr] = None,
2805
+ pharmacy_uuid: Optional[StrictStr] = None,
2806
+ prescriber_uuid: Optional[StrictStr] = None,
2807
+ medication_uuid: Optional[StrictStr] = None,
2808
+ page: Optional[StrictInt] = None,
2809
+ results_per_page: Optional[StrictInt] = None,
2810
+ _request_timeout: Union[
2811
+ None,
2812
+ Annotated[StrictFloat, Field(gt=0)],
2813
+ Tuple[
2814
+ Annotated[StrictFloat, Field(gt=0)],
2815
+ Annotated[StrictFloat, Field(gt=0)]
2816
+ ]
2817
+ ] = None,
2818
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2819
+ _content_type: Optional[StrictStr] = None,
2820
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2821
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2822
+ ) -> List[PrescriptionData]:
2823
+ """Get all prescriptions that have been processed asynchronously
2824
+
2825
+
2826
+ :param patient_uuid:
2827
+ :type patient_uuid: str
2828
+ :param pharmacy_uuid:
2829
+ :type pharmacy_uuid: str
2830
+ :param prescriber_uuid:
2831
+ :type prescriber_uuid: str
2832
+ :param medication_uuid:
2833
+ :type medication_uuid: str
2834
+ :param page:
2835
+ :type page: int
2836
+ :param results_per_page:
2837
+ :type results_per_page: int
2838
+ :param _request_timeout: timeout setting for this request. If one
2839
+ number provided, it will be total request
2840
+ timeout. It can also be a pair (tuple) of
2841
+ (connection, read) timeouts.
2842
+ :type _request_timeout: int, tuple(int, int), optional
2843
+ :param _request_auth: set to override the auth_settings for an a single
2844
+ request; this effectively ignores the
2845
+ authentication in the spec for a single request.
2846
+ :type _request_auth: dict, optional
2847
+ :param _content_type: force content-type for the request.
2848
+ :type _content_type: str, Optional
2849
+ :param _headers: set to override the headers for a single
2850
+ request; this effectively ignores the headers
2851
+ in the spec for a single request.
2852
+ :type _headers: dict, optional
2853
+ :param _host_index: set to override the host_index for a single
2854
+ request; this effectively ignores the host_index
2855
+ in the spec for a single request.
2856
+ :type _host_index: int, optional
2857
+ :return: Returns the result object.
2858
+ """ # noqa: E501
2859
+
2860
+ _param = self._get_prescriptions_serialize(
2861
+ patient_uuid=patient_uuid,
2862
+ pharmacy_uuid=pharmacy_uuid,
2863
+ prescriber_uuid=prescriber_uuid,
2864
+ medication_uuid=medication_uuid,
2865
+ page=page,
2866
+ results_per_page=results_per_page,
2867
+ _request_auth=_request_auth,
2868
+ _content_type=_content_type,
2869
+ _headers=_headers,
2870
+ _host_index=_host_index
2871
+ )
2872
+
2873
+ _response_types_map: Dict[str, Optional[str]] = {
2874
+ '200': "List[PrescriptionData]",
2875
+ '404': None,
2876
+ }
2877
+ response_data = self.api_client.call_api(
2878
+ *_param,
2879
+ _request_timeout=_request_timeout
2880
+ )
2881
+ response_data.read()
2882
+ return self.api_client.response_deserialize(
2883
+ response_data=response_data,
2884
+ response_types_map=_response_types_map,
2885
+ ).data
2886
+
2887
+
2888
+ @validate_call
2889
+ def get_prescriptions_with_http_info(
2890
+ self,
2891
+ patient_uuid: Optional[StrictStr] = None,
2892
+ pharmacy_uuid: Optional[StrictStr] = None,
2893
+ prescriber_uuid: Optional[StrictStr] = None,
2894
+ medication_uuid: Optional[StrictStr] = None,
2895
+ page: Optional[StrictInt] = None,
2896
+ results_per_page: Optional[StrictInt] = None,
2897
+ _request_timeout: Union[
2898
+ None,
2899
+ Annotated[StrictFloat, Field(gt=0)],
2900
+ Tuple[
2901
+ Annotated[StrictFloat, Field(gt=0)],
2902
+ Annotated[StrictFloat, Field(gt=0)]
2903
+ ]
2904
+ ] = None,
2905
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2906
+ _content_type: Optional[StrictStr] = None,
2907
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2908
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2909
+ ) -> ApiResponse[List[PrescriptionData]]:
2910
+ """Get all prescriptions that have been processed asynchronously
2911
+
2912
+
2913
+ :param patient_uuid:
2914
+ :type patient_uuid: str
2915
+ :param pharmacy_uuid:
2916
+ :type pharmacy_uuid: str
2917
+ :param prescriber_uuid:
2918
+ :type prescriber_uuid: str
2919
+ :param medication_uuid:
2920
+ :type medication_uuid: str
2921
+ :param page:
2922
+ :type page: int
2923
+ :param results_per_page:
2924
+ :type results_per_page: int
2925
+ :param _request_timeout: timeout setting for this request. If one
2926
+ number provided, it will be total request
2927
+ timeout. It can also be a pair (tuple) of
2928
+ (connection, read) timeouts.
2929
+ :type _request_timeout: int, tuple(int, int), optional
2930
+ :param _request_auth: set to override the auth_settings for an a single
2931
+ request; this effectively ignores the
2932
+ authentication in the spec for a single request.
2933
+ :type _request_auth: dict, optional
2934
+ :param _content_type: force content-type for the request.
2935
+ :type _content_type: str, Optional
2936
+ :param _headers: set to override the headers for a single
2937
+ request; this effectively ignores the headers
2938
+ in the spec for a single request.
2939
+ :type _headers: dict, optional
2940
+ :param _host_index: set to override the host_index for a single
2941
+ request; this effectively ignores the host_index
2942
+ in the spec for a single request.
2943
+ :type _host_index: int, optional
2944
+ :return: Returns the result object.
2945
+ """ # noqa: E501
2946
+
2947
+ _param = self._get_prescriptions_serialize(
2948
+ patient_uuid=patient_uuid,
2949
+ pharmacy_uuid=pharmacy_uuid,
2950
+ prescriber_uuid=prescriber_uuid,
2951
+ medication_uuid=medication_uuid,
2952
+ page=page,
2953
+ results_per_page=results_per_page,
2954
+ _request_auth=_request_auth,
2955
+ _content_type=_content_type,
2956
+ _headers=_headers,
2957
+ _host_index=_host_index
2958
+ )
2959
+
2960
+ _response_types_map: Dict[str, Optional[str]] = {
2961
+ '200': "List[PrescriptionData]",
2962
+ '404': None,
2963
+ }
2964
+ response_data = self.api_client.call_api(
2965
+ *_param,
2966
+ _request_timeout=_request_timeout
2967
+ )
2968
+ response_data.read()
2969
+ return self.api_client.response_deserialize(
2970
+ response_data=response_data,
2971
+ response_types_map=_response_types_map,
2972
+ )
2973
+
2974
+
2975
+ @validate_call
2976
+ def get_prescriptions_without_preload_content(
2977
+ self,
2978
+ patient_uuid: Optional[StrictStr] = None,
2979
+ pharmacy_uuid: Optional[StrictStr] = None,
2980
+ prescriber_uuid: Optional[StrictStr] = None,
2981
+ medication_uuid: Optional[StrictStr] = None,
2982
+ page: Optional[StrictInt] = None,
2983
+ results_per_page: Optional[StrictInt] = None,
2984
+ _request_timeout: Union[
2985
+ None,
2986
+ Annotated[StrictFloat, Field(gt=0)],
2987
+ Tuple[
2988
+ Annotated[StrictFloat, Field(gt=0)],
2989
+ Annotated[StrictFloat, Field(gt=0)]
2990
+ ]
2991
+ ] = None,
2992
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2993
+ _content_type: Optional[StrictStr] = None,
2994
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2995
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2996
+ ) -> RESTResponseType:
2997
+ """Get all prescriptions that have been processed asynchronously
2998
+
2999
+
3000
+ :param patient_uuid:
3001
+ :type patient_uuid: str
3002
+ :param pharmacy_uuid:
3003
+ :type pharmacy_uuid: str
3004
+ :param prescriber_uuid:
3005
+ :type prescriber_uuid: str
3006
+ :param medication_uuid:
3007
+ :type medication_uuid: str
3008
+ :param page:
3009
+ :type page: int
3010
+ :param results_per_page:
3011
+ :type results_per_page: int
3012
+ :param _request_timeout: timeout setting for this request. If one
3013
+ number provided, it will be total request
3014
+ timeout. It can also be a pair (tuple) of
3015
+ (connection, read) timeouts.
3016
+ :type _request_timeout: int, tuple(int, int), optional
3017
+ :param _request_auth: set to override the auth_settings for an a single
3018
+ request; this effectively ignores the
3019
+ authentication in the spec for a single request.
3020
+ :type _request_auth: dict, optional
3021
+ :param _content_type: force content-type for the request.
3022
+ :type _content_type: str, Optional
3023
+ :param _headers: set to override the headers for a single
3024
+ request; this effectively ignores the headers
3025
+ in the spec for a single request.
3026
+ :type _headers: dict, optional
3027
+ :param _host_index: set to override the host_index for a single
3028
+ request; this effectively ignores the host_index
3029
+ in the spec for a single request.
3030
+ :type _host_index: int, optional
3031
+ :return: Returns the result object.
3032
+ """ # noqa: E501
3033
+
3034
+ _param = self._get_prescriptions_serialize(
3035
+ patient_uuid=patient_uuid,
3036
+ pharmacy_uuid=pharmacy_uuid,
3037
+ prescriber_uuid=prescriber_uuid,
3038
+ medication_uuid=medication_uuid,
3039
+ page=page,
3040
+ results_per_page=results_per_page,
3041
+ _request_auth=_request_auth,
3042
+ _content_type=_content_type,
3043
+ _headers=_headers,
3044
+ _host_index=_host_index
3045
+ )
3046
+
3047
+ _response_types_map: Dict[str, Optional[str]] = {
3048
+ '200': "List[PrescriptionData]",
3049
+ '404': None,
3050
+ }
3051
+ response_data = self.api_client.call_api(
3052
+ *_param,
3053
+ _request_timeout=_request_timeout
3054
+ )
3055
+ return response_data.response
3056
+
3057
+
3058
+ def _get_prescriptions_serialize(
3059
+ self,
3060
+ patient_uuid,
3061
+ pharmacy_uuid,
3062
+ prescriber_uuid,
3063
+ medication_uuid,
3064
+ page,
3065
+ results_per_page,
3066
+ _request_auth,
3067
+ _content_type,
3068
+ _headers,
3069
+ _host_index,
3070
+ ) -> RequestSerialized:
3071
+
3072
+ _host = None
3073
+
3074
+ _collection_formats: Dict[str, str] = {
3075
+ }
3076
+
3077
+ _path_params: Dict[str, str] = {}
3078
+ _query_params: List[Tuple[str, str]] = []
3079
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3080
+ _form_params: List[Tuple[str, str]] = []
3081
+ _files: Dict[
3082
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3083
+ ] = {}
3084
+ _body_params: Optional[bytes] = None
3085
+
3086
+ # process the path parameters
3087
+ # process the query parameters
3088
+ if patient_uuid is not None:
3089
+
3090
+ _query_params.append(('patient_uuid', patient_uuid))
3091
+
3092
+ if pharmacy_uuid is not None:
3093
+
3094
+ _query_params.append(('pharmacy_uuid', pharmacy_uuid))
3095
+
3096
+ if prescriber_uuid is not None:
3097
+
3098
+ _query_params.append(('prescriber_uuid', prescriber_uuid))
3099
+
3100
+ if medication_uuid is not None:
3101
+
3102
+ _query_params.append(('medication_uuid', medication_uuid))
3103
+
3104
+ if page is not None:
3105
+
3106
+ _query_params.append(('page', page))
3107
+
3108
+ if results_per_page is not None:
3109
+
3110
+ _query_params.append(('results_per_page', results_per_page))
3111
+
3112
+ # process the header parameters
3113
+ # process the form parameters
3114
+ # process the body parameter
3115
+
3116
+
3117
+ # set the HTTP header `Accept`
3118
+ if 'Accept' not in _header_params:
3119
+ _header_params['Accept'] = self.api_client.select_header_accept(
3120
+ [
3121
+ 'application/json'
3122
+ ]
3123
+ )
3124
+
3125
+
3126
+ # authentication setting
3127
+ _auth_settings: List[str] = [
3128
+ 'opaque_token'
3129
+ ]
3130
+
3131
+ return self.api_client.param_serialize(
3132
+ method='GET',
3133
+ resource_path='/swifty/1/async/prescription',
850
3134
  path_params=_path_params,
851
3135
  query_params=_query_params,
852
3136
  header_params=_header_params,