Provider resolution and booking infrastructure for AI applications
Project description
orita-sdk (Python)
Provider resolution and scheduling infrastructure — official Python SDK
Orita finds the right provider across your network — applying license, insurance, modality, and availability constraints — then confirms the booking safely.
→ API v2 docs: orita.online/developers
→ API reference: orita.online/developers/reference
→ Node.js SDK: npmjs.com/package/orita-sdk
Installation
pip install orita-sdk
Quick start
from orita import OritaClient
orita = OritaClient(api_key="orita_...")
# 1. Resolve — find eligible providers with verified availability
resolution = orita.resolutions.create(
service_id="svc_therapy_initial",
date_range={
"from": "2026-08-05",
"to": "2026-08-12",
"timezone": "America/New_York"
},
constraints={
"languageCodes": {"anyOf": ["es"]},
"modalityCodes": {"anyOf": ["virtual"]},
"licenseRegionCodes": {"anyOf": ["US-NJ"]},
"insurancePlanCodes": {"anyOf": ["aetna"]},
"acceptsNewClients": True
},
preferences={
"dayParts": ["afternoon"],
"earliestAvailable": True
}
)
# 2. Hold the chosen option
hold = orita.resolutions.hold_option(
resolution["resolutionId"],
resolution["options"][0]["optionId"]
)
# 3. Confirm exactly once
booking = orita.resolutions.confirm(
resolution["resolutionId"],
option_id=resolution["options"][0]["optionId"],
hold_id=hold["holdId"],
customer={"name": "James Park", "email": "james@example.com"},
idempotency_key="confirm-customer-991"
)
print(booking["status"]) # "confirmed"
Why resolution instead of direct booking
Use resolutions.create when you don't know which provider to use. Orita evaluates your entire provider network, applies eligibility rules, verifies availability, and returns ranked options with explanations.
Provider imports
job = orita.provider_imports.create(
mode="upsert",
dry_run=True,
providers=[{
"externalId": "provider-2841",
"displayName": "Dr. Ana García",
"professionCode": "clinical_psychologist",
"languageCodes": ["es", "en"],
"licenseRegionCodes": ["US-NJ"],
"insurancePlanCodes": ["aetna"],
"acceptsNewClients": True
}]
)
Inspect every decision
candidates = orita.resolutions.list_candidates(
resolution_id, status="excluded"
)
# candidates[0]["exclusions"] = [{"code": "INSURANCE_NOT_ACCEPTED", ...}]
API
orita.resolutions.create(...)
orita.resolutions.get(resolution_id)
orita.resolutions.list_candidates(resolution_id, status=None)
orita.resolutions.hold_option(resolution_id, option_id)
orita.resolutions.release_hold(resolution_id, option_id)
orita.resolutions.confirm(resolution_id, ...)
orita.provider_imports.create(...)
orita.provider_imports.get(import_id)
orita.providers.list(...)
orita.providers.create(...)
orita.bookings.get(booking_id)
orita.bookings.reschedule(booking_id, ...)
orita.bookings.cancel(booking_id)
orita.ranking_policies.simulate(policy_id, ...)
Documentation
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orita_sdk-0.4.1.tar.gz.
File metadata
- Download URL: orita_sdk-0.4.1.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6334ec76760176eb1163d3035dc4a1c3d26ca4d02b65e0f2388840f4bf13eabe
|
|
| MD5 |
608ec7db1d002a1a4cd72afd69378a7b
|
|
| BLAKE2b-256 |
688c41d5f254d262fcfe84ee4918004881798068e2ab5d57abe8435ddbd46ae6
|
File details
Details for the file orita_sdk-0.4.1-py3-none-any.whl.
File metadata
- Download URL: orita_sdk-0.4.1-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e16291959a6d623270e6d0d991649d8cb5eb54cd070215dced9c2f24d2b1806a
|
|
| MD5 |
e026b4d3689567a7dac4545e59675e7e
|
|
| BLAKE2b-256 |
e1d226208f1d5a76dcad8d98b21629cd697cf06ca721cacad60e001ac1e0901e
|