Access to the Sandbox server is granted for a month from sign-up and allows for 50 free calculations with the RetinaRisk algorithm. When the month or call limit is reached on the Sandbox server, please contact our team with the email api@retinarisk.com.
Authentication
POST: https://api.retinarisk.com/api/auth/sign-up
Create user account in AWS Cognito.
Email will be sent from ‘no-reply@verificationemail.com’ with access codes. The password must be 8 or more in length, include lowercase letters, at least 1 capital letter and number.
Headers:
Content-Type: application/json
Body example:
{
"email": "email@gmail.com",
"password": "testTEST1234"
}
Response example:
{
"status": "SUCCESS"
}
POST: https://api.retinarisk.com/api/auth/confirm-sign-up
Confirm new user with access code sent to users email.
Headers:
Content-Type:application/json
Body example:
{
"email": "email@gmail.com",
"code": "957833"
}
Response example:
{
"status": "SUCCESS"
}
POST: https://api.retinarisk.com/api/auth/sign-in
After user has created an account, one must sign in to receive access_token. This authentication token is required to access the RetinaRisk calculator.
When the access_token has been received, you can directly go to the Calculations section below.
Headers:
Content-Type:application/json
Body example:
{
"email": "email@gmail.com",
"password": "testTEST1234"
}
Response example:
{
"access_token":
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJtZXNzYWdlIjoiQ2Fubm90IHJlYWQgcHJvcGVydHkgJ3VzZXJSZXBvc2l0b3J5JyBvZiB1bmRlZmluZWQiLCJzdGF0dXMiOjUwMCwiaWF0IjoxNTk2ODA5ODgyfQ.IkC7NYBKyyNBNbjK2SA1diU3tBAnuCwSxnNizIiG34U"
}
POST: https://api.retinarisk.com/api/auth/change-password
Change users password.
Headers:
Content-Type:application/json
Body example:
{
"email": "email@gmail.com",
"previousPassword": "testTEST1234",
"proposedPassword": "testTEST12345"
}
Response example:
{
"message": "password changed successfully",
"statusCode": 200
}
POST: https://api.retinarisk.com/api/auth/reset-password
Reset password email sent to user.
Headers:
Content-Type:application/json
Body example:
{
"email": "email@gmail.com"
}
Response example:
{
"message": "password reset successfully"
}
POST: https://api.retinarisk.com/api/auth/confirm-reset-password
Confirm new password with access code given in email.
Headers:
Content-Type:application/json
Body example:
{
"email": "email@gmail.com",
"password": "testTEST1234",
"code": "957833"
}
Response example:
{
"status": "SUCCESS"
}
POST: https://api.retinarisk.com/api/auth/resend-confirmation-code
Resend user access confirmation email.
Headers:
Content-Type:application/json
Body example:
{
"email": "email@gmail.com"
}
Response example:
{
"message": "new confirmation code was successfully sent"
}
Calculations
POST: https://api.retinarisk.com/api/calculator/calculateRisk
API CALCULATOR INPUTS
- Data
- Type of diabetes (type1 / type2) (string)
- Duration of diabetes (X years) (integer)
- Gender (male/female) (string)
- Diagnosis of diabetic retinopathy (0 / 1) (boolean)
- Blood pressure
- Diastolic (40-200) (integer)
- Systolic (60-200) (integer)
- HbA1c (0.0-12.0%) (float)
- Options
- format (json)
- language
- English (en)
- Spanish (es)
- Deutsch (de)
- Icelandic (is)
API CALCULATOR RETURNS
The RetinaRisk API outputs consists of three different pieces of information:
- Calculation of the risk of developing sight threatening diabetic retinopathy in the next 12 months displayed in percentages.
- Recommendation of appropriate eye screening interval (SI), given in months.
- Max recommended interval given is 24 months.
- Analysis of the risk factors most affecting each risk calculation.
Headers:Content-Type:application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJtZXNzYWdlIjoiQ2Fubm90IHJlYWQgcHJvcGVydHkgJ3VzZXJSZXBvc2l0b3J5JyBvZiB1bmRlZmluZWQiLCJzdGF0dXMiOjUwMCwiaWF0IjoxNTk2ODA5ODgyfQ.IkC7NYBKyyNBNbjK2SA1diU3tBAnuCwSxnNizIiG34U
Body example:
{
"data":
{
"diabetesDuration": "15",
"diabetesType": "type2",
"gender": "female",
"hasRetinopathy": "0",
"bloodGlucose": "6.72",
"bloodPressures":
{
"diastolic": "100",
"systolic": "160"
}
},
"options":
{
"format":"json",
"language":"en"
}
}
Response example:
{
"results": {
"RiskValue": 1.5,
"ScreeningInterval": 16,
"Analysis": {
"riskValue": {
"title": "MEDIUM RISK OF RETINOPATHY",
"text": "You have a medium risk of developing sight threatening retinopathy."
},
"diabetesDuration": {
"title": "Diabetes Duration",
"text": "Your risk of developing sight threatening retinopathy is impacted by your duration of your diabetes. As the duration increases the need for better eye care is of importance."
},
"bloodPressure": {
"title": "Blood Pressure",
"text": "Your blood pressure is above average. High blood pressure accelerates the progression of diabetic retinopathy. Keep your blood pressure less than or equal to 130/80."
}
}
}
}