Skip to main content

Royal Vendor SDK for Python

Typed sync and async access to Royal's curated Captivated, Encompass, PanTerra, and Paylocity API surfaces. Import the vendor you need directly:

from royal_vendor_sdk.encompass import EncompassClient, LoanPipelineQueryRequest

with EncompassClient(access_token) as client:
    result = client.query_pipeline(
        LoanPipelineQueryRequest(fields=["Loan.LoanNumber"]),
        limit=100,
    )

All calls return ApiResult[T] (royal_vendor_sdk.core), and matching operations are available on each vendor's *AsyncClient. Generated transport code remains internal under each vendor's _generated subpackage; applications should use the stable clients.

royal_vendor_sdk.captivated

Typed sync and async access to Royal's curated Captivated contract, including idempotent conversation membership reconciliation:

from royal_vendor_sdk.captivated import CaptivatedClient

with CaptivatedClient(access_token) as client:
    joined = client.ensure_joined(feed_id, user_id)

The /api/v2 resources are verified but unpublished Captivated APIs and may change without notice. Credential-management endpoints such as /api/v2/api_keys are intentionally excluded.

royal_vendor_sdk.encompass

The stable facades cover every operation exposed by the Royal .NET Encompass client: loans, pipeline and reports, fields and locks, milestones and free roles, schemas, organizations, company settings, users, custom data objects, eFolder, Encompass Docs, and administrative batch updates.

Authentication

Three token helpers cover Encompass's supported grants, each returning ApiResult[OAuthAccessToken] (sync + _async variants of each):

  • request_service_token -- grant_type=client_credentials. Restricted to ISV partners registered as Encompass API Users.
  • request_user_service_token -- grant_type=password (resource owner password credentials). Lenders must use this grant instead of client_credentials; pass a plain Encompass user name and the SDK qualifies it as {username}@encompass:{instance_id}.
  • request_impersonation_token -- exchanges an already-issued access token for one acting as another Encompass user (urn:ietf:params:oauth:grant- type:token-exchange). Super Administrators may impersonate any user; API Users authenticated with the password grant may impersonate users at or below their own level.
from royal_vendor_sdk.encompass import (
    request_user_service_token,
    request_impersonation_token,
)

token = request_user_service_token(
    client_id=client_id,
    client_secret=client_secret,
    instance_id=instance_id,
    username="service.user",
    password=password,
)

impersonated = request_impersonation_token(
    client_id=client_id,
    client_secret=client_secret,
    actor_token=token.value.access_token,
    subject_user_id="target-encompass-user-id",
)

royal_vendor_sdk.panterra

Typed sync and async access to the curated PanTerra Streams API. The specification prefers v2 operations and retains v1 operations only where the current vendor surface has no equivalent.

from royal_vendor_sdk.panterra import PanTerraClient

with PanTerraClient(access_token) as client:
    result = client.list_call_detail_records(account_id=12345)

The facade includes account and user CDRs, agents, groups, and recordings, with a matching PanTerraAsyncClient. The complete curated surface is available through client.generated_client and royal_vendor_sdk.panterra._generated.api.

royal_vendor_sdk.paylocity

Typed sync and async access to the employee and custom-field operations already supported by the stable Royal .NET Paylocity SDK.

from royal_vendor_sdk.paylocity import PaylocityClient

with PaylocityClient(access_token) as client:
    result = client.list_employees(company_id="company-id", page_size=100)

The facade supports listing, reading, creating, and updating employees plus both custom-field reads. PaylocityAsyncClient provides the same surface asynchronously.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

royal_vendor_sdk-0.2.0.tar.gz (101.4 kB view details)

Uploaded Source

Built Distribution

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

royal_vendor_sdk-0.2.0-py3-none-any.whl (295.9 kB view details)

Uploaded Python 3

File details

Details for the file royal_vendor_sdk-0.2.0.tar.gz.

File metadata

  • Download URL: royal_vendor_sdk-0.2.0.tar.gz
  • Upload date:
  • Size: 101.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for royal_vendor_sdk-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d8aba9c15d2a471c8283337deaec635f3549af1b9482ee0a0eb3506efcc330fb
MD5 c565bcb4d3b002d361fa658baa16263c
BLAKE2b-256 02d73083777b7268369cc37e86eb2c87a10463119770cef56263dbfedc7152f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for royal_vendor_sdk-0.2.0.tar.gz:

Publisher: publish-pypi.yml on Royal-United-Mortgage/Royal.Sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file royal_vendor_sdk-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for royal_vendor_sdk-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3ffcba70569233b21ccf97a891468e55db446c9733fcb9a121f483b00afe7ad8
MD5 cee46df4085715d7f6cb96893e755d7a
BLAKE2b-256 73d3913f4882a21028eeb1d6fd97e4f9efa851906ed30ac27869d3f9063bbde4

See more details on using hashes here.

Provenance

The following attestation bundles were made for royal_vendor_sdk-0.2.0-py3-none-any.whl:

Publisher: publish-pypi.yml on Royal-United-Mortgage/Royal.Sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

0.1.0

2 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