Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • C Cspec Registry
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Incidents
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • ClinGenClinGen
  • cspec
  • Cspec Registry
  • Wiki
  • CSpec Registry API

CSpec Registry API · Changes

Page history
Update CSpec Registry API authored Feb 01, 2024 by Neethu Shah's avatar Neethu Shah
Hide whitespace changes
Inline Side-by-side
CSpec-Registry-API.md
View page @ c9202623
......@@ -10,7 +10,7 @@
The Criteria Specifiication Registry provides RESTful-APIs to browse and search content. Responses are returned in JSON format.
##### <span dir="">Service URL:</span> <https://cspec.genome.network>
##### <span dir="">Service URL:</span> https://cspec.genome.network
</div>
</div>
......@@ -41,12 +41,21 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/srvc</span>](https://cspec.genome.network/cspec/srvc)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/srvc</span><span dir=""> </span>
</td>
</tr>
<tr>
<td>/api/{entType}/id/{entId}</td>
<td>Non-specific id based look up (JSON LD)</td>
<td>
https://cspec.genome.network/cspec/api/SequenceVariantInterpretation/id/GN099<br>https://cspec.genome.network/cspec/api/RuleSet/id/1535826201
</td>
</tr>
<tr>
<td>
**/id/{val}**
</td>
<td>
......@@ -55,7 +64,7 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/id/GN016</span>](https://cspec.genome.network/cspec/id/GN016)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/id/GN016</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -69,7 +78,7 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -83,7 +92,7 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -97,7 +106,7 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -111,9 +120,9 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/ld</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/ld)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/ld</span><span dir=""> </span>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/ldFor</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/ldFor)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/ldFor</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -127,11 +136,11 @@ The Criteria Specifiication Registry provides RESTful-APIs to browse and search
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types</span>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types/ld</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types/ld)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types/ld</span>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types/ldFor</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types/ldFor)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016/types/ldFor</span>
</td>
</tr>
</table>
......@@ -174,7 +183,7 @@ Response from the API endpoints can be filtered or restricted using the followin
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?ids=GN014,GN016,GN015</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?ids=GN014,GN016,GN015)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?ids=GN014,GN016,GN015</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -192,7 +201,7 @@ Response from the API endpoints can be filtered or restricted using the followin
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016?types=Gene,RuleSet</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016?types=Gene,RuleSet)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/GN016?types=Gene,RuleSet</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -214,11 +223,11 @@ Response from the API endpoints can be filtered or restricted using the followin
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=low</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=low)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=low</span>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=med</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=med)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=med</span>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=high</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=high)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=high</span>
</td>
</tr>
<tr>
......@@ -236,9 +245,9 @@ Response from the API endpoints can be filtered or restricted using the followin
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=low&fields=entId,ldhId</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=low&fields=entId,ldhId)
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=low&fields=entId,ldhId</span>
[<span dir="">https://cspec.genome.network/cspec/CriteriaCode/id?detail=high&fields=entId,ldhId,entContent.label,entContent.strengthDescriptor</span>](https://cspec.genome.network/cspec/CriteriaCode/id?detail=high&fields=entId,ldhId,entContent.label,entContent.strengthDescriptor)
<span dir="">https://cspec.genome.network/cspec/CriteriaCode/id?detail=high&fields=entId,ldhId,entContent.label,entContent.strengthDescriptor</span>
</td>
</tr>
<tr>
......@@ -260,7 +269,7 @@ Response from the API endpoints can be filtered or restricted using the followin
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?pg=1&pgSize=250&detail=low&fields=entId,ldhId</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?pg=1&pgSize=250&detail=low&fields=entId,ldhId)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?pg=1&pgSize=250&detail=low&fields=entId,ldhId</span><span dir=""> </span>
</td>
</tr>
<tr>
......@@ -282,7 +291,7 @@ Response from the API endpoints can be filtered or restricted using the followin
</td>
<td>
[<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?pg=6&pgSize=250&detail=low&fields=entId</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?pg=6&pgSize=250&detail=low&fields=entId)<span dir=""> </span>
<span dir="">https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?pg=6&pgSize=250&detail=low&fields=entId</span><span dir=""> </span>
</td>
</tr>
</table>
......@@ -367,7 +376,7 @@ The table below lists the key fields returned in the API response.
</td>
<td>
<span dir="">`"entIri": "`</span>[<span dir="">`https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/HGNC:1097`</span>](https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/HGNC:1097)<span dir="">`"`,</span>
<span dir="">`"entIri": "`</span><span dir="">`https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/HGNC:1097`</span><span dir="">`"`,</span>
<span dir="">where the IRI is the “link” to this entity in the external data source</span>
</td>
......@@ -415,7 +424,7 @@ The table below lists the key fields returned in the API response.
</td>
<td>
<span dir="">`"ldhIri": "`</span>[<span dir="">`https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/41889804`</span>](https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/41889804)<span dir="">"</span>
<span dir="">`"ldhIri": "`</span><span dir="">`https://cspec.genome.network/cspec/SequenceVariantInterpretation/id/41889804`</span><span dir="">"</span>
</td>
</tr>
<tr>
......@@ -471,35 +480,16 @@ As per the ClinGen Variant Curation Working Group recommendation a VCEP should b
A legacy document with multiple gene specifications will be fully archived when the attribute `legacyReplaced` is set to `true`. This property will be true only AFTER all the linked specification documents are re-released. For example API to access a legacy document is given here. - `https://genboree.org/cspec/SequenceVariantInterpretation/id/GN023?fields=entContent.legacyReplaced`. All the corresponding individual, single gene specific documents can be accessed via - `https://genboree.org/cspec/SequenceVariantInterpretation/id/GN023?fields=ld.SequenceVariantInterpretation`. A superseded document fully replaces its legacy document only when the property `entContent.legacyFullySuperseded` is set to true. Identifiers for all the legacy documents in the Registry include - `GN014,GN016,GN004,GN005,GN011,GN018,GN023`
#### Current Approved Versions
- Cspec Registry API on SequenceVariantInterpretation will return all the specifications that are both approved and under review.To get the current "Released" (SVI approved) versions do the following:
> 1. Get the SequenceVariantInterpretation documents, say for instance from the following endpoint - _https://cspec.genome.network/cspec/SequenceVariantInterpretation/id?detail=high&fields=entContent.states,entContent.legacyFullySuperseded,entContent.legacyReplaced,entId,ldhId,entContent.title_
> 2. Now drop the ones that
>> 1. have never been approved, that is _entContent.states_ has NO item where name === 'Released'
>> 2. is a legacy document which have been replaced, that is, _entContent.legacyReplaced_ is true
>> 3. is a document that has not yet superseded the legacy doc, that is _entContent.legacyFullySuperseded_ is false
>
> > 1. have never been approved, that is _entContent.states_ has NO item where name === 'Released'
> > 2. is a legacy document which have been replaced, that is, _entContent.legacyReplaced_ is true
> > 3. is a document that has not yet superseded the legacy doc, that is _entContent.legacyFullySuperseded_ is false
For instance, given below is an example where the above logic is applied to the end point mentioned in step(1).
<pre>
let currentVersions = []
if( respObj && respObj.status && respObj.status === 200 ) {
const sviObj = respObj.data.data
for(const svi of sviObj){
if(svi.entContent.states) {
const stateNames = svi.entContent.states.map((x) => x.name);
if(stateNames.includes("Released")) { // has been approved
if(svi.entContent.legacyFullySuperseded === false || svi.entContent.legacyReplaced === true) {
// drop the doc that has not superseded the legacy yet or the ones that have been fully replaced.
continue
}
else {
currentVersions.push(svi.entId)
}
}
}
}
}
</pre>
### [Markdown support for Criteria Code Specifications](Markdown-and-Citations)
\ No newline at end of file
<pre>let currentVersions = \[\] if( respObj && respObj.status && respObj.status === 200 ) { const sviObj = respObj.data.data for(const svi of sviObj){ if(svi.entContent.states) { const stateNames = svi.entContent.states.map((x) => x.name); if(stateNames.includes("Released")) { // has been approved if(svi.entContent.legacyFullySuperseded === false || svi.entContent.legacyReplaced === true) { // drop the doc that has not superseded the legacy yet or the ones that have been fully replaced. continue } else { currentVersions.push(svi.entId) } } } } }</pre>### [Markdown support for Criteria Code Specifications](Markdown-and-Citations)
\ No newline at end of file
Clone repository
  • ACMG+AMP+CAP+ClinGen v4 Specifications
  • CSpec Registry API
    • Versions
  • CSpec Registry Data Streams
  • Markdown and Citations
  • Home