bluehive 0.1.0a11__py3-none-any.whl → 0.1.0a12__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.
bluehive/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "bluehive"
4
- __version__ = "0.1.0-alpha.11" # x-release-please-version
4
+ __version__ = "0.1.0-alpha.12" # x-release-please-version
@@ -365,18 +365,15 @@ class EmployeesResource(SyncAPIResource):
365
365
  """
366
366
  return self._delete(
367
367
  "/v1/employees/unlink-user",
368
+ body=maybe_transform(
369
+ {
370
+ "employee_id": employee_id,
371
+ "user_id": user_id,
372
+ },
373
+ employee_unlink_user_params.EmployeeUnlinkUserParams,
374
+ ),
368
375
  options=make_request_options(
369
- extra_headers=extra_headers,
370
- extra_query=extra_query,
371
- extra_body=extra_body,
372
- timeout=timeout,
373
- query=maybe_transform(
374
- {
375
- "employee_id": employee_id,
376
- "user_id": user_id,
377
- },
378
- employee_unlink_user_params.EmployeeUnlinkUserParams,
379
- ),
376
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
380
377
  ),
381
378
  cast_to=EmployeeUnlinkUserResponse,
382
379
  )
@@ -711,18 +708,15 @@ class AsyncEmployeesResource(AsyncAPIResource):
711
708
  """
712
709
  return await self._delete(
713
710
  "/v1/employees/unlink-user",
711
+ body=await async_maybe_transform(
712
+ {
713
+ "employee_id": employee_id,
714
+ "user_id": user_id,
715
+ },
716
+ employee_unlink_user_params.EmployeeUnlinkUserParams,
717
+ ),
714
718
  options=make_request_options(
715
- extra_headers=extra_headers,
716
- extra_query=extra_query,
717
- extra_body=extra_body,
718
- timeout=timeout,
719
- query=await async_maybe_transform(
720
- {
721
- "employee_id": employee_id,
722
- "user_id": user_id,
723
- },
724
- employee_unlink_user_params.EmployeeUnlinkUserParams,
725
- ),
719
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
726
720
  ),
727
721
  cast_to=EmployeeUnlinkUserResponse,
728
722
  )
bluehive/resources/hl7.py CHANGED
@@ -4,8 +4,8 @@ from __future__ import annotations
4
4
 
5
5
  import httpx
6
6
 
7
- from ..types import hl7_send_results_params
8
- from .._types import Body, Query, Headers, NotGiven, not_given
7
+ from ..types import hl7_process_params, hl7_send_results_params
8
+ from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
9
9
  from .._utils import maybe_transform, async_maybe_transform
10
10
  from .._compat import cached_property
11
11
  from .._resource import SyncAPIResource, AsyncAPIResource
@@ -40,6 +40,67 @@ class Hl7Resource(SyncAPIResource):
40
40
  """
41
41
  return Hl7ResourceWithStreamingResponse(self)
42
42
 
43
+ def process(
44
+ self,
45
+ *,
46
+ f: str | Omit = omit,
47
+ interface: str | Omit = omit,
48
+ login_passwd: str | Omit = omit,
49
+ login_user: str | Omit = omit,
50
+ message: str | Omit = omit,
51
+ message_b64: str | Omit = omit,
52
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
53
+ # The extra values given here take precedence over values defined on the client or passed to this method.
54
+ extra_headers: Headers | None = None,
55
+ extra_query: Query | None = None,
56
+ extra_body: Body | None = None,
57
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
58
+ ) -> str:
59
+ """Process incoming HL7 messages from EHR systems.
60
+
61
+ Accepts JSON with "message"
62
+ field, raw text/plain HL7 content, or form-encoded data.
63
+
64
+ Args:
65
+ f: Form field (legacy support)
66
+
67
+ interface: Interface identifier (legacy support)
68
+
69
+ login_passwd: Login password (legacy support)
70
+
71
+ login_user: Login user (legacy support)
72
+
73
+ message: HL7 message content - the primary way to send HL7 data
74
+
75
+ message_b64: Base64 encoded HL7 message (legacy support)
76
+
77
+ extra_headers: Send extra headers
78
+
79
+ extra_query: Add additional query parameters to the request
80
+
81
+ extra_body: Add additional JSON properties to the request
82
+
83
+ timeout: Override the client-level default timeout for this request, in seconds
84
+ """
85
+ return self._post(
86
+ "/v1/hl7/",
87
+ body=maybe_transform(
88
+ {
89
+ "f": f,
90
+ "interface": interface,
91
+ "login_passwd": login_passwd,
92
+ "login_user": login_user,
93
+ "message": message,
94
+ "message_b64": message_b64,
95
+ },
96
+ hl7_process_params.Hl7ProcessParams,
97
+ ),
98
+ options=make_request_options(
99
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
100
+ ),
101
+ cast_to=str,
102
+ )
103
+
43
104
  def send_results(
44
105
  self,
45
106
  *,
@@ -104,6 +165,67 @@ class AsyncHl7Resource(AsyncAPIResource):
104
165
  """
105
166
  return AsyncHl7ResourceWithStreamingResponse(self)
106
167
 
168
+ async def process(
169
+ self,
170
+ *,
171
+ f: str | Omit = omit,
172
+ interface: str | Omit = omit,
173
+ login_passwd: str | Omit = omit,
174
+ login_user: str | Omit = omit,
175
+ message: str | Omit = omit,
176
+ message_b64: str | Omit = omit,
177
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
178
+ # The extra values given here take precedence over values defined on the client or passed to this method.
179
+ extra_headers: Headers | None = None,
180
+ extra_query: Query | None = None,
181
+ extra_body: Body | None = None,
182
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
183
+ ) -> str:
184
+ """Process incoming HL7 messages from EHR systems.
185
+
186
+ Accepts JSON with "message"
187
+ field, raw text/plain HL7 content, or form-encoded data.
188
+
189
+ Args:
190
+ f: Form field (legacy support)
191
+
192
+ interface: Interface identifier (legacy support)
193
+
194
+ login_passwd: Login password (legacy support)
195
+
196
+ login_user: Login user (legacy support)
197
+
198
+ message: HL7 message content - the primary way to send HL7 data
199
+
200
+ message_b64: Base64 encoded HL7 message (legacy support)
201
+
202
+ extra_headers: Send extra headers
203
+
204
+ extra_query: Add additional query parameters to the request
205
+
206
+ extra_body: Add additional JSON properties to the request
207
+
208
+ timeout: Override the client-level default timeout for this request, in seconds
209
+ """
210
+ return await self._post(
211
+ "/v1/hl7/",
212
+ body=await async_maybe_transform(
213
+ {
214
+ "f": f,
215
+ "interface": interface,
216
+ "login_passwd": login_passwd,
217
+ "login_user": login_user,
218
+ "message": message,
219
+ "message_b64": message_b64,
220
+ },
221
+ hl7_process_params.Hl7ProcessParams,
222
+ ),
223
+ options=make_request_options(
224
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
225
+ ),
226
+ cast_to=str,
227
+ )
228
+
107
229
  async def send_results(
108
230
  self,
109
231
  *,
@@ -152,6 +274,9 @@ class Hl7ResourceWithRawResponse:
152
274
  def __init__(self, hl7: Hl7Resource) -> None:
153
275
  self._hl7 = hl7
154
276
 
277
+ self.process = to_raw_response_wrapper(
278
+ hl7.process,
279
+ )
155
280
  self.send_results = to_raw_response_wrapper(
156
281
  hl7.send_results,
157
282
  )
@@ -161,6 +286,9 @@ class AsyncHl7ResourceWithRawResponse:
161
286
  def __init__(self, hl7: AsyncHl7Resource) -> None:
162
287
  self._hl7 = hl7
163
288
 
289
+ self.process = async_to_raw_response_wrapper(
290
+ hl7.process,
291
+ )
164
292
  self.send_results = async_to_raw_response_wrapper(
165
293
  hl7.send_results,
166
294
  )
@@ -170,6 +298,9 @@ class Hl7ResourceWithStreamingResponse:
170
298
  def __init__(self, hl7: Hl7Resource) -> None:
171
299
  self._hl7 = hl7
172
300
 
301
+ self.process = to_streamed_response_wrapper(
302
+ hl7.process,
303
+ )
173
304
  self.send_results = to_streamed_response_wrapper(
174
305
  hl7.send_results,
175
306
  )
@@ -179,6 +310,9 @@ class AsyncHl7ResourceWithStreamingResponse:
179
310
  def __init__(self, hl7: AsyncHl7Resource) -> None:
180
311
  self._hl7 = hl7
181
312
 
313
+ self.process = async_to_streamed_response_wrapper(
314
+ hl7.process,
315
+ )
182
316
  self.send_results = async_to_streamed_response_wrapper(
183
317
  hl7.send_results,
184
318
  )
@@ -4,9 +4,11 @@ from __future__ import annotations
4
4
 
5
5
  from .fax_send_params import FaxSendParams as FaxSendParams
6
6
  from .fax_send_response import FaxSendResponse as FaxSendResponse
7
+ from .hl7_process_params import Hl7ProcessParams as Hl7ProcessParams
7
8
  from .order_create_params import OrderCreateParams as OrderCreateParams
8
9
  from .order_update_params import OrderUpdateParams as OrderUpdateParams
9
10
  from .employee_list_params import EmployeeListParams as EmployeeListParams
11
+ from .hl7_process_response import Hl7ProcessResponse as Hl7ProcessResponse
10
12
  from .health_check_response import HealthCheckResponse as HealthCheckResponse
11
13
  from .order_create_response import OrderCreateResponse as OrderCreateResponse
12
14
  from .order_update_response import OrderUpdateResponse as OrderUpdateResponse
@@ -0,0 +1,27 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["Hl7ProcessParams"]
8
+
9
+
10
+ class Hl7ProcessParams(TypedDict, total=False):
11
+ f: str
12
+ """Form field (legacy support)"""
13
+
14
+ interface: str
15
+ """Interface identifier (legacy support)"""
16
+
17
+ login_passwd: str
18
+ """Login password (legacy support)"""
19
+
20
+ login_user: str
21
+ """Login user (legacy support)"""
22
+
23
+ message: str
24
+ """HL7 message content - the primary way to send HL7 data"""
25
+
26
+ message_b64: str
27
+ """Base64 encoded HL7 message (legacy support)"""
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import TypeAlias
4
+
5
+ __all__ = ["Hl7ProcessResponse"]
6
+
7
+ Hl7ProcessResponse: TypeAlias = str
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bluehive
3
- Version: 0.1.0a11
3
+ Version: 0.1.0a12
4
4
  Summary: The official Python library for the bluehive API
5
5
  Project-URL: Homepage, https://github.com/bluehive-health/bluehive-sdk-python
6
6
  Project-URL: Repository, https://github.com/bluehive-health/bluehive-sdk-python
@@ -60,9 +60,12 @@ pip install --pre bluehive
60
60
  The full API of this library can be found in [api.md](https://github.com/bluehive-health/bluehive-sdk-python/tree/main/api.md).
61
61
 
62
62
  ```python
63
+ import os
63
64
  from bluehive import BlueHive
64
65
 
65
- client = BlueHive()
66
+ client = BlueHive(
67
+ api_key=os.environ.get("BLUEHIVE_API_KEY"), # This is the default and can be omitted
68
+ )
66
69
 
67
70
  response = client.health.check()
68
71
  print(response.status)
@@ -78,10 +81,13 @@ so that your API Key is not stored in source control.
78
81
  Simply import `AsyncBlueHive` instead of `BlueHive` and use `await` with each API call:
79
82
 
80
83
  ```python
84
+ import os
81
85
  import asyncio
82
86
  from bluehive import AsyncBlueHive
83
87
 
84
- client = AsyncBlueHive()
88
+ client = AsyncBlueHive(
89
+ api_key=os.environ.get("BLUEHIVE_API_KEY"), # This is the default and can be omitted
90
+ )
85
91
 
86
92
 
87
93
  async def main() -> None:
@@ -115,6 +121,7 @@ from bluehive import AsyncBlueHive
115
121
 
116
122
  async def main() -> None:
117
123
  async with AsyncBlueHive(
124
+ api_key="My API Key",
118
125
  http_client=DefaultAioHttpClient(),
119
126
  ) as client:
120
127
  response = await client.health.check()
@@ -11,7 +11,7 @@ bluehive/_resource.py,sha256=MI2mGktYiePpr3PUh2uCPn1ubEsju6JkKoMupdTaqtc,1112
11
11
  bluehive/_response.py,sha256=u3wZ9ksvCqcP549TZTsozw0LNZmHf1yPVWPo1hxMNDg,28800
12
12
  bluehive/_streaming.py,sha256=NQNWmPF1nXVRx0ua8CLGyKAdhI8IBcLSZ022LenbQHw,10108
13
13
  bluehive/_types.py,sha256=9h31eihqlGo3KevS5EpSAWg-hJWTZW4wsWCrlTkVC_4,7238
14
- bluehive/_version.py,sha256=z7UYZDed-VsCECEkVS2owyfgGCQpxBoxT6mEHMvu6Lg,169
14
+ bluehive/_version.py,sha256=vbURqnoq97ZUK7Jr_78CpX2fv3g33tjJWf2Y3l5Ya6g,169
15
15
  bluehive/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  bluehive/_utils/__init__.py,sha256=7fch0GT9zpNnErbciSpUNa-SjTxxjY6kxHxKMOM4AGs,2305
17
17
  bluehive/_utils/_compat.py,sha256=D8gtAvjJQrDWt9upS0XaG9Rr5l1QhiAx_I_1utT_tt0,1195
@@ -28,10 +28,10 @@ bluehive/_utils/_utils.py,sha256=0dDqauUbVZEXV0NVl7Bwu904Wwo5eyFCZpQThhFNhyA,122
28
28
  bluehive/lib/.keep,sha256=wuNrz-5SXo3jJaJOJgz4vFHM41YH_g20F5cRQo0vLes,224
29
29
  bluehive/resources/__init__.py,sha256=8WjWJ-hLJYuUYGN3CV08MHez2UhBI-wYSLVK-4c7UeI,4758
30
30
  bluehive/resources/database.py,sha256=oAbB1lZwzO-PwMyPqQgW6-h5BTHyt6apLH9vKA7Hw-g,5218
31
- bluehive/resources/employees.py,sha256=3ySq6K0hxguC14B92hARnm2hTzUb0mbsNuSBVIMaWKA,31658
31
+ bluehive/resources/employees.py,sha256=P3iI2I6me7US9zJuotzsbWZmwyo4jEID7iFG2dCxzSk,31502
32
32
  bluehive/resources/fax.py,sha256=NZcIEfwZ0pk7SNy-VIxG1Z9gSxBa3KkrGB8ipA4kd8Q,12541
33
33
  bluehive/resources/health.py,sha256=6qqC6q7zb_BFO5BUclrVYOyS331hqXtVr7V5Qmwyuco,5003
34
- bluehive/resources/hl7.py,sha256=7Ns3n56cphl6yR-rQX4Sf__8wseRfgl2pQujpfV5lgE,6331
34
+ bluehive/resources/hl7.py,sha256=N6yGpU-P2yWB1KYtI6uhmqPl670uPyWLCBQPjFH78jw,11103
35
35
  bluehive/resources/integrations.py,sha256=0rxH3a8JAtCs1FPX_ecnpABSiHDXTMa0kNJP5ASnYN4,9728
36
36
  bluehive/resources/orders.py,sha256=3OFHxIIMWqnOeBAzxbiKp2F1MwY5DEV7kRbrtwupp-8,62078
37
37
  bluehive/resources/providers.py,sha256=jvPpIL2LOJGtImcQPDjLnhwd84XKshBO8PHiDbmAfM8,7348
@@ -39,7 +39,7 @@ bluehive/resources/version.py,sha256=AJw0eWmUC1zJyQ-gYaO_7WOmrqN-Nmi1EpwqAOabCWI
39
39
  bluehive/resources/employers/__init__.py,sha256=-ovT4pUPpmcAS2DPbKjmVXA7AkTPtnYjQGRNNjtFd5Y,1146
40
40
  bluehive/resources/employers/employers.py,sha256=y1ntoaxVC0ItOoJvJKoZFZvUlyaOSdgwnMxaKPSFhII,15415
41
41
  bluehive/resources/employers/service_bundles.py,sha256=09ghOW4ylRenqWC_naLdiGQEOMTcfGscnvrdIFaJPqM,21860
42
- bluehive/types/__init__.py,sha256=Hi8LR0U2r8dB-9tZRTF7ar_p2sK9sYIcR_VP2HbbcuY,4051
42
+ bluehive/types/__init__.py,sha256=FrNc1ueUJldnynxzuKYFZLBxYKXDa9kDCuJGEzxJBCI,4195
43
43
  bluehive/types/database_check_health_response.py,sha256=zLlcDlDzrebwMLjVVwLtYLt-s9v5s-ogQoKOhLDgfeA,986
44
44
  bluehive/types/employee_create_params.py,sha256=sDBBCKkTyuDobdh8aKuWo_nH1oi2PwKmS8UVkAp4KVI,1415
45
45
  bluehive/types/employee_create_response.py,sha256=8SsQXkwJvfJhcVr-ISBPskEqtptSFK8dZA6BQsrVyXE,368
@@ -62,6 +62,8 @@ bluehive/types/fax_retrieve_status_response.py,sha256=KU1eCgg0vvFMKLLmuUhq3KEMry
62
62
  bluehive/types/fax_send_params.py,sha256=u_mEjVxij6F0le0HCLDYOjzRgskE6O8ipwBZj6vgs-s,1136
63
63
  bluehive/types/fax_send_response.py,sha256=rv9t-MWLKKasWPETSn__QurGBXd5DWJdbAdZuQkTfH0,880
64
64
  bluehive/types/health_check_response.py,sha256=WILSpTguVO6DHPF0TK-zKx9xz5ECurna_Mu0hrQ7zK4,259
65
+ bluehive/types/hl7_process_params.py,sha256=dQZEIA6LiXHSAtwJPmYHo4XsbDg5vYu-KR13_LVdHEs,645
66
+ bluehive/types/hl7_process_response.py,sha256=qBqGwjVEZzLzOFMHpOauNOw1NCRBC18-J9nZ78NwFjc,198
65
67
  bluehive/types/hl7_send_results_params.py,sha256=GWdDKQcMyul9jZKH6ouNJ9UIKRAzUWRXrysJsLsIMwo,703
66
68
  bluehive/types/hl7_send_results_response.py,sha256=KmOB5ULQtdPVvLu0bpiDFd8ABqygvvWx8borj9e9yGI,206
67
69
  bluehive/types/integration_check_active_response.py,sha256=-07-eOa1xFat1JcO8DE6YKNePIgIq8SC7W0CENPbDyc,233
@@ -91,7 +93,7 @@ bluehive/types/employers/service_bundle_list_response.py,sha256=4Vl8fCq2vkX7GA0e
91
93
  bluehive/types/employers/service_bundle_retrieve_response.py,sha256=mJ2Bpw-ND9SLorYw3qsx0Jl6oBZmq-u065nCyZpTDk8,843
92
94
  bluehive/types/employers/service_bundle_update_params.py,sha256=jDzhSVOUkdCVMChEg9jzQA-GurewPEHpa9gYRAd0BYE,687
93
95
  bluehive/types/employers/service_bundle_update_response.py,sha256=GeR_rGw3kAzpjWrsMeSYF2cCQtWWOWdCR77vKeB26J8,839
94
- bluehive-0.1.0a11.dist-info/METADATA,sha256=ZYD5HVjDtCCyukdwGh5h5PpWEYDKoLJLKvKbgo4TX9o,13679
95
- bluehive-0.1.0a11.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
96
- bluehive-0.1.0a11.dist-info/licenses/LICENSE,sha256=Q2LP5YQQAGzyScIIkgum9Z19KCG4jZvZHMgDQ_vOOqM,11338
97
- bluehive-0.1.0a11.dist-info/RECORD,,
96
+ bluehive-0.1.0a12.dist-info/METADATA,sha256=YlWuopQ1xGv5dz1RxOYRFvP9G-hfBXagjLqZ5wrUZmU,13911
97
+ bluehive-0.1.0a12.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
98
+ bluehive-0.1.0a12.dist-info/licenses/LICENSE,sha256=Q2LP5YQQAGzyScIIkgum9Z19KCG4jZvZHMgDQ_vOOqM,11338
99
+ bluehive-0.1.0a12.dist-info/RECORD,,