Skip to main content

The scheduling infrastructure for AI agents — Python SDK

Project description

orita-sdk (Python)

PyPI version Python 3.8+ License: MIT

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

orita_sdk-0.4.0.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

orita_sdk-0.4.0-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file orita_sdk-0.4.0.tar.gz.

File metadata

  • Download URL: orita_sdk-0.4.0.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

Hashes for orita_sdk-0.4.0.tar.gz
Algorithm Hash digest
SHA256 1bc888c427a510e7ea7ff0fdc1790a7722119a5877da9eba97d9aa0f1eb8f991
MD5 590169a5112d1b57616ac80553b32ff4
BLAKE2b-256 d4f8b7e503e08462b1e82fe2ab09e2d0f5907acacc5d81d8fd46448879baca37

See more details on using hashes here.

File details

Details for the file orita_sdk-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: orita_sdk-0.4.0-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

Hashes for orita_sdk-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 57d9e211aa106778fd1aa4034f8b91125c39492a95a4cc84bf22258ff7465736
MD5 4b0c3c5421ab30cb9b0181a8eaa9434a
BLAKE2b-256 225d29d926ffd2244528f57ab14f9682e7797dee27fbc12d5bd2f2f519419d54

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page