Skip to main content

Assured Platform API — Unofficial Python SDK

An unofficial, modern, async-first Python SDK wrapping the Assured Platform API. This library provides fully typed Pydantic models, automatic semantic pagination, and robust file handling designed to streamline interactions with Assured's complex backend.

CI CodeQL Advanced GitHub release PyPI version Docs License

forthebadge made-with-python uv

Open Demo In Colab

Features

  • Async First: Built on httpx to support highly concurrent workflows seamlessly.
  • Type Safety: Thoroughly documented Pydantic v2 classes represent the massive web of API payloads.
  • Auto-Pagination: Helper methods to pull data incrementally or extract directly into pandas.DataFrames.
  • Session Bridge: A custom JWT authentication layer to shim missing capabilities for undocumented storage and encryption endpoints.

Setup & Installation

The package manages dependencies using standard Python environments (uv, hatch, or pip). The primary configuration is driven via environment variables.

Prerequisites

Create a .env file in your root directory based on the .env.example:

ASSURED_BASE_URL=https://demo-backend.withassured.com
ASSURED_API_KEY=your-api-key-here
ASSURED_USER=your-email@example.com
ASSURED_PASS=your-password

[!NOTE] The API Key handles 95% of requests. However, certain endpoints — file uploading (still undocumented) and SSN encryption (now in the official spec, though its JWT-only auth requirement is not) — require explicit user credentials (ASSURED_USER and ASSURED_PASS) to acquire an internal JWT session token. The client handles fetching and caching this JWT automatically.

Quickstart

import asyncio
from assured import AssuredClient


async def run():
    # Automatically loads configuration from your `.env` file using pydantic-settings
    async with AssuredClient() as client:
        # 1. Standard API Key usage: List all providers into a DataFrame
        providers_df = await client.providers.list_df()
        print(providers_df[["full_name", "npi", "email"]])

        # 2. Extract provider details
        detail = await client.credentialing.get_request("some-uuid")
        provider_profile_id = detail.provider_id

        # 3. Use undocumented JWT bridging: Upload and associate a document seamlessly!
        # The client recognizes this requires a JWT, fetches one leveraging your User credentials,
        # posts the multipart payload to S3, and links it into the provider profile.
        contract_bytes = b"..."
        document = await client.provider_profile.upload_and_associate_document(
            provider_id=provider_profile_id,
            file_content=contract_bytes,
            filename="contract.pdf",
            document_name="IHCP Rendering Provider Agreement",
            document_type="Individual Provider Agreement",
        )

        # 4. Generate short-lived presigned URLs for assets
        secure_link = await client.files.presign_url(document.document_url)
        print(f"Download the document at: {secure_link}")


if __name__ == "__main__":
    asyncio.run(run())

Structure & Architecture

The domains mirror Assured's core logical groupings:

  • client.users: Managing internal roles.
  • client.providers: Listing, fetching context, and inviting user providers.
  • client.provider_profile: Encompasses deep profiles ranging from demographics to DEAs to Gap Histories.
  • client.credentialing: Operations wrapping verification tasks.
  • client.files: Storage abstraction logic.

Known Discrepancies

A recent spec update (58 → 94 endpoints) officially documented much of what this SDK had reverse-engineered — login, provider personal info, employment v1, provider documents, and the SSN endpoint among them. Several behaviors still diverge from the spec, however (Encrypted SSN payloads, JWT-only file uploads via S3 Bucket paths, the account-vs-profile ID split), and the SDK continues to handle them automatically under-the-hood. For the current list of active divergences and the quirks that survived documentation, check out the API Divergence Document.

Release files for assured-py 1.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for assured-py 1.3.0
File Size Uploaded
assured_py-1.3.0.tar.gz 395.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for assured-py 1.3.0
File Interpreter ABI Platform
assured_py-1.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 441.8 kB

Release files / assured_py-1.3.0.tar.gz

Download URL assured_py-1.3.0.tar.gz
Size 395.5 kB
Tags Source
SHA-256 checksum
How to use checksums
1ca5db0d8756b49646c737681b4ede9f15189ee3c4cdeebb4435efcd4ab177ce
BLAKE2b-256 checksum
How to use checksums
a59da7c4923d5ef144dd93d4fe5b4ed61d1b67a163a97b261d2b2d7804ea5fe0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / assured_py-1.3.0-py3-none-any.whl

Download URL assured_py-1.3.0-py3-none-any.whl
Size 46.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
75126f37b59898dd663e918b495ed25a7f7c05f367f2ad877e4059b08479beab
BLAKE2b-256 checksum
How to use checksums
6e10be7b937d0ec5e40565a21e69456eb754f0552a514121c8797f2eb3c8cc06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.3.0 This release

2 release files

1.2.0

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page