Skip to main content
Digits Core Service

The Clinical API Layer for the hand

Embed clinically validated hand assessment into your product with one API. Send anonymized landmark telemetry; get structured results and FHIR back — processed by a standardized, versioned engine. The interface stays with you. The intelligence comes from underneath.

curl https://core.digitshealth.com/v1/assessments/rom \
  -H "Authorization: Bearer $DIGITS_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subjectRef": "patient-007",
    "hand": "RIGHT",
    "fps": 30,
    "frames": [ /* MediaPipe landmark frames */ ]
  }'

The interface stays where it already is. The intelligence becomes modular — and the hand becomes a clinically trusted primitive other products can call.

Embedded inside
Telemedicine

A ROM + dexterity step inside the existing video visit, returning structured Observations to the note.

Embedded inside
EHR vendors

A hand-assessment order type; results flow back as Observations attached to the encounter.

Embedded inside
Pharmacy / retail health

At-home arthritis tracking inside the app patients already open; flag decline, offer a teleconsult.

Embedded inside
OT / PT networks

Pre-visit assessments, between-session homework, and outcome reports — branded as the network's program.

How it works

Telemetry in, governed record out

DCS owns the intelligence and the record — not a thin wrapper over math that runs in each partner's app.

1

Send anonymized telemetry

Your app captures MediaPipe hand landmarks and POSTs them — geometry, not pixels and not pre-computed scores. You attach your own opaque subject reference.

2

A versioned engine processes it

DCS runs one standardized, server-side engine over the telemetry — identical for every partner, stamped with its version. The algorithm never lives in your client.

3

Get results + a governed record

You receive structured results and FHIR. DCS stores the telemetry input and computed output as one immutable, reproducible record under a pseudonym.

Engines

One programmable primitive per assessment

Each engine is pure, deterministic, and versioned. More are on the way — arthritis, wrist and thumb, grip.

Range of motion

Per-joint flexion angles, ROM, and flexibility scores for the 12 finger joints, with clinical normal ranges.

POST /v1/assessments/romdigits-hand-rom · v1.0.0

Dexterity (finger tapping)

Thumb-to-fingertip tap detection → sequences completed, frequency, sequence accuracy, and per-finger scores (Kuchtaruk et al. 2024).

POST /v1/assessments/dexteritydigits-hand-dexterity · v1.0.0

Pain

Structured pain report → a governed pain-burden score with per-site severity, plus FHIR Observations for each reported location.

POST /v1/assessments/paindigits-hand-pain · v1.0.0
Built for clinical data

The regulatory wrapper, handled

FHIR output, PHI controls, audit, reproducibility, and tenant isolation come with the bundle — sold once, integrated once, governed once.

FHIR-native output

Every assessment projects to a FHIR R4 Bundle of Observations — panel score plus per-joint or per-finger detail, in UCUM units with clinical reference ranges.

PHI stays yours

Partners send their own opaque subjectRef; DCS re-hashes it into a stable pseudonym. Neither side alone holds a full PHI record. Telemetry is landmark geometry, never pixels.

Reproducible by design

Input telemetry, output, and engine version are stored together. The same input under the same version yields the same result — and a new version can be replayed over history.

Versioned engines

The clinical algorithm runs in exactly one governed place and is stamped on every record, so results are attributable and auditable — not drifting across client builds.

Tenant-isolated

A partner key only ever lists and reads its own records. Scoped, HMAC-hashed Bearer keys; every clinical read and write emits a structured audit event.

Built on real validation

The same engines power the Digits web and Android apps and the Digits Research Connect pipeline — clinical depth compounds underneath the API.

Quickstart

From key to first assessment

  1. 1
    Authenticate

    Pass your partner key as a Bearer token. Keys are scoped and HMAC-hashed — the raw key is shown once.

  2. 2
    Submit telemetry

    POST landmark frames to an assessment engine. DCS computes server-side and stores the governed record.

  3. 3
    Read results or FHIR

    Fetch the structured result by its ref, add ?include=input for the stored telemetry, or /fhir for a Bundle.

export DIGITS_KEY="dcs_live_..."

curl https://core.digitshealth.com/v1 \
  -H "Authorization: Bearer $DIGITS_KEY"
# → service metadata + your key's scopes + engines
From the team

Posts & working notes

Strategy memos and write-ups on where the Core Service is headed — the thinking behind the platform.

View all posts

Make the hand programmable in your product

We're onboarding launch partners — telemedicine, EHR, pharmacy, and OT/PT networks. Tell us what you're building.

Are you a patient or clinician? Try a free hand assessment.