Below API can be used to execute any AQL and obtain the desired results. AQL is custom query language built-in OpenSpecimen to allow power users perform complex queries on data without requiring to know anything about the OpenSpecimen data model.
...
Sample response:
Code Block | ||
---|---|---|
| ||
{ "columnMetadata": [ { "expr": "Participant.ppid", "aggregate": false }, { "expr": "SpecimenCollectionGroup.collectionDate", "aggregate": false }, { "expr": "count ( distinct Specimen.id )", "aggregate": true } ], "columnLabels": [ "Participant# PPID", "Visit# Visit Date", "Column" ], "columnTypes": [ "STRING", "DATE", "INTEGER" ], "columnUrls": [ "#/object-state-params-resolver?stateName=participant-detail.overview&objectName=collection_protocol_registration&key=id&value={{$cprId}}", null, null ], "rows": [ [ "OPSMN-0001-TCP", "2015-06-04T00:00:00", "184" ], [ "OPSMN-0001-TCP", "2016-06-30T11:30:00", "25" ], [ "OPSMN-0003-TCP", "2015-05-05T00:00:00", "107" ], [ "OPSMN-0003-TCP", "2015-05-19T00:00:00", "17" ], [ "OPSMN-0003-TCP", "2015-07-24T00:00:00", "4" ], [ "OPSMN-0003-TCP", "2015-08-17T00:00:00", "5" ], ... ] } |
Getting List of all saved-queries
Request Details
Item | Value |
---|---|
HTTP Method | GET |
URI | /rest/ng/saved-queries |
Response | JSON containing detailed list of saved queries |
Parameters
Parameter | Description |
---|---|
cpId | Collection protocol ID. If specified, <Find out and add here>here what happens> |
searchString | Matches a substring in the title of the saved query. |
start | Used for paginating the results. If start=5, the output result will start from row number 5. |
max | Used for paginating the results. If max=10, the output result will be maximum 10 rows |
countReq | Boolean type parameter, if specified as 'true' output will show the total number of saved-queries. Otherwise it won't. |
Sample response
Get URL: 'rest/ng/saved-queries?countReq=true&start=0&max=10'
Code Block | ||||
---|---|---|---|---|
| ||||
{ "count": 23, "queries": [ { "id": 23, "title": "Show details of tissue specimen having frozen event", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273075000 }, { "id": 22, "title": "Show list of tissue specimens frozen within 15 mins of received time", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273075000 }, { "id": 21, "title": "Show specimens stored in a Container", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273075000 }, { "id": 20, "title": "Show list of Specimens based on SCG Label", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273075000 }, { "id": 19, "title": "Show list of specimens based on participant demographics", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273074000 }, { "id": 18, "title": "Show list of Specimens based on participant info (PPID or MRN)", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273074000 }, { "id": 17, "title": "Show specimen information based on Specimen Label", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273074000 }, { "id": 16, "title": "Specimen kit report query", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273074000 }, { "id": 15, "title": "Specimen Catalog", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273073000 }, { "id": 14, "title": "Show list of specimens based on specimen details", "createdBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedBy": { "id": 1, "type": null, "firstName": "System", "lastName": null, "loginName": null, "domain": null, "emailAddress": null, "instituteName": null, "primarySite": null, "admin": null, "instituteAdmin": null, "manageForms": null, "cpCount": 0, "creationDate": null, "activityStatus": null }, "lastModifiedOn": 1575273073000 } ] } |
Execute a saved-query from API
Request Details
Item | Value | |||||
---|---|---|---|---|---|---|
HTTP Method | POST | |||||
URI | /rest/ng/query/{id} | |||||
Body |
| |||||
Response | JSON containing the output of the saved queries |
Parameters
Parameter | Description | Allowed Values |
---|---|---|
runType | <Find out and add here> | |
drivingForm | <Find out and add here> | |
startAt | Used for paginating the results. If startAt=5, the output result will startAt from row number 5. | |
maxResults | Used for paginating the results. If maxResults=10, the output result will be maximum 10 rows | |
wideRowMode | Specifies whether multi-valued attributes result in a single row or one row per value. Default value is OFF. Other permitted values are SHALLOW and DEEP. Try out to see what fits best for your use case. | DEEP, SHALLOW, OFF |
Sample response
...