Add a DrsObject to the db
POST /objects
Authorizations
Request Body
A DrsObject that describes the clinical sample used for genomic analysis.
object
The identifier for the sample, as defined in sample_registration in the MOHCCN data model.
A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object.
The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the self_uri
presents you with a hostname and properly encoded DRS ID for use in subsequent access
endpoint calls.
The cumulative size, in bytes, of items in the contents
field.
Timestamp of content creation in RFC3339. (This is the creation time of the underlying content, not of the JSON object.)
Timestamp of content update in RFC3339, identical to created_time
in systems that do not support updates. (This is the update time of the underlying content, not of the JSON object.)
A string representing a version. (Some systems may use checksum, a RFC3339 timestamp, or an incrementing version number.)
The checksum of the DrsObject
. At least one checksum must be provided. For blobs, the checksum is computed over the bytes in the blob. For bundles, the checksum is computed over a sorted concatenation of the checksums of its top-level contained objects (not recursive, names not included). The list of checksums is sorted alphabetically (hex-code) before concatenation and a further checksum is performed on the concatenated checksum value. For example, if a bundle contains blobs with the following checksums: md5(blob1) = 72794b6d md5(blob2) = 5e089d29 Then the checksum of the bundle is: md5( concat( sort( md5(blob1), md5(blob2) ) ) ) = md5( concat( sort( 72794b6d, 5e089d29 ) ) ) = md5( concat( 5e089d29, 72794b6d ) ) = md5( 5e089d2972794b6d ) = f7a29a04
object
The hex-string encoded checksum for the data
The digest method used to create the checksum. The value (e.g. sha-256
) SHOULD be listed as Hash Name String
in the https://www.iana.org/assignments/named-information/named-information.xhtml#hash-alg[IANA Named Information Hash Algorithm Registry]. Other values MAY be used, as long as implementors are aware of the issues discussed in https://tools.ietf.org/html/rfc6920#section-9.4[RFC6920]. GA4GH may provide more explicit guidance for use of non-IANA-registered algorithms in the future. Until then, if implementors do choose such an algorithm (e.g. because it’s implemented by their storage provider), they SHOULD use an existing standard type
value such as md5
, etag
, crc32c
, trunc512
, or sha1
.
The specific genomic contents objects that were generated from this sample.
object
The identifier of the genomic object
The identifier of the genomic object
The DRS uri(s) to the GenomicDrsObject
The cohort this object was ingested as part of
A list of strings that can be used to find other metadata about this DrsObject
from external metadata sources. These aliases can be used to represent secondary accession numbers or external GUIDs.
A DrsObject that describes a bundled genomic data entity. It usually will consist of a genomic data file, e.g. a variant or read file, and its associated index file. Its contents should also include any associated Samples (as SampleContentObjects), ordered in order of appearance in the associated variant/read files.
object
The descriptor for this genomic data entity
The filename for this entity, not including its file extensions. This string is made up of uppercase and lowercase letters, decimal digits, hypen, period, and underscore [A-Za-z0-9.-_]. See http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_282[portable filenames].
A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object.
The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the self_uri
presents you with a hostname and properly encoded DRS ID for use in subsequent access
endpoint calls.
The cumulative size, in bytes, of items in the contents
field.
Timestamp of content creation in RFC3339. (This is the creation time of the underlying content, not of the JSON object.)
Timestamp of content update in RFC3339, identical to created_time
in systems that do not support updates. (This is the update time of the underlying content, not of the JSON object.)
A string representing a version. (Some systems may use checksum, a RFC3339 timestamp, or an incrementing version number.)
The checksum of the DrsObject
. At least one checksum must be provided. For blobs, the checksum is computed over the bytes in the blob. For bundles, the checksum is computed over a sorted concatenation of the checksums of its top-level contained objects (not recursive, names not included). The list of checksums is sorted alphabetically (hex-code) before concatenation and a further checksum is performed on the concatenated checksum value. For example, if a bundle contains blobs with the following checksums: md5(blob1) = 72794b6d md5(blob2) = 5e089d29 Then the checksum of the bundle is: md5( concat( sort( md5(blob1), md5(blob2) ) ) ) = md5( concat( sort( 72794b6d, 5e089d29 ) ) ) = md5( concat( 5e089d29, 72794b6d ) ) = md5( 5e089d2972794b6d ) = f7a29a04
object
The hex-string encoded checksum for the data
The digest method used to create the checksum. The value (e.g. sha-256
) SHOULD be listed as Hash Name String
in the https://www.iana.org/assignments/named-information/named-information.xhtml#hash-alg[IANA Named Information Hash Algorithm Registry]. Other values MAY be used, as long as implementors are aware of the issues discussed in https://tools.ietf.org/html/rfc6920#section-9.4[RFC6920]. GA4GH may provide more explicit guidance for use of non-IANA-registered algorithms in the future. Until then, if implementors do choose such an algorithm (e.g. because it’s implemented by their storage provider), they SHOULD use an existing standard type
value such as md5
, etag
, crc32c
, trunc512
, or sha1
.
The specific genomic contents objects that comprise this genomic DRS entity. Should contain a GenomicDataContentsObject, an optional GenomicIndexContentsObject, and SampleContentsObjects corresponding to the samples analyzed in the genomic data object.
object
The full filename of the genomic data file, including extensions.
The DRS uri(s) to the GenomicDataDrsObject
object
The full filename of the genomic index file, including extensions.
The DRS uri(s) to the GenomicIndexDrsObject
object
The submitter_sample_id of the sample in the MoH model
The id of the SampleDrsObject, corresponding to the sample’s name in the VCF file
The DRS uri(s) to the SampleDrsObject
Type of sequencing data
The cohort this object was ingested as part of
The reference genome used to compile this genomic object
1 if the object has been indexed for search, 0 if not
A list of strings that can be used to find other metadata about this DrsObject
from external metadata sources. These aliases can be used to represent secondary accession numbers or external GUIDs.
A DrsObject that describes a genomic data file, e.g. a variant or read file.
object
The filename for this genomic data file, including its file extensions.
The filename for this entity, not including its file extensions. This string is made up of uppercase and lowercase letters, decimal digits, hypen, period, and underscore [A-Za-z0-9.-_]. See http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_282[portable filenames].
A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object.
The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the self_uri
presents you with a hostname and properly encoded DRS ID for use in subsequent access
endpoint calls.
The blob size in bytes
Timestamp of content creation in RFC3339. (This is the creation time of the underlying content, not of the JSON object.)
Timestamp of content update in RFC3339, identical to created_time
in systems that do not support updates. (This is the update time of the underlying content, not of the JSON object.)
A string representing a version. (Some systems may use checksum, a RFC3339 timestamp, or an incrementing version number.)
The checksum of the DrsObject
. At least one checksum must be provided. For blobs, the checksum is computed over the bytes in the blob. For bundles, the checksum is computed over a sorted concatenation of the checksums of its top-level contained objects (not recursive, names not included). The list of checksums is sorted alphabetically (hex-code) before concatenation and a further checksum is performed on the concatenated checksum value. For example, if a bundle contains blobs with the following checksums: md5(blob1) = 72794b6d md5(blob2) = 5e089d29 Then the checksum of the bundle is: md5( concat( sort( md5(blob1), md5(blob2) ) ) ) = md5( concat( sort( 72794b6d, 5e089d29 ) ) ) = md5( concat( 5e089d29, 72794b6d ) ) = md5( 5e089d2972794b6d ) = f7a29a04
object
The hex-string encoded checksum for the data
The digest method used to create the checksum. The value (e.g. sha-256
) SHOULD be listed as Hash Name String
in the https://www.iana.org/assignments/named-information/named-information.xhtml#hash-alg[IANA Named Information Hash Algorithm Registry]. Other values MAY be used, as long as implementors are aware of the issues discussed in https://tools.ietf.org/html/rfc6920#section-9.4[RFC6920]. GA4GH may provide more explicit guidance for use of non-IANA-registered algorithms in the future. Until then, if implementors do choose such an algorithm (e.g. because it’s implemented by their storage provider), they SHOULD use an existing standard type
value such as md5
, etag
, crc32c
, trunc512
, or sha1
.
The list of access methods that can be used to fetch the DrsObject
.
A full URL describing the file’s location
object
object
An access id and region that might be needed to specify to get a signed URL for obtaining bytes
object
The location of the file, specified as endpoint/bucket/filename.
Name of the region in the cloud service provider that the object belongs to.
The cohort this object was ingested as part of
A string providing the mime-type of the DrsObject.
A list of strings that can be used to find other metadata about this DrsObject
from external metadata sources. These aliases can be used to represent secondary accession numbers or external GUIDs.
A DrsObject that describes a genomic index file associated with a genomic drs object
object
The filename for this genomic index file, including its file extensions.
The filename for this entity, not including its file extensions. This string is made up of uppercase and lowercase letters, decimal digits, hypen, period, and underscore [A-Za-z0-9.-_]. See http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_282[portable filenames].
A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object.
The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the self_uri
presents you with a hostname and properly encoded DRS ID for use in subsequent access
endpoint calls.
The blob size in bytes
Timestamp of content creation in RFC3339. (This is the creation time of the underlying content, not of the JSON object.)
Timestamp of content update in RFC3339, identical to created_time
in systems that do not support updates. (This is the update time of the underlying content, not of the JSON object.)
A string representing a version. (Some systems may use checksum, a RFC3339 timestamp, or an incrementing version number.)
The checksum of the DrsObject
. At least one checksum must be provided. For blobs, the checksum is computed over the bytes in the blob. For bundles, the checksum is computed over a sorted concatenation of the checksums of its top-level contained objects (not recursive, names not included). The list of checksums is sorted alphabetically (hex-code) before concatenation and a further checksum is performed on the concatenated checksum value. For example, if a bundle contains blobs with the following checksums: md5(blob1) = 72794b6d md5(blob2) = 5e089d29 Then the checksum of the bundle is: md5( concat( sort( md5(blob1), md5(blob2) ) ) ) = md5( concat( sort( 72794b6d, 5e089d29 ) ) ) = md5( concat( 5e089d29, 72794b6d ) ) = md5( 5e089d2972794b6d ) = f7a29a04
object
The hex-string encoded checksum for the data
The digest method used to create the checksum. The value (e.g. sha-256
) SHOULD be listed as Hash Name String
in the https://www.iana.org/assignments/named-information/named-information.xhtml#hash-alg[IANA Named Information Hash Algorithm Registry]. Other values MAY be used, as long as implementors are aware of the issues discussed in https://tools.ietf.org/html/rfc6920#section-9.4[RFC6920]. GA4GH may provide more explicit guidance for use of non-IANA-registered algorithms in the future. Until then, if implementors do choose such an algorithm (e.g. because it’s implemented by their storage provider), they SHOULD use an existing standard type
value such as md5
, etag
, crc32c
, trunc512
, or sha1
.
The list of access methods that can be used to fetch the DrsObject
.
A full URL describing the file’s location
object
object
An access id and region that might be needed to specify to get a signed URL for obtaining bytes
object
The location of the file, specified as endpoint/bucket/filename.
Name of the region in the cloud service provider that the object belongs to.
The cohort this object was ingested as part of
A string providing the mime-type of the DrsObject.
A list of strings that can be used to find other metadata about this DrsObject
from external metadata sources. These aliases can be used to represent secondary accession numbers or external GUIDs.
Responses
200
The DrsObject
was found successfully