API Surface¶
This page is an orientation map, not an exhaustive endpoint catalogue. Metricis currently exposes hundreds of route operations, and hand-maintained request examples become misleading quickly. Use the running release's /openapi.json for exact paths, methods, parameters, schemas, and response codes.
Major endpoint families¶
| Family | Representative responsibility |
|---|---|
| Health and operations | Readiness, health, metrics, and deployment diagnostics |
| Researcher auth and sessions | Login, MFA, refresh, session review/revocation, and SSO where configured |
| Studies, sites, teams, and participants | Research-context setup, membership, access, and participant lifecycle |
| Registries | Registry setup, participants, consent, resources, delivery, follow-up, and research-specific extensions |
| Forms and responses | Definitions, versions, bindings, participant/staff data entry, validation, and attachments |
| Assessments and batteries | Modules, battery versions, delivery, sessions, scoring, and result provenance |
| Scheduling and visits | Calendars, event definitions, visit instances, windows, reminders, and adherence |
| Consent and eConsent | Documents, versions, instances, signatures, status, worklists, re-consent, and withdrawal |
| Quality and regulatory | Queries, SDV, field alerts, double entry, signatures, locks, audit, and adjudication |
| Participant portal | Magic links, account/session state, tasks, diaries, forms, devices, trends, and linked contexts |
| Integrations | REDCap, webhooks, notification providers, device signals, and public-site publication |
/api/v1 programmatic access |
Scoped tokens, read APIs, snapshots, exports, and feature-gated authoring |
Inspecting only the routes you need¶
Open Swagger UI at /docs and filter by tag, or inspect the JSON document programmatically. For example, this command lists operations whose path contains registries:
jq -r '
.paths
| to_entries[]
| select(.key | contains("registries"))
| .key as $path
| .value
| keys[]
| "\(. | ascii_upcase) \($path)"
' metricis-openapi.json
Integration checklist¶
Before implementing a caller:
- Capture the OpenAPI document from the release and environment you will test.
- Identify the actor, research context, role/permission, consent purpose, and scopes required.
- Confirm whether the capability is enabled and whether an external system is authoritative.
- Generate or validate request/response types from that captured contract.
- Test authorization failures, validation errors, duplicate/retried writes, pagination, and external-system failure.
- Record the Metricis release and contract checksum in the integration's validation evidence.
See REST API and Authentication.