Supergood | Motivity API

Supergood | Motivity API

Collect and manage ABA therapy programs, session data, and progress in Motivity with a stable REST API. Supergood builds and operates production-grade, unofficial Motivity integrations so your team can automate clinical data collection, roster syncs, analytics pipelines, and documentation workflows without heavy custom engineering.

In plain English: Motivity is software used by ABA and behavioral health teams to design learning programs and behavior plans, capture trial-by-trial session data, and visualize progress for learners. With an unofficial API, you could programmatically pull learners, programs, targets, session records, and raw observations—and push session notes or new targets—so your other systems (EHR, analytics, scheduling, billing) stay in sync.

If you’re another tech company integrating with Motivity (e.g., an EHR, scheduling platform, or analytics tool), you might:

  • Pull: Learner profiles, programs and targets with mastery criteria, session records, raw observations, progress summaries, staff rosters
  • Push: New/updated learners from your EHR, scheduled session shells, finalized session notes, target status updates or phase changes, supervision/IOA artifacts
  • Build: Program-aware scheduling, real-time performance dashboards, automated progress reports, QC/IOA review queues, downstream billing triggers based on documented services

What is Motivity?

Motivity provides modern ABA data collection and program management software for autism and behavioral health providers. BCBAs design and manage skill acquisition and behavior reduction programs; technicians capture trial-by-trial data on mobile devices (including offline); and teams evaluate progress with built-in graphs and reports.

Core product areas include:

  • Program design and management (skills, behaviors, targets, mastery criteria)
  • Session data collection (discrete trials, frequency/duration/interval measures)
  • Graphing and progress reporting
  • Session notes, signatures, and supervision workflows (IOA, BCBA review)
  • Learner and staff management with role-based permissions
  • Mobile/offline data capture and sync

Common data entities:

  • Learners/Clients (demographics, guardians, funding sources)
  • Programs (skill or behavior plans) and Targets (objectives)
  • Measurement definitions (frequency, duration, interval, task analysis)
  • Sessions (date/time, provider, service code, setting, notes, signatures)
  • Observations/Data points (trial outcomes, counts, durations, intervals)
  • Staff/Providers (RBTs, BCBAs, supervisors)

The Motivity Integration Challenge

Organizations rely on Motivity daily, but turning portal-based clinical workflows into automated pipelines can be hard:

  • No public API: Programmatic access for rosters, sessions, and raw data is a common request but typically requires manual exports
  • Portal-first delivery: Program details, graphs, and session notes are primarily accessed through the web app, not a published API
  • Offline/mobile nuances: Sessions collected offline sync later; integrations must de-duplicate and preserve ordering and timestamps
  • Data shape variability: Different measurement types (frequency, duration, interval, task analysis) require normalized schemas
  • Identity and access: Role-based permissions, SSO/MFA, and multi-site orgs complicate headless automation
  • Downstream system needs: EHRs and billing systems often require structured summaries while analytics teams want raw observation-level data

How Supergood Creates Motivity APIs

Supergood reverse-engineers authenticated browser flows, batch exports, and network interactions to deliver a resilient API endpoint layer.

  • Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
  • Maintains session continuity with automated refresh and change detection
  • Normalizes learners, programs, sessions, and observation objects for consistent consumption
  • Aligns with customer entitlements and permissions to ensure compliant access
  • Bridges exports and batch files with signed URL retrieval and delivery when applicable

Use Cases

EHR-to-Data Synchronization

  • Push learner demographics from your EHR into Motivity to reduce double entry
  • Create scheduled session shells that technicians fill with data during service delivery
  • Maintain a single source of truth for active caseloads and assignments

Program-Aware Scheduling and Supervision

  • Pull programs and targets to surface ready-to-run objectives on your scheduler
  • Track mastery criteria and automatically route supervision/IOA tasks
  • Alert staff when targets are nearing mastery or require phase changes

Real-Time Performance Dashboards

  • Stream observation-level data into your data warehouse for dashboards
  • Normalize measures (frequency, duration, interval) for cross-learner analytics
  • Monitor adherence to session length, service codes, and setting requirements

Documentation and Billing Enablement

  • Generate session note summaries (time in/out, services, goals addressed)
  • Push finalized notes and service summaries into your EHR (e.g., TherapyNotes, WebABA) for clinician sign-off
  • Trigger downstream billing events when documentation is complete and QC checks pass

Audit and Quality Control

  • Export complete session packets with notes, signatures, and trial data
  • Maintain machine-readable audit trails with timestamps and device metadata
  • Run QC workflows for IOA and supervision reviews

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Basic <Base64 encoded token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "username": "[email protected]",
    "password": "<password>",
    "mfa": {
      "type": "totp",
      "code": "123456"
    }
  }'

Example response

{
  "authToken": "eyJhbGciOi...",
  "expiresIn": 3600,
  "user": {
    "id": "u_29b71a",
    "name": "Jordan RBT",
    "roles": ["rbt"],
    "entitlements": ["learners", "programs", "sessions"]
  }
}

Learners

GET /learners: Retrieve learner/client profiles to power roster syncs, scheduling, and analytics.

Query parameters

  • status: string (active, inactive, discharged)
  • search: string (name or identifier)
  • updatedSince: ISO 8601 timestamp
  • page, pageSize: integers

Example response

{
  "items": [
    {
      "learnerId": "lrn_9b42f0",
      "firstName": "Ava",
      "lastName": "Martinez",
      "dateOfBirth": "2017-05-14",
      "externalIds": {"ehr": "EHR-001928"},
      "guardians": [
        {"name": "Luis Martinez", "relationship": "Father", "phone": "+1-555-0101"}
      ],
      "fundingSources": [
        {"payer": "Medicaid", "program": "HCBS-Waiver", "memberId": "M123456"}
      ],
      "tags": ["early_intervention"],
      "status": "active",
      "updatedAt": "2026-01-18T22:41:09Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Programs & Targets

GET /learners/{learnerId}/programs: Retrieve programs and targets for a learner, including measurement definitions and mastery criteria.

Query parameters

  • includeInactive: boolean
  • expand: string array (e.g., targets, masteryCriteria)

Example response

{
  "learnerId": "lrn_9b42f0",
  "programs": [
    {
      "programId": "prg_skills_201",
      "name": "Receptive Labeling",
      "type": "skill_acquisition",
      "status": "active",
      "targets": [
        {
          "targetId": "tgt_apple",
          "label": "Label common fruits",
          "measurement": {
            "type": "discrete_trial",
            "promptHierarchy": ["full_physical", "partial_physical", "model", "gestural", "verbal", "independent"]
          },
          "masteryCriteria": {
            "criterionType": "percent_correct",
            "threshold": 80,
            "consecutiveSessions": 3
          },
          "status": "in_progress"
        }
      ],
      "updatedAt": "2026-01-17T19:23:54Z"
    },
    {
      "programId": "prg_behavior_110",
      "name": "Aggression Reduction",
      "type": "behavior_reduction",
      "status": "active",
      "targets": [
        {
          "targetId": "tgt_agg_freq",
          "label": "Aggression frequency",
          "measurement": {
            "type": "frequency",
            "operationalDefinition": "Hitting, kicking, biting",
            "ioaRequired": true
          },
          "masteryCriteria": {
            "criterionType": "rate_decrease",
            "baseline": 6.0,
            "targetRate": 1.0,
            "window": "per_session"
          },
          "status": "in_progress"
        }
      ]
    }
  ]
}

Sessions

POST /sessions: Create or update a therapy session record with staff, service details, notes, and signatures. Use this to push scheduled sessions or finalize documentation after data collection.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "learnerId": "lrn_9b42f0",
    "providerId": "prv_rbt_2208",
    "supervisorId": "prv_bcba_3110",
    "serviceCode": "97153",
    "setting": "home",
    "startTime": "2026-01-19T14:02:33Z",
    "endTime": "2026-01-19T16:01:47Z",
    "location": {"lat": 39.9612, "lng": -82.9988},
    "notes": "Worked on receptive labeling and mands; behavior at baseline.",
    "signatures": {
      "provider": {"name": "Jordan RBT", "signedAt": "2026-01-19T16:05:02Z"},
      "guardian": {"name": "Luis Martinez", "signedAt": "2026-01-19T16:06:11Z"}
    },
    "referenceId": "scheduler-42391"
  }'

Example response

{
  "sessionId": "ses_58d3e0",
  "status": "finalized",
  "createdAt": "2026-01-19T16:06:40Z",
  "referenceId": "scheduler-42391"
}

Observations (Trial/Data Points)

POST /sessions/{sessionId}/observations: Append observation-level data to a session. Supports discrete trials, frequency counts, durations, and interval records.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions/ses_58d3e0/observations \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "observations": [
      {
        "targetId": "tgt_apple",
        "timestamp": "2026-01-19T14:15:25Z",
        "measure": {
          "type": "discrete_trial",
          "trial": {
            "sd": "Label apple",
            "response": "correct",
            "promptLevel": "gestural",
            "latencyMs": 1200
          }
        }
      },
      {
        "targetId": "tgt_agg_freq",
        "timestamp": "2026-01-19T15:12:01Z",
        "measure": {
          "type": "frequency",
          "count": 1
        },
        "metadata": {"ioa": false}
      },
      {
        "targetId": "tgt_task_analysis_01",
        "timestamp": "2026-01-19T15:30:00Z",
        "measure": {
          "type": "duration",
          "durationSeconds": 180
        }
      }
    ],
    "idempotencyKey": "obs-batch-0001"
  }'

Example response

{
  "sessionId": "ses_58d3e0",
  "accepted": 3,
  "duplicates": 0,
  "observationIds": ["obs_001", "obs_002", "obs_003"],
  "processedAt": "2026-01-19T16:07:12Z"
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
  • Response format: JSON with consistent resource schemas and pagination
  • Rate limits: Tuned for enterprise throughput while honoring licensing and usage controls
  • Session management: Automatic reauth and cookie/session rotation with health checks
  • Data freshness: Near real-time retrieval of learners, programs, sessions, and observations, with de-duplication for offline syncs
  • Security: Encrypted transport, scoped tokens, and audit logging; respects Motivity entitlements and organizational permissions
  • Webhooks: Optional asynchronous delivery for session finalization, IOA artifacts, and progress updates

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume session/observation ingestion and analytics exports
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
  • Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your Motivity product mix, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened Motivity adapter tailored to your workflows and entitlements.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as Motivity evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which Motivity features can this integration cover?

Supergood focuses on data access and automation across commonly used Motivity workflows: learners, programs/targets, sessions, raw observations, and progress summaries—subject to your licensing and permissions. We scope coverage during integration assessment.

Q: How do you handle MFA, SSO, and offline data for automation?

We support username/password + MFA (SMS, email, TOTP) and operate behind SSO/OAuth when enabled. For offline/mobile sessions, we de-duplicate uploaded observations using idempotency keys and preserve source timestamps to maintain accurate sequences.

Q: Can I export raw trial-level data for analytics?

Yes. We normalize observation formats (discrete trials, frequency, duration, interval) and can deliver streaming APIs or periodic exports for your warehouse.

Q: Can this push session summaries into my EHR or billing system?

Yes. We can generate structured session summaries and push them into your EHR (e.g., TherapyNotes, WebABA) or trigger downstream billing events once documentation is complete.



Ready to automate your Motivity workflows?

Supergood can have your Motivity integration live in days with no ongoing engineering maintenance.

Get Started →

Read more