github.com/Bio-core/jtree@v0.0.0-20190705165106-1d7a7e7d6272/swagger.yaml (about)

     1  ---
     2  swagger: "2.0"
     3  info:
     4    description: "Metadata API"
     5    version: "0.1.0"
     6    title: "Jtree Metadata API"
     7    contact:
     8      email: "info@distributedgenomics.ca"
     9    license:
    10      name: "GPL"
    11      url: "https://www.gnu.org/licenses/gpl-3.0.en.html"
    12  host: "virtserver.swaggerhub.com"
    13  basePath: "/Jtree/metadata/0.1.0"
    14  schemes:
    15  - "http"
    16  paths:
    17    /patient:
    18      post:
    19        summary: "adds a patient item"
    20        description: "Adds a patient to the system"
    21        operationId: "addPatient"
    22        consumes:
    23        - "application/json"
    24        produces:
    25        - "application/json"
    26        parameters:
    27        - in: "body"
    28          name: "patient"
    29          description: "Patient"
    30          required: false
    31          schema:
    32            $ref: "#/definitions/Patient"
    33        responses:
    34          201:
    35            description: "item created"
    36          400:
    37            description: "invalid input, object invalid"
    38          409:
    39            description: "an existing item already exists"
    40            
    41    /sample:
    42      post:
    43        summary: "adds a sample"
    44        description: "Adds a sample to the system"
    45        operationId: "addSample"
    46        consumes:
    47        - "application/json"
    48        produces:
    49        - "application/json"
    50        parameters:
    51        - in: "body"
    52          name: "sample"
    53          description: "Sample"
    54          required: false
    55          schema:
    56            $ref: "#/definitions/Sample"
    57        responses:
    58          201:
    59            description: "item created"
    60          400:
    61            description: "invalid input, object invalid"
    62          409:
    63            description: "an existing item already exists"
    64            
    65    /experiment:
    66      post:
    67        summary: "adds an experiment item"
    68        description: "Adds an experiment to the system"
    69        operationId: "addExperiment"
    70        consumes:
    71        - "application/json"
    72        produces:
    73        - "application/json"
    74        parameters:
    75        - in: "body"
    76          name: "experiment"
    77          description: "Experiment"
    78          required: false
    79          schema:
    80            $ref: "#/definitions/Experiment"
    81        responses:
    82          201:
    83            description: "item created"
    84          400:
    85            description: "invalid input, object invalid"
    86          409:
    87            description: "an existing item already exists"
    88            
    89    /result:
    90      post:
    91        summary: "adds a result item"
    92        description: "Adds a result to the system"
    93        operationId: "addResult"
    94        consumes:
    95        - "application/json"
    96        produces:
    97        - "application/json"
    98        parameters:
    99        - in: "body"
   100          name: "result"
   101          description: "Result"
   102          required: false
   103          schema:
   104            $ref: "#/definitions/Result"
   105        responses:
   106          201:
   107            description: "item created"
   108          400:
   109            description: "invalid input, object invalid"
   110          409:
   111            description: "an existing item already exists"
   112  
   113    /resultdetails:
   114      post:
   115        summary: "adds a resultdetails item"
   116        description: "Adds a resultdetails to the system"
   117        operationId: "addResultdetails"
   118        consumes:
   119        - "application/json"
   120        produces:
   121        - "application/json"
   122        parameters:
   123        - in: "body"
   124          name: "resultdetails"
   125          description: "Resultdetails"
   126          required: false
   127          schema:
   128            $ref: "#/definitions/Resultdetails"
   129        responses:
   130          201:
   131            description: "item created"
   132          400:
   133            description: "invalid input, object invalid"
   134          409:
   135            description: "an existing item already exists"
   136  
   137  
   138    /columns:
   139        get:
   140          summary: "gets columns"
   141          description: "gets column names"
   142          operationId: "getSampleColumns"
   143          produces:
   144          - "application/json"
   145          responses:
   146            200:
   147              description: "columns"
   148              schema:
   149                type: "array"
   150                items:
   151                  type: "string"
   152            400:
   153              description: "bad input parameter"          
   154  
   155    /query:
   156      post:
   157        summary: "Query for Sample"
   158        operationId: "getSamplesByQuery"
   159        consumes:
   160        - "application/json"
   161        produces:
   162        - "application/json"
   163        parameters:
   164        - in: body
   165          name: query
   166          required: false
   167          schema:
   168              $ref: "#/definitions/Query"
   169        responses:
   170          200:
   171            description: "OK"
   172            schema:
   173              type: "array"
   174              items:
   175                $ref: "#/definitions/Sample"
   176          404:
   177            description: "Sample not found"
   178  
   179    /logout:
   180      get:
   181        summary: "logsout"
   182        description: "logs users out"
   183        operationId: "logout"
   184        produces:
   185        - "application/json"
   186        responses:
   187          200:
   188            description: "OK"
   189            schema:
   190              type: "boolean"
   191          404:
   192            description: "Sample not found"
   193  
   194    /upload:
   195        post:
   196          summary: Uploads a file.
   197          consumes:
   198            - multipart/form-data
   199          parameters:
   200            - in: formData
   201              name: upfile
   202              type: file
   203              description: The file to upload.
   204          responses:
   205            200:
   206              description: "OK"
   207              schema:
   208                type: "boolean"
   209            404:
   210              description: "File not found"
   211            409:
   212              description: "an existing item already exists"
   213  
   214  definitions:
   215    Patient:
   216      type: "object"
   217      properties:
   218        patient_id:
   219          type: "string"
   220          x-nullable: true        
   221          x-go-custom-tag: "db:\"patient_id\""
   222        sample_id:
   223          type: "string"
   224          x-nullable: true         
   225          x-go-custom-tag: "db:\"sample_id\""
   226        first_name:
   227          type: "string"
   228          x-nullable: true         
   229          x-go-custom-tag: "db:\"first_name\""
   230        last_name:
   231          type: "string"
   232          x-nullable: true         
   233          x-go-custom-tag: "db:\"last_name\""
   234        initials:
   235          type: "string" 
   236          x-nullable: true         
   237          x-go-custom-tag: "db:\"initials\""
   238        gender: 
   239          type: "string" 
   240          x-nullable: true         
   241          x-go-custom-tag: "db:\"gender\""
   242        mrn:
   243          type: "string" 
   244          x-nullable: true         
   245          x-go-custom-tag: "db:\"mrn\""
   246        dob:
   247          type: "string" 
   248          x-nullable: true         
   249          x-go-custom-tag: "db:\"dob\""
   250        on_hcn:
   251          type: "string"   
   252          x-nullable: true         
   253          x-go-custom-tag: "db:\"on_hcn\""    
   254        clinical_history:
   255          type: "string" 
   256          x-nullable: true         
   257          x-go-custom-tag: "db:\"clinical_history\""
   258        patient_type:
   259          type: "string" 
   260          x-nullable: true         
   261          x-go-custom-tag: "db:\"patient_type\""
   262        se_num:
   263          type: "string" 
   264          x-nullable: true         
   265          x-go-custom-tag: "db:\"se_num\""
   266        date_received: 
   267          type: "string" 
   268          x-nullable: true         
   269          x-go-custom-tag: "db:\"date_received\""
   270        referring_physican: 
   271          type: "string" 
   272          x-nullable: true         
   273          x-go-custom-tag: "db:\"referring_physican\""
   274        date_reported:
   275          type: "string" 
   276          x-nullable: true         
   277          x-go-custom-tag: "db:\"date_reported\""
   278        surgical_date: 
   279          type: "string" 
   280          x-nullable: true         
   281          x-go-custom-tag: "db:\"surgical_date\""
   282    Sample:
   283      type: "object"
   284      properties:
   285        sample_id:
   286          type: "string"
   287          x-nullable: true         
   288          x-go-custom-tag: "db:\"sample_id\""
   289        facility:
   290          type: "string"
   291          x-nullable: true         
   292          x-go-custom-tag: "db:\"facility\""
   293        test_requested:
   294          type: "string"
   295          x-nullable: true         
   296          x-go-custom-tag: "db:\"test_requested\""
   297        se_num:
   298          type: "string"
   299          x-nullable: true        
   300          x-go-custom-tag: "db:\"se_num\""
   301        date_collected:
   302          type: "string"
   303          x-nullable: true         
   304          x-go-custom-tag: "db:\"date_collected\""      
   305        date_received:
   306          type: "string"
   307          x-nullable: true         
   308          x-go-custom-tag: "db:\"date_received\""      
   309        sample_type:
   310          type: "string"
   311          x-nullable: true         
   312          x-go-custom-tag: "db:\"sample_type\""      
   313        material_received:
   314          type: "string"
   315          x-nullable: true         
   316          x-go-custom-tag: "db:\"material_received\""      
   317        material_received_num:
   318          type: "string"
   319          x-nullable: true         
   320          x-go-custom-tag: "db:\"material_received_num\""      
   321        material_received_other:
   322          type: "string"
   323          x-nullable: true         
   324          x-go-custom-tag: "db:\"material_received_other\""      
   325        volume_of_blood_marrow:
   326          type: "number" 
   327          format: "float"
   328          x-nullable: true         
   329          x-go-custom-tag: "db:\"volume_of_blood_marrow\""
   330        surgical_num:
   331          type: "string"
   332          x-nullable: true         
   333          x-go-custom-tag: "db:\"surgical_num\""
   334        tumor_site:
   335          type: "string"
   336          x-nullable: true         
   337          x-go-custom-tag: "db:\"tumor_site\""
   338        historical_diagnosis:
   339          type: "string"
   340          x-nullable: true         
   341          x-go-custom-tag: "db:\"historical_diagnosis\""
   342        tumor_percnt_of_total:
   343          type: "number" 
   344          format: "float"
   345          x-nullable: true         
   346          x-go-custom-tag: "db:\"tumor_percnt_of_total\""
   347        tumor_percnt_of_circled:
   348          type: "number" 
   349          format: "float"
   350          x-nullable: true         
   351          x-go-custom-tag: "db:\"tumor_percnt_of_circled\""
   352        reviewed_by:
   353          type: "string"
   354          x-nullable: true         
   355          x-go-custom-tag: "db:\"reviewed_by\""
   356        h_e_slide_location:
   357          type: "string"
   358          x-nullable: true         
   359          x-go-custom-tag: "db:\"h_e_slide_location\""
   360        non_uhn_id:
   361          type: "string"
   362          x-nullable: true         
   363          x-go-custom-tag: "db:\"non_uhn_id\""
   364        name_of_requestor:
   365          type: "string"
   366          x-nullable: true         
   367          x-go-custom-tag: "db:\"name_of_requestor\""
   368        dna_concentration:
   369          type: "number" 
   370          format: "float"
   371          x-nullable: true         
   372          x-go-custom-tag: "db:\"dna_concentration\""
   373        dna_volume:
   374          type: "number" 
   375          format: "float"
   376          x-nullable: true         
   377          x-go-custom-tag: "db:\"dna_volume\""
   378        dna_location: 
   379          type: "string"
   380          x-nullable: true         
   381          x-go-custom-tag: "db:\"dna_location\""
   382        rna_concentration: 
   383          type: "number" 
   384          format: "float"
   385          x-nullable: true         
   386          x-go-custom-tag: "db:\"rna_concentration\""
   387        rna_volume:
   388          type: "number" 
   389          format: "float"
   390          x-nullable: true         
   391          x-go-custom-tag: "db:\"rna_volume\""
   392        rna_location:
   393          type: "string"
   394          x-nullable: true         
   395          x-go-custom-tag: "db:\"rna_location\""
   396        wbc_location:
   397          type: "string"
   398          x-nullable: true         
   399          x-go-custom-tag: "db:\"wbc_location\""
   400        plasma_location:
   401          type: "string"
   402          x-nullable: true         
   403          x-go-custom-tag: "db:\"plasma_location\""
   404        cf_plasma_location:
   405          type: "string"
   406          x-nullable: true         
   407          x-go-custom-tag: "db:\"cf_plasma_location\""
   408        pb_bm_location:
   409          type: "string"
   410          x-nullable: true         
   411          x-go-custom-tag: "db:\"pb_bm_location\""
   412        rna_lysate_location:
   413          type: "string"
   414          x-nullable: true         
   415          x-go-custom-tag: "db:\"rna_lysate_location\""
   416        sample_size:
   417          type: "string"
   418          x-nullable: true         
   419          x-go-custom-tag: "db:\"sample_size\""
   420        study_id:
   421          type: "string"
   422          x-nullable: true         
   423          x-go-custom-tag: "db:\"study_id\""
   424        sample_name:
   425          type: "string"
   426          x-nullable: true         
   427          x-go-custom-tag: "db:\"sample_name\""
   428        date_submitted:
   429          type: "string"
   430          x-nullable: true         
   431          x-go-custom-tag: "db:\"date_submitted\""
   432        container_type:
   433          type: "string"
   434          x-nullable: true         
   435          x-go-custom-tag: "db:\"container_type\""
   436        container_name:
   437          type: "string"
   438          x-nullable: true         
   439          x-go-custom-tag: "db:\"container_name\""
   440        container_id:
   441          type: "string"
   442          x-nullable: true         
   443          x-go-custom-tag: "db:\"container_id\""
   444        container_well:
   445          type: "string"
   446          x-nullable: true         
   447          x-go-custom-tag: "db:\"container_well\""
   448        copath_num:
   449          type: "string"
   450          x-nullable: true         
   451          x-go-custom-tag: "db:\"copath_num\""
   452        other_identifier:
   453          type: "string"
   454          x-nullable: true         
   455          x-go-custom-tag: "db:\"other_identifier\""
   456        has_sample_files:
   457          type: "boolean"
   458          x-nullable: true         
   459          x-go-custom-tag: "db:\"has_sample_files\""
   460        dna_sample_barcode:
   461          type: "string" 
   462          x-nullable: true         
   463          x-go-custom-tag: "db:\"dna_sample_barcode\""
   464        dna_extraction_date:
   465          type: "string" 
   466          x-nullable: true         
   467          x-go-custom-tag: "db:\"dna_extraction_date\""
   468        dna_quality:
   469          type: "string"
   470          x-nullable: true         
   471          x-go-custom-tag: "db:\"dna_quality\""
   472        ffpe_qc_date: 
   473          type: "string"
   474          x-nullable: true         
   475          x-go-custom-tag: "db:\"ffpe_qc_date\""
   476        delta_ct_Value: 
   477          type: "number" 
   478          format: "float"
   479          x-nullable: true         
   480          x-go-custom-tag: "db:\"delta_ct_Value\""
   481        comments:
   482          type: "string"
   483          x-nullable: true         
   484          x-go-custom-tag: "db:\"comments\""
   485        rnase_p_date: 
   486          type: "string"
   487          x-nullable: true         
   488          x-go-custom-tag: "db:\"rnase_p_date\""
   489        dna_quality_by_rnase_p: 
   490          type: "number" 
   491          format: "float"
   492          x-nullable: true         
   493          x-go-custom-tag: "db:\"dna_quality_by_rnase_p\""
   494        rna_quality:
   495          type: "number" 
   496          format: "float"
   497          x-nullable: true         
   498          x-go-custom-tag: "db:\"rna_quality\""
   499        rna_extraction_date:
   500          type: "string" 
   501          x-nullable: true         
   502          x-go-custom-tag: "db:\"rna_extraction_date\""
   503    Query:
   504      type: "object"
   505      properties:
   506        selected_condition:
   507          type: "array"
   508          items:
   509            type: "array"
   510            items:
   511              type: "string"
   512        selected_tables:
   513          type: "array"
   514          items:
   515            type: "string"
   516        selected_fields:
   517          type: "array"
   518          items:
   519            type: "string"
   520    Experiment: 
   521      type: "object"
   522      properties: 
   523        chip_cartridge_barcode: 
   524          type: "string"
   525          x-nullable: true
   526          x-go-custom-tag: "db:\"chip_cartridge_barcode\""
   527        complete_date:
   528          type: "string"
   529          x-nullable: true
   530          x-go-custom-tag: "db:\"complete_date\""
   531        experiment_id:
   532          type: "string"
   533          x-nullable: true
   534          x-go-custom-tag: "db:\"experiment_id\""
   535        has_project_files:
   536          type: "boolean"
   537          x-nullable: true
   538          x-go-custom-tag: "db:\"has_project_files\""
   539        opened_date:
   540          type: "string"
   541          x-nullable: true
   542          x-go-custom-tag: "db:\"opened_date\""
   543        panel_assay_screened:
   544          type: "number"
   545          format: "int"
   546          x-nullable: true
   547          x-go-custom-tag: "db:\"panel_assay_screened\""
   548        pcr:
   549          type: "string"
   550          x-nullable: true
   551          x-go-custom-tag: "db:\"pcr\""
   552        priority:
   553          type: "number"
   554          format: "int"
   555          x-nullable: true
   556          x-go-custom-tag: "db:\"priority\""
   557        procedure_order_datetime:
   558          type: "string"
   559          x-nullable: true
   560          x-go-custom-tag: "db:\"procedure_order_datetime\""
   561        project_id:
   562          type: "string"
   563          x-nullable: true
   564          x-go-custom-tag: "db:\"project_id\""
   565        project_name:
   566          type: "string"
   567          x-nullable: true
   568          x-go-custom-tag: "db:\"project_name\""
   569        sample_id:
   570          type: "string"
   571          x-nullable: true
   572          x-go-custom-tag: "db:\"sample_id\""
   573        study_id:
   574          type: "string"
   575          x-nullable: true
   576          x-go-custom-tag: "db:\"study_id\""
   577        test_date:
   578          type: "string"
   579          x-nullable: true  
   580          x-go-custom-tag: "db:\"test_date\""
   581    Result: 
   582      type: "object"
   583      properties: 
   584        sample_id:
   585          type: "string"
   586          x-nullable: true         
   587          x-go-custom-tag: "db:\"sample_id\""
   588        uid: 
   589          type: "string"
   590          x-nullable: true
   591          x-go-custom-tag: "db:\"uid\""
   592        results_id:
   593          type: "string"
   594          x-nullable: true
   595          x-go-custom-tag: "db:\"results_id\""
   596        failed_regions:
   597          type: "string"
   598          x-nullable: true
   599          x-go-custom-tag: "db:\"failed_regions\""
   600        mutation:
   601          type: "string"
   602          x-nullable: true
   603          x-go-custom-tag: "db:\"mutation\""
   604        verification_pcr:
   605          type: "string"
   606          x-nullable: true
   607          x-go-custom-tag: "db:\"verification_pcr\""
   608        mlpa_pcr:
   609          type: "string"
   610          x-nullable: true
   611          x-go-custom-tag: "db:\"mlpa_pcr\""
   612        overall_quality_threshold:
   613          type: "number"
   614          format: "float"
   615          x-nullable: true
   616          x-go-custom-tag: "db:\"overall_quality_threshold\""
   617        overall_hotspots_threshold:
   618          type: "number"
   619          format: "float"
   620          x-nullable: true
   621          x-go-custom-tag: "db:\"overall_hotspots_threshold\""
   622        mean_depth_of_coveage:
   623          type: "number"
   624          format: "float"
   625          x-nullable: true
   626          x-go-custom-tag: "db:\"mean_depth_of_coveage\""
   627    Resultdetails: 
   628      type: "object"
   629      properties: 
   630        uid: 
   631          type: "string"
   632          x-nullable: true
   633          x-go-custom-tag: "db:\"uid\""
   634        results_id:
   635          type: "string"
   636          x-nullable: true
   637          x-go-custom-tag: "db:\"results_id\""
   638        results_details_id:
   639          type: "string"
   640          x-nullable: true 
   641          x-go-custom-tag: "db:\"results_details_id\""     
   642        pcr:
   643          type: "string"
   644          x-nullable: true
   645          x-go-custom-tag: "db:\"pcr\""
   646        sample_id:
   647          type: "string"
   648          x-nullable: true
   649          x-go-custom-tag: "db:\"sample_id\""
   650        gene:
   651          type: "string"
   652          x-nullable: true
   653          x-go-custom-tag: "db:\"gene\""
   654        exon:
   655          type: "number"
   656          format: "int"
   657          x-nullable: true
   658          x-go-custom-tag: "db:\"exon\""
   659        p_nomenclature:
   660          type: "string"
   661          x-nullable: true
   662          x-go-custom-tag: "db:\"p_nomenclature\""
   663        c_nomenclature:
   664          type: "string"
   665          x-nullable: true
   666          x-go-custom-tag: "db:\"c_nomenclature\""
   667        VAF:
   668          type: "number"
   669          format: "float"
   670          x-nullable: true
   671          x-go-custom-tag: "db:\"VAF\""
   672        quality_score:
   673          type: "number"
   674          format: "float"
   675          x-nullable: true
   676          x-go-custom-tag: "db:\"quality_score\""
   677        coverage:
   678          type: "number"
   679          format: "int"
   680          x-nullable: true
   681          x-go-custom-tag: "db:\"coverage\""
   682        risk_score:
   683          type: "number"
   684          format: "float"
   685          x-nullable: true
   686          x-go-custom-tag: "db:\"risk_score\""
   687        result:
   688          type: "string"
   689          x-nullable: true
   690          x-go-custom-tag: "db:\"result\""
   691    Record:
   692      type: "object"
   693      properties:
   694        Sample:
   695          $ref: "#/definitions/Sample"
   696        Patient:
   697          $ref: "#/definitions/Patient"
   698        Experiment:
   699          $ref: "#/definitions/Experiment"
   700        Result:
   701          $ref: "#/definitions/Result"
   702        Resultdetails:
   703          $ref: "#/definitions/Resultdetails"