...
In order to successfully invoke a report, the user account needs to have the API role action, in addition to any role action or roles specified against the report to execute. These report permissions are established on an individual basis within the Administration > System Settings component.
...
Performance
The response times will vary depending on what report is requested, parameters passed, and the underlying dataset the report is reliant on. This same principle applies to reports requested directly through the user interface - a request that may take several seconds or minutes to generate results will require users to wait until the report has finished and becomes available. Using the API to invoke reports is no ‘quicker’ than the same requests done directly from within the application.
Programmatic invocation of study reports however may cause a large number of requests to queue up over time. As all report requests are processed sequentially, it’s possible that use of the API to retrieve reports would queue ahead of reports requested through the user interface. Depending on time of day and frequency of requests, these may have impacts to study operational teams who are reliant on reports retrieved through the user interface.
Swagger Interactive Documentation
Swagger integration | ||||
---|---|---|---|---|
| ||||
openapi: 3.0.0 info: description: | Example ClinSpark Report Invocation API Doc (Transfer Data Report). This is a Notebasic representation thatof onlya thestandard Transfer Data reportReport and its options. are presentedAdapting inthe this document. However adapting theuse of parameters appropriately will allow invocation of other reports supported by an instance. Bearer (token) Authentication is only supported in ClinSpark version 23.3 and greater. Successfully invocation the API with this embedded Swagger tooling will provide client bindings and command line invocation patterns that can be used for integrations. version: "1.0.0" title: ClinSpark Report Invocation API servers: - url: 'https://{customerId}.clinspark.com/api/v1' variables: customerId: default: community-dev description: Customer ID assigned by the service provider - url: 'https://{ngrokPrefix}.ngrok.io/clinspark/api/v1' variables: ngrokPrefix: default: 04f5b951df6d description: first part of ngrok-assigned id paths: /invokeReport: get: summary: Invoke a the Transfer Data Report operationId: get-transferReport parameters: - name: studyId in: query description: Status values that need to be considered for filter. required: false schema: type: integer - name: studyName in: query description: Name of the Study, as seen in the Study > Configure component. Capitalization and spelling must match exactly. Only include EITHER studyId OR studyName, not both. required: false example: ABC-PK-12 schema: type: string - name: reportName in: query description: Name of the report, as seen in the Study > Report component. required: false example: Transfer Data schema: type: string - name: transferReportType in: query description: Type of transfer report. required: false example: clinicalCSV schema: type: string enum: - clinicalXpt - clinicalCSV - clinicalExcel - odmXml - sdtmMappingSpecs - name: itemDataTyped in: query description: Used for the ODM XML report. required: false schema: type: string enum: - 'true' - 'false' - name: includeMetaData in: query description: Used for the ODM XML report. required: false schema: type: string enum: - 'true' - 'false' - name: includeNonCrfMetaData in: query description: Include Non-CRF? required: false schema: type: string enum: - 'false' - 'true' - name: xptVersion in: query description: XPT Version example: 'v5' schema: type: string enum: - 'v5' - 'v8' - name: onlyRandomized in: query description: has Only Randomized Subjects? Has no effect when choosing specific subjects. required: false schema: type: string enum: - 'true' - 'false' - name: subjectsIds in: query description: id Optionally defined the ID of specific subjects to include. Allows for narrowing output to specified subjects. required: false schema: type: array items: type: integer style: form explode: false examples: oneId: summary: Example of a single ID value: [5] # ?subjectsIds=5 multipleIds: summary: Example of multiple IDs value: [1, 5, 7] # ?subjectsIds=1,5,7 security: - basicAuth: [] - bearerAuth: [] responses: '200': description: successfulSuccessful operation. content: # Response body application/zip: schema: type: string format: binary '400': description: Invalid status value. '401': description: Unauthorized. You must add Basic Authentication headers. Check user account for API role action, study restrictions, and any role action and/or roles specified against the report to execute. '422': description: Invalid request. There are input validation errors. Look at the response for details. components: securitySchemes: basicAuth: # <-- arbitrary name for the security scheme type: http scheme: basic bearerAuth: type: http scheme: bearer |