Skip to content

Overview

The Client SDK lets your application open, save and share protected patient records. It runs on these platforms:

PlatformLanguage
Web apps, desktop apps and the browser extensionTypeScript
iOS and macOSSwift
AndroidKotlin

All three languages have the same namespaces, calls and decisions. Only the syntax differs. See TypeScript, Swift and Kotlin for how each shape renders.

Three rules hold everywhere

  1. A decision is a value, never an error. Every call the tenant’s policies decide returns a Decided<T>:

    • allow with what you asked for.
    • deny with a reason code and the words a person should see.
    • challenge with a stepUp() that asks again after a fresh multi-factor sign-in.

    Your application never sees a policy, a rule or a classification, only the outcome.

  2. An error is a fault or a state. A SealdHealthcareError carries one code from a fixed list:

    • the device is locked
    • no session is open
    • this device was revoked
    • the release is below the version floor
    • the Seald Healthcare Cloud is unreachable
    • a stored object or a device certificate (card) failed its check

    retryable says whether the same call may succeed later with no change on your side.

  3. Plaintext exists only in the object that open returns. Your application renders it in its own surface and calls close(). That discards the plaintext and every key of that open. A save takes plaintext and returns a version number. You cannot store anything the SDK returns and open it again later. No key remains to do it with.

What it hides, what it shows

What it hidesWhat it shows
Every key and internal step: encrypting data, keeping it in sync across devices, and making it work offline, including epoch changesDecisions, plaintext, the tenant as the person may see it, and what waits on whom

The namespaces

Your application calls the SDK through one namespace per area, such as client.objects or client.domains. Reference overview lists every namespace with its guide.

Next

  • Install to add the package and create the SDK.
  • Quickstart to open your first record.
  • Adapters to see what your application supplies.
  • Use cases for common tasks, each in three steps or fewer.