This page describes the basic REST API for working with reviews stored in Archie. This API is interfacing with Archie's XML review document store and is therefore also XML based and works on whole reviews (in RM5 format or JATS).
A more granular API, where review sections can be accessed individually, is being designed to interface with the new review database. The new API is expected to replace this API at some point.The ReviewDB API provides more granular access to review content and data.
Table of Contents |
---|
Endpoints
...
You can specify an Accept header to control the returned encoding, e.g:
Accept |
---|
...
header | Description |
---|---|
application/xml;charset=iso-8859-1 |
...
Review in rm5 format, iso-8859-1 charset | |
application/xml;charset=utf-8 | Review in rm5 format, utf-8 charset |
application/x-jats+xml;charset=utf-8 | Review in JATS format, utf-8 charset |
application/x-dar+zip | Download JATS package |
If you don't specify an Accept header you must be able to deal with either encodingthe behaviour of this API is undefined (i.e. you may get any of the above content types or encodings).
Getting a review
Returned MIME type is "application/xml". dependent on the specified Accept header. The response body contains the review in XML the specified format.
Last published version using CD number
...
GET https://archie.cochrane.org/rest/reviews/047199081020060395/7.0
...
Getting review
...
translations
List translations of the latest published version using Review ID
GET https
...
Returned MIME type is "application/xml".
PUT https://archie.cochrane.org/rest/reviews/{Review ID}/latest
The body of the request should be empty.
translations
Example:
PUT GET https://archie.cochrane.org/rest/reviews/047199081020060395/latesttranslations
The response body contains the review in XML format.
Note: this is a PUT request since it is changing the state of the review.
Checking a review in
Returned MIME type is "application/json".
PUT https://archie.cochrane.org/rest/reviews/{Review ID}?tag={version description}
The review in XML (RM5) format must be provided in the body of the request.
The response body contains a plain text report from the check-in.
Example
...
is a list of published translations of the latest published version of the review as a JSON array:
Code Block | ||||
---|---|---|---|---|
| ||||
[ { "language": "fr", "title": "Décompression abdominale en cas de suspicion d'une souffrance fœtale/pré-éclampsie", "version": "0.0", "href": "https://archie.cochrane.org/rest/reviews/047199081020060395 |
...
Undoing a check-out
PUT https://archie.cochrane.org/rest/reviews/{Review ID}/latest/undo
The body of the request should be empty.
The response body will be empty.
Example
PUT https://archie.cochrane.org/rest/reviews/047199081020060395/latest/undo
Getting lists of reviews / searching
The base request for getting a list of reviews is:
...
/translations/fr" }, { "language": "hr", "title": "Abdominalna dekompresija kod sumnje na ugrožen fetus ili pre-eklampsiju", "version": "5.0", "href": "https://archie.cochrane.org/rest/reviews |
...
This will return all published reviews in Archie, so for most purposes a filter based on XPath or additional query parameters is required.
The response is an XML document listing the key attributes and properties of each review, and a link for accessing the full review, e.g.:
<reviews count="15">
...
/047199081020060395/translations/hr" }, { "language": "ta", "title": "கருத்தடை சமரசம் / முன்-எக்லம்ப்சியா என சந்தேகிக்கப்படும் அடிவயிற்று சுருக்க சிகிச்சை.", "version": "1.0", "href": "https://archie.cochrane.org/rest/reviews |
...
...
/047199081020060395/translations/ta"
}
] |
List translations of any published version using Review ID
GET https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/translations
The response is as described for the previous endpoint.
Get a translation of the latest published version using Review ID
GET https://
...
archie.cochrane.org/rest/reviews/
...
{Review ID}/translations/{language}
Example:
GET https://archie.cochrane.org/rest/reviews/047199081020060395/translations/fr
Returns the translation as either JATS XML or the full JATS package (as determined by the Accept header - see "Encoding of response" above).
Get a translation of the any published version using Review ID
GET https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/translations/{language}
The response is as described for the previous endpoint.
Getting lists of reviews / searching
The base request for getting a list of reviews is:
GET https://archie.cochrane.org/rest/reviews
This will return all published reviews in Archie, so for most purposes a filter based on query parameters is required.
The response is an XML document listing the key attributes and properties of each review, and a link for accessing the full review, e.g.:
Code Block | ||||
---|---|---|---|---|
| ||||
<reviews count="15">
<review cdNumber="CD002745" groupId="ARI" reviewId="780800041114324239" searchDate="2011-06-27" stage="R" status="A" checkedOut="false">
<link href="https://test-archie.cochrane.org/rest/reviews/CD002745" rel="self" type="application/xml"/>
<title>Amantadine and rimantadine for influenza A in children and the elderly</title>
<byline>Alves Galvão MG, Rocha Crispino Santos MA, Alves da Cunha AJL</byline>
<group>Acute Respiratory Infections Group</group>
</review>
<review cdNumber="CD000243" groupId="ARI" reviewId="482299081614134252" searchDate="2013-03-20" stage="R" status="A"checkedOut="true">
<link href="https://test-archie.cochrane.org/rest/reviews/CD000243" rel="self" type="application/xml"/>
<title>Antibiotics for acute maxillary sinusitis in adults</title>
<byline>Ahovuo-Saloranta A, Rautakorpi U-M, Borisenko OV, Liira H, Williams Jr JW, Mäkelä M</byline>
<group>Acute Respiratory Infections Group</group>
</review>
...
</reviews> |
Query parameters
The following query parameters can be used to restrict the search:
- groupId (e.g. ARI for Acute Respiratory, see Review Group IDs below): Restrict search to reviews belonging to the specified review group. Default is any group.
- stage (R = full Review, P = Protocol, T = Title): Restrict search by review stage. Default is any stage. T is only relevant in combination with published=false.
- status (A = Active, W = Withdrawn): Restrict search by status. Default is any status.
- phase (A=Authoring, E=Editorial): Restrict search by phase. Default is any phase.
- myRole (e.g. myRole=Author): Restrict search to reviews for which the authenticated user has the given role. Default is that roles are not considered.
- myPermission (e.g myPermission=write_authoring, see Permission below): Restrict search to reviews for which the authenticated user has the given permission. Default is View permission (view).
- startSearchDate (format {yyyy-MM-dd}, e.g. startSearchDate=2014-05-31): Restrict search to reviews with a search date on or after the specified date. Default is any date.
- published (true or false). Default is true, which means that only published reviews are returned. If published=false, titles and unpublished protocols are also returned.
- issueId (e.g. 2014-1). Limit search to reviews appearing in a specific issue of The Cochrane Library (needs testing).
- translation (language code, e.g. fr). Find reviews where the latest published version has a published translation in the given language. Not compatible with published=false.
Additional endpoints
Get metadata about
Query parameters
The following query parameters can be used to restrict the search:
- groupId (e.g. ARI for Acute Respiratory, see Review Group IDs below): Restrict search to reviews belonging to the specified review group. Default is any group.
- stage (R = full Review, P = Protocol, T = Title): Restrict search by review stage. Default is any stage. T is only relevant in combination with published=false.
- status (A = Active, W = Withdrawn): Restrict search by status. Default is any status.
- phase (A=Authoring, E=Editorial): Restrict search by phase. Default is any phase.
- myRole (e.g. myRole=Author): Restrict search to reviews for which the authenticated user has the given role. Default is that roles are not considered.
- myPermission (e.g myPermission=write_authoring, see Permission below): Restrict search to reviews for which the authenticated user has the given permission. Default is View permission (view).
- startSearchDate (format {yyyy-MM-dd}, e.g. startSearchDate=2014-05-31): Restrict search to reviews with a search date on or after the specified date. Default is any date.
- published (true or false). Default is true, which means that only published reviews are returned. If published=false, titles and unpublished protocols are also returned.
- issueId (e.g. 2014-1). Limit search to reviews appearing in a specific issue of The Cochrane Library (needs testing).
XPath/XQuery
In addition to query parameters, an XPath or XQuery expression can also be used to restrict the search.
The base URL is:
https://archie.cochrane.org/rest/reviews/xpath/{count expression | exist expression}
The default is exist, which can be left out.
Example 1, reviews that contain a Summary of Findings table:
https://archie.cochrane.org/rest/reviews/xpath/exist(//SOF_TABLE)
Example 2, reviews from the ARI group with more than one Summary of Findings table:
https://archie.cochrane.org/rest/reviews/xpath/count(//SOF_TABLE)>1?groupId=ARI
Example 3, reviews with at least 10 included studies:
https://archie.cochrane.org/rest/reviews/xpath/count(//INCLUDED_STUDIES/STUDY)>=10
Example 4, reviews with at least one forest plot figure (exist is implied):
https://archie.cochrane.org/rest/reviews/xpath//FIGURE%5B@TYPE="FOREST_PLOT"%5D
Note: [ and ] have to be escaped as %5B and %5D.
Example 5, reviews assessed as up-to-date in 2010:
https://archie.cochrane.org/rest/reviews/xpath/COVER_SHEET/DATES/UP_TO_DATE/DATE%5B@YEAR="2010"%5D
Searching within a specific review
https://archie.cochrane.org/rest/reviews/CD000004/xpath//STUDY%5B@YEAR>"1970"%5D
This will return the STUDY elements of the XML only (i.e. not a full review document) where the year is greater than 1970. The returned XML document will include the path of parent elements leading up to the root element (COCHRANE_REVIEW) but any siblings will be excluded, e.g.:
<?xml version="1.0" encoding="iso-8859-1"?>
<COCHRANE_REVIEW DESCRIPTION="For publication" DOI="10.1002/14651858.CD000004.pub2" GROUP_ID="PREG" ID="047199081020060395" MERGED_FROM="" MODIFIED="2012-05-09 15:44:58 +0100" MODIFIED_BY="Sonja Henderson" NOTES="" NOTES_MODIFIED="2012-05-09 15:42:11 +0100" NOTES_MODIFIED_BY="Sonja Henderson" REVIEW_NO="0065" REVMAN_SUB_VERSION="5.1.6" REVMAN_VERSION="5" SPLIT_FROM="" STAGE="R" STATUS="A" TYPE="INTERVENTION" VERSION_NO="8.0">
<STUDIES_AND_REFERENCES MODIFIED="2008-10-29 16:24:14 +0000" MODIFIED_BY="">
<STUDIES MODIFIED="2008-10-29 16:13:04 +0000" MODIFIED_BY="">
<INCLUDED_STUDIES MODIFIED="2008-10-29 16:12:42 +0000" MODIFIED_BY="">
<STUDY DATA_SOURCE="PUB" ID="STD-MacRae-1971" MODIFIED="2008-10-29 16:12:12 +0000" MODIFIED_BY="" NAME="MacRae 1971" YEAR="1971">
<REFERENCE MODIFIED="2008-10-29 16:12:12 +0000" MODIFIED_BY="" NOTES="<p>[0711].</p>" NOTES_MODIFIED="2008-10-29 16:12:12 +0000" NOTES_MODIFIED_BY="" PRIMARY="NO" TYPE="JOURNAL_ARTICLE">
<AU>MacRae DJ, Mohamedally SM, Willmott MP</AU>
<TI>Clinical and endocrinological aspects of dysmaturity and the use of intermittent abdominal decompression in pregnancy</TI>
<SO>Journal of Obstetrics and Gynaecology of the British Commonwealth</SO>
<YR>1971</YR>
<VL>78</VL>
<PG>636-41</PG>
<IDENTIFIERS/>
</REFERENCE>
<IDENTIFIERS/>
</STUDY>
<STUDY DATA_SOURCE="PUB" ID="STD-Varma-1973" MODIFIED="2008-10-29 16:12:42 +0000" MODIFIED_BY="" NAME="Varma 1973" YEAR="1973">
<REFERENCE MODIFIED="2008-10-29 16:12:42 +0000" MODIFIED_BY="" NOTES="<p>[0884].</p>" NOTES_MODIFIED="2008-10-29 16:12:42 +0000" NOTES_MODIFIED_BY="" PRIMARY="NO" TYPE="JOURNAL_ARTICLE">
<AU>Varma TR, Curzen P</AU>
<TI>The effects of abdominal decompression on pregnancy complicated by the small-for-dates fetus</TI>
<SO>Journal of Obstetrics and Gynaecology of the British Commonwealth</SO>
<YR>1973</YR>
<VL>80</VL>
<PG>1086-94</PG>
<IDENTIFIERS/>
</REFERENCE>
<IDENTIFIERS/>
</STUDY>
</INCLUDED_STUDIES>
<EXCLUDED_STUDIES MODIFIED="2008-10-29 16:13:04 +0000" MODIFIED_BY="">
<STUDY DATA_SOURCE="PUB" ID="STD-Coppola-1985" MODIFIED="2008-10-29 16:13:04 +0000" MODIFIED_BY="" NAME="Coppola 1985" YEAR="1985">
<REFERENCE MODIFIED="2008-10-29 16:13:04 +0000" MODIFIED_BY="" PRIMARY="NO" TYPE="OTHER">
<AU>Coppola F, Battioni M, Vessichelli R, Daoh KS, Bacchi-Modena A</AU>
<TI>Auxologic results of abdominal decompression in growth disorders of the fetus</TI>
<SO>Minerva Ginecologica</SO>
<YR>1985</YR>
<VL>37</VL>
<NO>11</NO>
<PG>645-52</PG>
<IDENTIFIERS MODIFIED="2008-10-29 16:11:15 +0000" MODIFIED_BY="">
<IDENTIFIER TYPE="OTHER" VALUE="CN-00279572"/>
</IDENTIFIERS>
</REFERENCE>
<IDENTIFIERS/>
</STUDY>
</EXCLUDED_STUDIES>
</STUDIES>
</STUDIES_AND_REFERENCES>
</COCHRANE_REVIEW>
Additional endpoints
Get metadata about review
GET https://archie.cochrane.org/rest/reviews/{Review ID}/metadata
Returned MIME type is "application/json".
Get metadata about all versions of a review
GET https://archie.cochrane.org/rest/reviews/{Review ID}/versions
Returned MIME type is "application/json".
...
review
GET https://archie.cochrane.org/rest/reviews/{Review ID}/rolesmetadata
Returned MIME type is "application/json".
Get
...
metadata about all versions of a review
GET https://archie.cochrane.org/rest/reviews/{Review ID}/statusversions
Returned MIME type is "application/json".
The field "reviewDBSyncStatus" can have the folllowing values:
- NONE: the review is not being synchronized to ReviewDB. This may be because synchronization is disabled globally, or the review type is not supported in ReviewDB.
- PUBLISHED_ONLY: all published versions of the review are available in ReviewDB - this value may also be returned if there are no published versions of the review.
- PUBLISHED_AND_DRAFTS: synchronization is fully enabled for this review, all published versions and (at least) the most recent draft will be available in ReviewDB.
...
json".
Get the document roles associated with a review
GET https://archie.cochrane.org/rest/reviews/{Review ID}/roles
Returned MIME type is "application/json".
Return asset from JATS package
The following return assets referenced from the main JATS XML.
Endpoint | MIME type |
---|---|
GET https://archie.cochrane.org/rest/reviews/{ |
...
Review ID}/{ |
...
Version}/{ |
...
Asset path}.svg |
...
"image/ |
...
svg+xml" | |
GET https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/{Asset path}.png | "image/png" |
...
GET https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/{Asset |
...
path}. |
...
jpg |
...
"image/ |
...
jpeg" |
...
Return asset (png) from DAR Archive
GET https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/{Asset |
...
Returned MIME type is "image/png".
Return asset (jpg) from DAR Archive
...
path}. |
...
(xml | rm5) | "application/xml;charset=utf-8", "application/xml;charset=UTF-8" |
GET |
https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/{Asset |
...
path}. |
...
html |
...
" |
...
text/ |
...
html" |
...
Return asset (xml) from DAR Archive
GET https://archie.cochrane.org/rest/reviews/{Review ID}/{Version}/{Asset |
...
path}. |
...
zip |
...
"application/ |
...
zip" |
Review Groups IDs
For use with the groupId parameter.
...