Account

Provides User Account functionality.

APIDescription
POST api/v2/Account/OfflineAccessLog

Saves offline access attempts.

Diagnostics

Provides storage of diagnostic/trace logs from clients.

APIDescription
POST api/v2/Diagnostics/Trace

Saves a diagnostics log file. The diagnostics file should be standard logfile with at least the following structure: timestamp, studyid, userid, deviceid, appid, loglevel, message

FieldLevelAuditTrail

Provides field level audit trail capabilities.

APIDescription
POST api/v2/Flat/Study/{studyId}/Data

Saves field level audit trail data.

Log

Provides logging capabilities.

APIDescription
POST api/v2/Log/ClientActivity

Accepts log of client actions. Does not validate client data or perform any processing.

MobileUser

APIDescription
POST api/v2/MobileUser/Study/{studyId}

No documentation available.

ResumableData

Resumable study data download API — Phase 2 implementation. Clients POST to create a session, poll GET Session/{id} until ready, then stream batches via GET Session/{id}/Batch/{n} with continuation tokens.

APIDescription
POST api/v2/Study/{studyId}/ResumableData/Session

Initiates an asynchronous session to prepare a resumable study data download. The session ID is returned immediately; poll GET Session/{sessionId} to check readiness.

GET api/v2/Study/{studyId}/ResumableData/Session/{sessionId}

Polls the status of a resumable download session.

GET api/v2/Study/{studyId}/ResumableData/Session/{sessionId}/Batch/{batchIndex}

Downloads a single batch of the prepared study data as a protobuf stream. Requires X-Continuation-Token header; the first batch token is obtained from the X-Next-Continuation-Token response header of the POST Session call or a dedicated token-issue endpoint.

GET api/v2/Study/{studyId}/ResumableData/Session/{sessionId}/Config/{batchIndex}

Downloads a single JSON config batch for the prepared study configuration. Requires X-Continuation-Token header.

GET api/v2/Study/{studyId}/ResumableData/Session/{sessionId}/Permissions/{batchIndex}

Downloads a single JSON permissions batch for the prepared study user permissions. Requires X-Continuation-Token header.

GET api/v2/Study/{studyId}/ResumableData/Session/{sessionId}/Validate

Validates that a session's data version still matches the current study configuration.

DELETE api/v2/Study/{studyId}/ResumableData/Session/{sessionId}

Deletes a resumable download session and all associated batch files.

GET api/v2/Study/{studyId}/ResumableData/Sites

Returns the authenticated user's permitted, non-locked sites for the study. Enables the client to present a site picker before initiating a resumable download.

Study

V2 APIs to support all EDC based mSource applications (mPRO and mCapture).

APIDescription
GET api/v2/Study/{type}?studyIds[0]={studyIds[0]}&studyIds[1]={studyIds[1]}

Get list of studies.

GET api/v2/Study/{studyId}/Config?configLastUpdatedTimestamp={configLastUpdatedTimestamp}

Get study configuration. Returns the config if it was updated after the timestamp passed in; otherwise no content.

GET api/v2/Study/{studyId}/Files?fileName={fileName}

Get Text On Form files. Returns the files.

GET api/v2/Study/{studyId}/GetConfigChangedStatus?configLastUpdatedTimestamp={configLastUpdatedTimestamp}

Get the configuration changed status since last updated timestamp passed in the request.

GET api/v2/Study/{studyId}/User

Get list of study users.

GET api/v2/Study/{studyId}/Data?configLastUpdatedTimestamp={configLastUpdatedTimestamp}&lastDataSyncTimestamp={lastDataSyncTimestamp}

Triggers an asynchronous query for data updates after the last data sync. Also checks if the configuration has changed. Returns a key to retrieve the results.

GET api/v2/Study/{studyId}/Data/{key}

Gets results of asynchronous data query.

POST api/v2/Study/{studyId}/Data

Saves subjects, forms, and approvals. Requires X-Medrio-BatchId header with a unique guid value.

Token

Provides access token.

APIDescription
POST api/oauth/token

Get bearer token from Medrio IDP.