Got feedback or spotted a mistake?

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

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

The purpose of this document is to explain the caTissue Plus REST APIs. The REST APIs will be consumed by the caTissue User Interface (built in backbone.js) as well as available for usage for integration with other systems, building plugins or building custom User Interfaces.

Common Characteristics of REST Resources

The following characteristics apply to all caTissue API resources:

  • You access a resource by sending an HTTP request to the caTissue server. The server replies with a response that either contains the data you requested or a status indicator, and in some cases both.
  • All resources are located at http[s]://<host-name>:<port>/catissuecore/rest.
  • You request a particular resource by appending a particular path to this base URL
  • All resources may return any of the below mentioned status codes:
codeApplies toStatus Message
200All resources 
201All POST/PUT requestsResource created/updated successfully
400All requestsInvalid parameters, this will also includes application specific error messages
401All requestsAuthorization failed
403All requests 
404All requestsResource not found, also includes specified resource id/name/title
500All requestsInternal server error

On this page, when a portion of a URL, path, or parameter value is shown in italics, it indicates that you should replace the italicized value with a particular value appropriate to your request.

Authentication

caTissue REST API's are signed requests, accessible to all the users who has access to caTissue application. To access the REST API's user need to pass their caTissue credentials by setting them in request Authorization header. The username/password should be encoded in base 64 encoding scheme.

Specimen Resources

catissuecore/rest/specimens

Creates the specimen object.

Request

MethodURL
POSTcatissuecore/rest/specimens
accept

application/json

{"label":"testLabel","className":"Tissue","type":"Not Specified","barcode":"12345","createdDate":"Jul 31, 2013 11:16:14 AM","availableQuantity":2.0,"activityStatus":"Active","isToPrintLabel":false}

Response 

StatusResponse
201

application/json

{"id":1,"label":"testLabel","className":"Tissue","type":"Not Specified","barcode":"12345","createdDate":"Jul 31, 2013 11:16:14 AM","availableQuantity":2.0,"activityStatus":"Active","isToPrintLabel":false}

400{"error": <any application specific error>}
403{"error":"User is not authorized to create the specimens"}
500{"error" : "Something went wrong. please try again later"}

catissuecore/rest/specimens

Updates the specimen object.

Request

MethodURL
PUTcatissuecore/rest/specimens
accept

application/json

{"id":1,"label":"testLabel","className":"Tissue","type":"Not Specified","barcode":"12345","createdDate":"Jul 31, 2013 11:16:14 AM","availableQuantity":2.0,"activityStatus":"Closed","isToPrintLabel":false}

Response 

StatusResponse
201

application/json

{"id":1,"label":"testLabel","className":"Tissue","type":"Not Specified","barcode":"12345","createdDate":"Jul 31, 2013 11:16:14 AM","availableQuantity":2.0,"activityStatus":"Closed","isToPrintLabel":false}

400{"error": <any application specific error>}
403{"error":"User is not authorized to create the specimens"}
500{"error" : "Something went wrong. please try again later"}


catissuecore/rest/specimens

Retrieves the specimen with given label/bracode

Request

MethodURL
GETcatissuecore/rest/specimens
Parameters

label=label to be searched or

barcode=barcode to be searched

catissuecore/rest/specimens/label=tissue_specimen, this will return the specimen with label "tissue_specimen"

catissuecore/rest/specimens/barcode=23457, this will return the specimen with barcode "23457"

Response 

StatusResponse
200

application/json

{"id":1,"label":"testLabel","className":"Tissue","type":"Not Specified","barcode":"12345","createdDate":"Jul 31, 2013 11:16:14 AM","availableQuantity":2.0,"activityStatus":"Active","isToPrintLabel":false}

400{"error": <any application specific error>}
404{"error" : "No Specimen found with given label/barcode <label/barcode>"}
500{"error" : "Something went wrong. please try again later"}


catissuecore/rest/specimens/{label}/aliquots

This will create aliquots for the specified specimen label.

Request

MethodURL
POSTcatissuecore/rest/specimens/{label}/aliquots
accept

application/json

Response 

StatusResponse
200 application/json
400{"error": <any application specific error>}
403{"error":"User doesn't have specimen processing privileges"}
404{"error":"Parent with label/barcode <label/barcode> doesn't exist
500{"error" : "Something went wrong. please try again later"}


catissuecore/rest/specimens/{label}/derivatives

This will create derivative for the specified specimen label.

Request

MethodURL
POSTcatissuecore/rest/specimens/{label}/derivatives
accept

application/json

Response 

StatusResponse
200 application/json
400{"error": <any application specific error>}
403{"error":"User doesn't have specimen processing privileges"}
404{"error" : "Parent with given label/barcode <label/barcode> doesn't exist"}
500{"error" : "Something went wrong. please try again later"}

Specimen Collection Group Resource

catissuecore/rest/specimenCollectionGroups

Creates the specimen collection group.

Request

MethodURL
POSTcatissuecore/rest/specimenCollectionGroups
accept

application/json

Response 

StatusResponse
200 application/json
400{"error": <any application specific error>}
403{"error":"User doesn't have privileges to create Specimen collection group"}
500{"error" : "Something went wrong. please try again later"}

catissuecore/rest/specimenCollectionGroups

updates the specimen collection group.

Request

MethodURL
PUTcatissuecore/rest/specimenCollectionGroups
accept

application/json

Response 

StatusResponse
200 application/json
400{"error": <any application specific error>}
403{"error":"User doesn't have privileges on this Specimen collection group"}
500{"error" : "Something went wrong. please try again later"}

catissuecore/rest/specimenCollectionGroups

Retrieves the specimen collection group with the name.

Request

MethodURL
GETcatissuecore/rest/specimenCollectionGroups
parameterstitle: the specimen collection group will be searched on the basis of title.

catissuecore/rest/groups/title=scg1, this will search for the collection group having title as "scg1"

Response 

StatusResponse
200 application/json
400{"error": <any application specific error>}
404{"error" : "No group found with title '<title-name>'"}
500{"error" : "Something went wrong. please try again later"}
  • No labels