Got feedback or spotted a mistake?

Leave a comment at the end of this page or email contact@krishagni.com

Create Distribution Protocol

POST openspecimen/rest/ng/distribution-protocols

Use this resource to create new distribution protocol in the OpenSpecimen application. Use HTTP POST method to call this API by passing the below details in JSON format.

Below are the attributes which need to be sent in the request body:

Parameter
Details
titleTitle of distribution protocol
shortTitleShort title of distribution protocol
principalInvestigator

Principal Investigator user details. This is the JSON format object with following details:

idIdentifier of the user.
loginName[optional]Login name of the user.
 instituteNameReceiving institute for which the distribution protocol will be used.
 defReceivingSiteName [optional]  Default receiving site name under receiving institute.
irbId [optional]IRB ID of of distribution protocol
startDate [optional]
Starting date of distribution protocol
endDate [optional]End date of distribution protocol.
 report [optional]This is the JSON format object for order report query. The required field for report is id (identifier) of query.
 distributingSites

This is the JSON object of distributing site details the object format is institute name : array of siteName.

Example:

"{"institute1": ["Site1", "Site2"], "institute2": []}"

The empty array for site names represent "All current & future sites".

activityStatus [optional]

Defines the status of a distribution protocol record

{active, disabled}. The default value will be "Active".

 

POST http[s]:<host>:<port>/openspecimen/rest/ng/distribution-protocols

Use this URL to add distribution protocol in OpenSpecimen application.

Result:

The response of this request will contains the details of the created distribution protocol.

Below is the example of the create distribution protocol:

 

URLopenspecimen/rest/ng/distribution-protocols
MethodPOST
Requestapplication/json
json

{

"title" : "DP Protocol",

"shortTitle" : "DP Pro",
"principalInvestigator" : {"id": "2"},

"instituteName": "Institute1",

" defReceivingSiteName": "Site1",

"irbId" : "IRB555571",

"startDate" : "2014-06-13",

"endDate": "2015-10-01",

"distributingSites": {"Institute2": ["Site4", "Site5"]}
}

Response

{
  "id": 5,
  "title": "DP Protocol",
  "shortTitle": "DP Pro",
  "principalInvestigator": {
    "id": 3,
    "firstName": "admin",
    "lastName": "admin",
    "loginName": "admin@admin.com",
    "domain": "openspecimen",
    "emailAddress": "admin@admin.com",
    "admin": false,
    "cpCount": 0,
    "creationDate": 1442946600000
  },
  "startDate": 1401580800000,
  "endDate": 1444435200000,
  "distributedSpecimensCount": 0,
  "instituteName": "Institute1",
  "defReceivingSiteName": "Site1",
  "irbId": "IRB555571",
  "activityStatus": "Active",
  "report": null,
  "distributingSites": {
    "Institute2": [
      "Site4",

      "Site5"
    ]
  }
}

 

Error Cases :

code
Applies to
Status Message
200All resourcesDistribution protocol has been created successfully
400All requestsInvalid parameters, e.g  duplicate protocol Name, blank protocol name etc
401All requestsAuthorization failed, user doesn't have Authority
500All requestsInternal server error, Encountered server error while performing operations
Got feedback or spotted a mistake?

Leave a comment at the end of this page or email contact@krishagni.com