Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • C CSpec Reasoner SVI
  • Project information
    • Project information
    • Activity
    • Members
  • Wiki
    • Wiki
  • Activity
Collapse sidebar
  • ClinGenClinGen
  • cspec
  • CSpec Reasoner SVI
  • Wiki
  • API

API · Changes

Page history
Update API authored Nov 03, 2022 by Neethu Shah's avatar Neethu Shah
Show whitespace changes
Inline Side-by-side
API.md
View page @ a734c6a4
...@@ -15,6 +15,7 @@ Assertion API endpoint for computing variant pathogenicity given a set of eviden ...@@ -15,6 +15,7 @@ Assertion API endpoint for computing variant pathogenicity given a set of eviden
> ```plaintext > ```plaintext
> let payload = { > let payload = {
> cspecRuleSetUrl: 'https://cspec.genome.network/cspec/RuleSet/id/643243101', > cspecRuleSetUrl: 'https://cspec.genome.network/cspec/RuleSet/id/643243101',
> // A specific ruleset defined by DICER1 and miRNA-Processing Gene Variant Curation Expert Panel - https://clinicalgenome.org/affiliation/50050
> evidence: { > evidence: {
> 'Pathogenic.Moderate': 2, > 'Pathogenic.Moderate': 2,
> 'Pathogenic.Strong': 1, > 'Pathogenic.Strong': 1,
...@@ -23,118 +24,120 @@ Assertion API endpoint for computing variant pathogenicity given a set of eviden ...@@ -23,118 +24,120 @@ Assertion API endpoint for computing variant pathogenicity given a set of eviden
> } > }
> } > }
> ``` > ```
>
> Example of how the route works: > Example of how the route works:
```plaintext > ```plaintext
const SimpleJsonReq = require( "@brl/brl-gb/client/simple/simpleJsonReq" ).SimpleJsonReq > const SimpleJsonReq = require( "@brl/brl-gb/client/simple/simpleJsonReq" ).SimpleJsonReq
let baseUrl = "https://cspec.genome.network/cspec/eng/svi" > let baseUrl = "https://cspec.genome.network/cspec/eng/svi"
let clientOpts = { timeout: 600000 } > let clientOpts = { timeout: 600000 }
let jsClient = undefined > let jsClient = undefined
let resp = undefined > let resp = undefined
jsClient = new SimpleJsonReq( baseUrl, clientOpts ) > jsClient = new SimpleJsonReq( baseUrl, clientOpts )
let reqConfig = { > let reqConfig = {
serverCertCheck : false, > serverCertCheck : false,
data: payload > data: payload
} > }
resp = await jsClient.doGet('/assertion', reqConfig) > resp = await jsClient.doGet('/assertion', reqConfig)
> console.log(global.brl.insp(global.brl.dot.pick('data', resp.data))) > console.log(global.brl.insp(global.brl.dot.pick('data', resp.data)))
{ > {
comment: 'Two assertions: Pathogenic and Likely Pathogenic were made. In such case ' + > comment: 'Two assertions: Pathogenic and Likely Pathogenic were made. In such case ' +
'the final call is the highest strength call, hence the allele is ' + > 'the final call is the highest strength call, hence the allele is ' +
'Pathogenic', > 'Pathogenic',
finalCall: 'Pathogenic', > finalCall: 'Pathogenic',
rules: [ > rules: [
{ > {
conditions: [ > conditions: [
{ > {
applicableCriteriaCodes: [ > applicableCriteriaCodes: [
'PVS1', > 'PVS1',
'PS2_Very Strong' > 'PS2_Very Strong'
], > ],
condition: '==1', > condition: '==1',
label: 'Rule1, Condition1', > label: 'Rule1, Condition1',
partitionPath: 'Pathogenic.Very Strong' > partitionPath: 'Pathogenic.Very Strong'
}, > },
{ > {
applicableCriteriaCodes: [ > applicableCriteriaCodes: [
'PS1', > 'PS1',
'PS2', > 'PS2',
'PS3', > 'PS3',
'PS4', > 'PS4',
'PP1_Strong' > 'PP1_Strong'
], > ],
condition: '>=1', > condition: '>=1',
label: 'Rule1, Condition2', > label: 'Rule1, Condition2',
partitionPath: 'Pathogenic.Strong' > partitionPath: 'Pathogenic.Strong'
} > }
], > ],
inference: 'Pathogenic', > inference: 'Pathogenic',
rule: 'Rule1' > rule: 'Rule1'
}, > },
{ > {
conditions: [ > conditions: [
{ > {
applicableCriteriaCodes: [ > applicableCriteriaCodes: [
'PVS1', > 'PVS1',
'PS2_Very Strong' > 'PS2_Very Strong'
], > ],
condition: '==1', > condition: '==1',
label: 'Rule2, Condition1', > label: 'Rule2, Condition1',
partitionPath: 'Pathogenic.Very Strong' > partitionPath: 'Pathogenic.Very Strong'
}, > },
{ > {
applicableCriteriaCodes: [ > applicableCriteriaCodes: [
'PS2_Moderate', > 'PS2_Moderate',
'PS3_Moderate', > 'PS3_Moderate',
'PS4_Moderate', > 'PS4_Moderate',
'PM1', > 'PM1',
'PM4', > 'PM4',
'PM5', > 'PM5',
'PP1_Moderate' > 'PP1_Moderate'
], > ],
condition: '>=2', > condition: '>=2',
label: 'Rule2, Condition2', > label: 'Rule2, Condition2',
partitionPath: 'Pathogenic.Moderate' > partitionPath: 'Pathogenic.Moderate'
} > }
], > ],
inference: 'Pathogenic', > inference: 'Pathogenic',
rule: 'Rule2' > rule: 'Rule2'
}, > },
{ > {
conditions: [ > conditions: [
{ > {
applicableCriteriaCodes: [ > applicableCriteriaCodes: [
'PS1', > 'PS1',
'PS2', > 'PS2',
'PS3', > 'PS3',
'PS4', > 'PS4',
'PP1_Strong' > 'PP1_Strong'
], > ],
condition: '==1', > condition: '==1',
label: 'Rule20, Condition1', > label: 'Rule20, Condition1',
partitionPath: 'Pathogenic.Strong' > partitionPath: 'Pathogenic.Strong'
}, > },
{ > {
applicableCriteriaCodes: [ > applicableCriteriaCodes: [
'PS2_Moderate', > 'PS2_Moderate',
'PS3_Moderate', > 'PS3_Moderate',
'PS4_Moderate', > 'PS4_Moderate',
'PM1', > 'PM1',
'PM4', > 'PM4',
'PM5', > 'PM5',
'PP1_Moderate' > 'PP1_Moderate'
], > ],
condition: '==2', > condition: '==2',
label: 'Rule20, Condition2', > label: 'Rule20, Condition2',
partitionPath: 'Pathogenic.Moderate' > partitionPath: 'Pathogenic.Moderate'
} > }
], > ],
inference: 'Likely Pathogenic', > inference: 'Likely Pathogenic',
rule: 'Rule20' > rule: 'Rule20'
} > }
], > ],
statusObj: { > statusObj: {
name: 'assertion computed', > name: 'assertion computed',
status: 'ok' > status: 'ok'
} > }
} > }
\ No newline at end of file > ```
\ No newline at end of file
Clone repository
  • API
  • Home