Api¶
- 
class 
ambra_sdk.api.Api(*args, **kwargs)[source]¶ Ambra API.
Example: >>> from ambra_sdk.api import Api >>> >>> api = Api.with_creds( … url=’https://ambrahealth_host/api/v3’, … username=’username’, … password=’password’, … client_name=’Some name (ex: Hospital-ABC)’, … )
Using some special parameters (In most cases you don’t need this!):
>>> from ambra_sdk.api import Api >>> from ambra_sdk.api.base_api import RateLimit, RateLimits >>> >>> MY_RLS = RateLimits( ... default=RateLimit(3, 2), ... get_limit=RateLimit(4, 2), ... special={'special_url': RateLimit(5, 2)}, ... ) >>> >>> api = Api.with_creds( ... url='https://ambrahealth_host/api/v3', ... username='username', ... password='password', ... client_name='Some name (ex: Hospital-ABC)', ... special_headers_for_login={'Special-H': 'ABC'}, ... rate_limits=MY_RLS, ... autocast_arguments=False, ... )
- 
retry_with_new_sid(fn: Callable[…, FN_RETURN_TYPE]) → FN_RETURN_TYPE[source]¶ Retry with new sid.
- Parameters
 fn – callable method
- Returns
 fn result
- 
service_post(url: str, required_sid: bool, **kwargs) → requests.models.Response[source]¶ Post data to url.
- Parameters
 url – method url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response
- 
service_request(request_args: ambra_sdk.request_args.RequestArgs, required_sid: bool) → requests.models.Response[source]¶ Post data to url.
- Parameters
 request_args – request args
required_sid – is this method required sid
- Returns
 response
- 
property 
service_session¶ Service session.
- Returns
 service session
- 
property 
sid¶ Get or create new sid property.
- Returns
 sid
- 
storage_delete(url: str, required_sid: bool, **kwargs) → requests.models.Response[source]¶ Delete from storage.
- Parameters
 url – url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response obj
- 
storage_get(url: str, required_sid: bool, **kwargs) → requests.models.Response[source]¶ Get from storage.
- Parameters
 url – url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response obj
- 
storage_post(url: str, required_sid: bool, **kwargs) → requests.models.Response[source]¶ Post to storage.
- Parameters
 url – url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response obj
- 
property 
storage_session¶ Storage session.
- Returns
 storage session
- 
 
Async Api¶
- 
class 
ambra_sdk.api.AsyncApi(*args, **kwargs)[source]¶ Ambra Async API.
Example: >>> from ambra_sdk.api import AsyncApi >>> >>> api = AsyncApi.with_creds( … url=’https://ambrahealth_host/api/v3’, … username=’username’, … password=’password’, … client_name=’Some name (ex: Hospital-ABC)’, … )
Using some special parameters (In most cases you don’t need this!):
>>> from ambra_sdk.api import AsyncApi >>> from ambra_sdk.api.base_api import RateLimit, RateLimits >>> >>> MY_RLS = RateLimits( ... default=RateLimit(3, 2), ... get_limit=RateLimit(4, 2), ... special={'special_url': RateLimit(5, 2)}, ... ) >>> >>> api = AsyncApi.with_creds( ... url='https://ambrahealth_host/api/v3', ... username='username', ... password='password', ... client_name='Some name (ex: Hospital-ABC)', ... special_headers_for_login={'Special-H': 'ABC'}, ... rate_limits=MY_RLS, ... autocast_arguments=False, ... )
- 
async 
get_new_sid() → str[source]¶ Get new sid.
- Raises
 RuntimeError – Missed credentials
- Returns
 sid
- 
async 
retry_with_new_sid(fn: Callable[…, Awaitable[FN_RETURN_TYPE]]) → FN_RETURN_TYPE[source]¶ Retry with new sid.
- Parameters
 fn – callable method
- Returns
 fn result
- 
async 
service_post(url: str, required_sid: bool, **kwargs) → aiohttp.client_reqrep.ClientResponse[source]¶ Post data to url.
- Parameters
 url – method url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response
- 
async 
service_request(request_args: ambra_sdk.request_args.AioHTTPRequestArgs, required_sid: bool) → aiohttp.client_reqrep.ClientResponse[source]¶ Post data to url.
- Parameters
 request_args – request args
required_sid – is this method required sid
- Returns
 response
- 
property 
service_session¶ Service session.
- Returns
 service session
- 
async 
storage_delete(url: str, required_sid: bool, **kwargs) → aiohttp.client_reqrep.ClientResponse[source]¶ Delete from storage.
- Parameters
 url – url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response obj
- 
async 
storage_get(url: str, required_sid: bool, **kwargs) → aiohttp.client_reqrep.ClientResponse[source]¶ Get from storage.
- Parameters
 url – url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response obj
- 
async 
storage_post(url: str, required_sid: bool, **kwargs) → aiohttp.client_reqrep.ClientResponse[source]¶ Post to storage.
- Parameters
 url – url
required_sid – is this method required sid
kwargs – request arguments
- Returns
 response obj
- 
property 
storage_session¶ Storage session.
- Returns
 storage session
- 
async