openapi: 3.0.3 info: description: 'The HuBMAP Entity API is a standard RESTful web service with create, update and read operations for the standard HuBMAP provenance graph entities.' version: 2.5.3 title: HuBMAP Entity API contact: name: HuBMAP Help Desk email: help@hubmapconsortium.org license: name: MIT License url: 'https://github.com/hubmapconsortium/entity-api/blob/main/license.txt' servers: - url: 'https://entity.api.hubmapconsortium.org' security: - bearerAuth: [] - {} components: securitySchemes: bearerAuth: type: apiKey name: Authorization in: header description: Globus bearer token to authorize requests. Have to use apiKey to pass AWS API Gateway import validation schemas: Person: type: object properties: first_name: type: string description: 'The full name of the person.' last_name: type: string description: The last name of the person. middle_name_or_initial: type: string description: The middle name or initial of the person. orcid_id: type: string description: The ORCID iD of the person. affiliation: type: string description: The institution that the person is affiliated with. Antibody: type: object properties: antibody_name: type: string description: 'The name of the antibody.' channel_id: type: string description: 'The assay specific identifier for the channel corresponding to the antibody.' conjugated_cat_number: type: string description: 'An antibody may be conjugated to a fluorescent tag or a metal tag for detection. Conjugated antibodies may be purchased from commercial providers. Blank if not applicable.' conjugated_tag: type: string description: 'An antibody may be conjugated to a fluorescent tag or a metal tag for detection. Conjugated antibodies may be purchased from commercial providers. Blank if not applicable.' dilution: type: string description: 'The dilition ratio, e.g. 1/200 for the antibody. Blank if not applicable.' lot_number: type: string description: 'The antibody lot number from the vendor.' rr_id: type: string description: 'The unique antibody identifier from the Antibody Registry (https://antibodyregistry.org). ' uniprot_accession_number: type: string description: 'The unique identifier for the target protein in the UniProt database (https://www.uniprot.org).' DonorMetadata: type: object properties: code: type: string description: 'This is a Code from a source vocabulary in the HuBMAP Knowledge Graph, currently limited to UMLS source vocabulary terms.' sab: type: string description: 'This is the source vocabulary in the HuBMAP Knowledge Graph. Currently limited to UMLS source vocabularies.' concept_id: type: string description: 'This is the Concept ID from the HuBMAP Knowledge Graph. Currently limited to UMLS concepts.' data_type: type: string enum: - Nominal - Numeric description: 'This is the data type of thw record. Numeric types will generally have non-null data_value. Nominal types will generally have null data_value.' data_value: type: string description: 'The data value of the record.' numeric_operator: type: string enum: - EQ - GT - LT description: 'This is the numeric operator for the data value .This enables inputing thresholds and ranges for data values by using greater than or less than.' units: type: string description: 'This are the units for the data value.' preferred_term: type: string description: 'This is the preferred display term for the item. It may or may not correspond to a term in UMLS for this concept.' grouping_concept: type: string description: 'This is the Concept ID from the HuBMAP Knowledge Graph, currently limited to UMLS concetps, that is to be used for grouping the record.' grouping_concept_preferred_term: type: string description: 'This is the preferred display term for the facet in which this record should be counted for faceted search in the portal. It may or may not correspond to a term in UMLS for the grouping concept.' grouping_code: type: string description: 'This is a Code from a source vocabulary in the HuBMAP Knowledge Graph, currently limited to UMLS vocabulary codes. This code corresponds to the grouping_concept.' grouping_sab: type: string description: 'This is a grouping for the source vocabulary in the HuBMAP Knowledge Graph, currently limited to UMLS source vocabularies.. This sab corresponds to the grouping_code.' graph_version: type: string description: 'This is the version of the HuBMAP Knowledge Graph that the Concept appears in, currently the version of UMLS that is used.' start_datetime: type: integer description: 'This is the approximate time difference in seconds between the procurement and the start of this event (this is to construct time series records of clinical data for event-level data not donor-level data). An empty or zero value designates missing data or that this field is not applicable for the concept.' end_datetime: type: integer description: 'This is the approximate time difference in seconds between the procurement and the end of this event (this is to construct time series records of clinical data for event-level data not donor-level data). An epty of zero value designates missing data or that this field is not applicable for the concept' SampleMetadata: type: object description: 'The sample specific metadata derived from the uploaded sample_metadata.tsv file. Returned as a json object.' properties: sample_id: type: string description: 'The HuBMAP Identifier for the sample.' vital_state: type: string enum: - living - deceased description: 'The vital state of the donor who the tissue sample came from.' health_status: type: string enum: - cancer - 'relatively healthy' - 'chronic illness' description: "Donor from which the tissue sample came from's baseline physical condition prior to immediate event leading to organ/tissue acquisition. For example, if a relatively healthy patient suffers trauma, and as a result of reparative surgery, a tissue sample is collected, the subject will be deemed 'relatively healthy'. Likewise, a relatively healthy subject may have experienced trauma leading to brain death. As a result of organ donation, a sample is collected. In this scenario, the subject is deemed 'relatively healthy'." organ_condition: type: string enum: - healthy - diseased description: 'Health status of the organ at the time of tissue sample recovery.' procedure_date: type: string description: 'The date at which the organ from which the tissue sample came from was procurred, in the format YYYY-MM-DD' perfusion_solution: type: string enum: - UWS - HTK - Belzer MPS/KPS - Formalin - Unknown - None description: 'Health status of the organ at the time of sample recovery.' pathologist_report: type: string description: 'Further details on organ level QC checks.' warm_ischemia_time_value: type: integer description: 'Time interval between cessation of blood flow and cooling to 4C. Blank if not applicable.' warm_ischemia_time_unit: type: string description: 'Time units that the warm_ischemia_time_value is reported in. Blank if not applicable' cold_ischemia_time_value: type: integer description: 'Time interval on ice to the start of preservation protocol. Blank if not applicable.' cold_ischemia_time_unit: type: string description: 'Time units that the cold_ischemia_time_value is reported in. Blank if not applicable.' specimen_preservation_temperature: type: string description: 'The temperature of the medium during the preservation process. Reported as preservation method, temperature and units, e.g. Freezer (-80 Celsius)' specimen_quality_criteria: type: string description: 'RIN score. e.g. RIN: 8.7' specimen_tumor_distance_value: type: string description: 'If surgical sample from a tumor biopsy, how far from the tumor was the sample obtained from. Typically a number of centimeters. Blank if not applicable or unknown.' specimen_tumor_distance_unit: type: string description: '' DatasetProvMetadata: type: object allOf: - $ref: '#/components/schemas/Dataset' - type: object properties: samples: type: array items: $ref: '#/components/schemas/Sample' readOnly: true description: 'List of Samples not of sub-type organ for the dataset' organs: type: array items: $ref: '#/components/schemas/Sample' readOnly: true description: 'List of Samples of sub-type organ for the dataset' donors: type: array items: $ref: '#/components/schemas/Donor' readOnly: true description: 'List of Donors for the dataset' File: type: object properties: filename: type: string description: 'The name of the file.' description: type: string description: 'A description of the file. The Dataset.thumbnail_file does not have this file description.' file_uuid: type: string description: 'The HuBMAP unique identifier for the file.' Donor: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Donor'] type: string readOnly: true description: 'Entity type constant' registered_doi: type: string description: 'The doi of a the registered entity. e.g. 10.35079/hbm289.pcbm.487. This is set during the publication process and currently available for certain Collections and Datasets.' doi_url: type: string readOnly: true description: 'The url from the doi registry for this entity. e.g. https://doi.org/10.35079/hbm289.pcbm.487' creators: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who created the entity with full name, email, ORCID iD, institution, etc.. This is analogus to the author list on a publication.' contacts: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who are the main contacts to get information about the entity.' description: type: string description: 'Free text description of the donor' data_access_level: type: string readOnly: true enum: - consortium - public description: 'One of the values: public, consortium' metadata: type: object properties: organ_donor_data: type: array description: "Information about the donor who's organ(s) was/were used. The organ was obtained via an organ donation program from a deceased donor. Only living_donor_data or organ_donor_data, not both can be defined for a single donor." items: $ref: '#/components/schemas/DonorMetadata' living_donor_data: type: array description: "Information about the donor who's tissue was used. The tissue was obtained during a procedure. Only living_donor_data or organ_donor_data, not both can be defined for a single donor." items: $ref: '#/components/schemas/DonorMetadata' description: 'Donor metadata as an array of UMLS codes and descriptions' protocol_url: type: string description: 'The protocols.io doi url pointing the protocol describing the donor selection, inclusion/exclusion criteria' lab_donor_id: type: string description: 'A lab specific identifier for the donor.' submission_id: readOnly: true type: string description: 'The hubmap internal id with embedded semantic information e.g.: VAN0003. This id is generated at creation time which tracks the lab, donor, organ and sample hierarchy per the following: https://docs.google.com/document/d/1DjHgmqWF1VA5-3mfzLFNfabbzmc8KLSG9xWx1DDLlzo/edit?usp=sharing' group_uuid: type: string description: 'The uuid of globus group which the user who created this entity is a member of. This is required on Create/POST if the user creating the Donor is a member of more than one write group. This property cannot be set via PUT (only on Create/POST).' group_name: readOnly: true type: string description: 'The displayname of globus group which the user who created this entity is a member of' label: type: string description: 'Lab provided, de-identified name for the donor' Sample: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Sample'] type: string readOnly: true description: 'Entity type constant' registered_doi: type: string description: 'The doi of a the registered entity. e.g. 10.35079/hbm289.pcbm.487. This is set during the publication process and currently available for certain Collections and Datasets.' doi_url: type: string readOnly: true description: 'The url from the doi registry for this entity. e.g. https://doi.org/10.35079/hbm289.pcbm.487' creators: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who created the entity with full name, email, ORCID iD, institution, etc.. This is analogus to the author list on a publication.' contacts: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who are the main contacts to get information about the entity.' description: type: string description: 'Free text description of the sample' data_access_level: type: string enum: - consortium - public description: 'One of the values: public, consortium.' sample_category: type: string enum: - organ - block - section - suspension description: 'A code representing the type of specimen. Must be an organ, block, section, or suspension, in all lower case.' protocol_url: type: string description: 'The protocols.io doi url pointing the protocol under wich the sample was obtained and/or prepared.' group_uuid: type: string description: 'The uuid of globus group which the user who created this entity is a member of. This is required on Create/POST if the user creating the Donor is a member of more than one write group. This property cannot be set via PUT (only on Create/POST).' group_name: readOnly: true type: string description: 'The displayname of globus group which the user who created this entity is a member of' organ: type: string enum: - AO - BL - BD - BM - BR - LF - RF - HT - LB - LE - LI - LK - LL - LN - LV - LY - LO - RO - OT - PA - PL - RB - RE - RK - RL - RN - SI - SK - SP - ST - TH - TR - UR - UT description: 'Organ code specifier, only set if sample_category == organ. Valid values found in: [organ types](https://ontology.api.hubmapconsortium.org/organs/by-code?application_context=HUBMAP)' direct_ancestor_uuid: type: string writeOnly: true description: 'The uuid of source entity from which this new entity is derived from. Used on creation or edit to create an action and relationship to the ancestor. The direct ancestor must be a Donor or Sample. If the direct ancestor is a Donor, the sample must be of type organ.' direct_ancestor: $ref: '#/components/schemas/Donor' submission_id: type: string description: 'The hubmap internal id with embedded semantic information e.g.: VAN0003-LK-1-10. This id is generated at creation time which tracks the lab, donor, organ and sample hierarchy per the following: https://docs.google.com/document/d/1DjHgmqWF1VA5-3mfzLFNfabbzmc8KLSG9xWx1DDLlzo/edit?usp=sharing' lab_tissue_sample_id: type: string description: 'Lab specific id for the sample.' metadata: $ref: '#/components/schemas/SampleMetadata' rui_location: type: object description: 'The sample location and orientation in the ancestor organ as specified in the RUI tool. Returned as a json object.' visit: type: string description: 'The visit id for the donor/patient when the sample was obtained.' rui_exemption: type: boolean description: 'Identifies Sample Blocks that are exempt from spatial registration via RUI.' Dataset: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' error_message: type: string readOnly: false description: 'An open text field that holds the last error message that arose from pipeline validation or analysis.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Dataset'] type: string readOnly: true description: 'Entity type constant' registered_doi: type: string description: 'The doi of a the registered entity. e.g. 10.35079/hbm289.pcbm.487. This is set during the publication process and currently available for certain Collections and Datasets.' doi_url: type: string readOnly: true description: 'The url from the doi registry for this entity. e.g. https://doi.org/10.35079/hbm289.pcbm.487' creators: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who created the entity with full name, email, ORCID iD, institution, etc.. This is analogus to the author list on a publication.' contacts: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who are the main contacts to get information about the entity.' antibodies: type: array items: $ref: '#/components/schemas/Antibody' description: 'A list of antibodies used in the assay that created the dataset' description: type: string description: 'Free text description of the dataset' data_access_level: type: string readOnly: true enum: - public - consortium description: 'One of the values: public, consortium.' contains_human_genetic_sequences: type: boolean description: 'True if the data contains any human genetic sequence information. Can only be set at CREATE/POST time' status: type: string enum: - New - Processing - QA - Published - Error - Hold - Invalid - Submitted - Incomplete - Approval - Retracted description: 'One of: New|Processing|Published|QA|Error|Hold|Invalid|Submitted|Incomplete|Approval|Retracted' title: type: string description: 'The dataset title.' data_types: type: array items: type: string enum: - AF - ATACseq-bulk - bulk_atacseq - cell-dive - CODEX - codex_cytokit - DART-FISH - image_pyramid - IMC - 3D-IMC - lc-ms_label-free - lc-ms_labeled - lc-ms-ms_label-free - lc-ms-ms_labeled - LC-MS-untargeted - Lightsheet - MALDI-IMS-neg - MALDI-IMS-pos - MxIF - PAS - bulk-RNA - salmon_rnaseq_bulk - SNAREseq - sc_atac_seq_snare_lab - sc_atac_seq_snare - scRNA-Seq-10x - salmon_rnaseq_10x - sc_rna_seq_snare_lab - salmon_rnaseq_snareseq - sciATACseq - sc_atac_seq_sci - sciRNAseq - salmon_rnaseq_sciseq - seqFish - seqFish_lab_processed - snATACseq - sn_atac_seq - snRNAseq - salmon_sn_rnaseq_10x - Slide-seq - Targeted-Shotgun-LC-MS - TMT-LC-MS - WGS description: 'The data or assay types contained in this dataset as a json array of strings.' collections: readOnly: true type: array items: $ref: '#/components/schemas/Collection' description: 'A list of collections that this dataset belongs to.' upload: $ref: '#/components/schemas/Upload' contributors: readOnly: true type: array items: $ref: '#/components/schemas/Person' description: 'A list of people who contributed to the creation of this dataset. Returned as an array of contributor where the structure of a contributor is' direct_ancestors: readOnly: true type: array items: anyOf: - $ref: '#/components/schemas/Sample' - $ref: '#/components/schemas/Dataset' description: 'A list of direct parent ancensters (one level above) that the Dataset was derived from.' published_timestamp: readOnly: true type: integer description: 'The timestamp of when the dataset was published. The format is an integer representing milliseconds since midnight, Jan 1, 1970.' published_user_displayname: readOnly: true type: string description: 'The name of the authenticated user or process that published the data.' published_user_sub: readOnly: true type: string description: 'The subject id for the user who published the data as provided by the authorization mechanism for the person or process authenticated when the dataset was published.' published_user_email: readOnly: true type: string description: 'The email address of the user who published the provided by the authorization mechanism for the person or process authenticated when published.' ingest_metadata: type: object description: 'Information associated with running the ingest and processing pipelines.' metadata: type: object description: 'Metadata associated with the ingested experimental data.' files: type: array items: $ref: '#/components/schemas/File' description: 'A list of files associated with the dataset.' calculated_metadata: type: object description: 'Calculated metadata outputted from the processing pipeline.' local_directory_rel_path: type: string readOnly: true description: 'The path on the local HIVE file system, relative to the base data directory, where the data is stored.' group_uuid: type: string description: 'The uuid of globus group which the user who created this entity is a member of. This is required on Create/POST if the user creating the Donor is a member of more than one write group. This property cannot be set via PUT (only on Create/POST).' group_name: type: string readOnly: true description: 'The displayname of globus group which the user who created this entity is a member of' previous_revision_uuid: type: string description: 'The uuid of previous revision dataset. Can only be set at Create/POST time.' next_revision_uuid: type: string readOnly: true description: 'The uuid of next revision dataset' previous_revision_uuids: type: array items: type: string description: 'The uuids of previous revision datasets. Can only be set at Create/POST time.' next_revision_uuids: type: array items: type: string readOnly: true description: 'The uuids of next revision dataset' thumbnail_file: readOnly: true type: object description: 'The dataset thumbnail file detail. Stored in db as a stringfied json, e.g., {"filename": "thumbnail.jpg", "file_uuid": "c35002f9c3d49f8b77e1e2cd4a01803d"}' thumbnail_file_to_add: writeOnly: true type: string description: 'Just a temporary file id. Provide as a json object with an temp_file_id like {"temp_file_id":"dzevgd6xjs4d5grmcp4n"}' thumbnail_file_to_remove: writeOnly: true type: string format: uuid description: 'The thumbnail image file previously uploaded to delete. Provide as a string of the file_uuid like: "c35002f9c3d49f8b77e1e2cd4a01803d"' retraction_reason: type: string description: 'Information recorded about why a the dataset was retracted.' dbgap_sra_experiment_url: type: string description: 'A URL linking the dataset to the associated uploaded data at dbGaP.' dbgap_study_url: type: string description: 'A URL linking the dataset to the particular study on dbGap it belongs to' creation_action: type: string description: 'The associated action that represents the creation of that dataset' intended_dataset_type: type: string description: 'The dataset type of the intended datasets that will be uploaded as part of the Upload.' intended_organ: type: string description: 'The organ code representing the organ type that the data contained in the upload will be registered/associated with.' priority_project_list: type: array description: 'The list of priority projects that this Dataset data will be used For' Upload: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' error_message: type: string readOnly: false description: 'An open text field that holds the last error message that arose from pipeline validation or analysis.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Upload'] type: string readOnly: true description: 'Entity type constant' description: type: string description: 'Free text description of the data being submitted.' title: type: string description: 'Title of the datasets, a sentance or less' status: type: string enum: - New - Valid - Invalid - Error - Reorganized - Processing - Submitted - Incomplete description: 'One of: New|Valid|Invalid|Error|Reorganized|Processing|Submitted|Incomplete' validation_message: type: string description: A message from the validataion tools describing what is invalid with the upload. group_uuid: type: string description: 'The uuid of globus group which the user who created this entity is a member of. This is required on Create/POST if the user creating the Donor is a member of more than one write group. This property cannot be set via PUT (only on Create/POST).' group_name: type: string readOnly: true description: 'The displayname of globus group which the user who created this entity is a member of' dataset_uuids_to_link: type: array items: type: string writeOnly: true description: 'List of datasets to add to the Upload. Provide as a json array of the dataset uuids like: ["232934234234234234234270c0ea6c51d604a850558ef2247d0b4", "230948203482234234234a57bfe9c056d08a0f8e6cd612baa3bfa"]' dataset_uuids_to_unlink: type: array items: type: string writeOnly: true description: 'List of datasets to remove from a Upload. Provide as a json array of the dataset uuids like: ["232934234234234234234270c0ea6c51d604a850558ef2247d0b4", "230948203482234234234a57bfe9c056d08a0f8e6cd612baa3bfa"]' datasets: type: array items: $ref: '#/components/schemas/Dataset' readOnly: true description: 'The datasets that are contained in this Upload.' anticipated_complete_upload_month: type: string description: 'The month that the Upload is anticipated to have all required data uploaded, in the format YYYY-MM.' anticipated_dataset_count: type: integer description: 'The total number of datasets that this Upload will eventually contain.' priority_project_list: type: array description: 'The list of priority projects that this Upload data will be used For' Collection: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' associated_publication: type: object description: 'The publication associated with the given collection' readOnly: true created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Collection'] type: string readOnly: true description: 'Entity type constant' registered_doi: type: string description: 'The doi of a the registered entity. e.g. 10.35079/hbm289.pcbm.487. This is set during the publication process and currently available for certain Collections and Datasets.' doi_url: type: string readOnly: true description: 'The url from the doi registry for this entity. e.g. https://doi.org/10.35079/hbm289.pcbm.487' contributors: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who created the entity with full name, email, ORCID iD, institution, etc.. This is analogus to the author list on a publication.' contacts: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who are the main contacts to get information about the entity.' title: type: string description: 'The title of the Collection' datasets: type: array readOnly: true items: $ref: '#/components/schemas/Dataset' description: 'The datasets that are contained in the Collection.' Publication: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' error_message: type: string readOnly: false description: 'An open text field that holds the last error message that arose from pipeline validation or analysis.' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Publication'] type: string readOnly: true description: 'Entity type constant' registered_doi: type: string description: 'The doi of a the registered entity. e.g. 10.35079/hbm289.pcbm.487. This is set during the publication process and currently available for certain Collections and Datasets.' doi_url: type: string readOnly: true description: 'The url from the doi registry for this entity. e.g. https://doi.org/10.35079/hbm289.pcbm.487' creators: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who created the entity with full name, email, ORCID iD, institution, etc.. This is analogus to the author list on a publication.' contacts: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who are the main contacts to get information about the entity.' antibodies: type: array items: $ref: '#/components/schemas/Antibody' description: 'A list of antibodies used in the assay that created the dataset' description: type: string description: 'Free text description of the dataset' data_access_level: type: string readOnly: true enum: - public - consortium description: 'One of the values: public, consortium.' contains_human_genetic_sequences: type: boolean description: 'True if the data contains any human genetic sequence information. Can only be set at CREATE/POST time' status: type: string enum: - New - Processing - QA - Published - Error - Hold - Invalid - Submitted - Incomplete - Approval - Retracted description: 'One of: New|Processing|Published|QA|Error|Hold|Invalid|Submitted|Incomplete|Approval|Retracted' title: type: string description: 'The Publication title.' data_types: type: array items: type: string enum: - AF - ATACseq-bulk - bulk_atacseq - cell-dive - CODEX - codex_cytokit - DART-FISH - image_pyramid - IMC - 3D-IMC - lc-ms_label-free - lc-ms_labeled - lc-ms-ms_label-free - lc-ms-ms_labeled - LC-MS-untargeted - Lightsheet - MALDI-IMS-neg - MALDI-IMS-pos - MxIF - PAS - bulk-RNA - salmon_rnaseq_bulk - SNAREseq - sc_atac_seq_snare_lab - sc_atac_seq_snare - scRNA-Seq-10x - salmon_rnaseq_10x - sc_rna_seq_snare_lab - salmon_rnaseq_snareseq - sciATACseq - sc_atac_seq_sci - sciRNAseq - salmon_rnaseq_sciseq - seqFish - seqFish_lab_processed - snATACseq - sn_atac_seq - snRNAseq - salmon_sn_rnaseq_10x - Slide-seq - Targeted-Shotgun-LC-MS - TMT-LC-MS - WGS description: 'The data or assay types contained in this dataset as a json array of strings.' collections: readOnly: true type: array items: $ref: '#/components/schemas/Collection' description: 'A list of collections that this dataset belongs to.' upload: $ref: '#/components/schemas/Upload' contributors: readOnly: true type: array items: $ref: '#/components/schemas/Person' description: 'A list of people who contributed to the creation of this dataset. Returned as an array of contributor where the structure of a contributor is' direct_ancestors: readOnly: true type: array items: anyOf: - $ref: '#/components/schemas/Sample' - $ref: '#/components/schemas/Dataset' - $ref: '#/components/schemas/Publication' description: 'A list of direct parent ancensters (one level above) that the Dataset was derived from.' published_timestamp: readOnly: true type: integer description: 'The timestamp of when the dataset was published. The format is an integer representing milliseconds since midnight, Jan 1, 1970.' published_user_displayname: readOnly: true type: string description: 'The name of the authenticated user or process that published the data.' published_user_sub: readOnly: true type: string description: 'The subject id for the user who published the data as provided by the authorization mechanism for the person or process authenticated when the dataset was published.' published_user_email: readOnly: true type: string description: 'The email address of the user who published the provided by the authorization mechanism for the person or process authenticated when published.' ingest_metadata: type: object description: 'Information associated with running the ingest and processing pipelines.' metadata: type: object description: 'Metadata associated with the ingested experimental data.' files: type: array items: $ref: '#/components/schemas/File' description: 'A list of files associated with the dataset.' calculated_metadata: type: object description: 'Calculated metadata outputted from the processing pipeline.' local_directory_rel_path: type: string readOnly: true description: 'The path on the local HIVE file system, relative to the base data directory, where the data is stored.' group_uuid: type: string description: 'The uuid of globus group which the user who created this entity is a member of. This is required on Create/POST if the user creating the Donor is a member of more than one write group. This property cannot be set via PUT (only on Create/POST).' group_name: type: string readOnly: true description: 'The displayname of globus group which the user who created this entity is a member of' previous_revision_uuid: type: string description: 'The uuid of previous revision dataset. Can only be set at Create/POST time.' next_revision_uuid: type: string readOnly: true description: 'The uuid of next revision dataset' thumbnail_file: readOnly: true type: object description: 'The dataset thumbnail file detail. Stored in db as a stringfied json, e.g., {"filename": "thumbnail.jpg", "file_uuid": "c35002f9c3d49f8b77e1e2cd4a01803d"}' thumbnail_file_to_add: writeOnly: true type: string description: 'Just a temporary file id. Provide as a json object with an temp_file_id like {"temp_file_id":"dzevgd6xjs4d5grmcp4n"}' thumbnail_file_to_remove: writeOnly: true type: string format: uuid description: 'The thumbnail image file previously uploaded to delete. Provide as a string of the file_uuid like: "c35002f9c3d49f8b77e1e2cd4a01803d"' sub_status: type: string description: 'A sub-status provided to further define the status. The only current allowable value is "Retracted"' retraction_reason: type: string description: 'Information recorded about why a the dataset was retracted.' dbgap_sra_experiment_url: type: string description: 'A URL linking the dataset to the associated uploaded data at dbGaP.' dbgap_study_url: type: string description: 'A URL linking the dataset to the particular study on dbGap it belongs to' publication_date: type: string description: 'The date of publication' publication_doi: type: string description: 'The doi of the publication. (##.####/[alpha-numeric-string])' publication_url: type: string description: 'he URL at the publishers server for print/pre-print (http(s)://[alpha-numeric-string].[alpha-numeric-string].[...])' publication_venue: type: string description: 'The venue of the publication, journal, conference, preprint server, etc...' volume: type: integer description: 'The volume number of a journal that it was published in.' issue: type: integer description: 'The issue number of the journal that it was published in.' pages_or_article_num: type: string description: 'The pages or the article number in the publication journal e.g., “23”, “23-49”, “e1003424”.' omap_doi: type: string description: 'A DOI pointing to an Organ Mapping Antibody Panel relevant to this publication' associated_collection_uuid: type: string writeOnly: true description: 'The uuid of the associated collection for a given publication.' associated_collection: type: object description: 'The associated collection for a given publication' Epicollection: type: object properties: created_timestamp: type: integer readOnly: true description: 'The timestamp of when the node was created. The format is an integer representing milliseconds since midnight Jan 1, 1970' created_by_user_displayname: type: string readOnly: true description: 'The name of the person or process authenticated when creating the object' created_by_user_email: type: string readOnly: true description: 'The email address of the person or process authenticated when creating the object.' created_by_user_sub: type: string readOnly: true description: 'The subject id as provided by the authorization mechanism for the person or process authenticated when creating the object.' uuid: type: string readOnly: true description: 'The HuBMAP unique identifier, intended for internal software use only. This is a 32 digit hexadecimal uuid e.g. 461bbfdc353a2673e381f632510b0f17' hubmap_id: type: string readOnly: true description: 'A HuBMAP Consortium wide unique identifier randomly generated in the format HBM###.ABCD.### for every entity.' last_modified_timestamp: type: integer readOnly: true description: 'The timestamp of when the object was last modified. The format is an integer representing milliseconds since midnight, Jan 1, 1970' last_modified_user_sub: type: string readOnly: true description: 'The subject id of the user who last modified the entity as provided by the authorization mechanism for the person or process authenticated when the object was modified.' last_modified_user_email: type: string readOnly: true description: 'The email address of the person or process which authenticated when the object was last modified.' last_modified_user_displayname: type: string readOnly: true description: 'The name of the person or process which authenticated when the object was last modified.' entity_type: enum: ['Epicollection'] type: string readOnly: true description: 'Entity type constant' registered_doi: type: string description: 'The doi of a the registered entity. e.g. 10.35079/hbm289.pcbm.487. This is set during the publication process and currently available for certain Collections and Datasets.' doi_url: type: string readOnly: true description: 'The url from the doi registry for this entity. e.g. https://doi.org/10.35079/hbm289.pcbm.487' contributors: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who created the entity with full name, email, ORCID iD, institution, etc.. This is analogus to the author list on a publication.' contacts: type: array items: $ref: '#/components/schemas/Person' description: 'A list of the people who are the main contacts to get information about the entity.' title: type: string description: 'The title of the Collection' datasets: type: array readOnly: true items: $ref: '#/components/schemas/Dataset' description: 'The datasets that are contained in the Collection.' examples: DonorExample: summary: An example of a donor response value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Donor' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] description: 'Description of the property' data_access_level: 'public' metadata: object protocol_url: '10.35079/protocols.io.abcdefghijkl' lab_donor_id: 'AB123' submission_id: 'AB1234' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'Harvard TMC' label: 'ABDonor1' SampleExample: summary: 'An example of a Sample response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Sample' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] description: 'Description of the property' data_access_level: 'public' sample_category: 'organ' organ: 'AO' protocol_url: '10.35079/protocols.io.abcdefghijkl' lab_tissue_sample_id: '12-345 Aorta AA-1' submission_id: 'AB1234' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' visit: 'abc123' rui_location: object rui_exemption: False DatasetExample: summary: 'An example of a Dataset response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Dataset' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] antibodies: [antibody objects] description: 'Description of the property' data_access_level: 'public' contains_human_genetic_sequences: False status: 'QA' title: 'Dataset Title' data_types: ['CODEX'] collections: [collection objects] contributors: [contributor objects] direct_ancestor: [Dataset or Sample objects] published_timestamp: 1710243867000 published_user_displayname: 'JaneDoe1' published_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' published_user_email: 'janedoe@example.com' ingest_metadata: object metadata: object files: [file objects] calculated_metadata: object local_directory_rel_path: 'public/University TMC/abcd1234ef56gh78ij90klmnop123456' previous_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' next_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' previous_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] next_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] thumbnail_file: object thumbnail_file_to_add: string thumbnail_file_to_remove: string sub_status: 'Retracted' retraction_reason: 'Retracted for errors' dbgap_study_url: url creation_action: 'Multi-Assay Split' intended_dataset_type: 'CODEX' intended_organ: 'AO' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' priority_project_list: ['MOSDAP'] UploadExample: summary: 'An example of an upload response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Upload' description: 'Description of the property' title: 'Dataset Title' status: 'QA' validation_message: 'A validation error has occurred' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' dataset_uuids_to_link: ['abcd1234-ef56-gh78-ij90-klmnop123456'] dataset_uuids_to_unlink: ['abcd1234-ef56-gh78-ij90-klmnop123456'] datasets: [dataset objects] priority_project_list: ['MOSDAP'] CollectionExample: summary: 'An example of a collection response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Collection' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' contributors: [contributor objects] contacts: [creator objects] description: 'Description of the property' title: 'Collection Title' datasets: [dataset objects] PublicationExample: summary: 'An example of a publication response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Publication' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] antibodies: [antibody objects] description: 'Description of the property' data_access_level: 'public' contains_human_genetic_sequences: False status: 'QA' title: 'Dataset Title' data_types: ['CODEX'] collections: [collection objects] upload: object contributors: [contributor objects] direct_ancestor: [Dataset or Sample objects] published_timestamp: 1710243867000 published_user_displayname: 'JaneDoe1' published_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' published_user_email: 'janedoe@example.com' ingest_metadata: object metadata: object files: [file objects] calculated_metadata: object local_directory_rel_path: 'public/University TMC/abcd1234ef56gh78ij90klmnop123456' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' previous_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' next_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' thumbnail_file: object thumbnail_file_to_add: string thumbnail_file_to_remove: string sub_status: 'Retracted' retraction_reason: 'Retracted for errors' dbgap_study_url: url dbgap_sra_experiment_url: url publication_date: 2023-07-19 publication_doi: '10.35079/hbm289.pcbm.487' publication:url: 'https://doi.org/10.35079/hbm289.pcbm.487' publication_venue: 'Nature' volume: 5 issue: 81 pages_or_article_num: 10 omap_doi: '10.35079/hbm289.pcbm.487' associated_collection_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' associated_collection: object EpicollectionExample: summary: 'An example of an Epicollection response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Epicollection' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' contributors: [contributor objects] contacts: [creator objects] title: 'Collection Title' datasets: [dataset objects] DatasetArrayExample: summary: 'An example of an array of dataset objects' value: - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Dataset' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] antibodies: [antibody objects] description: 'Description of the property' data_access_level: 'public' contains_human_genetic_sequences: False status: 'QA' title: 'Dataset Title' data_types: ['CODEX'] collections: [collection objects] contributors: [contributor objects] direct_ancestor: [Dataset or Sample objects] published_timestamp: 1710243867000 published_user_displayname: 'JaneDoe1' published_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' published_user_email: 'janedoe@example.com' ingest_metadata: object metadata: object files: [file objects] calculated_metadata: object local_directory_rel_path: 'public/University TMC/abcd1234ef56gh78ij90klmnop123456' previous_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' next_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' previous_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] next_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] thumbnail_file: object thumbnail_file_to_add: string thumbnail_file_to_remove: string sub_status: 'Retracted' retraction_reason: 'Retracted for errors' dbgap_study_url: url creation_action: 'Multi-Assay Split' intended_dataset_type: 'CODEX' intended_organ: 'AO' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' priority_project_list: ['MOSDAP'] - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Dataset' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] antibodies: [antibody objects] description: 'Description of the property' data_access_level: 'public' contains_human_genetic_sequences: False status: 'QA' title: 'Dataset Title' data_types: ['CODEX'] collections: [collection objects] contributors: [contributor objects] direct_ancestor: [Dataset or Sample objects] published_timestamp: 1710243867000 published_user_displayname: 'JaneDoe1' published_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' published_user_email: 'janedoe@example.com' ingest_metadata: object metadata: object files: [file objects] calculated_metadata: object local_directory_rel_path: 'public/University TMC/abcd1234ef56gh78ij90klmnop123456' previous_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' next_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' previous_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] next_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] thumbnail_file: object thumbnail_file_to_add: string thumbnail_file_to_remove: string sub_status: 'Retracted' retraction_reason: 'Retracted for errors' dbgap_study_url: url creation_action: 'Multi-Assay Split' intended_dataset_type: 'CODEX' intended_organ: 'AO' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' priority_project_list:: ['MOSDAP'] SampleArrayExample: summary: 'An example of an array of sample objects' value: - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Sample' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] description: 'Description of the property' data_access_level: 'public' sample_category: 'organ' organ: 'AO' protocol_url: '10.35079/protocols.io.abcdefghijkl' lab_tissue_sample_id: '12-345 Aorta AA-1' submission_id: 'AB1234' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' visit: 'abc123' rui_location: object rui_exemption: False - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Sample' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] description: 'Description of the property' data_access_level: 'public' sample_category: 'organ' organ: 'AO' protocol_url: '10.35079/protocols.io.abcdefghijkl' lab_tissue_sample_id: '12-345 Aorta AA-1' submission_id: 'AB1234' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' visit: 'abc123' rui_location: object rui_exemption: False CollectionArrayExample: summary: 'An example of an array of collection objects' value: - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Collection' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' contributors: [contributor objects] contacts: [creator objects] description: 'Description of the property' title: 'Collection Title' datasets: [dataset objects] - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Collection' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' contributors: [contributor objects] contacts: [creator objects] description: 'Description of the property' title: 'Collection Title' datasets: [dataset objects] UploadArrayExample: summary: 'An example of an Upload array.' value: - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Upload' description: 'Description of the property' title: 'Dataset Title' status: 'QA' validation_message: 'A validation error has occurred' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' dataset_uuids_to_link: ['abcd1234-ef56-gh78-ij90-klmnop123456'] dataset_uuids_to_unlink: ['abcd1234-ef56-gh78-ij90-klmnop123456'] datasets: [dataset objects] priority_project_list: ['MOSDAP'] - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Upload' description: 'Description of the property' title: 'Dataset Title' status: 'QA' validation_message: 'A validation error has occurred' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' dataset_uuids_to_link: ['abcd1234-ef56-gh78-ij90-klmnop123456'] dataset_uuids_to_unlink: ['abcd1234-ef56-gh78-ij90-klmnop123456'] datasets: [dataset objects] priority_project_list: ['MOSDAP'] DatasetProvMetadata: summary: 'An example of a dataset prov metadata response' value: created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' error_message: 'An error has occurred' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Dataset' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] antibodies: [antibody objects] description: 'Description of the property' data_access_level: 'public' contains_human_genetic_sequences: False status: 'QA' title: 'Dataset Title' data_types: ['CODEX'] collections: [collection objects] contributors: [contributor objects] direct_ancestor: [Dataset or Sample objects] published_timestamp: 1710243867000 published_user_displayname: 'JaneDoe1' published_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' published_user_email: 'janedoe@example.com' ingest_metadata: object metadata: object files: [file objects] calculated_metadata: object local_directory_rel_path: 'public/University TMC/abcd1234ef56gh78ij90klmnop123456' previous_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' next_revision_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' previous_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] next_revision_uuids: ['abcd1234-ef56-gh78-ij90-klmnop123456'] thumbnail_file: object thumbnail_file_to_add: string thumbnail_file_to_remove: string sub_status: 'Retracted' retraction_reason: 'Retracted for errors' dbgap_study_url: url creation_action: 'Multi-Assay Split' intended_dataset_type: 'CODEX' intended_organ: 'AO' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'University TMC' samples: [sample object] organs: [sample object] donors: [donor object] DonorArrayExample: summary: 'An example of a Donor array.' value: - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Donor' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] description: 'Description of the property' data_access_level: 'public' metadata: object protocol_url: '10.35079/protocols.io.abcdefghijkl' lab_donor_id: 'AB123' submission_id: 'AB1234' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'Harvard TMC' label: 'ABDonor1' - created_timestamp: 1710243867000 created_by_user_displayname: 'JaneDoe1' created_by_user_email: 'janedoe@example.com' created_by_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' last_modified_timestamp: 1710243867000 last_modified_user_sub: 'abcd1234-ef56-gh78-ij90-klmnop123456' last_modified_user_email: 'janedoe@example.com' last_modified_user_displayname: 'JaneDoe1' entity_type: 'Donor' registered_doi: '10.35079/hbm289.pcbm.487' doi_url: 'https://doi.org/10.35079/hbm289.pcbm.487' creators: [creator objects] contacts: [contact objects] description: 'Description of the property' data_access_level: 'public' metadata: object protocol_url: '10.35079/protocols.io.abcdefghijkl' lab_donor_id: 'AB123' submission_id: 'AB1234' group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' group_name: 'Harvard TMC' label: 'ABDonor1' paths: '/entities/{id}': get: summary: Retrieve a provenance entity by id. Entity types of Donor, Sample and Datasets. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID (32 digit hexadecimal number) required: true schema: type: string responses: '200': description: The entity details content: application/json: schema: type: object examples: DonorExample: $ref: '#/components/examples/DonorExample' SampleExample: $ref: '#/components/examples/SampleExample' DatasetExample: $ref: '#/components/examples/DatasetExample' UploadExample: $ref: '#/components/examples/UploadExample' CollectionExample: $ref: '#/components/examples/CollectionExample' PublicationExample: $ref: '#/components/examples/PublicationExample' EpicollectionExample: $ref: '#/components/examples/EpicollectionExample' '400': description: Invalid or misformatted entity identifier was provided. '401': description: The user's bearer token has expired or the user did not supply a valid token. '403': description: The user is not authorized to retrieve the referenced entity. '404': description: The target entity could not be found. '500': description: An unexpected error occurred. put: summary: 'Update the properties of a given Donor, Sample, Dataset or Upload' parameters: - name: id in: path description: The HuBMAP ID (e.g. HBM123.ABCD.456) or UUID of target entity required: true schema: type: string requestBody: content: application/json: schema: type: object responses: '200': description: Message of the entity was successfully updated content: application/json: schema: type: object examples: updateexample: value: "message": "Dataset of d88abad31fefc978fbb19dbcd977deae has been updated" '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '404': description: The target entity could not be found '500': description: Internal error '/entity-types': get: summary: Get a list of all the available entity types defined in the schema yaml responses: '200': description: An array of entity types is returned content: application/json: schema: type: array items: type: string examples: entitytypes: summary: List of entity types value: - "Collection" - "Dataset" - "Publication" - "Donor" - "Sample" - "Upload" - "Epicollection" '401': description: The user's token has expired or the user did not supply a valid token '403': description: THe user is not authorized to use this method '500': description: Internal error '/ancestors/{id}': get: summary: Get the ancestor list for an Entity. The ancestors are the nodes connected "upstream" from the current node. This list traverses all the levels in the graph. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: An array of ancestors is returned content: application/json: schema: type: array items: type: object examples: ancestorsarray: $ref: '#/components/examples/DatasetArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity '404': description: The target entity could not be found '500': description: Internal error '/descendants/{id}': get: summary: Get the descendant list for an Entity. The descendants are the nodes "downstream" from the current node. This list traverses all the levels in the graph. Returns all descendants as an array of Entities. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: An array of descendants is returned content: application/json: schema: type: array items: type: object examples: ancestorsarray: $ref: '#/components/examples/DatasetArrayExample' '303': description: If the total response payload exceeds 10 MB, the response is returned via an S3 bucket. A 303 HTTP response code will be returned with the redirect URL where the query can be retrieved. '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity. '404': description: The target entity could not be found '500': description: Internal error '/parents/{id}': get: summary: Get the immediate parent list for an Entity. The parents are the nodes connected one level "upstream" from the current node. This list only goes to the next higher level in the graph. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: An array of parent entities is returned content: application/json: schema: type: array items: type: object examples: ancestorsarray: $ref: '#/components/examples/DatasetArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity. '404': description: The target entity could not be found '500': description: Internal error '/children/{id}': get: summary: Get the list of children directly connected to an Entity. The children are the nodes one level below the current node. This list only returns the items one level below in the graph. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: An array of children entities is returned content: application/json: schema: type: array items: type: object examples: ancestorsarray: $ref: '#/components/examples/DatasetArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/siblings': get: summary: Get the siblings list for an Entity. The siblings have the same direct ancestor. This list does not include all nodes whom have common ancestors, only the direct ancestor. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string - name: include-old-revisions in: query description: A case insensitive string. Any value besides true will have no effect. If the string is 'true', datasets that are have newer revisions will be included, otherwise by default they are not included. required: false schema: type: string enum: ['true', 'false'] - name: status in: query description: A case insensitive string. Any value besides 'New', 'Qa', and 'Published' will raise an error. If a valid status is provided, only results matching that status (if they are datasets) will be returned required: false schema: type: string enum: ['New', 'QA', 'Published'] - name: property_key in: query description: A case insensitive string. Any value besides 'uuid' will raise an error. If property_key=uuid is provided, rather than entire dictionary representations of each node, only the list of matching uuid's will be returned required: false schema: type: string enum: ['uuid'] responses: '200': description: An array of sibling entities is returned content: application/json: schema: type: array items: type: object examples: ancestorsarray: $ref: '#/components/examples/DatasetArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity. '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/tuplets': get: summary: Get the tuplets list for an Entity. The tuplets have the same parent activity node. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string - name: status in: query description: A case insensitive string. Any value besides 'New', 'Qa', and 'Published' will raise an error. If a valid status is provided, only results matching that status (if they are datasets) will be returned required: false schema: type: string enum: ['New', 'QA', 'Published'] - name: property_key in: query description: A case insensitive string. Any value besides 'uuid' will raise an error. If property_key=uuid is provided, rather than entire dictionary representations of each node, only the list of matching uuid's will be returned required: false schema: type: string enum: ['uuid'] responses: '200': description: An array of tuplet entities is returned content: application/json: schema: type: array items: type: object examples: ancestorsarray: $ref: '#/components/examples/DatasetArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity. '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/collections': get: summary: Get the list of all collections the Entity belongs to. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string - name: property in: query description: A case insensitive string. Any value besides 'uuid' will raise an error. If property=uuid is provided, rather than entire dictionary representations of each node, only the list of matching uuid's will be returned required: false schema: type: string enum: ['uuid'] responses: '200': description: An array of collection entities is returned content: application/json: schema: type: array items: type: object examples: CollectionArrayExample: $ref: '#/components/examples/CollectionArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity. '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/uploads': get: summary: Get the list of all uploads the Entity belongs to. parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string - name: property in: query description: A case insensitive string. Any value besides 'uuid' will raise an error. If property=uuid is provided, rather than entire dictionary representations of each node, only the list of matching uuid's will be returned required: false schema: type: string enum: ['uuid'] responses: '200': description: An array of upload entities is returned content: application/json: schema: type: array items: type: object examples: UploadArrayExample: $ref: '#/components/examples/UploadArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to access the entity. '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/provenance': get: summary: "Get Provenance Data for Entity. This returns a PROV JSON compliant representation of the entity's provenance. Refer to this document for more information regarding [PROV JSON format](https://www.w3.org/Submission/2013/SUBM-prov-json-20130424/)" parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: successful operation content: application/json: schema: type: object '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the provenance of the given entity. '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/flush-cache': delete: summary: "Delete the cached data from Memcached for a given entity, HuBMAP-Read access is required in AWS API Gateway" parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: A confirmation message upon successful operation '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the provenance of the given entity. '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/instanceof/{type}': get: summary: Determines if the Entity with id is an instance of type parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string - name: type in: path description: The Entity Type Class as defined in entity-api-spec.yaml (e.g. Published) required: true schema: type: string responses: '200': description: An object with the attribute 'instanceof' that has a value of either 'true' of 'false' content: application/json: schema: type: object examples: instanceofexample: summary: 'An example of the object returned from instanceof endpoint' value: "instanceof": false '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to retrieve the entity '404': description: The target entity could not be found '500': description: Internal error '/entities/type/{type_a}/instanceof/{type_b}': get: summary: Determines if the Entity type type_a is an instance of type_b parameters: - name: type_a in: path description: The unique identifier of entity (e.g. Published) required: true schema: type: string - name: type_b in: path description: The Entity Type Class as defined in entity-api-spec.yaml (e.g. Dataset) required: true schema: type: string responses: '200': description: An object with the attribute 'instanceof' that has a value of either 'true' of 'false' content: application/json: schema: type: object examples: instanceofexample: summary: 'An example of the object returned from instanceof endpoint' value: "instanceof": false '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to retrieve the entity '404': description: The target entity could not be found '500': description: Internal error '/entities/{id}/ancestor-organs': get: summary: Retrievea list of ancestor organ(s) of a given uuid parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: An array of Samples (sub-type organ) are returned content: application/json: schema: type: array items: type: object examples: SampleArrayExample: $ref: '#/components/examples/SampleArrayExample' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to retrieve the entity '404': description: The target entity could not be found '500': description: Internal error '/entities/multiple-samples/{count}': post: summary: "Create multiple samples from the same source entity. 'count' samples will be generated each with individual uuids, hubmap_ids and submission_ids." parameters: - name: count in: path description: The number of samples to be created required: true schema: type: string responses: '200': description: The samples were successfully created. An array of objects each containing a uuid, hubmap_id and submission_id associated with each newly created sample. content: application/json: schema: type: array items: type: object examples: multiplesamplesexample: value: - uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' submission_id: 'AB1234' - uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' hubmap_id: 'HBM123.ABCD.456' submission_id: 'AB1234' '400': description: Invalid json input '401': description: The user's token has expired or the user did not supply a valid token '500': description: Internal error '/doi/redirect/{id}': get: summary: Redirect a request from a doi service parameters: - name: id in: path description: The HuBMAP ID (e.g. HBM123.ABCD.456) or UUID of the target collection required: true schema: type: string responses: '307': description: Redirect to the entities landing page '400': description: Invalid or misformatted collection identifier '500': description: Internal error '/entities/{id}/globus-url': get: summary: Get the Globus URL to the given Dataset or Upload entity parameters: - name: id in: path description: The HuBMA`P ID (e.g. HBM123.ABCD.456) or UUID of the given ntity required: true schema: type: string responses: '200': description: Returns the Globus service URL pointing to the Dataset or Upload data is returned content: text/plain: schema: type: string examples: exampleglobusurl: value: 'https://app.globus.org/file-manager?origin_id=abcd1234-ef56-gh78-ij90-klmnop123456&origin_path=%2abcd1234ef56gh78ij90klmnop123456%2F' '400': description: Invalid or misformatted entity identifier '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not autorizized to access the data '404': description: The target entity could not be found '500': description: Internal error '/datasets/{id}/prov-metadata': get: summary: 'Returns full provenance metadata for a Dataset, which can be used when publishing the Dataset.' parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID (32 digit hexadecimal number) required: true schema: type: string responses: '200': description: Full provenance information for the given dataset as JSON in the Response body. content: application/json: schema: type: object examples: DatasetProvMetadata: $ref: '#/components/examples/DatasetProvMetadata' '401': description: The user's token has expired or the user did not supply a valid token '403': description: THe user is not authorized to use this method '500': description: Internal error '/datasets/{id}/latest-revision': get: summary: 'Retrive the latest (newest) revision of a given Dataset. Public/Consortium access rules apply - if no token/consortium access then must be for a public dataset and the returned Dataset must be the latest public version. If the given dataset itself is the latest revision, meaning it has no next revisions, this dataset gets returned.' parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: successful operation content: application/json: schema: type: object examples: DatasetExample: $ref: '#/components/examples/DatasetExample' '400': description: Invalid or misformatted entity identifier, or the given entity is not a Dataset '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the latest revision of the given dataset. '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/revision': get: summary: 'Retrive the calculated revision number of a Dataset. The calculated revision is number is based on the [:REVISION_OF] relationships to the oldest dataset in a revision chain. Where the oldest dataset = 1 and each newer version is incremented by one (1, 2, 3 ...). Public/Consortium access rules apply, if is for a non-public dataset and no token or a token without membership in HuBMAP-Read group is sent with the request then a 403 response should be returned.' parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: The revision number (integer) on successful operation content: application/json: schema: type: integer '400': description: Invalid or misformatted entity identifier, or the given entity is not a Dataset '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the revision number of the given dataset. '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/revisions': get: summary: 'From a given ID of a versioned dataset, retrieve a list of every dataset in the chain ordered from most recent to oldest. The revision number, as well as the dataset uuid will be included. An optional parameter ?include_dataset=true will include the full dataset for each revision as well. Public/Consortium access rules apply, if is for a non-public dataset and no token or a token without membership in HuBMAP-Read group is sent with the request then a 403 response should be returned. If the given id is published, but later revisions are not and the user is not in HuBMAP-Read group, only published revisions will be returned. The field next_revision_uuid will not be returned if the next revision is unpublished' parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string - name: include_dataset in: query description: A case insensitive string. Any value besides true will have no effect. If the string is 'true', the full dataset for each revision will be included in the response required: false schema: type: string enum: ['true', 'false'] responses: '200': description: The list of revised datasets that the referenced dataset is a member of including the index number of the revision, where 1 is the oldest version of any revision chain content: application/json: schema: type: object examples: DatasetArrayExample: $ref: '#/components/examples/DatasetArrayExample' '400': description: Invalid or misformatted entity identifier, or the given entity is not a Dataset '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the revision number of the given dataset. '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/organs': get: summary: Retrieve a list of all of the smples that are organs that are associated with the dataset id parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: A list of entity_type == Sample with sample_category == organ associated with the dataset id content: application/json: schema: type: array items: type: object examples: SampleArrayExample: $ref: '#/components/examples/SampleArrayExample' '400': description: Invalid or misformatted entity identifier, or the given entity is not a Dataset '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the revision number of the given dataset. '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/samples': get: summary: Retrieve a list of all of the samples that are not organs that are associated with the dataset id parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: A list of entity_type == Sample with sample_category != organ associated with the dataset id content: application/json: schema: type: array items: type: object examples: SampleArrayExample: $ref: '#/components/examples/SampleArrayExample' '400': description: Invalid or misformatted entity identifier, or the given entity is not a Dataset '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the revision number of the given dataset. '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/donors': get: summary: Retrieve a list of all of the donors that are associated with the dataset id parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string responses: '200': description: A list of entity_type == Donor that are associated with the dataset id content: application/json: schema: type: array items: type: object examples: DonorArrayExample: $ref: '#/components/examples/DonorArrayExample' '400': description: Invalid or misformatted entity identifier, or the given entity is not a Dataset '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the revision number of the given dataset. '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/retract': put: summary: 'Retracts a dataset after it has been published. Requires a json body with a single field {retraction_reason: string}. The dataset for the given id is modified to include this new retraction_reason field and sets the dataset property sub_status to Retracted. The complete modified dataset is returned. Requires that the dataset being retracted has already been published (dataset.status == Published. Requires a user token with membership in the HuBMAP-Data-Admin group otherwise then a 403 will be returned.' parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either a HubMAP ID (e.g. HBM123.ABCD.456) or UUID required: true schema: type: string requestBody: description: A json body with a single, required retraction_reason parameter contianing the reason why the dataset is being retracted. content: application/json: schema: type: object properties: retraction_reason: type: string description: Free text describing why the dataset was retracted responses: '200': description: The complete dataset with modified sub_status and retraction_reason content: application/json: schema: type: object examples: DatasetExample: $ref: '#/components/examples/DatasetExample' '400': description: Invalid or misformatted entity identifier, the given entity is not a Dataset, is not published or the required retraction_reason was not included in a json body '401': description: The user's token has expired or the user did not supply a valid token '403': description: The user is not authorized to query the retract the given dataset. The user must be a member of the HuBMAP-Data-Admin group '404': description: The target dataset could not be found '500': description: Internal error '/datasets/{id}/prov-info': get: summary: 'returns aLL provenance information for a single dataset in a default table/tsv format or optionally a json format when an optional ?format=json parameter is provided' parameters: - name: id in: path description: he unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID (32 digit hexadecimal number) required: true schema: type: string - name: format in: query description: "A case insensitive string. Any value besides 'json' will have no effect. If the string is 'json', provenance info will be returned as a json. Otherwise, it will be returned as a tsv file" required: false schema: type: string enum: ['json', 'tsv'] responses: '200': description: all provenance information for the given dataset either as a json list or as a tsv file to be downloaded content: text/tsv: schema: type: string application/json: schema: type: object examples: provinfoexample: summary: An example of a prov-info response value: dataset_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' dataset_hubmap_id: 'HBM123.ABCD.456' dataset_status: 'Published' dataset_group_name: 'University TMC' dataset_group_uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' dataset_date_time_created: 1710243867000 dataset_created_by_email: 'janedoe@example.com' dataset_date_time_modified: 1710243867000 dataset_modified_by_email: 'janedoe@example.com' dataset_lab_id: '12-345_lymph-node_R2' dataset_data_types: ['CODEX'] dataset_portl_url: 'https://portal.hubmapconsortium.org/browse/dataset/abcd1234ef56gh78ij90klmnop123456' first_sample_hubmap_id: ['abcd1234-ef56-gh78-ij90-klmnop123456'] first_sample_submission_id: ['AB1234'] first_sample_uuid: ['abcd1234-ef56-gh78-ij90-klmnop123456'] first_sample_portal_url: ['https://portal.hubmapconsortium.org/browse/sample/abcd1234ef56gh78ij90klmnop123456'] organ_hubmap_id: ['HBM123.ABCD.456'] organ_submission_id: ['AB1234'] organ_uuid: ['abcd1234-ef56-gh78-ij90-klmnop123456'] organ_type: ['AO'] donor_hubmap_id: ['HBM123.ABCD.456'] donor:submission_id: ['AB1234'] donor_uuid: ['abcd1234-ef56-gh78-ij90-klmnop123456'] donor_group_name: ['University TMC'] rui_location_hubmap_id: ['HBM123.ABCD.456'] rui_location_submission_id: ['AB1234'] rui_location_uuid: ['abcd1234-ef56-gh78-ij90-klmnop123456'] sample_metadata_hubmap_id: ['HBM123.ABCD.456'] sample_metadata_submission_id: ['AB1234'] sample_metadata_uuid: ['abcd1234-ef56-gh78-ij90-klmnop123456'] '401': description: The user's token has expired or the user did not supply a valid token '403': description: THe user is not authorized to use this method '500': description: Internal error '/datasets/sankey_data': get: summary: Retrieves the information needed to generate the sankey on software-docs as a json. responses: '200': description: dataset_group_name, organ_type, dataset_data_types, and dataset_status for every primary dataset content: application/json: schema: type: object examples: sankeyexample: value: dataset_group_name: "University TMC" organ_type: "AO" dataset_data_types: ["CODEX"] dataset_status: "Published" '500': description: Internal error '/datasets': put: summary: "Bulk updating of entity type dataset. it's only limited to the fields:: assigned_to_group_name, ingest_task, status" requestBody: required: true content: application/json: schema: type: array items: type: object responses: '202': description: request is being processed content: application/json: schema: type: array items: type: string description: The uuids of the entities being processed examples: datasetsarray: value: - 'abcd1234-ef56-gh78-ij90-klmnop123456' - 'abcd1234-ef56-gh78-ij90-klmnop123456' '500': description: Internal error '/uploads': put: summary: "Bulk updating of entity type upload. it's only limited to the fields:: assigned_to_group_name, ingest_task, status" requestBody: required: true content: application/json: schema: type: object responses: '202': description: request is being processed content: application/json: schema: type: array items: type: string description: The uuids of the entities being processed examples: uploadsarray: value: - 'abcd1234-ef56-gh78-ij90-klmnop123456' - 'abcd1234-ef56-gh78-ij90-klmnop123456' '500': description: Internal error '/datasets/unpublished': get: summary: returns information about all unpublished datasets in json or tsv format. Defaults to json parameters: - name: format in: query description: The desired return format required: false schema: type: string responses: '200': description: returns data_types, donor_hubmap_id, donor_submission_id, hubmap_id, organ, organization, provider_experiment_id, uuid for each unpublished dataset in the requested format content: text/tsv: schema: type: string application/json: schema: type: object examples: unpublishedexample: value: data_types: ['CODEX'] donor_hubmap_id: 'abcd1234-ef56-gh78-ij90-klmnop123456' donor_submission_id: 'AB1234' hubmap_id: 'HBM123.ABCD.456' organ: 'AO' organization: 'University TMC' provider_experiment_id: 'AB1234' uuid: 'abcd1234-ef56-gh78-ij90-klmnop123456' '404': description: Bad request. A query parameter is either invalid (accepted value; format) or its value is bad (accepted values; tsv|json) '401': description: The user's token has expired or the user did not supply a valid token '403': description: THe user is not authorized to use this method '500': description: Internal error '/datasets/{id}/paired-dataset': get: summary: Retrieve uuids for associated dataset of given data_type which shares a sample ancestor of given dataset id parameters: - name: id in: path description: The unique identifier of entity. This identifier can be either an HuBMAP ID (e.g. HBM123.ABCD.456) or UUID (32 digit hexadecimal number) required: true schema: type: string - name: data_type in: query description: The desired data_type to be searched for required: true schema: type: string - name: search_depth in: query description: The maximum number of generations of datasets beneath the sample to search for the paired dataset required: false schema: type: integer responses: '200': description: returns a list (json array) of the uuids (if any) of the matching paired datasets. content: application/json: schema: type: array items: type: string description: The unique identifier for the unpublished dataset examples: associateddatasetsarray: value: - 'abcd1234-ef56-gh78-ij90-klmnop123456' - 'abcd1234-ef56-gh78-ij90-klmnop123456' '404': description: Not found. No matching datasets were found, or the none were found that the user is authorized to see. '401': description: The user's token has expired or the user did not supply a valid token '403': description: The given dataset is unpublished and the user does not have the authorization to view it. '500': description: Internal error '/datasets/components': post: summary: Create multiple component datasets from a single Multi-Assay ancestor requestBody: required: true content: application/json: schema: type: object responses: '200': description: The entities were successfully created and are returned. content: application/json: schema: type: array items: type: object examples: DatasetExample: $ref: '#/components/examples/DatasetExample' '400': description: Invalid input. '404': description: Not found. No matching datasets were found, or the none were found that the user is authorized to see. '401': description: The user's token has expired or the user did not supply a valid token '403': description: The given dataset is unpublished and the user does not have the authorization to view it. '500': description: Internal error '/entities/batch-ids': post: summary: Retrieve the HuBMAP ID and UUID for each entity id provided in a list. requestBody: required: true content: application/json: schema: type: array description: List of entity identifiers (HuBMAP IDs or UUIDs) items: type: string responses: '200': description: Mapping of input entity identifiers to their resolved HuBMAP ID and UUID. If no items are found, will simply return empty. content: application/json: schema: type: object additionalProperties: type: object properties: hubmap_id: type: string description: Canonical HuBMAP ID for the entity uuid: type: string format: uuid description: UUID for the entity required: - hubmap_id - uuid examples: batchidsexample: value: HBM123.ABCD.456: hubmap_id: "HBM123.ABCD.456" uuid: "a8098c1a-f86e-11da-bd1a-00112444be1e" abcd1234-ef56-gh78-ij90-klmnop123456: hubmap_id: "HBM987.WXYZ.321" uuid: "abcd1234-ef56-gh78-ij90-klmnop123456" '500': description: Internal Error