Python SDK
Install and start using the Python SDK.
Intro
The InCountry REST API SDK provides access to the InCountry REST API REST APIs.
Store, query and manage regulated data in the InCountry Data Residency-as-a-Service (DRaaS) vault of a specific country.
Installation
Add the SDK to your project from its folder, with whichever package manager your project uses. Give each tool a path containing a slash, such as ../in-country-rest-api — a bare folder name is looked up on PyPI instead, and resolves to whatever project holds that name there:
pip install <path-to-sdk>uv add <path-to-sdk>poetry add <path-to-sdk>Quick Start
Synchronous client
Construct InCountryRestApiClient with keyword arguments, and call close() when you are done. Every argument is optional.
from in_country_rest_api import InCountryRestApiClient
from in_country_rest_api.core import BasicAuthCredentials
client = InCountryRestApiClient(
bearer_auth="YOUR_BEARER_TOKEN",
client_basic_auth=BasicAuthCredentials(username="YOUR_USERNAME", password="YOUR_PASSWORD"),
environment="production",
)
client.close()Alternatively, scope it — with InCountryRestApiClient(...) as client: closes the pool on exit.
Asynchronous client
AsyncInCountryRestApiClient mirrors InCountryRestApiClient with identical method names, and every endpoint method is a coroutine. It takes the same arguments, with some differences — for example, the transport argument is custom_async_http_client.
from asyncio import run
from in_country_rest_api import AsyncInCountryRestApiClient
from in_country_rest_api.core import BasicAuthCredentials
async def main() -> None:
client = AsyncInCountryRestApiClient(
bearer_auth="YOUR_BEARER_TOKEN",
client_basic_auth=BasicAuthCredentials(username="YOUR_USERNAME", password="YOUR_PASSWORD"),
environment="production",
)
await client.aclose()
run(main())Alternatively, scope it — async with AsyncInCountryRestApiClient(...) as client: closes the pool on exit.