THE csms 2.32.0 INTERVENTIONAL API
Overview
The CSMS 2.32.0 INTERVENTIONAL API is composed of a collection of endpoints which you can use to interact with the many features of the system.
Endpoints
You can follow the instructions in the codeblocks in this guide, in addition to using the CSMS GUI, to interact with the APIs.
There are two csms tiers that you can interact with:
The User Accessibility Tier (UAT) is for users who want to test the features and code.<br>
<u>UAT</u>: <a href="https://csms-api-uat.nci.nih.gov/api/v2">https://csms-api-uat.nci.nih.gov/api/v2</a><br>
<u>UAT API GUI</u>: <a href="https://csms-uat.nci.nih.gov/doc">https://csms-uat.nci.nih.gov/doc</a><br><br>
<u>Examples</u>:<br>
<a href="https://csms-api-uat.nci.nih.gov/api/v2">https://csms-api-uat.nci.nih.gov/api/v2/manifests?manifest_id=X</a><br>
<a href="https://csms-api-uat.nci.nih.gov/api/v2">https://csms-api-uat.nci.nih.gov/api/v2/manifests?manifest_id=X&status=shipped</a><br><br>
The Production tier is for working with your live data in a stable environment.<br>
<u>Production</u>: <a href="https://csms-api.nci.nih.gov/api/v2">https://csms-api.nci.nih.gov/api/v2</a><br>
<u>Production API GUI</u>: <a href="https://csms.nci.nih.gov/doc">https://csms.nci.nih.gov/doc</a><br><br>
<u>Examples</u>:<br>
<a href="https://csms-api.nci.nih.gov/api/v2">https://csms-api.nci.nih.gov/api/v2/manifests?manifest_id=X</a><br>
<a href="https://csms-api.nci.nih.gov/api/v2">https://csms-api.nci.nih.gov/api/v2/manifests?manifest_id=X&status=shipped</a><br><br>
In order to use the csms API, an Okta API token is required for authentication. The API token is tier specific. For example, an API token for UAT will not work with the Production tier. Some API endpoints and operations are restricted based on role and may not work with your API token.
The sample requests in this guide are examples only. You should substitute call-specific parameters with your own values.
Request Headers
In order to use the CSMS API, clients must set the following request headers accordingly:
GET /api/v1/not_a_real_endpoint
Host: csms-api-uat.nci.nih.gov
Authorization: Bearer yourBearerToken
Accept: application/json
PATCH /api/v1/not_a_real_endpoint
Host: csms-api-uat.nci.nih.gov
Authorization: Bearer yourBearerToken
Content-Type: application/json
Accept: application/json
POST /api/v1/not_a_real_endpoint
Host: csms-api-uat.nci.nih.gov
Authorization: Bearer yourBearerToken
Content-Type: application/json
Accept: application/json
PUT /api/v1/not_a_real_endpoint
Host: csms-api-uat.nci.nih.gov
Authorization: Bearer yourBearerToken
Content-Type: application/json
Accept: application/json
AUTHORIZATION
Requests must contain valid logon credentials in the header. For example,
Authorization: Bearer yourBearerToken
See the GETTING STARTED section for details.
CONTENT-TYPE
All PATCH, POST and PUT requests must contain a valid JSON body with the
Content-Type header set to application/json.
ACCEPT
Unless otherwise noted, all CSMS APIs are JSON based. Your request should
include an Accept: application/json header, however this header is optional as
any response under the /api/ namespace will return JSON.
Field Projections
GET
/manifests?manifest_id=213
RESPONSE BODY
{
"manifest_id": "123",
"biobank_id": "abc",
"receiving_party": "xyz"
"samples": [
{
"cimac_id": "456"
},
{
"cimac_id": "789"
}
]
}
GET
/manifests?manifest_id=213&fields=manifest_id,biobank_id
RESPONSE BODY
{
"manifest_id": "123",
"biobank_id": "abc",
}
Field projection controls how much of an entity's data is displayed in response to an API request.
All APIs have a default set of field projections that control which fields are returned. If you don't need certain fields, you can decrease response time and payload size by using a projection to ask only for the fields your application is interested in.
Field projections are defined using the &fields= query parameter and narrowed by providing a comma-separated list of field names that you want returned as the value of the parameter.
Error Handling
CSMS uses conventional HTTP response codes to indicate the success or failure of an API request.
In general: Codes in the 2xx range indicate success. Codes in the 4xx range
indicate an error that failed given the information provided (for example, a required parameter was omitted,
invalid search parameter, etc.). Codes in the 5xx range indicate an error with CSMS's
servers (these are rare).
Some 4xx errors that could be handled programmatically
include an error code that briefly explains the error reported.
Attributes
The type of error returned. One of api_error, or invalid_request_error
For some errors that could be handled programmatically, a short string indicating the error code reported.
A human-readable message providing more details about the error.
If the error is parameter-specific, the parameter related to the error.
| HTTP STATUS CODE SUMMARY | ||
|---|---|---|
| 200, 201 - OK | Everything worked as expected. | |
| 400 - Bad Request | The request was unacceptable, often due to missing a required parameter. | |
| 401 - Unauthorized | No valid API Token provided. | |
| 402- Request Failed | The parameters were valid but the request failed. | |
| 403 - Forbidden | The API Token doesn't have permissions to perform the request. | |
| 404 - Not Found | The requested resource doesn't exist. | |
| 409 - Conflict | The request conflicts with another request. | |
| 500, 501, 503, 504 - Server Errors | Something went wrong on CSMS's end. (These are rare.) | |
| ERROR TYPES | ||
|---|---|---|
| api_error | API errors cover any other type of problem, as well as, problem with CSMS's servers. | |
| invalid_request_error | Invalid request errors arise when your request has invalid parameters | |
GETTING STARTED
Account Requests
In order to get access to use the CSMS API, please send an access request email to csms-support@nih.gov. The email should contain the following information:
- Name of user
- Email Address
- Role Type: Biobank or Lab.
- Organization Affiliation: ID or Name
- Access Tier:
- Specify 'UAT' if you have not completed training on the User Accessibility Tier (UAT).
- Specify 'Production' if you have completed training on UAT and it has been verified by the CSMS Administrator.
- Study Type:
- Specify 'Ancillary/Correlative' if you will be using the system for Ancillary/Correlative studies.
- Specify 'Interventional' if you will be using the system for Interventional studies.
- Specify 'Ancillary/Correlative, Interventional' if your institution requires access to work with both types of studies.
- Any additional contact information
Once the access request email has been received by the csms Application Support Team, a support team member will review the request and provide further instructions on how to generate an access token in order to use the csms API.
Note that if your organization is requesting machine-machine API communication with the CSMS API and access to both Ancillary/Correlative and Interventional study types, you will receive a unique Okta client id/client secret pairing to use for each study type.
Authentication
# You can also use wget
curl -X POST https://bioappdev.okta.com/oauth2/[csms_server_id_UAT]/v1/token \
-H'Content-Type: x-www-form-urlencoded'
-d'client_id&client_secret=&grant_type=client_credentials'
All API requests must provide authentication. The csms API uses Okta as the authentication provider, leveraging OAuth2 authentication using the client credentials flow.
The access token returned from the endpoints should be passed in the headers of HTTP request, as: Authorization: Bearer [TOKEN].
There are two variable values used in Okta access token generation for CSMS
- Client ID
- Client Secret
Note that the Client Secret is secret and must be kept confidential. If discovered that your Client Secret has been lost or compromised, contact our Support Team immediately at csms_support@mail.nih.gov.
The variable values Client ID and Client Secret will be provided to you following access approval. The following is an example of how an access toke is generated:
Roles & Authorization
The csms API leverages role-based authorization that allows for specific operations to be performed in the application. Presently the API accepts the following roles and the corresponding operations:
| Role | Operations |
|---|---|
| Biobank |
|
| Lab |
|
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
COMMENTS
Routes for comments
Create Comment
<span class="endpoint">
<span class="method post"> POST </span>
<code>/comments</code>
</span>
# You can also use wget
curl -X POST /comments \
-H 'Content-Type: application/json'
const inputBody = '{
"comment": "comment text about an entity",
"entity_id": "20200727:testuser:63693",
"entity_type": "manifest"
}';
const headers = {
'Content-Type':'application/json'
};
fetch('/comments',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json'
}
r = requests.post('/comments', headers = headers)
print(r.json())
POST /comments
Comment information in a JSON dict sent to this path is used to create a new comment.
REQUEST BODY
{
"comment": "comment text about an entity",
"entity_id": "20200727:testuser:63693",
"entity_type": "manifest"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| comment | body | string | true | Comment text |
| entity_id | body | string | true | ID of the entity with which the comment is associated. |
| entity_type | body | string | true | Entity type with which the comment is associated. See Enumerated List for valid values. |
Enumerated Values
| Parameter | Value |
|---|---|
| entity_type | manifest |
| entity_type | sample |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Data is valid and JSON returned. | None |
| 400 | Bad Request | JSON was invalid. | None |
Query Comments
<span class="endpoint">
<span class="method get"> GET </span>
<code>/comments</code>
</span>
# You can also use wget
curl -X GET /comments?comment=comment
fetch('/comments?comment=comment',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('/comments'
, params={"comment":"comment"}
)
print(r.json())
GET /comments
Retrieve comment information, matching search parameters.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| comment | query | string | false | Comment text |
| entity_id | query | string | false | ID of the entity with which the comment is associated. |
| entity_type | query | string | false | Entity type with which the comment is associated. |
Enumerated Values
| Parameter | Value |
|---|---|
| entity_type | manifest |
| entity_type | sample |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | None |
| 400 | Bad Request | Invalid search parameters. | None |
| 403 | Forbidden | Forbidden access. | None |
Retrieve Comment
<span class="endpoint">
<span class="method get"> GET </span>
<code>/comments/{commentId}</code>
</span>
# You can also use wget
curl -X GET /comments/{commentId}
fetch('/comments/{commentId}',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('/comments/{commentId}')
print(r.json())
GET /comments/{commentId}
Retrieve the specified comment.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| commentId | path | string | true | Unique comment identifier. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | comment found and JSON returned. | None |
| 400 | Bad Request | Invalid request string. | None |
| 404 | Not Found | No comment with the requested ID value was found. | None |
DOCUMENTS
Routes for documents
Upload or Associate Document
<span class="endpoint">
<span class="method post"> POST </span>
<code>/documents</code>
</span>
# You can also use wget
curl -X POST /documents \
-H 'Content-Type: multipart/form-data' \
-H 'Accept: application/json' \
-H 'Content-Disposition: Attachment; filename=test.txt' \
-H 'x-file-descriptor: file description'
const inputBody = 'This is a test document text file';
const headers = {
'Content-Type':'multipart/form-data',
'Accept':'application/json',
'Content-Disposition':'Attachment; filename=test.txt',
'x-file-descriptor':'file description'
};
fetch('/documents',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'multipart/form-data',
'Accept': 'application/json',
'Content-Disposition': 'Attachment; filename=test.txt',
'x-file-descriptor': 'file description'
}
r = requests.post('/documents', headers = headers)
print(r.json())
POST /documents
Upload a document or create a document association to an entity. Either upload a document by sending a valid file as the payload or create an association between an existing document and entity by providing the data in a JSON payload.
REQUEST BODY
"This is a test document text file"
This is a test document text file
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Content-Disposition | header | string | false | Name of file being uploaded. Required when uploading a new document. |
| x-file-descriptor | header | string | false | This is the description of the file |
| file_id | body | string | false | Unique file identifier. |
| entity_id | body | string | false | ID of the entity with which the file is associated. |
| entity_type | body | string | false | Entity type with which the file is associated. See Enumerated List for valid values. |
Enumerated Values
| Parameter | Value |
|---|---|
| entity_type | Manifest |
| entity_type | Sample |
200 Response
{
"file_id": "1618414651177_test.txt",
"file_name": "test.txt",
"message": "Association has been successfully created for Document 1618414651177_test.txt to Manifest 20220719:nationwide:68662758"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | File was successfully associated to the entity. | Inline |
| 201 | Created | File upload was successful. | Inline |
| 400 | Bad Request | Invalid request. | None |
| 403 | Forbidden | Forbidden access. | None |
| 404 | Not Found | Entity not found. | None |
Response Schema
Query Document
<span class="endpoint">
<span class="method get"> GET </span>
<code>/documents</code>
</span>
# You can also use wget
curl -X GET /documents?descriptor=string&entity_id=20200727
fetch('/documents?descriptor=string&entity_id=20200727',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('/documents'
, params={"descriptor":"string","entity_id":"20200727"}
)
print(r.json())
GET /documents
Retrieve document information, matching search parameters.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| descriptor | query | string | false | Description of file uploaded. |
| entity_id | query | string | false | ID of the entity with which the file is associated. |
| entity_type | query | string | false | Entity type with which the file is associated. |
| file_id | query | string | false | Unique file identifier. |
| file_name | query | string | false | Name of file uploaded. |
Enumerated Values
| Parameter | Value |
|---|---|
| entity_type | manifest |
| entity_type | sample |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | None |
| 400 | Bad Request | Invalid search parameters. | None |
| 403 | Forbidden | Forbidden access. | None |
Retrieve Document
<span class="endpoint">
<span class="method get"> GET </span>
<code>/documents/{file_id}</code>
</span>
# You can also use wget
curl -X GET /documents/{file_id} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/documents/{file_id}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/documents/{file_id}', headers = headers)
print(r.json())
GET /documents/{file_id}
Fetch JSON representing information about a specific file that was uploaded.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| file_id | path | string | true | Name of the file being requested. |
200 Response
{
"data": {
"file_id": "1618414651177_test.txt",
"file_name": "test.txt",
"s3_path": "docs/biobank/csms_developer@bioappdev.org/1618414651177_test.txt",
"creator": "csms_developer@bioappdev.org",
"creator_role": "biobank",
"create_date": "2021-04-14T15:37:31Z"
},
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Document was found and file information was returned. | Inline |
| 400 | Bad Request | The file_id was invalid. | None |
| 404 | Not Found | The requested document was not found. | None |
Response Schema
Disassociate Document
<span class="endpoint">
<span class="method delete"> DELETE </span>
<code>/documents/{file_id}/{entity_type}/{entity_id}</code>
</span>
# You can also use wget
curl -X DELETE /documents/{file_id}/{entity_type}/{entity_id}
fetch('/documents/{file_id}/{entity_type}/{entity_id}',
{
method: 'DELETE'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.delete('/documents/{file_id}/{entity_type}/{entity_id}')
print(r.json())
DELETE /documents/{file_id}/{entity_type}/{entity_id}
Disassociate document from the specified entity.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| file_id | path | string | true | ID of the file to disassociate. |
| entity_type | path | string | true | Type of entity to disassociate from the file. |
| entity_id | path | string | true | ID of the entity to disassociate from the file. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Document was successfully disassociated from the entity. | None |
| 400 | Bad Request | No exising Document association was found to delete. | None |
JOBS
Routes for jobs
Query Bulk Manifest Jobs
<span class="endpoint">
<span class="method get"> GET </span>
<code>/jobs</code>
</span>
# You can also use wget
curl -X GET /jobs?job_id=1609340193_csms_developer \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/jobs?job_id=1609340193_csms_developer',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/jobs'
, params={"job_id":"1609340193_csms_developer"}
, headers = headers)
print(r.json())
GET /jobs
Retrieve manifest bulk submission jobs information based on matching search parameters (for example, "creator=biobank").
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| job_id | query | string | false | Unique job identifier. |
| creator | query | string | false | Role that created a manifest submission job. |
| create_date | query | string | false | UTC timestamp of manifest job creation. |
200 Response
{
"data": {
"job_id": "1648242062541_csms_developer@bioappdev.org",
"manifest_id": "20220325:stanford:75522716",
"sender_institution_id": "BBNCHP001",
"submitter": "csms_developer@bioappdev.org",
"status": "completed",
"create_date": "2022-03-25T21:01:06Z",
"message": "\"The manifest was successfully processed.\""
},
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | Inline |
| 400 | Bad Request | Invalid query string. | None |
| 404 | Not Found | No job with the requested search parameters was found. | None |
Response Schema
Create Bulk Upload Manifest Job
<span class="endpoint">
<span class="method post"> POST </span>
<code>/jobs/manifest</code>
</span>
# You can also use wget
curl -X POST /jobs/manifest \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
const inputBody = '{
"shipping_manifest": {
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"tracking_number": "4567788343"
},
"sample_manifest": []
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('/jobs/manifest',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.post('/jobs/manifest', headers = headers)
print(r.json())
POST /jobs/manifest
Similar to the manifest POST endpoint, but intended for submitting manifests that have a number of samples greater than 39. Manifest information can be submitted in the same JSON dict format or using an Excel file template (see Manifest template download endpoint for details).
REQUEST BODY
{
"shipping_manifest": {
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"tracking_number": "4567788343"
},
"sample_manifest": []
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| comments | body | string | false | comment to be added to the shipping manifest |
| courier | body | string | false | Courier utilized for shipment. Required for shipping transition. See Enumerated List for valid values. |
| recipient_institution_id | body | string | false | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | body | string | false | The city associated with the sender address. |
| sender_country | body | string | false | The country associated with the sender address. |
| sender_email | body | string | false | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | body | string | false | The Institution ID of the sender. |
| sender_institution_name | body | string | false | The name of the institution sending the samples. |
| sender_person_name | body | string | false | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | body | string | false | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | body | string | false | The state associated with the sender address. |
| sender_street_1 | body | string | false | The name of the street associated with the sender address. |
| sender_street_2 | body | string | false | The name of the additional street information associated with the sender address. |
| sender_zip_code | body | string | false | The ZIP code associated with the sender address. |
| shipping_condition | body | string | false | Method of packaging the samples. Optional. See Enumerated List for valid values. |
| shipping_condition_other | body | string | false | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | body | string | false | Date of shipment. Required for shipped transition. |
| tracking_number | body | string | false | Air bill number assigned to shipment. Required for shipped transition. |
Enumerated Values
| Parameter | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
201 Response
{
"job_id": "1648677659759_administrator",
"job_url": "https://csms-api-int.nci.nih.gov/api/v2/manifests/jobs/1648677659759_administrator",
"creator": "administrator",
"create_date": "2022-03-30T22:00:59Z",
"message": "A bulk upload job has been created. Please check job status with GET requests to the job URL."
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Data was valid and queued for processing. | Inline |
| 400 | Bad Request | Request was invalid. | None |
| 403 | Forbidden | Submitter is unauthorized to make the request. | None |
Response Schema
Retrieve Bulk Manifest Job
<span class="endpoint">
<span class="method get"> GET </span>
<code>/jobs/manifest/{job_id}</code>
</span>
# You can also use wget
curl -X GET /jobs/manifest/{job_id} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/jobs/manifest/{job_id}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/jobs/manifest/{job_id}', headers = headers)
print(r.json())
GET /jobs/manifest/{job_id}
Retrieve specific bulk submission job information.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| job_id | path | string | true | Unique job identifier. |
200 Response
{
"data": {
"job_id": "1648242062541_csms_developer@bioappdev.org",
"manifest_id": "20220325:stanford:75522716",
"sender_institution_id": "BBNCHP001",
"submitter": "csms_developer@bioappdev.org",
"status": "completed",
"create_date": "2022-03-25T21:01:06Z",
"message": "\"The manifest was successfully processed.\""
},
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Job was found and job information was returned. | Inline |
| 404 | Not Found | No job with the requested ID value was found. | None |
Response Schema
MANIFESTS
Routes for manifests
Create Manifest
<span class="endpoint">
<span class="method post"> POST </span>
<code>/manifests</code>
</span>
# You can also use wget
curl -X POST /manifests \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
const inputBody = '{
"shipping_manifest": {
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"tracking_number": "4567788343"
},
"sample_manifest": []
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('/manifests',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.post('/manifests', headers = headers)
print(r.json())
POST /manifests
The API enforces a hard limit of 39 samples that can be created as part of creating a manifest. To add more than 39 samples in a single request, refer to the Jobs API POST endpoint.
REQUEST BODY
{
"shipping_manifest": {
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"tracking_number": "4567788343"
},
"sample_manifest": []
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| comments | body | string | false | comment to be added to the shipping manifest |
| courier | body | string | false | Courier utilized for shipment. Required for shipping transition. See Enumerated List for valid values. |
| recipient_institution_id | body | string | false | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | body | string | false | The city associated with the sender address. |
| sender_country | body | string | false | The country associated with the sender address. |
| sender_email | body | string | false | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | body | string | false | The Institution ID of the sender. |
| sender_institution_name | body | string | false | The name of the institution sending the samples. |
| sender_person_name | body | string | false | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | body | string | false | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | body | string | false | The state associated with the sender address. |
| sender_street_1 | body | string | false | The name of the street associated with the sender address. |
| sender_street_2 | body | string | false | The name of the additional street information associated with the sender address. |
| sender_zip_code | body | string | false | The ZIP code associated with the sender address. |
| shipping_condition | body | string | false | Method of packaging the samples. Optional. See Enumerated List for valid values. |
| shipping_condition_other | body | string | false | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | body | string | false | Date of shipment. Required for shipped transition. |
| tracking_number | body | string | false | Air bill number assigned to shipment. Required for shipped transition. |
Enumerated Values
| Parameter | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
201 Response
{
"message": "Data Received Successfully by CSMS",
"manifest_id": "20220330:nationwide:66786714",
"csms_ids": [],
"modified_time": 1648665187
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Data was valid and queued in the system. | string |
| 400 | Bad Request | The JSON payload was invalid or duplicate samples were found. | None |
Query Manifests
<span class="endpoint">
<span class="method get"> GET </span>
<code>/manifests</code>
</span>
# You can also use wget
curl -X GET /manifests?comments=string&courier=USPS \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/manifests?comments=string&courier=USPS',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/manifests'
, params={"comments":"string","courier":"USPS"}
, headers = headers)
print(r.json())
GET /manifests
Retrieve manifest(s) based on matching search parameters (for example, "manifest_id=20210101:biobank:61717939").
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| comments | query | string | false | comment to be added to the shipping manifest |
| courier | query | string | false | Courier utilized for shipment. Required for shipping transition. See Enumerated List for valid values. |
| event | query | string | false | The update event performed. |
| manifest_id | query | string | false | A unique ID assigned by the CSMS network used to identify the manifest. |
| modified_time | query | integer | false | The epic time from the last update to record. |
| modified_timestamp | query | string | false | The timestamp from the last update to record. |
| package_condition | query | string | false | Condition of shipment received. Required at received transition. See Enumerated List for valid values. |
| reason | query | string | false | The reason for the update action. |
| received_date | query | string | false | Date samples received. Required at received transition. |
| received_time | query | string | false | Time samples received. Required at received transition. |
| recipient_institution_id | query | string | false | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | query | string | false | The city associated with the sender address. |
| sender_country | query | string | false | The country associated with the sender address. |
| sender_email | query | string | false | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | query | string | false | The Institution ID of the sender. |
| sender_institution_name | query | string | false | The name of the institution sending the samples. |
| sender_person_name | query | string | false | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | query | string | false | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | query | string | false | The state associated with the sender address. |
| sender_street_1 | query | string | false | The name of the street associated with the sender address. |
| sender_street_2 | query | string | false | The name of the additional street information associated with the sender address. |
| sender_zip_code | query | string | false | The ZIP code associated with the sender address. |
| shipping_condition | query | string | false | Method of packaging the samples. Optional. See Enumerated List for valid values. |
| shipping_condition_other | query | string | false | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | query | string | false | Date of shipment. Required for shipped transition. |
| status | query | string | false | Internal CSMS-Interventional state of manifest. See Enumerated List for valid values. |
| tracking_number | query | string | false | Air bill number assigned to shipment. Required for shipped transition. |
Enumerated Values
| Parameter | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| package_condition | Normal |
| package_condition | Damaged |
| package_condition | Leakage |
| package_condition | Opened |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
| status | draft |
| status | ready_to_ship |
| status | delivered |
| status | received |
| status | shipped |
| status | qc_complete |
200 Response
{
"data": {
"recipient_institution_id": "LBFHCR002",
"event": "update",
"reason": "just a test",
"sender_institution_id": "BBNCHP001",
"modified_timestamp": "2022-03-30T18:34:50Z",
"modified_time": 1648665290,
"manifest_id": "20220330:nationwide:66786714",
"submitter": "csms_developer@bioappdev.org",
"status": "draft",
"samples": []
},
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | string |
| 400 | Bad Request | Invalid search parameters. | None |
| 403 | Forbidden | Forbidden access. | None |
| 404 | Not Found | No manifest with the requested search parameters was found. | None |
Update Manifest
<span class="endpoint">
<span class="method patch"> PATCH </span>
<code>/manifests/{manifest_id}</code>
</span>
# You can also use wget
curl -X PATCH /manifests/{manifest_id} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
const inputBody = '{
"shipping_manifest": {
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"package_condition": "Leakage",
"received_date": "2021-04-30",
"received_time": "16:30 Hawaii-Aleutian",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"status": "received",
"tracking_number": "4567788343"
},
"sample_manifest": []
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('/manifests/{manifest_id}',
{
method: 'PATCH',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.patch('/manifests/{manifest_id}', headers = headers)
print(r.json())
PATCH /manifests/{manifest_id}
The API enforces a hard limit of 39 samples that can be updated as part of updating a manifest. To update more than 39 samples in a single request, refer to the Jobs API PUT endpoint.
REQUEST BODY
{
"shipping_manifest": {
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"package_condition": "Leakage",
"received_date": "2021-04-30",
"received_time": "16:30 Hawaii-Aleutian",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"status": "received",
"tracking_number": "4567788343"
},
"sample_manifest": []
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| comments | body | string | false | comment to be added to the shipping manifest |
| courier | body | string | false | Courier utilized for shipment. Required for shipping transition. See Enumerated List for valid values. |
| package_condition | body | string | false | Condition of shipment received. Required at received transition. See Enumerated List for valid values. |
| received_date | body | string | false | Date samples received. Required at received transition. |
| received_time | body | string | false | Time samples received. Required at received transition. |
| recipient_institution_id | body | string | false | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | body | string | false | The city associated with the sender address. |
| sender_country | body | string | false | The country associated with the sender address. |
| sender_email | body | string | false | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | body | string | false | The Institution ID of the sender. |
| sender_institution_name | body | string | false | The name of the institution sending the samples. |
| sender_person_name | body | string | false | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | body | string | false | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | body | string | false | The state associated with the sender address. |
| sender_street_1 | body | string | false | The name of the street associated with the sender address. |
| sender_street_2 | body | string | false | The name of the additional street information associated with the sender address. |
| sender_zip_code | body | string | false | The ZIP code associated with the sender address. |
| shipping_condition | body | string | false | Method of packaging the samples. Optional. See Enumerated List for valid values. |
| shipping_condition_other | body | string | false | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | body | string | false | Date of shipment. Required for shipped transition. |
| status | body | string | false | Internal CSMS-Interventional state of manifest. See Enumerated List for valid values. |
| tracking_number | body | string | false | Air bill number assigned to shipment. Required for shipped transition. |
| manifest_id | path | string | true | Unique manifest identifier. |
Enumerated Values
| Parameter | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| package_condition | Normal |
| package_condition | Damaged |
| package_condition | Leakage |
| package_condition | Opened |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
| status | draft |
| status | ready_to_ship |
| status | delivered |
| status | received |
| status | shipped |
| status | qc_complete |
200 Response
{
"message": "Data Received Successfully by CSMS",
"manifest_id": "20220330:nationwide:66786714",
"csms_ids": [],
"modified_time": 1648665187
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Data was valid and queued in the system. | Inline |
| 400 | Bad Request | JSON was invalid. | None |
| 403 | Forbidden | Forbidden access. | None |
| 404 | Not Found | No manifest with the requested ID value was found. | None |
Response Schema
Retrieve Manifest
<span class="endpoint">
<span class="method get"> GET </span>
<code>/manifests/{manifest_id}</code>
</span>
# You can also use wget
curl -X GET /manifests/{manifest_id} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/manifests/{manifest_id}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/manifests/{manifest_id}', headers = headers)
print(r.json())
GET /manifests/{manifest_id}
Retrieve the specified manifest. Specify 'Accept = vnd.openxmlformats-officedocument.spreadsheetml.sheet' in the header to download Manifest Excel file.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| manifest_id | path | string | true | Unique manifest identifier. |
200 Response
{
"data": {
"recipient_institution_id": "LBFHCR002",
"excluded": false,
"ship_from": "somewhere",
"event": "update",
"reason": "just a test",
"sender_institution_id": "BBNCHP001",
"modified_timestamp": "2022-03-30T18:34:50Z",
"modified_time": 1648665290,
"manifest_id": "20220330:nationwide:66786714",
"submitter": "csms_developer@bioappdev.org",
"status": "draft",
"samples": []
},
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Manifest found and manifest information was returned. | Inline |
| 404 | Not Found | No manifest with the requested ID value was found. | None |
Response Schema
Delete Manifest
<span class="endpoint">
<span class="method delete"> DELETE </span>
<code>/manifests/{manifest_id}</code>
</span>
# You can also use wget
curl -X DELETE /manifests/{manifest_id} \
-H 'Accept: application/json' \
-H 'x-delete-reason: Erroneously created'
const headers = {
'Accept':'application/json',
'x-delete-reason':'Erroneously created'
};
fetch('/manifests/{manifest_id}',
{
method: 'DELETE',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json',
'x-delete-reason': 'Erroneously created'
}
r = requests.delete('/manifests/{manifest_id}', headers = headers)
print(r.json())
DELETE /manifests/{manifest_id}
Delete the specified manifest.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| x-delete-reason | header | string | true | Reason for deletion. |
| manifest_id | path | string | true | Unique manifest identifier. |
200 Response
{
"message": "manifest deleted 20220330:nationwide:66786714"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Manifest deleted. | Inline |
| 404 | Not Found | No manifest with the requested ID value was found. | None |
Response Schema
Retrieve Manifest History
<span class="endpoint">
<span class="method get"> GET </span>
<code>/manifests/history/{manifest_id}</code>
</span>
# You can also use wget
curl -X GET /manifests/history/{manifest_id} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/manifests/history/{manifest_id}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/manifests/history/{manifest_id}', headers = headers)
print(r.json())
GET /manifests/history/{manifest_id}
Retrieve all history for specified manifest
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| manifest_id | path | string | true | The manifest_id of the manifest to retrieve history. |
200 Response
[
{
"data": {
"qldb_id": "DJ3vVRFPlkx7rj9CNs0lLb",
"qldb_version": 0,
"qldb_txTime": "2021-12-15 15:23:42.117000+00:00",
"qldb_txId": "3rXE6l7R8OqJi3YyndUHvG",
"sender_institution_id": "BBNCHP001",
"courier": "Inter-Site Delivery",
"recipient_institution_id": "LBFHCR002",
"modified_timestamp": "2021-12-15T15:23:42Z",
"modified_time": 1639581822,
"manifest_id": "20211215:nationwide:55421230",
"submitter": "csms_developer@bioappdev.org",
"status": "draft",
"excluded": false,
"event": "create"
},
"diff": {
"qldb_id": [
null,
"DJ3vVRFPlkx7rj9CNs0lLb"
],
"qldb_version": [
null,
0
],
"qldb_txTime": [
null,
"2021-12-15 15:23:42.117000+00:00"
],
"qldb_txId": [
null,
"3rXE6l7R8OqJi3YyndUHvG"
],
"sender_institution_id": [
null,
"BBNCHP001"
],
"courier": [
null,
"Inter-Site Delivery"
],
"recipient_institution_id": [
null,
"LBFHCR002"
],
"modified_timestamp": [
null,
"2021-12-15T15:23:42Z"
],
"modified_time": [
null,
1639581822
],
"manifest_id": [
null,
"20211215:nationwide:55421230"
],
"submitter": [
null,
"csms_developer@bioappdev.org"
],
"status": [
null,
"draft"
],
"excluded": [
null,
false
],
"event": [
null,
"create"
]
}
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | History found and history information was returned. | Inline |
| 404 | Not Found | The requested history was not found. | None |
Response Schema
Retrieve Manifest Snapshot
<span class="endpoint">
<span class="method get"> GET </span>
<code>/manifests/snapshot/{manifest_id}/{modified_time}</code>
</span>
# You can also use wget
curl -X GET /manifests/snapshot/{manifest_id}/{modified_time} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/manifests/snapshot/{manifest_id}/{modified_time}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/manifests/snapshot/{manifest_id}/{modified_time}', headers = headers)
print(r.json())
GET /manifests/snapshot/{manifest_id}/{modified_time}
Retrieve a snapshot for the specified manifest
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| manifest_id | path | string | true | The manifest_id of the manifest to retrieve snapshot. |
| modified_time | path | integer | true | The modified_time of the manifest for the specific snapshot. |
200 Response
{
"data": {
"recipient_institution_id": "LBCHLA001",
"sender_email": "test@email.cm",
"sender_institution_id": "BBNCHP001",
"sender_institution_name": "MD Anderson Cancer Center",
"sender_person_name": "Jack Torrance",
"sender_phone": "703-867-5309",
"sender_state": "TX",
"sender_street_1": "123 Main St",
"sender_zip_code": "20151",
"shipping_condition": "Ambient",
"courier": "USPS",
"schema_version": "2.2.0",
"status": "draft",
"recipient_institution_name": "Children's Hospital of Los Angeles - Clinical Immunology Laboratory",
"modified_timestamp": "2023-10-16T16:17:15Z",
"modified_time": 1697473035,
"manifest_id": "20231016:nationwide:58634102",
"submitter": "0oa3p6e4lvwhhRoxI297",
"creator_role": "administrator",
"custodian_institution_id": "Biobank1",
"event": "create",
"qldb_id": "Djg3NtZY4DbFxD6UkYwEHA",
"qldb_version": 0,
"qldb_txId": "9xSyQQJxR74Ggefm4R6cQ9",
"qldb_txTime": "2023-10-16 16:17:15.788000+00:00",
"files_detail": [],
"comments_detail": [],
"samples": [
{
"sample_id": "pt_download_07",
"screening_protocol_id": "MYELOMATCH",
"screening_participant_id": "pt_download_07",
"biological_sex": "Female",
"biopsy_site": "C01.9",
"collection_date": "2021-08-14",
"collection_time": "10:00 EDT",
"date_of_birth": "1977-10-01",
"container_type": "EDTA Tube",
"collection_event_name": "MRD Assessment",
"sample_collection_procedure": "Surgical Excision",
"sample_type": "Skin Tissue",
"description_of_sample": "Normal",
"sample_manifest_type": "interventional",
"schema_version": "2.2.0",
"modified_timestamp": "2023-10-16T16:17:15Z",
"modified_time": 1697473035,
"submitter": null,
"custodian_institution_id": null,
"sample_qc_result": null,
"manifest_id": "20231016:nationwide:58634102",
"recipient_institution_id": "LBCHLA001",
"sender_institution_id": "BBNCHP001",
"status": "draft",
"creator_role": "administrator",
"parent_sample_id": "pt_download_07",
"csms_id": "mm_9106_pbe",
"original_specimen": "False",
"event": "create",
"qldb_id": "HFv3mJQ7c6QBzhaWRMwfT0",
"qldb_version": 0,
"qldb_txId": "GJMn2Rbivz19oohIGLi2f6",
"qldb_txTime": "2023-10-16 16:17:15.962000+00:00",
"files_detail": [],
"comments_detail": []
},
{
"sample_id": "pt_download_08",
"screening_protocol_id": "MYELOMATCH",
"screening_participant_id": "pt_download_08",
"biological_sex": "Male",
"biopsy_site": "C02.9",
"collection_date": "2020-08-14",
"collection_time": "10:00 EDT",
"date_of_birth": "1988-10-01",
"container_type": "EDTA Tube",
"collection_event_name": "MRD Assessment",
"sample_collection_procedure": "Surgical Excision",
"sample_type": "Skin Tissue",
"description_of_sample": "Normal",
"sample_manifest_type": "interventional",
"schema_version": "2.2.0",
"modified_timestamp": "2023-10-16T16:17:15Z",
"modified_time": 1697473035,
"submitter": null,
"custodian_institution_id": null,
"sample_qc_result": null,
"manifest_id": "20231016:nationwide:58634102",
"recipient_institution_id": "LBCHLA001",
"sender_institution_id": "BBNCHP001",
"status": "draft",
"creator_role": "administrator",
"parent_sample_id": "pt_download_08",
"csms_id": "mm_8024_flw",
"original_specimen": "False",
"event": "create",
"qldb_id": "60bqQFT1O694VhMWxSqVzV",
"qldb_version": 0,
"qldb_txId": "GJMn2Rbivz19oohIGLi2f6",
"qldb_txTime": "2023-10-16 16:17:15.962000+00:00",
"files_detail": [],
"comments_detail": []
}
]
},
"total": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Snapshot found and snapshot information was returned. | Inline |
| 404 | Not Found | The requested snapshot was not found. | None |
Response Schema
Download Manifest Excel Template
<span class="endpoint">
<span class="method get"> GET </span>
<code>/manifests/template</code>
</span>
# You can also use wget
curl -X GET /manifests/template \
-H 'Accept: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
const headers = {
'Accept':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
};
fetch('/manifests/template',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}
r = requests.get('/manifests/template', headers = headers)
print(r.json())
GET /manifests/template
Download the Manifest Excel Template for Bulk Uploads.
200 Response
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Download of the excel template was successful. | string |
| 403 | Forbidden | Forbidden access. | None |
SAMPLES
Routes for samples
Create Sample
<span class="endpoint">
<span class="method post"> POST </span>
<code>/samples</code>
</span>
# You can also use wget
curl -X POST /samples \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
const inputBody = '{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"comments": "This is a comment for the sample",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"date_of_birth": "1970-11-30",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"directionality": "Lateral",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"parent_sample_id": "string",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"sample_collection_procedure": "Other",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789"
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('/samples',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.post('/samples', headers = headers)
print(r.json())
POST /samples
Sample information in a JSON dict sent to this path for creation of a new sample. The data is validated and queued for update. Samples created using this path may include an optional manfest_id field to associate the sample with a manifest.
REQUEST BODY
{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"comments": "This is a comment for the sample",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"date_of_birth": "1970-11-30",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"directionality": "Lateral",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"parent_sample_id": "string",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"sample_collection_procedure": "Other",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789"
}
201 Response
{
"message": "Data Received Successfully by CSMS",
"csms_id": "mm_0536_svu",
"modified_time": 1650889491
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | JSON is valid and queued in the system. | Inline |
| 400 | Bad Request | JSON was invalid, duplicate samples were detected, or the manifest_id value is invalid. | None |
Response Schema
Query Samples
<span class="endpoint">
<span class="method get"> GET </span>
<code>/samples</code>
</span>
# You can also use wget
curl -X GET /samples?a260_or_a230_value=10&a260_or_a280_value=10 \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/samples?a260_or_a230_value=10&a260_or_a280_value=10',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/samples'
, params={"a260_or_a230_value":"10","a260_or_a280_value":"10"}
, headers = headers)
print(r.json())
GET /samples
Retrieve sample(s) based on matching search parameters (for example, "csms_id=mm_0536_svu").
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| a260_or_a230_value | query | integer | false | An absorbance percentage ratio indicating presence of contaminants (values of 0 to 3). |
| a260_or_a280_value | query | integer | false | An absorbance percentage ratio indicating purity of DNA (values of 0 to 2). |
| biological_sex | query | string | false | biological sex for tissue samples. See Enumerated List for valid values. |
| biopsy_site | query | string | false | Biopsy site for tissue samples. |
| blast_percentage | query | number | false | TBD |
| box_coordinates | query | string | false | Coordinates describing the location of the box used for sample storage. |
| collection_date | query | string | false | Date the sample was collected. |
| collection_event_name | query | string | false | Categorical description of the time point at which the sample was taken. |
| collection_time | query | string | false | Estimated time when sample was devascularized--Ischemic Start Time. |
| comments | query | string | false | comment to be added to the sample |
| container_type | query | string | false | Type of container used to transport sample. See Enumerated List for valid values. |
| container_type_other | query | string | false | Additional details when Other is selected for container type. |
| cores_submitted | query | string | false | Indicates whether cores are submitted with the sample. See Enumerated List for valid values. |
| csms_id | query | string | false | Sample identifier assigned by the CSMS-Interventional Network. |
| custodian_institution_id | query | string | false | Current institution ID in possession or the custodian of the sample. |
| date_of_birth | query | string | false | Participant date of birth. |
| description_of_sample | query | string | false | Type of tissue associated with the sample. See Enumerated List for valid values. |
| description_of_tumor_sample | query | string | false | Description of tumor sample. See Enumerated List for valid values. |
| din_value | query | integer | false | Provides a DNA Integrity Number as an indication of extraction quality (values of 1-10). |
| directionality | query | string | false | Directionality [Lateral, Midline]. See Enumerated List for valid values. |
| dv200 | query | number | false | Percentage of RNA fragments above 200 nucleotides. |
| event | query | string | false | The update event performed. |
| fibrosis_percent_area | query | number | false | Score the percentage area of fibrosis. QC field is editable by labs. |
| fixation_stabilization_type | query | string | false | TBD See Enumerated List for valid values. |
| laterality | query | string | false | Laterality [Left, Right, Bilateral]. See Enumerated List for valid values. |
| locational_tumor_malignancy_class | query | string | false | Location of the malignancy. See Enumerated List for valid values. |
| manifest_id | query | string | false | The manifest ID. Include this value to associate the sample with a manifest. Use an empty string in a PATCH request to disassociate the sample from all manifests. |
| med_tin | query | number | false | Median transcript integrity number to score RNA degradation. |
| necrosis_percent_area | query | number | false | Score the percentage area of necrosis. QC field is editable by labs. |
| nitrogen_tank | query | string | false | Describes the nitrogen tank where samples are stored long-term. |
| number_cores_submitted | query | string | false | Number of cores submitted. See Enumerated List for valid values. |
| operational_id | query | string | false | Identifier assigned by biorepository or lab. |
| original_sample | query | boolean | false | True if the sample is created by an enrolling site. |
| parent_csms_id | query | string | false | CSMS identifier of the parent sample, if this sample is a child. |
| parent_sample_id | query | string | false | Sample identifier assigned by the biorepository site. |
| percent_viability | query | number | false | TBD |
| processed_sample_derivative | query | string | false | The type of derivative or analyte extracted from the sample to be shipped for testing. See Enumerated List for valid values. |
| processed_sample_id | query | string | false | Aliquot identifier assigned by the bio repository site. |
| processed_sample_type | query | string | false | The type of processing that was performed on the collected sample by the Biobank or Bio repository for storage. See Enumerated List for valid values. |
| rack_id | query | string | false | Describes the rack number where samples are stored long-term. |
| reason | query | string | false | The reason for the update action. |
| replacement_sample_requested | query | string | false | Indication if sample replacement is/was requested. QC field is editable by labs. See Enumerated List for valid values. |
| rin_value | query | number | false | A numerical measure of RNA integrity (RNA Integrity Number). |
| sample_collection_procedure | query | string | false | Indicates the sample source of the sample shipped. See Enumerated List for valid values. |
| sample_collection_procedure_other | query | string | false | Additional information when Other is specified for sample_collection_procedure. |
| sample_id | query | string | false | Identifier assigned by biorepository or lab. |
| sample_manifest_type | query | string | false | The type of processing that was performed on the collected sample by the Biobank for storage. normal_blood_dna is deprecated. Use blood_nucleic_acid instead. See Enumerated List for valid values. |
| sample_qc_fail_reason | query | string | false | Reason QC check failed. See Enumerated List for valid values. |
| sample_qc_fail_reason_other | query | string | false | Additional detail when Other selected for sample_qc_fail_reason. |
| sample_qc_result | query | string | false | Result of quality control review. See Enumerated List for valid values. |
| sample_shipping_condition | query | string | false | Description of the sample shipping condition. See Enumerated List for valid values. |
| sample_shipping_condition_other | query | string | false | Description describing the use of the other field associated with sample_shipping_condition property. |
| sample_type | query | string | false | Type of sample. See Enumerated List for valid values. |
| sample_type_other | query | string | false | Additional details when Other is selected for sample_type. |
| sample_uom | query | string | false | Unit of measure associated with sample_quantity. See Enumerated List for valid values. |
| sample_volume_quantity | query | number | false | The volume of the sample. |
| screening_participant_id | query | string | false | Participant Identifier. |
| screening_protocol_id | query | string | false | Protocol or Clinical Trial program. See Enumerated List for valid values. |
| shelf | query | string | false | Describes the shelf where samples are stored long-term. |
| status | query | string | false | Internal CSMS state of the sample. Manifest and sample status cannot both be changed in the same request. See Enumerated List for valid values. |
| storage_box_number | query | string | false | Describes the box number where samples are stored long-term. |
| storage_environment | query | string | false | Storage environment assigned to sample. See Enumerated List for valid values. |
| storage_room | query | string | false | Describes the room location where samples are stored long-term. |
| storage_temperature | query | string | false | Describes the long-term storage temperature. |
| storage_unit_type | query | string | false | Equipment used to store the sample. See Enumerated List for valid values. |
| storage_unit_type_other | query | string | false | Description of the other equipment being used for storage of the sample. |
| treatment_participant_id | query | string | false | Optional field for collecting treatment participant identifier. |
| treatment_protocol_id | query | string | false | Optional field for collecting ID of treatment protocol. |
| viable_stroma_percent_area | query | number | false | Percent of the area that is viable stroma. |
| viable_tumor_percent_area | query | number | false | Score the percentage of viable tumor cells comprising the tumor bed area. QC field is editable by labs. |
Enumerated Values
| Parameter | Value |
|---|---|
| biological_sex | Male |
| biological_sex | Female |
| container_type | ACD-A Tube |
| container_type | ACD-B Tube |
| container_type | Bag |
| container_type | Box |
| container_type | CellSave Tube |
| container_type | Conical Tube |
| container_type | Container |
| container_type | CPT Citrate Tube |
| container_type | CPT Heparin Tube |
| container_type | Cryovial |
| container_type | EDTA Tube |
| container_type | Fecal Collection Container with NA Stabilizer |
| container_type | FFPE Tissue Cassette |
| container_type | Formalin Jar |
| container_type | Image |
| container_type | Lithium Heparin Tube |
| container_type | OMNIgene |
| container_type | OMNImet |
| container_type | PAXgene DNA Tube |
| container_type | PAXgene RNA Tube |
| container_type | Plain Red Top Tube |
| container_type | PPT Tube |
| container_type | Saliva Tube |
| container_type | Screw Top Jar |
| container_type | Slide |
| container_type | Slide Cassette |
| container_type | Smart Tube |
| container_type | Sodium Citrate Tube |
| container_type | Sodium Heparin Tube |
| container_type | SST Tube |
| container_type | Streck Tube |
| container_type | Other |
| cores_submitted | Yes |
| cores_submitted | No |
| description_of_sample | Normal |
| description_of_sample | Tumor |
| description_of_sample | Unknown |
| description_of_tumor_sample | Benign |
| description_of_tumor_sample | In Situ |
| description_of_tumor_sample | Malignant |
| description_of_tumor_sample | Unknown |
| directionality | Lateral |
| directionality | Midline |
| fixation_stabilization_type | Ficoll |
| fixation_stabilization_type | Formalin Fixation |
| fixation_stabilization_type | Formalin-Fixed Paraffin-Embedded (FFPE) |
| fixation_stabilization_type | Frozen |
| fixation_stabilization_type | 70% Ethanol |
| fixation_stabilization_type | H&E |
| fixation_stabilization_type | Liquid Nitrogen (Frozen) |
| fixation_stabilization_type | OCT (Frozen) |
| fixation_stabilization_type | Proteomic Stabilization |
| fixation_stabilization_type | Thaw-Lyse |
| fixation_stabilization_type | Not Reported |
| fixation_stabilization_type | Other |
| laterality | Left |
| laterality | Right |
| laterality | Bilateral |
| locational_tumor_malignancy_class | Primary |
| locational_tumor_malignancy_class | Metastasis |
| locational_tumor_malignancy_class | Metastatic Lymph Node |
| locational_tumor_malignancy_class | Unknown |
| number_cores_submitted | 1 |
| number_cores_submitted | 2 |
| number_cores_submitted | 3 |
| number_cores_submitted | 4 |
| number_cores_submitted | 5 |
| number_cores_submitted | 6 |
| number_cores_submitted | 7 |
| number_cores_submitted | Not Reported |
| number_cores_submitted | Other |
| processed_sample_derivative | cfDNA |
| processed_sample_derivative | ctDNA |
| processed_sample_derivative | DNA |
| processed_sample_derivative | Germline DNA |
| processed_sample_derivative | Germline RNA |
| processed_sample_derivative | Other |
| processed_sample_derivative | RNA |
| processed_sample_derivative | Protein Lysate |
| processed_sample_derivative | Peptides |
| processed_sample_derivative | Germline Nucleic Acid |
| processed_sample_derivative | Nucleic Acid |
| processed_sample_type | BAL Cells |
| processed_sample_type | BAL Cell Supernatant |
| processed_sample_type | BMMC |
| processed_sample_type | BMMC Supernatant |
| processed_sample_type | Bone Marrow Film |
| processed_sample_type | Buccal Cells |
| processed_sample_type | Buffy Coat |
| processed_sample_type | cfDNA |
| processed_sample_type | CSF Cell Supernatant |
| processed_sample_type | CSF Cells |
| processed_sample_type | CTC Cell Supernatant |
| processed_sample_type | CTC Cells |
| processed_sample_type | ctDNA |
| processed_sample_type | Cytospin Film |
| processed_sample_type | DNA |
| processed_sample_type | FFPE Block |
| processed_sample_type | FFPE Block Punch |
| processed_sample_type | FFPE Section |
| processed_sample_type | FFPE Tissue Core |
| processed_sample_type | FFPE Tissue Curl |
| processed_sample_type | FFPE Tissue Scroll |
| processed_sample_type | Formalin Fixed Tissue |
| processed_sample_type | Germline DNA |
| processed_sample_type | Germline RNA |
| processed_sample_type | Leukapheresis Cells |
| processed_sample_type | Other |
| processed_sample_type | PBMC |
| processed_sample_type | PBMC Supernatant |
| processed_sample_type | PBSC |
| processed_sample_type | PBSC Supernatant |
| processed_sample_type | Peritoneal Cell Supernatant |
| processed_sample_type | Peritoneal Cells |
| processed_sample_type | Plasma |
| processed_sample_type | Pleural Cell Supernatant |
| processed_sample_type | Pleural Cells |
| processed_sample_type | RNA |
| processed_sample_type | Serum |
| processed_sample_type | Whole Blood Film |
| processed_sample_type | Protein Lysate |
| processed_sample_type | Peptides |
| processed_sample_type | Germline Nucleic Acid |
| processed_sample_type | Nucleic Acid |
| processed_sample_type | H&E Fixed Tissue Slide |
| processed_sample_type | Fixed Tissue Slide |
| processed_sample_type | WBC |
| replacement_sample_requested | Replacement Not Requested |
| replacement_sample_requested | Replacement Requested |
| replacement_sample_requested | Replacement Tested |
| replacement_sample_requested | Not Reported |
| replacement_sample_requested | Other |
| sample_collection_procedure | Apheresis |
| sample_collection_procedure | Bone Biopsy |
| sample_collection_procedure | Bone Marrow Core Biopsy |
| sample_collection_procedure | Bone Marrow Aspiration |
| sample_collection_procedure | Bronchoalveolar Lavage |
| sample_collection_procedure | Buccal Swab |
| sample_collection_procedure | Core Biopsy |
| sample_collection_procedure | Endoscopic Biopsy |
| sample_collection_procedure | FFPE Block Punch Biopsy |
| sample_collection_procedure | Fine Needle Aspiration |
| sample_collection_procedure | Leukapheresis |
| sample_collection_procedure | Lumbar Puncture |
| sample_collection_procedure | Mid Stream Urine Collection |
| sample_collection_procedure | Not Reported |
| sample_collection_procedure | Peritoneal Lavage |
| sample_collection_procedure | Peritoneal Paracentesis |
| sample_collection_procedure | Phlebotomy |
| sample_collection_procedure | Pleural Thoracentesis |
| sample_collection_procedure | Saliva Collection |
| sample_collection_procedure | Skin Biopsy |
| sample_collection_procedure | Stool Collection |
| sample_collection_procedure | Surgical Excision |
| sample_collection_procedure | Surgical Incision |
| sample_collection_procedure | Urine Voiding |
| sample_collection_procedure | Other |
| sample_manifest_type | blood_nucleic_acid |
| sample_manifest_type | tissue_nucleic_acid |
| sample_manifest_type | tissue_slides |
| sample_manifest_type | tissue_h_and_e |
| sample_manifest_type | biofluid_plasma |
| sample_manifest_type | biofluid_cellular |
| sample_manifest_type | biofluid_cellular_nucleic_acid |
| sample_manifest_type | microbiome |
| sample_manifest_type | interventional |
| sample_qc_fail_reason | Frozen |
| sample_qc_fail_reason | Thawed |
| sample_qc_fail_reason | Hemolysis |
| sample_qc_fail_reason | Container Damaged |
| sample_qc_fail_reason | Container Leaking |
| sample_qc_fail_reason | Insufficient Material |
| sample_qc_fail_reason | Insufficient Medium |
| sample_qc_fail_reason | Other |
| sample_qc_result | QC Pass |
| sample_qc_result | Pass at Risk |
| sample_qc_result | QC Failed |
| sample_qc_result | QC Lost |
| sample_qc_result | QC Not Shipped |
| sample_shipping_condition | Frozen Shipper |
| sample_shipping_condition | Frozen Dry Ice |
| sample_shipping_condition | Ice/Cold Pack |
| sample_shipping_condition | Ambient |
| sample_shipping_condition | Not Reported |
| sample_shipping_condition | Other |
| sample_type | BAL Cells |
| sample_type | BAL Cell Supernatant |
| sample_type | BAL Fluid |
| sample_type | BMMC |
| sample_type | BMMC Supernatant |
| sample_type | Bone Marrow Aspirate |
| sample_type | Bone Marrow Core |
| sample_type | Bone Marrow Film |
| sample_type | Buccal Cells |
| sample_type | Buffy Coat |
| sample_type | CAR-T Cells |
| sample_type | cfDNA |
| sample_type | CSF |
| sample_type | CSF Cells |
| sample_type | CSF Cell Supernatant |
| sample_type | CTC Cells |
| sample_type | CTC Cell Supernatant |
| sample_type | ctDNA |
| sample_type | Cytospin Film |
| sample_type | DNA |
| sample_type | FFPE Block |
| sample_type | FFPE Block Punch |
| sample_type | FFPE Section |
| sample_type | FFPE Tissue Core |
| sample_type | FFPE Tissue Curl |
| sample_type | FFPE Tissue Scroll |
| sample_type | Fine Needle Aspirate |
| sample_type | Fixed Tissue Slide |
| sample_type | Formalin Fixed Tissue |
| sample_type | Fresh Tissue |
| sample_type | Fresh Tissue Core |
| sample_type | Frozen Tissue |
| sample_type | Frozen Tissue Block |
| sample_type | Frozen Tissue Curl |
| sample_type | Frozen Tissue Core |
| sample_type | Frozen Tissue Section |
| sample_type | Germline DNA |
| sample_type | Germline Nucleic Acid |
| sample_type | Germline RNA |
| sample_type | H&E Fixed Tissue Slide |
| sample_type | Leukapheresis Cells |
| sample_type | Lymph Node Tissue |
| sample_type | Nucleic Acid |
| sample_type | OCT Frozen Tissue |
| sample_type | OCT Frozen Tissue Block |
| sample_type | OCT Frozen Tissue Core |
| sample_type | OCT Frozen Tissue Curl |
| sample_type | OCT Frozen Tissue Section |
| sample_type | PBMC |
| sample_type | PBMC Supernatant |
| sample_type | PBSC |
| sample_type | PBSC Supernatant |
| sample_type | Peptides |
| sample_type | Pericardial Fluid |
| sample_type | Peritoneal Cells |
| sample_type | Peritoneal Cell Supernatant |
| sample_type | Peritoneal Fluid |
| sample_type | Peritoneal Lavage Fluid |
| sample_type | Plasma |
| sample_type | Pleural Cells |
| sample_type | Pleural Cell Supernatant |
| sample_type | Pleural Fluid |
| sample_type | Protein Lysate |
| sample_type | RNA |
| sample_type | Saliva |
| sample_type | Serum |
| sample_type | Skin Tissue |
| sample_type | Stool |
| sample_type | Synovial Fluid |
| sample_type | Tissue Core |
| sample_type | Urine |
| sample_type | WBC |
| sample_type | Whole Blood |
| sample_type | Whole Blood Film |
| sample_type | Other |
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
| screening_protocol_id | MYELOMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
| status | draft |
| status | in_lab |
| status | in_transit |
| status | in_qc |
| status | in_storage |
| status | disposed |
| status | missing |
| storage_environment | Ambient |
| storage_environment | RT |
| storage_environment | 4 Celsius Degree |
| storage_environment | -20 Degrees Celsius Or Minus 20 Degrees Celsius |
| storage_environment | -80 Degrees Celsius Or Minus 80 Degrees Celsius |
| storage_environment | -150 Degrees Celsius Or Minus 150 Degrees Celsius |
| storage_environment | LN |
| storage_environment | Dry Ice |
| storage_environment | Not Reported |
| storage_environment | Other |
| storage_unit_type | Freezer |
| storage_unit_type | Refrigerator |
| storage_unit_type | Cabinet |
| storage_unit_type | LNTank |
| storage_unit_type | Other |
200 Response
{
"data": [
{
"biological_sex": "Female",
"biopsy_site": "C02.9",
"collection_date": "2022-06-18",
"collection_event_name": "Progression",
"container_type": "Saliva Tube",
"date_of_birth": "1978-04-22",
"description_of_sample": "Normal",
"screening_participant_id": "pt_026",
"screening_protocol_id": "iMATCH",
"sample_collection_procedure": "Pleural Thoracentesis",
"sample_type": "FFPE Section",
"sample_manifest_type": "interventional",
"sample_id": "mkMYELOMATCH01",
"operational_id": "mkOperational1",
"collection_time": "14:00 EDT",
"sample_shipping_condition": "Frozen Dry Ice",
"schema_version": "2.2.0",
"recipient_institution_id": "LBTWST001",
"sender_institution_id": "BBNCHP001",
"creator_role": "administrator",
"parent_sample_id": "mkMYELOMATCH01",
"original_specimen": "False",
"custodian_institution_id": "LBTWST001",
"sample_qc_result": "QC Pass",
"status": "in_lab",
"manifest_id": null,
"blast_percentage": 55.57,
"viable_tumor_percent_area": 29.37,
"viable_stroma_percent_area": 25.5,
"fibrosis_percent_area": 24.017,
"percent_viability": 23.3,
"dv200": 15,
"rin_value": 5,
"necrosis_percent_area": 24,
"csms_id": "im_9049_prm",
"modified_timestamp": "2023-10-17T19:41:00Z",
"modified_time": 1697571660,
"submitter": null,
"event": "update",
"files_detail": [],
"comments_detail": []
}
],
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | Inline |
| 400 | Bad Request | Invalid query string. | None |
Response Schema
Update Sample
<span class="endpoint">
<span class="method patch"> PATCH </span>
<code>/samples/{csms_id}</code>
</span>
# You can also use wget
curl -X PATCH /samples/{csms_id} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
const inputBody = '{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"container_type": "Other",
"date_of_birth": "1970-11-30",
"sample_collection_procedure": "Other",
"sample_type": "Other",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"box_coordinates": "tile 22h",
"comments": "This is a comment for the sample",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"custodian_institution_id": "string",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"din_value": 10,
"directionality": "Lateral",
"dv200": "51.273",
"event": "string",
"fibrosis_percent_area": "21.2",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"manifest_id": "20220729_jrh_65108327",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"nitrogen_tank": "nx-tank1",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"original_sample": "True",
"parent_csms_id": "mm_1214_jrh",
"parent_sample_id": "string",
"percent_viability": "1.2",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rack_id": "rack_id_2204",
"reason": "string",
"replacement_sample_requested": "Replacement Not Requested",
"rin_value": "0.29",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_qc_fail_reason": "Container Damaged",
"sample_qc_fail_reason_other": "Incorrect handling of sample",
"sample_qc_result": "QC Pass",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"shelf": "string",
"status": "in_lab",
"storage_box_number": "box_76399",
"storage_environment": "LN",
"storage_room": "room bio-456",
"storage_temperature": "5c",
"storage_unit_type": "Refrigerator",
"storage_unit_type_other": "Vault",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('/samples/{csms_id}',
{
method: 'PATCH',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.patch('/samples/{csms_id}', headers = headers)
print(r.json())
PATCH /samples/{csms_id}
Update specific data on a previously created sample.
REQUEST BODY
{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"container_type": "Other",
"date_of_birth": "1970-11-30",
"sample_collection_procedure": "Other",
"sample_type": "Other",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"box_coordinates": "tile 22h",
"comments": "This is a comment for the sample",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"custodian_institution_id": "string",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"din_value": 10,
"directionality": "Lateral",
"dv200": "51.273",
"event": "string",
"fibrosis_percent_area": "21.2",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"manifest_id": "20220729_jrh_65108327",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"nitrogen_tank": "nx-tank1",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"original_sample": "True",
"parent_csms_id": "mm_1214_jrh",
"parent_sample_id": "string",
"percent_viability": "1.2",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rack_id": "rack_id_2204",
"reason": "string",
"replacement_sample_requested": "Replacement Not Requested",
"rin_value": "0.29",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_qc_fail_reason": "Container Damaged",
"sample_qc_fail_reason_other": "Incorrect handling of sample",
"sample_qc_result": "QC Pass",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"shelf": "string",
"status": "in_lab",
"storage_box_number": "box_76399",
"storage_environment": "LN",
"storage_room": "room bio-456",
"storage_temperature": "5c",
"storage_unit_type": "Refrigerator",
"storage_unit_type_other": "Vault",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| a260_or_a230_value | body | integer | false | An absorbance percentage ratio indicating presence of contaminants (values of 0 to 3). |
| a260_or_a280_value | body | integer | false | An absorbance percentage ratio indicating purity of DNA (values of 0 to 2). |
| biological_sex | body | string | false | biological sex for tissue samples. See Enumerated List for valid values. |
| biopsy_site | body | string | false | Biopsy site for tissue samples. |
| blast_percentage | body | number | false | TBD |
| box_coordinates | body | string | false | Coordinates describing the location of the box used for sample storage. |
| collection_date | body | string | false | Date the sample was collected. |
| collection_event_name | body | string | false | Categorical description of the time point at which the sample was taken. |
| collection_time | body | string | false | Estimated time when sample was devascularized--Ischemic Start Time. |
| comments | body | string | false | comment to be added to the sample |
| container_type | body | string | false | Type of container used to transport sample. See Enumerated List for valid values. |
| container_type_other | body | string | false | Additional details when Other is selected for container type. |
| cores_submitted | body | string | false | Indicates whether cores are submitted with the sample. See Enumerated List for valid values. |
| date_of_birth | body | string | false | Participant date of birth. |
| description_of_sample | body | string | false | Type of tissue associated with the sample. See Enumerated List for valid values. |
| description_of_tumor_sample | body | string | false | Description of tumor sample. See Enumerated List for valid values. |
| din_value | body | integer | false | Provides a DNA Integrity Number as an indication of extraction quality (values of 1-10). |
| directionality | body | string | false | Directionality [Lateral, Midline]. See Enumerated List for valid values. |
| dv200 | body | number | false | Percentage of RNA fragments above 200 nucleotides. |
| fibrosis_percent_area | body | number | false | Score the percentage area of fibrosis. QC field is editable by labs. |
| fixation_stabilization_type | body | string | false | TBD See Enumerated List for valid values. |
| laterality | body | string | false | Laterality [Left, Right, Bilateral]. See Enumerated List for valid values. |
| locational_tumor_malignancy_class | body | string | false | Location of the malignancy. See Enumerated List for valid values. |
| manifest_id | body | string | false | The manifest ID. Include this value to associate the sample with a manifest. Use an empty string in a PATCH request to disassociate the sample from all manifests. |
| med_tin | body | number | false | Median transcript integrity number to score RNA degradation. |
| necrosis_percent_area | body | number | false | Score the percentage area of necrosis. QC field is editable by labs. |
| nitrogen_tank | body | string | false | Describes the nitrogen tank where samples are stored long-term. |
| number_cores_submitted | body | string | false | Number of cores submitted. See Enumerated List for valid values. |
| operational_id | body | string | false | Identifier assigned by biorepository or lab. |
| parent_sample_id | body | string | false | Sample identifier assigned by the biorepository site. |
| percent_viability | body | number | false | TBD |
| processed_sample_derivative | body | string | false | The type of derivative or analyte extracted from the sample to be shipped for testing. See Enumerated List for valid values. |
| processed_sample_id | body | string | false | Aliquot identifier assigned by the bio repository site. |
| processed_sample_type | body | string | false | The type of processing that was performed on the collected sample by the Biobank or Bio repository for storage. See Enumerated List for valid values. |
| rack_id | body | string | false | Describes the rack number where samples are stored long-term. |
| replacement_sample_requested | body | string | false | Indication if sample replacement is/was requested. QC field is editable by labs. See Enumerated List for valid values. |
| rin_value | body | number | false | A numerical measure of RNA integrity (RNA Integrity Number). |
| sample_collection_procedure | body | string | false | Indicates the sample source of the sample shipped. See Enumerated List for valid values. |
| sample_collection_procedure_other | body | string | false | Additional information when Other is specified for sample_collection_procedure. |
| sample_id | body | string | false | Identifier assigned by biorepository or lab. |
| sample_manifest_type | body | string | false | The type of processing that was performed on the collected sample by the Biobank for storage. normal_blood_dna is deprecated. Use blood_nucleic_acid instead. See Enumerated List for valid values. |
| sample_qc_fail_reason | body | string | false | Reason QC check failed. See Enumerated List for valid values. |
| sample_qc_fail_reason_other | body | string | false | Additional detail when Other selected for sample_qc_fail_reason. |
| sample_qc_result | body | string | false | Result of quality control review. See Enumerated List for valid values. |
| sample_shipping_condition | body | string | false | Description of the sample shipping condition. See Enumerated List for valid values. |
| sample_shipping_condition_other | body | string | false | Description describing the use of the other field associated with sample_shipping_condition property. |
| sample_type | body | string | false | Type of sample. See Enumerated List for valid values. |
| sample_type_other | body | string | false | Additional details when Other is selected for sample_type. |
| sample_uom | body | string | false | Unit of measure associated with sample_quantity. See Enumerated List for valid values. |
| sample_volume_quantity | body | number | false | The volume of the sample. |
| screening_participant_id | body | string | false | Participant Identifier. |
| screening_protocol_id | body | string | false | Protocol or Clinical Trial program. See Enumerated List for valid values. |
| shelf | body | string | false | Describes the shelf where samples are stored long-term. |
| status | body | string | false | Internal CSMS state of the sample. Manifest and sample status cannot both be changed in the same request. See Enumerated List for valid values. |
| storage_box_number | body | string | false | Describes the box number where samples are stored long-term. |
| storage_environment | body | string | false | Storage environment assigned to sample. See Enumerated List for valid values. |
| storage_room | body | string | false | Describes the room location where samples are stored long-term. |
| storage_temperature | body | string | false | Describes the long-term storage temperature. |
| storage_unit_type | body | string | false | Equipment used to store the sample. See Enumerated List for valid values. |
| storage_unit_type_other | body | string | false | Description of the other equipment being used for storage of the sample. |
| treatment_participant_id | body | string | false | Optional field for collecting treatment participant identifier. |
| treatment_protocol_id | body | string | false | Optional field for collecting ID of treatment protocol. |
| viable_stroma_percent_area | body | number | false | Percent of the area that is viable stroma. |
| viable_tumor_percent_area | body | number | false | Score the percentage of viable tumor cells comprising the tumor bed area. QC field is editable by labs. |
| csms_id | path | string | true | Unique Sample Identifier. |
Enumerated Values
| Parameter | Value |
|---|---|
| biological_sex | Male |
| biological_sex | Female |
| container_type | ACD-A Tube |
| container_type | ACD-B Tube |
| container_type | Bag |
| container_type | Box |
| container_type | CellSave Tube |
| container_type | Conical Tube |
| container_type | Container |
| container_type | CPT Citrate Tube |
| container_type | CPT Heparin Tube |
| container_type | Cryovial |
| container_type | EDTA Tube |
| container_type | Fecal Collection Container with NA Stabilizer |
| container_type | FFPE Tissue Cassette |
| container_type | Formalin Jar |
| container_type | Image |
| container_type | Lithium Heparin Tube |
| container_type | OMNIgene |
| container_type | OMNImet |
| container_type | PAXgene DNA Tube |
| container_type | PAXgene RNA Tube |
| container_type | Plain Red Top Tube |
| container_type | PPT Tube |
| container_type | Saliva Tube |
| container_type | Screw Top Jar |
| container_type | Slide |
| container_type | Slide Cassette |
| container_type | Smart Tube |
| container_type | Sodium Citrate Tube |
| container_type | Sodium Heparin Tube |
| container_type | SST Tube |
| container_type | Streck Tube |
| container_type | Other |
| cores_submitted | Yes |
| cores_submitted | No |
| description_of_sample | Normal |
| description_of_sample | Tumor |
| description_of_sample | Unknown |
| description_of_tumor_sample | Benign |
| description_of_tumor_sample | In Situ |
| description_of_tumor_sample | Malignant |
| description_of_tumor_sample | Unknown |
| directionality | Lateral |
| directionality | Midline |
| fixation_stabilization_type | Ficoll |
| fixation_stabilization_type | Formalin Fixation |
| fixation_stabilization_type | Formalin-Fixed Paraffin-Embedded (FFPE) |
| fixation_stabilization_type | Frozen |
| fixation_stabilization_type | 70% Ethanol |
| fixation_stabilization_type | H&E |
| fixation_stabilization_type | Liquid Nitrogen (Frozen) |
| fixation_stabilization_type | OCT (Frozen) |
| fixation_stabilization_type | Proteomic Stabilization |
| fixation_stabilization_type | Thaw-Lyse |
| fixation_stabilization_type | Not Reported |
| fixation_stabilization_type | Other |
| laterality | Left |
| laterality | Right |
| laterality | Bilateral |
| locational_tumor_malignancy_class | Primary |
| locational_tumor_malignancy_class | Metastasis |
| locational_tumor_malignancy_class | Metastatic Lymph Node |
| locational_tumor_malignancy_class | Unknown |
| number_cores_submitted | 1 |
| number_cores_submitted | 2 |
| number_cores_submitted | 3 |
| number_cores_submitted | 4 |
| number_cores_submitted | 5 |
| number_cores_submitted | 6 |
| number_cores_submitted | 7 |
| number_cores_submitted | Not Reported |
| number_cores_submitted | Other |
| processed_sample_derivative | cfDNA |
| processed_sample_derivative | ctDNA |
| processed_sample_derivative | DNA |
| processed_sample_derivative | Germline DNA |
| processed_sample_derivative | Germline RNA |
| processed_sample_derivative | Other |
| processed_sample_derivative | RNA |
| processed_sample_derivative | Protein Lysate |
| processed_sample_derivative | Peptides |
| processed_sample_derivative | Germline Nucleic Acid |
| processed_sample_derivative | Nucleic Acid |
| processed_sample_type | BAL Cells |
| processed_sample_type | BAL Cell Supernatant |
| processed_sample_type | BMMC |
| processed_sample_type | BMMC Supernatant |
| processed_sample_type | Bone Marrow Film |
| processed_sample_type | Buccal Cells |
| processed_sample_type | Buffy Coat |
| processed_sample_type | cfDNA |
| processed_sample_type | CSF Cell Supernatant |
| processed_sample_type | CSF Cells |
| processed_sample_type | CTC Cell Supernatant |
| processed_sample_type | CTC Cells |
| processed_sample_type | ctDNA |
| processed_sample_type | Cytospin Film |
| processed_sample_type | DNA |
| processed_sample_type | FFPE Block |
| processed_sample_type | FFPE Block Punch |
| processed_sample_type | FFPE Section |
| processed_sample_type | FFPE Tissue Core |
| processed_sample_type | FFPE Tissue Curl |
| processed_sample_type | FFPE Tissue Scroll |
| processed_sample_type | Formalin Fixed Tissue |
| processed_sample_type | Germline DNA |
| processed_sample_type | Germline RNA |
| processed_sample_type | Leukapheresis Cells |
| processed_sample_type | Other |
| processed_sample_type | PBMC |
| processed_sample_type | PBMC Supernatant |
| processed_sample_type | PBSC |
| processed_sample_type | PBSC Supernatant |
| processed_sample_type | Peritoneal Cell Supernatant |
| processed_sample_type | Peritoneal Cells |
| processed_sample_type | Plasma |
| processed_sample_type | Pleural Cell Supernatant |
| processed_sample_type | Pleural Cells |
| processed_sample_type | RNA |
| processed_sample_type | Serum |
| processed_sample_type | Whole Blood Film |
| processed_sample_type | Protein Lysate |
| processed_sample_type | Peptides |
| processed_sample_type | Germline Nucleic Acid |
| processed_sample_type | Nucleic Acid |
| processed_sample_type | H&E Fixed Tissue Slide |
| processed_sample_type | Fixed Tissue Slide |
| processed_sample_type | WBC |
| replacement_sample_requested | Replacement Not Requested |
| replacement_sample_requested | Replacement Requested |
| replacement_sample_requested | Replacement Tested |
| replacement_sample_requested | Not Reported |
| replacement_sample_requested | Other |
| sample_collection_procedure | Apheresis |
| sample_collection_procedure | Bone Biopsy |
| sample_collection_procedure | Bone Marrow Core Biopsy |
| sample_collection_procedure | Bone Marrow Aspiration |
| sample_collection_procedure | Bronchoalveolar Lavage |
| sample_collection_procedure | Buccal Swab |
| sample_collection_procedure | Core Biopsy |
| sample_collection_procedure | Endoscopic Biopsy |
| sample_collection_procedure | FFPE Block Punch Biopsy |
| sample_collection_procedure | Fine Needle Aspiration |
| sample_collection_procedure | Leukapheresis |
| sample_collection_procedure | Lumbar Puncture |
| sample_collection_procedure | Mid Stream Urine Collection |
| sample_collection_procedure | Not Reported |
| sample_collection_procedure | Peritoneal Lavage |
| sample_collection_procedure | Peritoneal Paracentesis |
| sample_collection_procedure | Phlebotomy |
| sample_collection_procedure | Pleural Thoracentesis |
| sample_collection_procedure | Saliva Collection |
| sample_collection_procedure | Skin Biopsy |
| sample_collection_procedure | Stool Collection |
| sample_collection_procedure | Surgical Excision |
| sample_collection_procedure | Surgical Incision |
| sample_collection_procedure | Urine Voiding |
| sample_collection_procedure | Other |
| sample_manifest_type | blood_nucleic_acid |
| sample_manifest_type | tissue_nucleic_acid |
| sample_manifest_type | tissue_slides |
| sample_manifest_type | tissue_h_and_e |
| sample_manifest_type | biofluid_plasma |
| sample_manifest_type | biofluid_cellular |
| sample_manifest_type | biofluid_cellular_nucleic_acid |
| sample_manifest_type | microbiome |
| sample_manifest_type | interventional |
| sample_qc_fail_reason | Frozen |
| sample_qc_fail_reason | Thawed |
| sample_qc_fail_reason | Hemolysis |
| sample_qc_fail_reason | Container Damaged |
| sample_qc_fail_reason | Container Leaking |
| sample_qc_fail_reason | Insufficient Material |
| sample_qc_fail_reason | Insufficient Medium |
| sample_qc_fail_reason | Other |
| sample_qc_result | QC Pass |
| sample_qc_result | Pass at Risk |
| sample_qc_result | QC Failed |
| sample_qc_result | QC Lost |
| sample_qc_result | QC Not Shipped |
| sample_shipping_condition | Frozen Shipper |
| sample_shipping_condition | Frozen Dry Ice |
| sample_shipping_condition | Ice/Cold Pack |
| sample_shipping_condition | Ambient |
| sample_shipping_condition | Not Reported |
| sample_shipping_condition | Other |
| sample_type | BAL Cells |
| sample_type | BAL Cell Supernatant |
| sample_type | BAL Fluid |
| sample_type | BMMC |
| sample_type | BMMC Supernatant |
| sample_type | Bone Marrow Aspirate |
| sample_type | Bone Marrow Core |
| sample_type | Bone Marrow Film |
| sample_type | Buccal Cells |
| sample_type | Buffy Coat |
| sample_type | CAR-T Cells |
| sample_type | cfDNA |
| sample_type | CSF |
| sample_type | CSF Cells |
| sample_type | CSF Cell Supernatant |
| sample_type | CTC Cells |
| sample_type | CTC Cell Supernatant |
| sample_type | ctDNA |
| sample_type | Cytospin Film |
| sample_type | DNA |
| sample_type | FFPE Block |
| sample_type | FFPE Block Punch |
| sample_type | FFPE Section |
| sample_type | FFPE Tissue Core |
| sample_type | FFPE Tissue Curl |
| sample_type | FFPE Tissue Scroll |
| sample_type | Fine Needle Aspirate |
| sample_type | Fixed Tissue Slide |
| sample_type | Formalin Fixed Tissue |
| sample_type | Fresh Tissue |
| sample_type | Fresh Tissue Core |
| sample_type | Frozen Tissue |
| sample_type | Frozen Tissue Block |
| sample_type | Frozen Tissue Curl |
| sample_type | Frozen Tissue Core |
| sample_type | Frozen Tissue Section |
| sample_type | Germline DNA |
| sample_type | Germline Nucleic Acid |
| sample_type | Germline RNA |
| sample_type | H&E Fixed Tissue Slide |
| sample_type | Leukapheresis Cells |
| sample_type | Lymph Node Tissue |
| sample_type | Nucleic Acid |
| sample_type | OCT Frozen Tissue |
| sample_type | OCT Frozen Tissue Block |
| sample_type | OCT Frozen Tissue Core |
| sample_type | OCT Frozen Tissue Curl |
| sample_type | OCT Frozen Tissue Section |
| sample_type | PBMC |
| sample_type | PBMC Supernatant |
| sample_type | PBSC |
| sample_type | PBSC Supernatant |
| sample_type | Peptides |
| sample_type | Pericardial Fluid |
| sample_type | Peritoneal Cells |
| sample_type | Peritoneal Cell Supernatant |
| sample_type | Peritoneal Fluid |
| sample_type | Peritoneal Lavage Fluid |
| sample_type | Plasma |
| sample_type | Pleural Cells |
| sample_type | Pleural Cell Supernatant |
| sample_type | Pleural Fluid |
| sample_type | Protein Lysate |
| sample_type | RNA |
| sample_type | Saliva |
| sample_type | Serum |
| sample_type | Skin Tissue |
| sample_type | Stool |
| sample_type | Synovial Fluid |
| sample_type | Tissue Core |
| sample_type | Urine |
| sample_type | WBC |
| sample_type | Whole Blood |
| sample_type | Whole Blood Film |
| sample_type | Other |
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
| screening_protocol_id | MYELOMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
| status | draft |
| status | in_lab |
| status | in_transit |
| status | in_qc |
| status | in_storage |
| status | disposed |
| status | missing |
| storage_environment | Ambient |
| storage_environment | RT |
| storage_environment | 4 Celsius Degree |
| storage_environment | -20 Degrees Celsius Or Minus 20 Degrees Celsius |
| storage_environment | -80 Degrees Celsius Or Minus 80 Degrees Celsius |
| storage_environment | -150 Degrees Celsius Or Minus 150 Degrees Celsius |
| storage_environment | LN |
| storage_environment | Dry Ice |
| storage_environment | Not Reported |
| storage_environment | Other |
| storage_unit_type | Freezer |
| storage_unit_type | Refrigerator |
| storage_unit_type | Cabinet |
| storage_unit_type | LNTank |
| storage_unit_type | Other |
200 Response
{
"message": "Data Received Successfully by CSMS",
"csms_id": "mm_0536_svu",
"modified_time": 1650890004
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | JSON is valid and queued in the system. | Inline |
| 400 | Bad Request | JSON was invalid. | None |
| 403 | Forbidden | Forbidden access. | None |
| 404 | Not Found | No sample with the requested ID value was found. | None |
Response Schema
Retrieve Sample
<span class="endpoint">
<span class="method get"> GET </span>
<code>/samples/{csms_id}</code>
</span>
# You can also use wget
curl -X GET /samples/{csms_id} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/samples/{csms_id}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/samples/{csms_id}', headers = headers)
print(r.json())
GET /samples/{csms_id}
Retrive the specified sample.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| csms_id | path | string | true | Unique Sample Identifier. |
200 Response
{
"data": {
"biological_sex": "Female",
"biopsy_site": "C02.9",
"collection_date": "2022-06-18",
"collection_event_name": "Progression",
"container_type": "Saliva Tube",
"date_of_birth": "1978-04-22",
"description_of_sample": "Normal",
"screening_participant_id": "pt_026",
"screening_protocol_id": "iMATCH",
"sample_collection_procedure": "Pleural Thoracentesis",
"sample_type": "FFPE Section",
"sample_manifest_type": "interventional",
"sample_id": "mkMYELOMATCH01",
"operational_id": "mkOperational1",
"collection_time": "14:00 EDT",
"sample_shipping_condition": "Frozen Dry Ice",
"schema_version": "2.2.0",
"recipient_institution_id": "LBTWST001",
"sender_institution_id": "BBNCHP001",
"creator_role": "administrator",
"parent_sample_id": "mkMYELOMATCH01",
"original_specimen": "False",
"custodian_institution_id": "LBTWST001",
"sample_qc_result": "QC Pass",
"status": "in_lab",
"manifest_id": null,
"blast_percentage": 55.57,
"viable_tumor_percent_area": 29.37,
"viable_stroma_percent_area": 25.5,
"fibrosis_percent_area": 24.017,
"percent_viability": 23.3,
"dv200": 15,
"rin_value": 5,
"necrosis_percent_area": 24,
"csms_id": "im_9049_prm",
"modified_timestamp": "2023-10-17T19:41:00Z",
"modified_time": 1697571660,
"submitter": null,
"event": "update",
"files_detail": [],
"comments_detail": []
},
"total": 1,
"limit": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Sample found and JSON returned. | Inline |
| 404 | Not Found | No sample with the requested ID value was found. | None |
Response Schema
Delete Sample
<span class="endpoint">
<span class="method delete"> DELETE </span>
<code>/samples/{csms_id}</code>
</span>
# You can also use wget
curl -X DELETE /samples/{csms_id} \
-H 'Accept: application/json' \
-H 'x-delete-reason: Erroneously created'
const headers = {
'Accept':'application/json',
'x-delete-reason':'Erroneously created'
};
fetch('/samples/{csms_id}',
{
method: 'DELETE',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json',
'x-delete-reason': 'Erroneously created'
}
r = requests.delete('/samples/{csms_id}', headers = headers)
print(r.json())
DELETE /samples/{csms_id}
Delete the specified sample.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| x-delete-reason | header | string | true | Reason for deletion. |
| csms_id | path | string | true | Unique Sample Identifier. |
200 Response
{
"message": "sample deleted CUYNCNRP5.02"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Sample deleted. | Inline |
| 400 | Bad Request | Invalid request string | None |
| 404 | Not Found | No sample with the requested ID value was found. | None |
Response Schema
Retrieve Sample History
<span class="endpoint">
<span class="method get"> GET </span>
<code>/samples/history/{csms_id}</code>
</span>
# You can also use wget
curl -X GET /samples/history/{csms_id} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/samples/history/{csms_id}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/samples/history/{csms_id}', headers = headers)
print(r.json())
GET /samples/history/{csms_id}
Retrieve all history for specified sample
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| csms_id | path | string | true | The unique Sample Identifier used to retrieve sample history. |
200 Response
[
{
"data": {
"biological_sex": "Male",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "15:30 EST",
"container_type": "Other",
"container_type_other": "description of some other tube used",
"cores_submitted": "Yes",
"date_of_birth": "1970-11-30",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"directionality": "Lateral",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"parent_sample_id": "E1000-A",
"processed_sample_derivative": "DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"sample_collection_procedure": "Other",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": 1.237,
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MYELOMATCH",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789",
"schema_version": "2.2.0",
"modified_timestamp": "2023-10-17T18:51:19Z",
"modified_time": 1697568679,
"submitter": null,
"status": "draft",
"creator_role": "administrator",
"csms_id": "mm_2947_zua",
"event": "create",
"qldb_id": "GjyudEK8YhI4EHFrxXHfhH",
"qldb_version": 0,
"qldb_txId": "A2mzwnpgEp4HO8jWIYuYTE",
"qldb_txTime": "2023-10-17 18:51:19.395000+00:00"
},
"diff": {
"biological_sex": [
null,
"Male"
],
"biopsy_site": [
null,
"C50.3"
],
"collection_date": [
null,
"2021-06-02"
],
"collection_event_name": [
null,
"Post-Treatment"
],
"collection_time": [
null,
"15:30 EST"
],
"container_type": [
null,
"Other"
],
"container_type_other": [
null,
"description of some other tube used"
],
"cores_submitted": [
null,
"Yes"
],
"date_of_birth": [
null,
"1970-11-30"
],
"description_of_sample": [
null,
"Tumor"
],
"description_of_tumor_sample": [
null,
"Benign"
],
"directionality": [
null,
"Lateral"
],
"fixation_stabilization_type": [
null,
"Ficoll"
],
"laterality": [
null,
"Right"
],
"locational_tumor_malignancy_class": [
null,
"Primary"
],
"number_cores_submitted": [
null,
"2"
],
"operational_id": [
null,
"E1000-A"
],
"parent_sample_id": [
null,
"E1000-A"
],
"processed_sample_derivative": [
null,
"DNA"
],
"processed_sample_id": [
null,
"string"
],
"processed_sample_type": [
null,
"Other"
],
"sample_collection_procedure": [
null,
"Other"
],
"sample_collection_procedure_other": [
null,
"Description of Other Procedure Used"
],
"sample_id": [
null,
"E1000-A"
],
"sample_manifest_type": [
null,
"interventional"
],
"sample_shipping_condition": [
null,
"Other"
],
"sample_shipping_condition_other": [
null,
"Describes a shipping condition not available in the predefined list."
],
"sample_type": [
null,
"Other"
],
"sample_type_other": [
null,
"Some other sample type"
],
"sample_uom": [
null,
"mL"
],
"sample_volume_quantity": [
null,
1.237
],
"screening_participant_id": [
null,
"7bh45z"
],
"screening_protocol_id": [
null,
"MYELOMATCH"
],
"treatment_participant_id": [
null,
"tp_99-45688"
],
"treatment_protocol_id": [
null,
"22-6789"
],
"schema_version": [
null,
"2.2.0"
],
"modified_timestamp": [
null,
"2023-10-17T18:51:19Z"
],
"modified_time": [
null,
1697568679
],
"status": [
null,
"draft"
],
"creator_role": [
null,
"administrator"
],
"csms_id": [
null,
"mm_2947_zua"
],
"event": [
null,
"create"
],
"qldb_id": [
null,
"GjyudEK8YhI4EHFrxXHfhH"
],
"qldb_version": [
null,
0
],
"qldb_txId": [
null,
"A2mzwnpgEp4HO8jWIYuYTE"
],
"qldb_txTime": [
null,
"2023-10-17 18:51:19.395000+00:00"
]
}
}
]
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | History returned. | Inline |
| 404 | Not Found | The requested history was not found. | None |
Response Schema
Retrieve Sample Snapshot
<span class="endpoint">
<span class="method get"> GET </span>
<code>/samples/snapshot/{csms_id}/{modified_time}</code>
</span>
# You can also use wget
curl -X GET /samples/snapshot/{csms_id}/{modified_time} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/samples/snapshot/{csms_id}/{modified_time}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/samples/snapshot/{csms_id}/{modified_time}', headers = headers)
print(r.json())
GET /samples/snapshot/{csms_id}/{modified_time}
Retrieve a snapshot for the specified sample.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| csms_id | path | string | true | The unique Sample Identifier used to retrieve snapshot. |
| modified_time | path | integer | true | The modified_time of the sample for the specific snapshot. |
200 Response
{
"data": {
"biological_sex": "Female",
"biopsy_site": "C02.9",
"collection_date": "2022-06-18",
"collection_event_name": "Progression",
"container_type": "Saliva Tube",
"date_of_birth": "1978-04-22",
"description_of_sample": "Normal",
"screening_participant_id": "pt_026",
"screening_protocol_id": "iMATCH",
"sample_collection_procedure": "Pleural Thoracentesis",
"sample_type": "FFPE Section",
"sample_manifest_type": "interventional",
"sample_id": "mkMYELOMATCH01",
"operational_id": "mkOperational1",
"collection_time": "14:00 EDT",
"sample_shipping_condition": "Frozen Dry Ice",
"schema_version": "2.2.0",
"modified_timestamp": "2023-10-17T17:42:24Z",
"modified_time": 1697564544,
"submitter": null,
"custodian_institution_id": null,
"sample_qc_result": null,
"manifest_id": "20231017_mdacc_63744063",
"recipient_institution_id": "LBTWST001",
"sender_institution_id": "BBNCHP001",
"status": "draft",
"creator_role": "administrator",
"parent_sample_id": "mkMYELOMATCH01",
"csms_id": "im_9049_prm",
"original_specimen": "False",
"event": "create",
"qldb_id": "4o5V7Lt4WTZ2i072PBtWCi",
"qldb_version": 0,
"qldb_txId": "2uyxecGHCdh3Y3jC1U0VMC",
"qldb_txTime": "2023-10-17 17:42:25.066000+00:00",
"files_detail": [],
"comments_detail": []
},
"total": 1
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | snapshot returned. | Inline |
| 404 | Not Found | The requested snapshot was not found. | None |
Response Schema
Query Sample Topographies
<span class="endpoint">
<span class="method get"> GET </span>
<code>/samples/topographies</code>
</span>
# You can also use wget
curl -X GET /samples/topographies?name=spinal
fetch('/samples/topographies?name=spinal',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('/samples/topographies'
, params={"name":"spinal"}
)
print(r.json())
GET /samples/topographies
Retrieves ICD-O-3 topographies using autocomplete match from Disease Service for code or name.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| name | query | string | false | Name (or partial name) of ICD-O-3 topography term. |
| code | query | string | false | Code (or partial code) of ICD-O-3 topography term. |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | None |
| 400 | Bad Request | Invalid query string. | None |
ALIQUOTS
Routes for aliquots
Create Child Samples (aliquots)
<span class="endpoint">
<span class="method post"> POST </span>
<code>/aliquots</code>
</span>
# You can also use wget
curl -X POST /aliquots \
-H 'Content-Type: application/json'
const inputBody = '{
"parent_sample": {
"csms_id": "mm_1234_jrh",
"sample_uom": "mL",
"sample_volume_quantity": "1.237"
},
"aliquots": [
{
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"date_sample_processed": "2021-04-30",
"din_value": 10,
"dv200": "51.273",
"fibrosis_percent_area": "21.2",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"operational_id": "E1000-A",
"percent_viability": "1.2",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rin_value": "0.29",
"sample_id": "E1000-A",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"time_sample_processed": "16:30 Hawaii-Aleutian",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
]
}';
const headers = {
'Content-Type':'application/json'
};
fetch('/aliquots',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json'
}
r = requests.post('/aliquots', headers = headers)
print(r.json())
POST /aliquots
User provides parent sample information along with a list of aliquots to be created.
REQUEST BODY
{
"parent_sample": {
"csms_id": "mm_1234_jrh",
"sample_uom": "mL",
"sample_volume_quantity": "1.237"
},
"aliquots": [
{
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"date_sample_processed": "2021-04-30",
"din_value": 10,
"dv200": "51.273",
"fibrosis_percent_area": "21.2",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"operational_id": "E1000-A",
"percent_viability": "1.2",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rin_value": "0.29",
"sample_id": "E1000-A",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"time_sample_processed": "16:30 Hawaii-Aleutian",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| csms_id | body | string | true | Sample identifier assigned by the CSMS-Interventional Network. |
| sample_uom | body | string | true | Unit of measure associated with sample_quantity. See Enumerated List for valid values. |
| sample_volume_quantity | body | number | true | The volume of the sample. |
| a260_or_a230_value | body | integer | false | An absorbance percentage ratio indicating presence of contaminants (values of 0 to 3). |
| a260_or_a280_value | body | integer | false | An absorbance percentage ratio indicating purity of DNA (values of 0 to 2). |
| blast_percentage | body | number | false | TBD |
| container_type | body | string | false | Type of container used to transport sample. See Enumerated List for valid values. |
| container_type_other | body | string | false | Additional details when Other is selected for container type. |
| date_sample_processed | body | string | false | Date when a resected/biopsied sample is moved into preservative or dry ice--Ischemic End Date. |
| din_value | body | integer | false | Provides a DNA Integrity Number as an indication of extraction quality (values of 1-10). |
| dv200 | body | number | false | Percentage of RNA fragments above 200 nucleotides. |
| fibrosis_percent_area | body | number | false | Score the percentage area of fibrosis. QC field is editable by labs. |
| med_tin | body | number | false | Median transcript integrity number to score RNA degradation. |
| necrosis_percent_area | body | number | false | Score the percentage area of necrosis. QC field is editable by labs. |
| operational_id | body | string | false | Identifier assigned by biorepository or lab. |
| percent_viability | body | number | false | TBD |
| processed_sample_id | body | string | false | Aliquot identifier assigned by the bio repository site. |
| processed_sample_type | body | string | false | The type of processing that was performed on the collected sample by the Biobank or Bio repository for storage. See Enumerated List for valid values. |
| rin_value | body | number | false | A numerical measure of RNA integrity (RNA Integrity Number). |
| sample_id | body | string | false | Identifier assigned by biorepository or lab. |
| sample_shipping_condition | body | string | false | Description of the sample shipping condition. See Enumerated List for valid values. |
| sample_shipping_condition_other | body | string | false | Description describing the use of the other field associated with sample_shipping_condition property. |
| sample_type | body | string | false | Type of sample. See Enumerated List for valid values. |
| sample_type_other | body | string | false | Additional details when Other is selected for sample_type. |
| screening_participant_id | body | string | false | Participant Identifier. |
| time_sample_processed | body | string | false | Estimated time when resected/biopsied sample is moved into preservative or dry ice--Ischemic End Time. |
| viable_stroma_percent_area | body | number | false | Percent of the area that is viable stroma. |
| viable_tumor_percent_area | body | number | false | Score the percentage of viable tumor cells comprising the tumor bed area. QC field is editable by labs. |
Enumerated Values
| Parameter | Value |
|---|---|
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
| container_type | ACD-A Tube |
| container_type | ACD-B Tube |
| container_type | Bag |
| container_type | Box |
| container_type | CellSave Tube |
| container_type | Conical Tube |
| container_type | Container |
| container_type | CPT Citrate Tube |
| container_type | CPT Heparin Tube |
| container_type | Cryovial |
| container_type | EDTA Tube |
| container_type | Fecal Collection Container with NA Stabilizer |
| container_type | FFPE Tissue Cassette |
| container_type | Formalin Jar |
| container_type | Image |
| container_type | Lithium Heparin Tube |
| container_type | OMNIgene |
| container_type | OMNImet |
| container_type | PAXgene DNA Tube |
| container_type | PAXgene RNA Tube |
| container_type | Plain Red Top Tube |
| container_type | PPT Tube |
| container_type | Saliva Tube |
| container_type | Screw Top Jar |
| container_type | Slide |
| container_type | Slide Cassette |
| container_type | Smart Tube |
| container_type | Sodium Citrate Tube |
| container_type | Sodium Heparin Tube |
| container_type | SST Tube |
| container_type | Streck Tube |
| container_type | Other |
| processed_sample_type | BAL Cells |
| processed_sample_type | BAL Cell Supernatant |
| processed_sample_type | BMMC |
| processed_sample_type | BMMC Supernatant |
| processed_sample_type | Bone Marrow Film |
| processed_sample_type | Buccal Cells |
| processed_sample_type | Buffy Coat |
| processed_sample_type | cfDNA |
| processed_sample_type | CSF Cell Supernatant |
| processed_sample_type | CSF Cells |
| processed_sample_type | CTC Cell Supernatant |
| processed_sample_type | CTC Cells |
| processed_sample_type | ctDNA |
| processed_sample_type | Cytospin Film |
| processed_sample_type | DNA |
| processed_sample_type | FFPE Block |
| processed_sample_type | FFPE Block Punch |
| processed_sample_type | FFPE Section |
| processed_sample_type | FFPE Tissue Core |
| processed_sample_type | FFPE Tissue Curl |
| processed_sample_type | FFPE Tissue Scroll |
| processed_sample_type | Formalin Fixed Tissue |
| processed_sample_type | Germline DNA |
| processed_sample_type | Germline RNA |
| processed_sample_type | Leukapheresis Cells |
| processed_sample_type | Other |
| processed_sample_type | PBMC |
| processed_sample_type | PBMC Supernatant |
| processed_sample_type | PBSC |
| processed_sample_type | PBSC Supernatant |
| processed_sample_type | Peritoneal Cell Supernatant |
| processed_sample_type | Peritoneal Cells |
| processed_sample_type | Plasma |
| processed_sample_type | Pleural Cell Supernatant |
| processed_sample_type | Pleural Cells |
| processed_sample_type | RNA |
| processed_sample_type | Serum |
| processed_sample_type | Whole Blood Film |
| processed_sample_type | Protein Lysate |
| processed_sample_type | Peptides |
| processed_sample_type | Germline Nucleic Acid |
| processed_sample_type | Nucleic Acid |
| processed_sample_type | H&E Fixed Tissue Slide |
| processed_sample_type | Fixed Tissue Slide |
| processed_sample_type | WBC |
| sample_shipping_condition | Frozen Shipper |
| sample_shipping_condition | Frozen Dry Ice |
| sample_shipping_condition | Ice/Cold Pack |
| sample_shipping_condition | Ambient |
| sample_shipping_condition | Not Reported |
| sample_shipping_condition | Other |
| sample_type | BAL Cells |
| sample_type | BAL Cell Supernatant |
| sample_type | BAL Fluid |
| sample_type | BMMC |
| sample_type | BMMC Supernatant |
| sample_type | Bone Marrow Aspirate |
| sample_type | Bone Marrow Core |
| sample_type | Bone Marrow Film |
| sample_type | Buccal Cells |
| sample_type | Buffy Coat |
| sample_type | CAR-T Cells |
| sample_type | cfDNA |
| sample_type | CSF |
| sample_type | CSF Cells |
| sample_type | CSF Cell Supernatant |
| sample_type | CTC Cells |
| sample_type | CTC Cell Supernatant |
| sample_type | ctDNA |
| sample_type | Cytospin Film |
| sample_type | DNA |
| sample_type | FFPE Block |
| sample_type | FFPE Block Punch |
| sample_type | FFPE Section |
| sample_type | FFPE Tissue Core |
| sample_type | FFPE Tissue Curl |
| sample_type | FFPE Tissue Scroll |
| sample_type | Fine Needle Aspirate |
| sample_type | Fixed Tissue Slide |
| sample_type | Formalin Fixed Tissue |
| sample_type | Fresh Tissue |
| sample_type | Fresh Tissue Core |
| sample_type | Frozen Tissue |
| sample_type | Frozen Tissue Block |
| sample_type | Frozen Tissue Curl |
| sample_type | Frozen Tissue Core |
| sample_type | Frozen Tissue Section |
| sample_type | Germline DNA |
| sample_type | Germline Nucleic Acid |
| sample_type | Germline RNA |
| sample_type | H&E Fixed Tissue Slide |
| sample_type | Leukapheresis Cells |
| sample_type | Lymph Node Tissue |
| sample_type | Nucleic Acid |
| sample_type | OCT Frozen Tissue |
| sample_type | OCT Frozen Tissue Block |
| sample_type | OCT Frozen Tissue Core |
| sample_type | OCT Frozen Tissue Curl |
| sample_type | OCT Frozen Tissue Section |
| sample_type | PBMC |
| sample_type | PBMC Supernatant |
| sample_type | PBSC |
| sample_type | PBSC Supernatant |
| sample_type | Peptides |
| sample_type | Pericardial Fluid |
| sample_type | Peritoneal Cells |
| sample_type | Peritoneal Cell Supernatant |
| sample_type | Peritoneal Fluid |
| sample_type | Peritoneal Lavage Fluid |
| sample_type | Plasma |
| sample_type | Pleural Cells |
| sample_type | Pleural Cell Supernatant |
| sample_type | Pleural Fluid |
| sample_type | Protein Lysate |
| sample_type | RNA |
| sample_type | Saliva |
| sample_type | Serum |
| sample_type | Skin Tissue |
| sample_type | Stool |
| sample_type | Synovial Fluid |
| sample_type | Tissue Core |
| sample_type | Urine |
| sample_type | WBC |
| sample_type | Whole Blood |
| sample_type | Whole Blood Film |
| sample_type | Other |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | JSON is valid and queued in the system. | None |
| 400 | Bad Request | JSON was invalid, parent sample does not exist, or screening_participant_id of child aliquot does not match parent sample. | None |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 201 | Location | string | none |
VERSION
Routes for version
Query API Version
<span class="endpoint">
<span class="method get"> GET </span>
<code>/version</code>
</span>
# You can also use wget
curl -X GET /version \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/version',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/version', headers = headers)
print(r.json())
GET /version
Retrieve the version information of the API.
200 Response
{
"major": "2",
"minor": "5",
"build": "0",
"version": "2.5.0"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Successful request for version information. | Inline |
| 403 | Forbidden | Forbidden access. | None |
Response Schema
IDS
Interface used by Biorepositories to preallocate CSMS Sample ID's for kits
<span class="endpoint">
<span class="method post"> POST </span>
<code>/ids</code>
</span>
# You can also use wget
curl -X POST /ids \
-H 'Content-Type: application/json'
const inputBody = '{
"count": "38",
"institution_id": "BioRepository-East",
"screening_protocol_id": "MyeloMATCH"
}';
const headers = {
'Content-Type':'application/json'
};
fetch('/ids',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json'
}
r = requests.post('/ids', headers = headers)
print(r.json())
POST /ids
User requests a set of sample ids to be pre-allocated. Request size is between 1 and 50.
REQUEST BODY
{
"count": "38",
"institution_id": "BioRepository-East",
"screening_protocol_id": "MyeloMATCH"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| count | body | number | true | Number of sample IDs requested. |
| institution_id | body | string | true | Institution ID of Biorepository requesting the ids. |
| screening_protocol_id | body | string | true | Protocol or Clinical Trial program. Required field at sample creation. See Enumerated List for valid values. |
| csms_id | body | string | false | Sample identifier assigned by the CSMS-Interventional Network. |
Enumerated Values
| Parameter | Value |
|---|---|
| screening_protocol_id | MyeloMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Request was validated and specified number of ids are returned. | None |
| 400 | Bad Request | JSON was invalid or request count exceeded the maximum. | None |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 201 | Location | string | Link to the manifests GET that will return the Search data. Because updates are queued, this link may be broken. |
Retrieve Sample ID's
<span class="endpoint">
<span class="method get"> GET </span>
<code>/ids</code>
</span>
# You can also use wget
curl -X GET /ids?institution_id=BioRepository-East&screening_protocol_id=MyeloMATCH
fetch('/ids?institution_id=BioRepository-East&screening_protocol_id=MyeloMATCH',
{
method: 'GET'
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
r = requests.get('/ids', params={
'institution_id': 'BioRepository-East', 'screening_protocol_id': 'MyeloMATCH'
}
)
print(r.json())
GET /ids
Retrieve a set of previously allocated ids which have not been used.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| institution_id | query | string | true | Institution ID of Biorepository requesting the ids. |
| screening_protocol_id | query | string | true | Protocol or Clinical Trial program. Required field at sample creation. |
Enumerated Values
| Parameter | Value |
|---|---|
| screening_protocol_id | MyeloMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Search was successful and any matches were returned. | None |
| 400 | Bad Request | Invalid query string. | None |
SETTINGS
Retrieve value of internal API setting
<span class="endpoint">
<span class="method get"> GET </span>
<code>/settings/{setting_name}</code>
</span>
# You can also use wget
curl -X GET /settings/{setting_name} \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/settings/{setting_name}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/settings/{setting_name}', headers = headers)
print(r.json())
GET /settings/{setting_name}
Retrieve value of internal API setting.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| setting_name | path | string | true | Name of API variable name. |
200 Response
{
"ui_write_disable": "TRUE"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Successful request for setting information. | Inline |
| 405 | Method Not Allowed | Method Not Allowed. | None |
Response Schema
INSTITUTION_IDS
Request list of institution information associated with study based on header X-Study-Type
<span class="endpoint">
<span class="method get"> GET </span>
<code>/institution_ids</code>
</span>
# You can also use wget
curl -X GET /institution_ids \
-H 'Accept: application/json'
const headers = {
'Accept':'application/json'
};
fetch('/institution_ids',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/institution_ids', headers = headers)
print(r.json())
GET /institution_ids
Return list of institution information associated with a study.
200 Response
{
"institution_addresses": [
{
"institution_country": "USA",
"institution_state": "CA",
"institution_street_1": "4650 Sunset Blvd.",
"institution_street_2": "Duque Bldg., 2nd Floor, Room 2-290",
"institution_city": "Los Angeles",
"institution_name": "Children's Hospital of Los Angeles - Clinical Immunology Laboratory",
"institution_id": "LBCHLA001",
"institution_zip_code": "90027"
}
]
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Successful request for institution information | Inline |
| 400 | Bad Request | incorrect setting of X-Study-Type | None |
| 403 | Forbidden | incorrect internal gateway | None |
Response Schema
Update Institute Address Information
<span class="endpoint">
<span class="method patch"> PATCH </span>
<code>/institution_ids/{institution_id}</code>
</span>
# You can also use wget
curl -X PATCH /institution_ids/{institution_id} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'
const inputBody = '{
"institution_city": "Portland",
"institution_country": "USA",
"institution_name": "LBTWST001",
"institution_state": "Maine",
"institution_street_1": "Commercial Street",
"institution_street_2": "Suite 4",
"institution_zip_code": "29902"
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json'
};
fetch('/institution_ids/{institution_id}',
{
method: 'PATCH',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
r = requests.patch('/institution_ids/{institution_id}', headers = headers)
print(r.json())
PATCH /institution_ids/{institution_id}
Update Institute Address Information associated with the given institution id
REQUEST BODY
{
"institution_city": "Portland",
"institution_country": "USA",
"institution_name": "LBTWST001",
"institution_state": "Maine",
"institution_street_1": "Commercial Street",
"institution_street_2": "Suite 4",
"institution_zip_code": "29902"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| institution_id | path | string | true | Unique Institution Identifier. |
200 Response
{
"message": "Data Received Successfully by CSMS",
"institution_id": "LBTWST001",
"institution_properties": {
"institution_country": "USA",
"institution_state": "MA",
"institution_street_1": "12345 Bay Street",
"institution_street_2": "Suite 54",
"institution_city": "Needham",
"institution_name": "Candel Therapeutics",
"institution_id": "LBTWST001",
"institution_zip_code": "02494"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | JSON is valid and queued in the system. | Inline |
| 400 | Bad Request | JSON was invalid. | None |
| 403 | Forbidden | Forbidden access. | None |
| 404 | Not Found | No sample with the requested ID value was found. | None |
Response Schema
Schemas
comment_record
{
"comment": "comment text about an entity",
"entity_id": "20200727:testuser:63693",
"entity_type": "manifest"
}
CSMS-Interventional JSON Schema specification for Comments.
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| comment | string | true | none | Comment text |
| entity_id | string | true | none | ID of the entity with which the comment is associated. |
| entity_type | string | true | none | Entity type with which the comment is associated. |
Enumerated Values
| Property | Value |
|---|---|
| entity_type | manifest |
| entity_type | sample |
document_assoc_post
{
"entity_id": "20200727:testuser:63693",
"entity_type": "manifest",
"file_id": "1613747983_example.doc"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| entity_id | string | false | none | ID of the entity with which the file is associated. |
| entity_type | string | false | none | Entity type with which the file is associated. |
| file_id | string | true | none | Unique file identifier. |
Enumerated Values
| Property | Value |
|---|---|
| entity_type | manifest |
| entity_type | sample |
shipping_manifest
{
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"event": "update",
"manifest_id": "20200727:enroll-22:63693",
"modified_time": "1642277487",
"modified_timestamp": "2021-05-24T12:51:36Z",
"package_condition": "Leakage",
"reason": "status_transition",
"received_date": "2021-04-30",
"received_time": "16:30 Hawaii-Aleutian",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"status": "received",
"tracking_number": "4567788343"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| comments | string | false | none | comment to be added to the shipping manifest |
| courier | string¦null | false | none | Courier utilized for shipment. Required for shipping transition. |
| event | string | false | none | The update event performed. |
| manifest_id | string | false | none | A unique ID assigned by the CSMS network used to identify the manifest. |
| modified_time | integer | false | none | The epic time from the last update to record. |
| modified_timestamp | string | false | none | The timestamp from the last update to record. |
| package_condition | string¦null | false | none | Condition of shipment received. Required at received transition. |
| reason | string | false | none | The reason for the update action. |
| received_date | string¦null | false | none | Date samples received. Required at received transition. |
| received_time | string¦null | false | none | Time samples received. Required at received transition. |
| recipient_institution_id | string | true | none | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | string | false | none | The city associated with the sender address. |
| sender_country | string | false | none | The country associated with the sender address. |
| sender_email | string | true | none | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | string | true | none | The Institution ID of the sender. |
| sender_institution_name | string | false | none | The name of the institution sending the samples. |
| sender_person_name | string | true | none | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | string | true | none | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | string | false | none | The state associated with the sender address. |
| sender_street_1 | string | false | none | The name of the street associated with the sender address. |
| sender_street_2 | string | false | none | The name of the additional street information associated with the sender address. |
| sender_zip_code | string | false | none | The ZIP code associated with the sender address. |
| shipping_condition | string¦null | false | none | Method of packaging the samples. Optional. |
| shipping_condition_other | string¦null | false | none | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | string¦null | false | none | Date of shipment. Required for shipped transition. |
| status | string | false | none | Internal CSMS-Interventional state of manifest. |
| tracking_number | string¦null | false | none | Air bill number assigned to shipment. Required for shipped transition. |
Enumerated Values
| Property | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| package_condition | Normal |
| package_condition | Damaged |
| package_condition | Leakage |
| package_condition | Opened |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
| status | draft |
| status | ready_to_ship |
| status | delivered |
| status | received |
| status | shipped |
| status | qc_complete |
shipping_manifest_post
{
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"tracking_number": "4567788343"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| comments | string | false | none | comment to be added to the shipping manifest |
| courier | string¦null | false | none | Courier utilized for shipment. Required for shipping transition. |
| recipient_institution_id | string | true | none | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | string | false | none | The city associated with the sender address. |
| sender_country | string | false | none | The country associated with the sender address. |
| sender_email | string | true | none | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | string | true | none | The Institution ID of the sender. |
| sender_institution_name | string | false | none | The name of the institution sending the samples. |
| sender_person_name | string | true | none | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | string | true | none | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | string | false | none | The state associated with the sender address. |
| sender_street_1 | string | false | none | The name of the street associated with the sender address. |
| sender_street_2 | string | false | none | The name of the additional street information associated with the sender address. |
| sender_zip_code | string | false | none | The ZIP code associated with the sender address. |
| shipping_condition | string¦null | false | none | Method of packaging the samples. Optional. |
| shipping_condition_other | string¦null | false | none | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | string¦null | false | none | Date of shipment. Required for shipped transition. |
| tracking_number | string¦null | false | none | Air bill number assigned to shipment. Required for shipped transition. |
Enumerated Values
| Property | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
shipping_manifest_patch
{
"comments": "This is a comment for the shipping manifest",
"courier": "UPS",
"package_condition": "Leakage",
"received_date": "2021-04-30",
"received_time": "16:30 Hawaii-Aleutian",
"recipient_institution_id": "BBNCHP001",
"sender_city": "Richmond",
"sender_country": "USA",
"sender_email": "enrolling_user@enroll_site.gov",
"sender_institution_id": "enroll-99876512",
"sender_institution_name": "blood draw lab east",
"sender_person_name": "Joe Technician",
"sender_phone": "000-000-0000",
"sender_state": "Virginia",
"sender_street_1": "Main St",
"sender_street_2": "Suite 2",
"sender_zip_code": "20047",
"shipping_condition": "Frozen Dry Ice",
"shipping_condition_other": "insulated",
"shipping_date": "2021-04-30",
"status": "received",
"tracking_number": "4567788343"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| comments | string | false | none | comment to be added to the shipping manifest |
| courier | string¦null | false | none | Courier utilized for shipment. Required for shipping transition. |
| package_condition | string¦null | false | none | Condition of shipment received. Required at received transition. |
| received_date | string¦null | false | none | Date samples received. Required at received transition. |
| received_time | string¦null | false | none | Time samples received. Required at received transition. |
| recipient_institution_id | string | false | none | ID of the recipient to receive the shipment. Required at creation of the manifest. |
| sender_city | string | false | none | The city associated with the sender address. |
| sender_country | string | false | none | The country associated with the sender address. |
| sender_email | string | false | none | Email for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_institution_id | string | false | none | The Institution ID of the sender. |
| sender_institution_name | string | false | none | The name of the institution sending the samples. |
| sender_person_name | string | false | none | Person to contact regarding package shipment. Required at creation of the manifest. |
| sender_phone | string | false | none | Phone number for person to contact regarding package shipment. Required at creation of the manifest. |
| sender_state | string | false | none | The state associated with the sender address. |
| sender_street_1 | string | false | none | The name of the street associated with the sender address. |
| sender_street_2 | string | false | none | The name of the additional street information associated with the sender address. |
| sender_zip_code | string | false | none | The ZIP code associated with the sender address. |
| shipping_condition | string¦null | false | none | Method of packaging the samples. Optional. |
| shipping_condition_other | string¦null | false | none | Additional information when shipping_condition is set to Other. Optional. |
| shipping_date | string¦null | false | none | Date of shipment. Required for shipped transition. |
| status | string | false | none | Internal CSMS-Interventional state of manifest. |
| tracking_number | string¦null | false | none | Air bill number assigned to shipment. Required for shipped transition. |
Enumerated Values
| Property | Value |
|---|---|
| courier | USPS |
| courier | UPS |
| courier | FedEx |
| courier | DHL |
| courier | Electronic |
| courier | Inter-Site Delivery |
| package_condition | Normal |
| package_condition | Damaged |
| package_condition | Leakage |
| package_condition | Opened |
| shipping_condition | Frozen Dry Ice |
| shipping_condition | Frozen Shipper |
| shipping_condition | Ice/Cold Pack |
| shipping_condition | Ambient |
| shipping_condition | Not Reported |
| shipping_condition | Other |
| status | draft |
| status | ready_to_ship |
| status | delivered |
| status | received |
| status | shipped |
| status | qc_complete |
interventional_sample_post
{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"comments": "This is a comment for the sample",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"date_of_birth": "1970-11-30",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"directionality": "Lateral",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"parent_sample_id": "string",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"sample_collection_procedure": "Other",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| biological_sex | string | false | none | biological sex for tissue samples. |
| biopsy_site | string | false | none | Biopsy site for tissue samples. |
| collection_date | string | false | none | Date the sample was collected. |
| collection_event_name | string | false | none | Categorical description of the time point at which the sample was taken. |
| collection_time | string | false | none | Estimated time when sample was devascularized--Ischemic Start Time. |
| comments | string | false | none | comment to be added to the sample |
| container_type | string | false | none | Type of container used to transport sample. |
| container_type_other | string¦null | false | none | Additional details when Other is selected for container type. |
| cores_submitted | string¦null | false | none | Indicates whether cores are submitted with the sample. |
| csms_id | string | false | none | Sample identifier assigned by the CSMS-Interventional Network. |
| date_of_birth | string | false | none | Participant date of birth. |
| description_of_sample | string¦null | false | none | Type of tissue associated with the sample. |
| description_of_tumor_sample | string¦null | false | none | Description of tumor sample. |
| directionality | string¦null | false | none | Directionality [Lateral, Midline]. |
| fixation_stabilization_type | string¦null | false | none | TBD |
| laterality | string¦null | false | none | Laterality [Left, Right, Bilateral]. |
| locational_tumor_malignancy_class | string¦null | false | none | Location of the malignancy. |
| number_cores_submitted | string¦null | false | none | Number of cores submitted. |
| operational_id | string¦null | false | none | Identifier assigned by biorepository or lab. |
| parent_sample_id | string¦null | false | none | Sample identifier assigned by the biorepository site. |
| processed_sample_derivative | string¦null | false | none | The type of derivative or analyte extracted from the sample to be shipped for testing. |
| processed_sample_id | string¦null | false | none | Aliquot identifier assigned by the bio repository site. |
| processed_sample_type | string¦null | false | none | The type of processing that was performed on the collected sample by the Biobank or Bio repository for storage. |
| sample_collection_procedure | string | false | none | Indicates the sample source of the sample shipped. |
| sample_collection_procedure_other | string¦null | false | none | Additional information when Other is specified for sample_collection_procedure. |
| sample_id | string | false | none | Identifier assigned by biorepository or lab. |
| sample_manifest_type | string | false | none | The type of processing that was performed on the collected sample by the Biobank for storage. normal_blood_dna is deprecated. Use blood_nucleic_acid instead. |
| sample_shipping_condition | string¦null | false | none | Description of the sample shipping condition. |
| sample_shipping_condition_other | string¦null | false | none | Description describing the use of the other field associated with sample_shipping_condition property. |
| sample_type | string | false | none | Type of sample. |
| sample_type_other | string¦null | false | none | Additional details when Other is selected for sample_type. |
| sample_uom | string¦null | false | none | Unit of measure associated with sample_quantity. |
| sample_volume_quantity | number¦null | false | none | The volume of the sample. |
| screening_participant_id | string | false | none | Participant Identifier. |
| screening_protocol_id | string | false | none | Protocol or Clinical Trial program. |
| treatment_participant_id | string¦null | false | none | Optional field for collecting treatment participant identifier. |
| treatment_protocol_id | string¦null | false | none | Optional field for collecting ID of treatment protocol. |
Enumerated Values
| Property | Value |
|---|---|
| biological_sex | Male |
| biological_sex | Female |
| container_type | ACD-A Tube |
| container_type | ACD-B Tube |
| container_type | Bag |
| container_type | Box |
| container_type | CellSave Tube |
| container_type | Conical Tube |
| container_type | Container |
| container_type | CPT Citrate Tube |
| container_type | CPT Heparin Tube |
| container_type | Cryovial |
| container_type | EDTA Tube |
| container_type | Fecal Collection Container with NA Stabilizer |
| container_type | FFPE Tissue Cassette |
| container_type | Formalin Jar |
| container_type | Image |
| container_type | Lithium Heparin Tube |
| container_type | OMNIgene |
| container_type | OMNImet |
| container_type | PAXgene DNA Tube |
| container_type | PAXgene RNA Tube |
| container_type | Plain Red Top Tube |
| container_type | PPT Tube |
| container_type | Saliva Tube |
| container_type | Screw Top Jar |
| container_type | Slide |
| container_type | Slide Cassette |
| container_type | Smart Tube |
| container_type | Sodium Citrate Tube |
| container_type | Sodium Heparin Tube |
| container_type | SST Tube |
| container_type | Streck Tube |
| container_type | Other |
| cores_submitted | Yes |
| cores_submitted | No |
| description_of_sample | Normal |
| description_of_sample | Tumor |
| description_of_sample | Unknown |
| description_of_tumor_sample | Benign |
| description_of_tumor_sample | In Situ |
| description_of_tumor_sample | Malignant |
| description_of_tumor_sample | Unknown |
| directionality | Lateral |
| directionality | Midline |
| fixation_stabilization_type | Ficoll |
| fixation_stabilization_type | Formalin Fixation |
| fixation_stabilization_type | Formalin-Fixed Paraffin-Embedded (FFPE) |
| fixation_stabilization_type | Frozen |
| fixation_stabilization_type | 70% Ethanol |
| fixation_stabilization_type | H&E |
| fixation_stabilization_type | Liquid Nitrogen (Frozen) |
| fixation_stabilization_type | OCT (Frozen) |
| fixation_stabilization_type | Proteomic Stabilization |
| fixation_stabilization_type | Thaw-Lyse |
| fixation_stabilization_type | Not Reported |
| fixation_stabilization_type | Other |
| laterality | Left |
| laterality | Right |
| laterality | Bilateral |
| locational_tumor_malignancy_class | Primary |
| locational_tumor_malignancy_class | Metastasis |
| locational_tumor_malignancy_class | Metastatic Lymph Node |
| locational_tumor_malignancy_class | Unknown |
| number_cores_submitted | 1 |
| number_cores_submitted | 2 |
| number_cores_submitted | 3 |
| number_cores_submitted | 4 |
| number_cores_submitted | 5 |
| number_cores_submitted | 6 |
| number_cores_submitted | 7 |
| number_cores_submitted | Not Reported |
| number_cores_submitted | Other |
| processed_sample_derivative | cfDNA |
| processed_sample_derivative | ctDNA |
| processed_sample_derivative | DNA |
| processed_sample_derivative | Germline DNA |
| processed_sample_derivative | Germline RNA |
| processed_sample_derivative | Other |
| processed_sample_derivative | RNA |
| processed_sample_derivative | Protein Lysate |
| processed_sample_derivative | Peptides |
| processed_sample_derivative | Germline Nucleic Acid |
| processed_sample_derivative | Nucleic Acid |
| processed_sample_type | BAL Cells |
| processed_sample_type | BAL Cell Supernatant |
| processed_sample_type | BMMC |
| processed_sample_type | BMMC Supernatant |
| processed_sample_type | Bone Marrow Film |
| processed_sample_type | Buccal Cells |
| processed_sample_type | Buffy Coat |
| processed_sample_type | cfDNA |
| processed_sample_type | CSF Cell Supernatant |
| processed_sample_type | CSF Cells |
| processed_sample_type | CTC Cell Supernatant |
| processed_sample_type | CTC Cells |
| processed_sample_type | ctDNA |
| processed_sample_type | Cytospin Film |
| processed_sample_type | DNA |
| processed_sample_type | FFPE Block |
| processed_sample_type | FFPE Block Punch |
| processed_sample_type | FFPE Section |
| processed_sample_type | FFPE Tissue Core |
| processed_sample_type | FFPE Tissue Curl |
| processed_sample_type | FFPE Tissue Scroll |
| processed_sample_type | Formalin Fixed Tissue |
| processed_sample_type | Germline DNA |
| processed_sample_type | Germline RNA |
| processed_sample_type | Leukapheresis Cells |
| processed_sample_type | Other |
| processed_sample_type | PBMC |
| processed_sample_type | PBMC Supernatant |
| processed_sample_type | PBSC |
| processed_sample_type | PBSC Supernatant |
| processed_sample_type | Peritoneal Cell Supernatant |
| processed_sample_type | Peritoneal Cells |
| processed_sample_type | Plasma |
| processed_sample_type | Pleural Cell Supernatant |
| processed_sample_type | Pleural Cells |
| processed_sample_type | RNA |
| processed_sample_type | Serum |
| processed_sample_type | Whole Blood Film |
| processed_sample_type | Protein Lysate |
| processed_sample_type | Peptides |
| processed_sample_type | Germline Nucleic Acid |
| processed_sample_type | Nucleic Acid |
| processed_sample_type | H&E Fixed Tissue Slide |
| processed_sample_type | Fixed Tissue Slide |
| processed_sample_type | WBC |
| sample_collection_procedure | Apheresis |
| sample_collection_procedure | Bone Biopsy |
| sample_collection_procedure | Bone Marrow Core Biopsy |
| sample_collection_procedure | Bone Marrow Aspiration |
| sample_collection_procedure | Bronchoalveolar Lavage |
| sample_collection_procedure | Buccal Swab |
| sample_collection_procedure | Core Biopsy |
| sample_collection_procedure | Endoscopic Biopsy |
| sample_collection_procedure | FFPE Block Punch Biopsy |
| sample_collection_procedure | Fine Needle Aspiration |
| sample_collection_procedure | Leukapheresis |
| sample_collection_procedure | Lumbar Puncture |
| sample_collection_procedure | Mid Stream Urine Collection |
| sample_collection_procedure | Not Reported |
| sample_collection_procedure | Peritoneal Lavage |
| sample_collection_procedure | Peritoneal Paracentesis |
| sample_collection_procedure | Phlebotomy |
| sample_collection_procedure | Pleural Thoracentesis |
| sample_collection_procedure | Saliva Collection |
| sample_collection_procedure | Skin Biopsy |
| sample_collection_procedure | Stool Collection |
| sample_collection_procedure | Surgical Excision |
| sample_collection_procedure | Surgical Incision |
| sample_collection_procedure | Urine Voiding |
| sample_collection_procedure | Other |
| sample_manifest_type | blood_nucleic_acid |
| sample_manifest_type | tissue_nucleic_acid |
| sample_manifest_type | tissue_slides |
| sample_manifest_type | tissue_h_and_e |
| sample_manifest_type | biofluid_plasma |
| sample_manifest_type | biofluid_cellular |
| sample_manifest_type | biofluid_cellular_nucleic_acid |
| sample_manifest_type | microbiome |
| sample_manifest_type | interventional |
| sample_shipping_condition | Frozen Shipper |
| sample_shipping_condition | Frozen Dry Ice |
| sample_shipping_condition | Ice/Cold Pack |
| sample_shipping_condition | Ambient |
| sample_shipping_condition | Not Reported |
| sample_shipping_condition | Other |
| sample_type | BAL Cells |
| sample_type | BAL Cell Supernatant |
| sample_type | BAL Fluid |
| sample_type | BMMC |
| sample_type | BMMC Supernatant |
| sample_type | Bone Marrow Aspirate |
| sample_type | Bone Marrow Core |
| sample_type | Bone Marrow Film |
| sample_type | Buccal Cells |
| sample_type | Buffy Coat |
| sample_type | CAR-T Cells |
| sample_type | cfDNA |
| sample_type | CSF |
| sample_type | CSF Cells |
| sample_type | CSF Cell Supernatant |
| sample_type | CTC Cells |
| sample_type | CTC Cell Supernatant |
| sample_type | ctDNA |
| sample_type | Cytospin Film |
| sample_type | DNA |
| sample_type | FFPE Block |
| sample_type | FFPE Block Punch |
| sample_type | FFPE Section |
| sample_type | FFPE Tissue Core |
| sample_type | FFPE Tissue Curl |
| sample_type | FFPE Tissue Scroll |
| sample_type | Fine Needle Aspirate |
| sample_type | Fixed Tissue Slide |
| sample_type | Formalin Fixed Tissue |
| sample_type | Fresh Tissue |
| sample_type | Fresh Tissue Core |
| sample_type | Frozen Tissue |
| sample_type | Frozen Tissue Block |
| sample_type | Frozen Tissue Curl |
| sample_type | Frozen Tissue Core |
| sample_type | Frozen Tissue Section |
| sample_type | Germline DNA |
| sample_type | Germline Nucleic Acid |
| sample_type | Germline RNA |
| sample_type | H&E Fixed Tissue Slide |
| sample_type | Leukapheresis Cells |
| sample_type | Lymph Node Tissue |
| sample_type | Nucleic Acid |
| sample_type | OCT Frozen Tissue |
| sample_type | OCT Frozen Tissue Block |
| sample_type | OCT Frozen Tissue Core |
| sample_type | OCT Frozen Tissue Curl |
| sample_type | OCT Frozen Tissue Section |
| sample_type | PBMC |
| sample_type | PBMC Supernatant |
| sample_type | PBSC |
| sample_type | PBSC Supernatant |
| sample_type | Peptides |
| sample_type | Pericardial Fluid |
| sample_type | Peritoneal Cells |
| sample_type | Peritoneal Cell Supernatant |
| sample_type | Peritoneal Fluid |
| sample_type | Peritoneal Lavage Fluid |
| sample_type | Plasma |
| sample_type | Pleural Cells |
| sample_type | Pleural Cell Supernatant |
| sample_type | Pleural Fluid |
| sample_type | Protein Lysate |
| sample_type | RNA |
| sample_type | Saliva |
| sample_type | Serum |
| sample_type | Skin Tissue |
| sample_type | Stool |
| sample_type | Synovial Fluid |
| sample_type | Tissue Core |
| sample_type | Urine |
| sample_type | WBC |
| sample_type | Whole Blood |
| sample_type | Whole Blood Film |
| sample_type | Other |
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
| screening_protocol_id | MYELOMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
sample_manifest
[
{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"container_type": "Other",
"date_of_birth": "1970-11-30",
"sample_collection_procedure": "Other",
"sample_type": "Other",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"box_coordinates": "tile 22h",
"comments": "This is a comment for the sample",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"custodian_institution_id": "string",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"din_value": 10,
"directionality": "Lateral",
"dv200": "51.273",
"event": "string",
"fibrosis_percent_area": "21.2",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"manifest_id": "20220729_jrh_65108327",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"nitrogen_tank": "nx-tank1",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"original_sample": "True",
"parent_csms_id": "mm_1214_jrh",
"parent_sample_id": "string",
"percent_viability": "1.2",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rack_id": "rack_id_2204",
"reason": "string",
"replacement_sample_requested": "Replacement Not Requested",
"rin_value": "0.29",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_qc_fail_reason": "Container Damaged",
"sample_qc_fail_reason_other": "Incorrect handling of sample",
"sample_qc_result": "QC Pass",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"shelf": "string",
"status": "in_lab",
"storage_box_number": "box_76399",
"storage_environment": "LN",
"storage_room": "room bio-456",
"storage_temperature": "5c",
"storage_unit_type": "Refrigerator",
"storage_unit_type_other": "Vault",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
]
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| anonymous | [interventional_sample] | false | none | [CSMS-Interventional JSON Schema for samples] |
interventional_sample
{
"biological_sex": "Female",
"biopsy_site": "C50.3",
"collection_date": "2021-06-02",
"collection_event_name": "Post-Treatment",
"collection_time": "16:30 Hawaii-Aleutian",
"container_type": "Other",
"date_of_birth": "1970-11-30",
"sample_collection_procedure": "Other",
"sample_type": "Other",
"screening_participant_id": "7bh45z",
"screening_protocol_id": "MyeloMATCH",
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"box_coordinates": "tile 22h",
"comments": "This is a comment for the sample",
"container_type_other": "Description of some other tube used.",
"cores_submitted": "Yes",
"csms_id": "mm_1234_jrh",
"custodian_institution_id": "string",
"description_of_sample": "Tumor",
"description_of_tumor_sample": "Benign",
"din_value": 10,
"directionality": "Lateral",
"dv200": "51.273",
"event": "string",
"fibrosis_percent_area": "21.2",
"fixation_stabilization_type": "Ficoll",
"laterality": "Right",
"locational_tumor_malignancy_class": "Primary",
"manifest_id": "20220729_jrh_65108327",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"nitrogen_tank": "nx-tank1",
"number_cores_submitted": "2",
"operational_id": "E1000-A",
"original_sample": "True",
"parent_csms_id": "mm_1214_jrh",
"parent_sample_id": "string",
"percent_viability": "1.2",
"processed_sample_derivative": "Germline DNA",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rack_id": "rack_id_2204",
"reason": "string",
"replacement_sample_requested": "Replacement Not Requested",
"rin_value": "0.29",
"sample_collection_procedure_other": "Description of Other Procedure Used",
"sample_id": "E1000-A",
"sample_manifest_type": "interventional",
"sample_qc_fail_reason": "Container Damaged",
"sample_qc_fail_reason_other": "Incorrect handling of sample",
"sample_qc_result": "QC Pass",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"shelf": "string",
"status": "in_lab",
"storage_box_number": "box_76399",
"storage_environment": "LN",
"storage_room": "room bio-456",
"storage_temperature": "5c",
"storage_unit_type": "Refrigerator",
"storage_unit_type_other": "Vault",
"treatment_participant_id": "tp_99-45688",
"treatment_protocol_id": "22-6789",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
CSMS-Interventional JSON Schema for samples
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| biological_sex | string | true | none | biological sex for tissue samples. |
| biopsy_site | string | true | none | Biopsy site for tissue samples. |
| collection_date | string | true | none | Date the sample was collected. |
| collection_event_name | string | true | none | Categorical description of the time point at which the sample was taken. |
| collection_time | string | true | none | Estimated time when sample was devascularized--Ischemic Start Time. |
| container_type | string | true | none | Type of container used to transport sample. |
| date_of_birth | string | true | none | Participant date of birth. |
| sample_collection_procedure | string | true | none | Indicates the sample source of the sample shipped. |
| sample_type | string | true | none | Type of sample. |
| screening_participant_id | string | true | none | Participant Identifier. |
| screening_protocol_id | string | true | none | Protocol or Clinical Trial program. |
| a260_or_a230_value | integer¦null | false | none | An absorbance percentage ratio indicating presence of contaminants (values of 0 to 3). |
| a260_or_a280_value | integer¦null | false | none | An absorbance percentage ratio indicating purity of DNA (values of 0 to 2). |
| blast_percentage | number¦null | false | none | TBD |
| box_coordinates | string¦null | false | none | Coordinates describing the location of the box used for sample storage. |
| comments | string | false | none | comment to be added to the sample |
| container_type_other | string¦null | false | none | Additional details when Other is selected for container type. |
| cores_submitted | string¦null | false | none | Indicates whether cores are submitted with the sample. |
| csms_id | string | false | none | Sample identifier assigned by the CSMS-Interventional Network. |
| custodian_institution_id | string | false | none | Current institution ID in possession or the custodian of the sample. |
| description_of_sample | string¦null | false | none | Type of tissue associated with the sample. |
| description_of_tumor_sample | string¦null | false | none | Description of tumor sample. |
| din_value | integer¦null | false | none | Provides a DNA Integrity Number as an indication of extraction quality (values of 1-10). |
| directionality | string¦null | false | none | Directionality [Lateral, Midline]. |
| dv200 | number¦null | false | none | Percentage of RNA fragments above 200 nucleotides. |
| event | string¦null | false | none | The update event performed. |
| fibrosis_percent_area | number¦null | false | none | Score the percentage area of fibrosis. QC field is editable by labs. |
| fixation_stabilization_type | string¦null | false | none | TBD |
| laterality | string¦null | false | none | Laterality [Left, Right, Bilateral]. |
| locational_tumor_malignancy_class | string¦null | false | none | Location of the malignancy. |
| manifest_id | string¦null | false | none | The manifest ID. Include this value to associate the sample with a manifest. Use an empty string in a PATCH request to disassociate the sample from all manifests. |
| med_tin | number¦null | false | none | Median transcript integrity number to score RNA degradation. |
| necrosis_percent_area | number¦null | false | none | Score the percentage area of necrosis. QC field is editable by labs. |
| nitrogen_tank | string¦null | false | none | Describes the nitrogen tank where samples are stored long-term. |
| number_cores_submitted | string¦null | false | none | Number of cores submitted. |
| operational_id | string¦null | false | none | Identifier assigned by biorepository or lab. |
| original_sample | boolean¦null | false | none | True if the sample is created by an enrolling site. |
| parent_csms_id | string | false | none | CSMS identifier of the parent sample, if this sample is a child. |
| parent_sample_id | string¦null | false | none | Sample identifier assigned by the biorepository site. |
| percent_viability | number¦null | false | none | TBD |
| processed_sample_derivative | string¦null | false | none | The type of derivative or analyte extracted from the sample to be shipped for testing. |
| processed_sample_id | string¦null | false | none | Aliquot identifier assigned by the bio repository site. |
| processed_sample_type | string¦null | false | none | The type of processing that was performed on the collected sample by the Biobank or Bio repository for storage. |
| rack_id | string¦null | false | none | Describes the rack number where samples are stored long-term. |
| reason | string¦null | false | none | The reason for the update action. |
| replacement_sample_requested | string¦null | false | none | Indication if sample replacement is/was requested. QC field is editable by labs. |
| rin_value | number¦null | false | none | A numerical measure of RNA integrity (RNA Integrity Number). |
| sample_collection_procedure_other | string¦null | false | none | Additional information when Other is specified for sample_collection_procedure. |
| sample_id | string | false | none | Identifier assigned by biorepository or lab. |
| sample_manifest_type | string | false | none | The type of processing that was performed on the collected sample by the Biobank for storage. normal_blood_dna is deprecated. Use blood_nucleic_acid instead. |
| sample_qc_fail_reason | string¦null | false | none | Reason QC check failed. |
| sample_qc_fail_reason_other | string¦null | false | none | Additional detail when Other selected for sample_qc_fail_reason. |
| sample_qc_result | string¦null | false | none | Result of quality control review. |
| sample_shipping_condition | string¦null | false | none | Description of the sample shipping condition. |
| sample_shipping_condition_other | string¦null | false | none | Description describing the use of the other field associated with sample_shipping_condition property. |
| sample_type_other | string¦null | false | none | Additional details when Other is selected for sample_type. |
| sample_uom | string¦null | false | none | Unit of measure associated with sample_quantity. |
| sample_volume_quantity | number¦null | false | none | The volume of the sample. |
| shelf | string¦null | false | none | Describes the shelf where samples are stored long-term. |
| status | string¦null | false | none | Internal CSMS state of the sample. Manifest and sample status cannot both be changed in the same request. |
| storage_box_number | string¦null | false | none | Describes the box number where samples are stored long-term. |
| storage_environment | string¦null | false | none | Storage environment assigned to sample. |
| storage_room | string¦null | false | none | Describes the room location where samples are stored long-term. |
| storage_temperature | string¦null | false | none | Describes the long-term storage temperature. |
| storage_unit_type | string¦null | false | none | Equipment used to store the sample. |
| storage_unit_type_other | string¦null | false | none | Description of the other equipment being used for storage of the sample. |
| treatment_participant_id | string¦null | false | none | Optional field for collecting treatment participant identifier. |
| treatment_protocol_id | string¦null | false | none | Optional field for collecting ID of treatment protocol. |
| viable_stroma_percent_area | number¦null | false | none | Percent of the area that is viable stroma. |
| viable_tumor_percent_area | number¦null | false | none | Score the percentage of viable tumor cells comprising the tumor bed area. QC field is editable by labs. |
Enumerated Values
| Property | Value |
|---|---|
| biological_sex | Male |
| biological_sex | Female |
| container_type | ACD-A Tube |
| container_type | ACD-B Tube |
| container_type | Bag |
| container_type | Box |
| container_type | CellSave Tube |
| container_type | Conical Tube |
| container_type | Container |
| container_type | CPT Citrate Tube |
| container_type | CPT Heparin Tube |
| container_type | Cryovial |
| container_type | EDTA Tube |
| container_type | Fecal Collection Container with NA Stabilizer |
| container_type | FFPE Tissue Cassette |
| container_type | Formalin Jar |
| container_type | Image |
| container_type | Lithium Heparin Tube |
| container_type | OMNIgene |
| container_type | OMNImet |
| container_type | PAXgene DNA Tube |
| container_type | PAXgene RNA Tube |
| container_type | Plain Red Top Tube |
| container_type | PPT Tube |
| container_type | Saliva Tube |
| container_type | Screw Top Jar |
| container_type | Slide |
| container_type | Slide Cassette |
| container_type | Smart Tube |
| container_type | Sodium Citrate Tube |
| container_type | Sodium Heparin Tube |
| container_type | SST Tube |
| container_type | Streck Tube |
| container_type | Other |
| sample_collection_procedure | Apheresis |
| sample_collection_procedure | Bone Biopsy |
| sample_collection_procedure | Bone Marrow Core Biopsy |
| sample_collection_procedure | Bone Marrow Aspiration |
| sample_collection_procedure | Bronchoalveolar Lavage |
| sample_collection_procedure | Buccal Swab |
| sample_collection_procedure | Core Biopsy |
| sample_collection_procedure | Endoscopic Biopsy |
| sample_collection_procedure | FFPE Block Punch Biopsy |
| sample_collection_procedure | Fine Needle Aspiration |
| sample_collection_procedure | Leukapheresis |
| sample_collection_procedure | Lumbar Puncture |
| sample_collection_procedure | Mid Stream Urine Collection |
| sample_collection_procedure | Not Reported |
| sample_collection_procedure | Peritoneal Lavage |
| sample_collection_procedure | Peritoneal Paracentesis |
| sample_collection_procedure | Phlebotomy |
| sample_collection_procedure | Pleural Thoracentesis |
| sample_collection_procedure | Saliva Collection |
| sample_collection_procedure | Skin Biopsy |
| sample_collection_procedure | Stool Collection |
| sample_collection_procedure | Surgical Excision |
| sample_collection_procedure | Surgical Incision |
| sample_collection_procedure | Urine Voiding |
| sample_collection_procedure | Other |
| sample_type | BAL Cells |
| sample_type | BAL Cell Supernatant |
| sample_type | BAL Fluid |
| sample_type | BMMC |
| sample_type | BMMC Supernatant |
| sample_type | Bone Marrow Aspirate |
| sample_type | Bone Marrow Core |
| sample_type | Bone Marrow Film |
| sample_type | Buccal Cells |
| sample_type | Buffy Coat |
| sample_type | CAR-T Cells |
| sample_type | cfDNA |
| sample_type | CSF |
| sample_type | CSF Cells |
| sample_type | CSF Cell Supernatant |
| sample_type | CTC Cells |
| sample_type | CTC Cell Supernatant |
| sample_type | ctDNA |
| sample_type | Cytospin Film |
| sample_type | DNA |
| sample_type | FFPE Block |
| sample_type | FFPE Block Punch |
| sample_type | FFPE Section |
| sample_type | FFPE Tissue Core |
| sample_type | FFPE Tissue Curl |
| sample_type | FFPE Tissue Scroll |
| sample_type | Fine Needle Aspirate |
| sample_type | Fixed Tissue Slide |
| sample_type | Formalin Fixed Tissue |
| sample_type | Fresh Tissue |
| sample_type | Fresh Tissue Core |
| sample_type | Frozen Tissue |
| sample_type | Frozen Tissue Block |
| sample_type | Frozen Tissue Curl |
| sample_type | Frozen Tissue Core |
| sample_type | Frozen Tissue Section |
| sample_type | Germline DNA |
| sample_type | Germline Nucleic Acid |
| sample_type | Germline RNA |
| sample_type | H&E Fixed Tissue Slide |
| sample_type | Leukapheresis Cells |
| sample_type | Lymph Node Tissue |
| sample_type | Nucleic Acid |
| sample_type | OCT Frozen Tissue |
| sample_type | OCT Frozen Tissue Block |
| sample_type | OCT Frozen Tissue Core |
| sample_type | OCT Frozen Tissue Curl |
| sample_type | OCT Frozen Tissue Section |
| sample_type | PBMC |
| sample_type | PBMC Supernatant |
| sample_type | PBSC |
| sample_type | PBSC Supernatant |
| sample_type | Peptides |
| sample_type | Pericardial Fluid |
| sample_type | Peritoneal Cells |
| sample_type | Peritoneal Cell Supernatant |
| sample_type | Peritoneal Fluid |
| sample_type | Peritoneal Lavage Fluid |
| sample_type | Plasma |
| sample_type | Pleural Cells |
| sample_type | Pleural Cell Supernatant |
| sample_type | Pleural Fluid |
| sample_type | Protein Lysate |
| sample_type | RNA |
| sample_type | Saliva |
| sample_type | Serum |
| sample_type | Skin Tissue |
| sample_type | Stool |
| sample_type | Synovial Fluid |
| sample_type | Tissue Core |
| sample_type | Urine |
| sample_type | WBC |
| sample_type | Whole Blood |
| sample_type | Whole Blood Film |
| sample_type | Other |
| screening_protocol_id | MYELOMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
| cores_submitted | Yes |
| cores_submitted | No |
| description_of_sample | Normal |
| description_of_sample | Tumor |
| description_of_sample | Unknown |
| description_of_tumor_sample | Benign |
| description_of_tumor_sample | In Situ |
| description_of_tumor_sample | Malignant |
| description_of_tumor_sample | Unknown |
| directionality | Lateral |
| directionality | Midline |
| fixation_stabilization_type | Ficoll |
| fixation_stabilization_type | Formalin Fixation |
| fixation_stabilization_type | Formalin-Fixed Paraffin-Embedded (FFPE) |
| fixation_stabilization_type | Frozen |
| fixation_stabilization_type | 70% Ethanol |
| fixation_stabilization_type | H&E |
| fixation_stabilization_type | Liquid Nitrogen (Frozen) |
| fixation_stabilization_type | OCT (Frozen) |
| fixation_stabilization_type | Proteomic Stabilization |
| fixation_stabilization_type | Thaw-Lyse |
| fixation_stabilization_type | Not Reported |
| fixation_stabilization_type | Other |
| laterality | Left |
| laterality | Right |
| laterality | Bilateral |
| locational_tumor_malignancy_class | Primary |
| locational_tumor_malignancy_class | Metastasis |
| locational_tumor_malignancy_class | Metastatic Lymph Node |
| locational_tumor_malignancy_class | Unknown |
| number_cores_submitted | 1 |
| number_cores_submitted | 2 |
| number_cores_submitted | 3 |
| number_cores_submitted | 4 |
| number_cores_submitted | 5 |
| number_cores_submitted | 6 |
| number_cores_submitted | 7 |
| number_cores_submitted | Not Reported |
| number_cores_submitted | Other |
| processed_sample_derivative | cfDNA |
| processed_sample_derivative | ctDNA |
| processed_sample_derivative | DNA |
| processed_sample_derivative | Germline DNA |
| processed_sample_derivative | Germline RNA |
| processed_sample_derivative | Other |
| processed_sample_derivative | RNA |
| processed_sample_derivative | Protein Lysate |
| processed_sample_derivative | Peptides |
| processed_sample_derivative | Germline Nucleic Acid |
| processed_sample_derivative | Nucleic Acid |
| processed_sample_type | BAL Cells |
| processed_sample_type | BAL Cell Supernatant |
| processed_sample_type | BMMC |
| processed_sample_type | BMMC Supernatant |
| processed_sample_type | Bone Marrow Film |
| processed_sample_type | Buccal Cells |
| processed_sample_type | Buffy Coat |
| processed_sample_type | cfDNA |
| processed_sample_type | CSF Cell Supernatant |
| processed_sample_type | CSF Cells |
| processed_sample_type | CTC Cell Supernatant |
| processed_sample_type | CTC Cells |
| processed_sample_type | ctDNA |
| processed_sample_type | Cytospin Film |
| processed_sample_type | DNA |
| processed_sample_type | FFPE Block |
| processed_sample_type | FFPE Block Punch |
| processed_sample_type | FFPE Section |
| processed_sample_type | FFPE Tissue Core |
| processed_sample_type | FFPE Tissue Curl |
| processed_sample_type | FFPE Tissue Scroll |
| processed_sample_type | Formalin Fixed Tissue |
| processed_sample_type | Germline DNA |
| processed_sample_type | Germline RNA |
| processed_sample_type | Leukapheresis Cells |
| processed_sample_type | Other |
| processed_sample_type | PBMC |
| processed_sample_type | PBMC Supernatant |
| processed_sample_type | PBSC |
| processed_sample_type | PBSC Supernatant |
| processed_sample_type | Peritoneal Cell Supernatant |
| processed_sample_type | Peritoneal Cells |
| processed_sample_type | Plasma |
| processed_sample_type | Pleural Cell Supernatant |
| processed_sample_type | Pleural Cells |
| processed_sample_type | RNA |
| processed_sample_type | Serum |
| processed_sample_type | Whole Blood Film |
| processed_sample_type | Protein Lysate |
| processed_sample_type | Peptides |
| processed_sample_type | Germline Nucleic Acid |
| processed_sample_type | Nucleic Acid |
| processed_sample_type | H&E Fixed Tissue Slide |
| processed_sample_type | Fixed Tissue Slide |
| processed_sample_type | WBC |
| replacement_sample_requested | Replacement Not Requested |
| replacement_sample_requested | Replacement Requested |
| replacement_sample_requested | Replacement Tested |
| replacement_sample_requested | Not Reported |
| replacement_sample_requested | Other |
| sample_manifest_type | blood_nucleic_acid |
| sample_manifest_type | tissue_nucleic_acid |
| sample_manifest_type | tissue_slides |
| sample_manifest_type | tissue_h_and_e |
| sample_manifest_type | biofluid_plasma |
| sample_manifest_type | biofluid_cellular |
| sample_manifest_type | biofluid_cellular_nucleic_acid |
| sample_manifest_type | microbiome |
| sample_manifest_type | interventional |
| sample_qc_fail_reason | Frozen |
| sample_qc_fail_reason | Thawed |
| sample_qc_fail_reason | Hemolysis |
| sample_qc_fail_reason | Container Damaged |
| sample_qc_fail_reason | Container Leaking |
| sample_qc_fail_reason | Insufficient Material |
| sample_qc_fail_reason | Insufficient Medium |
| sample_qc_fail_reason | Other |
| sample_qc_result | QC Pass |
| sample_qc_result | Pass at Risk |
| sample_qc_result | QC Failed |
| sample_qc_result | QC Lost |
| sample_qc_result | QC Not Shipped |
| sample_shipping_condition | Frozen Shipper |
| sample_shipping_condition | Frozen Dry Ice |
| sample_shipping_condition | Ice/Cold Pack |
| sample_shipping_condition | Ambient |
| sample_shipping_condition | Not Reported |
| sample_shipping_condition | Other |
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
| status | draft |
| status | in_lab |
| status | in_transit |
| status | in_qc |
| status | in_storage |
| status | disposed |
| status | missing |
| storage_environment | Ambient |
| storage_environment | RT |
| storage_environment | 4 Celsius Degree |
| storage_environment | -20 Degrees Celsius Or Minus 20 Degrees Celsius |
| storage_environment | -80 Degrees Celsius Or Minus 80 Degrees Celsius |
| storage_environment | -150 Degrees Celsius Or Minus 150 Degrees Celsius |
| storage_environment | LN |
| storage_environment | Dry Ice |
| storage_environment | Not Reported |
| storage_environment | Other |
| storage_unit_type | Freezer |
| storage_unit_type | Refrigerator |
| storage_unit_type | Cabinet |
| storage_unit_type | LNTank |
| storage_unit_type | Other |
parent_sample
{
"csms_id": "mm_1234_jrh",
"sample_uom": "mL",
"sample_volume_quantity": "1.237"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| csms_id | string | true | none | Sample identifier assigned by the CSMS-Interventional Network. |
| sample_uom | string¦null | true | none | Unit of measure associated with sample_quantity. |
| sample_volume_quantity | number¦null | true | none | The volume of the sample. |
Enumerated Values
| Property | Value |
|---|---|
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
aliquots
[
{
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"date_sample_processed": "2021-04-30",
"din_value": 10,
"dv200": "51.273",
"fibrosis_percent_area": "21.2",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"operational_id": "E1000-A",
"percent_viability": "1.2",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rin_value": "0.29",
"sample_id": "E1000-A",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"time_sample_processed": "16:30 Hawaii-Aleutian",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
]
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| anonymous | [aliquot] | false | none | none |
aliquot
{
"a260_or_a230_value": 10,
"a260_or_a280_value": 10,
"blast_percentage": "1.2",
"container_type": "Other",
"container_type_other": "Description of some other tube used.",
"date_sample_processed": "2021-04-30",
"din_value": 10,
"dv200": "51.273",
"fibrosis_percent_area": "21.2",
"med_tin": "7.381999",
"necrosis_percent_area": 100,
"operational_id": "E1000-A",
"percent_viability": "1.2",
"processed_sample_id": "string",
"processed_sample_type": "Other",
"rin_value": "0.29",
"sample_id": "E1000-A",
"sample_shipping_condition": "Other",
"sample_shipping_condition_other": "Describes a shipping condition not available in the predefined list.",
"sample_type": "Other",
"sample_type_other": "Some other sample type",
"sample_uom": "mL",
"sample_volume_quantity": "1.237",
"screening_participant_id": "7bh45z",
"time_sample_processed": "16:30 Hawaii-Aleutian",
"viable_stroma_percent_area": "4.82",
"viable_tumor_percent_area": "81.2"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| a260_or_a230_value | integer¦null | false | none | An absorbance percentage ratio indicating presence of contaminants (values of 0 to 3). |
| a260_or_a280_value | integer¦null | false | none | An absorbance percentage ratio indicating purity of DNA (values of 0 to 2). |
| blast_percentage | number¦null | false | none | TBD |
| container_type | string | true | none | Type of container used to transport sample. |
| container_type_other | string¦null | false | none | Additional details when Other is selected for container type. |
| date_sample_processed | string¦null | true | none | Date when a resected/biopsied sample is moved into preservative or dry ice--Ischemic End Date. |
| din_value | integer¦null | false | none | Provides a DNA Integrity Number as an indication of extraction quality (values of 1-10). |
| dv200 | number¦null | false | none | Percentage of RNA fragments above 200 nucleotides. |
| fibrosis_percent_area | number¦null | false | none | Score the percentage area of fibrosis. QC field is editable by labs. |
| med_tin | number¦null | false | none | Median transcript integrity number to score RNA degradation. |
| necrosis_percent_area | number¦null | false | none | Score the percentage area of necrosis. QC field is editable by labs. |
| operational_id | string¦null | false | none | Identifier assigned by biorepository or lab. |
| percent_viability | number¦null | false | none | TBD |
| processed_sample_id | string¦null | false | none | Aliquot identifier assigned by the bio repository site. |
| processed_sample_type | string¦null | true | none | The type of processing that was performed on the collected sample by the Biobank or Bio repository for storage. |
| rin_value | number¦null | false | none | A numerical measure of RNA integrity (RNA Integrity Number). |
| sample_id | string | false | none | Identifier assigned by biorepository or lab. |
| sample_shipping_condition | string¦null | false | none | Description of the sample shipping condition. |
| sample_shipping_condition_other | string¦null | false | none | Description describing the use of the other field associated with sample_shipping_condition property. |
| sample_type | string | true | none | Type of sample. |
| sample_type_other | string¦null | false | none | Additional details when Other is selected for sample_type. |
| sample_uom | string¦null | true | none | Unit of measure associated with sample_quantity. |
| sample_volume_quantity | number¦null | true | none | The volume of the sample. |
| screening_participant_id | string | true | none | Participant Identifier. |
| time_sample_processed | string¦null | true | none | Estimated time when resected/biopsied sample is moved into preservative or dry ice--Ischemic End Time. |
| viable_stroma_percent_area | number¦null | false | none | Percent of the area that is viable stroma. |
| viable_tumor_percent_area | number¦null | false | none | Score the percentage of viable tumor cells comprising the tumor bed area. QC field is editable by labs. |
Enumerated Values
| Property | Value |
|---|---|
| container_type | ACD-A Tube |
| container_type | ACD-B Tube |
| container_type | Bag |
| container_type | Box |
| container_type | CellSave Tube |
| container_type | Conical Tube |
| container_type | Container |
| container_type | CPT Citrate Tube |
| container_type | CPT Heparin Tube |
| container_type | Cryovial |
| container_type | EDTA Tube |
| container_type | Fecal Collection Container with NA Stabilizer |
| container_type | FFPE Tissue Cassette |
| container_type | Formalin Jar |
| container_type | Image |
| container_type | Lithium Heparin Tube |
| container_type | OMNIgene |
| container_type | OMNImet |
| container_type | PAXgene DNA Tube |
| container_type | PAXgene RNA Tube |
| container_type | Plain Red Top Tube |
| container_type | PPT Tube |
| container_type | Saliva Tube |
| container_type | Screw Top Jar |
| container_type | Slide |
| container_type | Slide Cassette |
| container_type | Smart Tube |
| container_type | Sodium Citrate Tube |
| container_type | Sodium Heparin Tube |
| container_type | SST Tube |
| container_type | Streck Tube |
| container_type | Other |
| processed_sample_type | BAL Cells |
| processed_sample_type | BAL Cell Supernatant |
| processed_sample_type | BMMC |
| processed_sample_type | BMMC Supernatant |
| processed_sample_type | Bone Marrow Film |
| processed_sample_type | Buccal Cells |
| processed_sample_type | Buffy Coat |
| processed_sample_type | cfDNA |
| processed_sample_type | CSF Cell Supernatant |
| processed_sample_type | CSF Cells |
| processed_sample_type | CTC Cell Supernatant |
| processed_sample_type | CTC Cells |
| processed_sample_type | ctDNA |
| processed_sample_type | Cytospin Film |
| processed_sample_type | DNA |
| processed_sample_type | FFPE Block |
| processed_sample_type | FFPE Block Punch |
| processed_sample_type | FFPE Section |
| processed_sample_type | FFPE Tissue Core |
| processed_sample_type | FFPE Tissue Curl |
| processed_sample_type | FFPE Tissue Scroll |
| processed_sample_type | Formalin Fixed Tissue |
| processed_sample_type | Germline DNA |
| processed_sample_type | Germline RNA |
| processed_sample_type | Leukapheresis Cells |
| processed_sample_type | Other |
| processed_sample_type | PBMC |
| processed_sample_type | PBMC Supernatant |
| processed_sample_type | PBSC |
| processed_sample_type | PBSC Supernatant |
| processed_sample_type | Peritoneal Cell Supernatant |
| processed_sample_type | Peritoneal Cells |
| processed_sample_type | Plasma |
| processed_sample_type | Pleural Cell Supernatant |
| processed_sample_type | Pleural Cells |
| processed_sample_type | RNA |
| processed_sample_type | Serum |
| processed_sample_type | Whole Blood Film |
| processed_sample_type | Protein Lysate |
| processed_sample_type | Peptides |
| processed_sample_type | Germline Nucleic Acid |
| processed_sample_type | Nucleic Acid |
| processed_sample_type | H&E Fixed Tissue Slide |
| processed_sample_type | Fixed Tissue Slide |
| processed_sample_type | WBC |
| sample_shipping_condition | Frozen Shipper |
| sample_shipping_condition | Frozen Dry Ice |
| sample_shipping_condition | Ice/Cold Pack |
| sample_shipping_condition | Ambient |
| sample_shipping_condition | Not Reported |
| sample_shipping_condition | Other |
| sample_type | BAL Cells |
| sample_type | BAL Cell Supernatant |
| sample_type | BAL Fluid |
| sample_type | BMMC |
| sample_type | BMMC Supernatant |
| sample_type | Bone Marrow Aspirate |
| sample_type | Bone Marrow Core |
| sample_type | Bone Marrow Film |
| sample_type | Buccal Cells |
| sample_type | Buffy Coat |
| sample_type | CAR-T Cells |
| sample_type | cfDNA |
| sample_type | CSF |
| sample_type | CSF Cells |
| sample_type | CSF Cell Supernatant |
| sample_type | CTC Cells |
| sample_type | CTC Cell Supernatant |
| sample_type | ctDNA |
| sample_type | Cytospin Film |
| sample_type | DNA |
| sample_type | FFPE Block |
| sample_type | FFPE Block Punch |
| sample_type | FFPE Section |
| sample_type | FFPE Tissue Core |
| sample_type | FFPE Tissue Curl |
| sample_type | FFPE Tissue Scroll |
| sample_type | Fine Needle Aspirate |
| sample_type | Fixed Tissue Slide |
| sample_type | Formalin Fixed Tissue |
| sample_type | Fresh Tissue |
| sample_type | Fresh Tissue Core |
| sample_type | Frozen Tissue |
| sample_type | Frozen Tissue Block |
| sample_type | Frozen Tissue Curl |
| sample_type | Frozen Tissue Core |
| sample_type | Frozen Tissue Section |
| sample_type | Germline DNA |
| sample_type | Germline Nucleic Acid |
| sample_type | Germline RNA |
| sample_type | H&E Fixed Tissue Slide |
| sample_type | Leukapheresis Cells |
| sample_type | Lymph Node Tissue |
| sample_type | Nucleic Acid |
| sample_type | OCT Frozen Tissue |
| sample_type | OCT Frozen Tissue Block |
| sample_type | OCT Frozen Tissue Core |
| sample_type | OCT Frozen Tissue Curl |
| sample_type | OCT Frozen Tissue Section |
| sample_type | PBMC |
| sample_type | PBMC Supernatant |
| sample_type | PBSC |
| sample_type | PBSC Supernatant |
| sample_type | Peptides |
| sample_type | Pericardial Fluid |
| sample_type | Peritoneal Cells |
| sample_type | Peritoneal Cell Supernatant |
| sample_type | Peritoneal Fluid |
| sample_type | Peritoneal Lavage Fluid |
| sample_type | Plasma |
| sample_type | Pleural Cells |
| sample_type | Pleural Cell Supernatant |
| sample_type | Pleural Fluid |
| sample_type | Protein Lysate |
| sample_type | RNA |
| sample_type | Saliva |
| sample_type | Serum |
| sample_type | Skin Tissue |
| sample_type | Stool |
| sample_type | Synovial Fluid |
| sample_type | Tissue Core |
| sample_type | Urine |
| sample_type | WBC |
| sample_type | Whole Blood |
| sample_type | Whole Blood Film |
| sample_type | Other |
| sample_uom | Cells/Vial |
| sample_uom | mL |
| sample_uom | Microliter |
bulk_id_post
{
"count": "38",
"institution_id": "BioRepository-East",
"screening_protocol_id": "MyeloMATCH"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| count | number | true | none | Number of sample IDs requested. |
| institution_id | string | true | none | Institution ID of Biorepository requesting the ids. |
| screening_protocol_id | string | true | none | Protocol or Clinical Trial program. Required field at sample creation. |
Enumerated Values
| Property | Value |
|---|---|
| screening_protocol_id | MyeloMATCH |
| screening_protocol_id | EAY191 |
| screening_protocol_id | iMATCH |
API Sandbox
To try out CSMS API methods in Swagger, refer to our Swagger documentation site.