This document describes the ClaimShop Self-Service loss data API. This API can be used to get loss items data (of specific case) from Scalepoint ClaimShop Self-Service solution.
Main consumer of this API is insurance company.
The process of obtaining settlement data can be divided into two steps:
You need an access_token
in order to send data to the Loss Data Endpoint. This access token can be obtained from the Authentication Endpoint. Please refer to the documentation about details of authentication process.
API caller should request self-service:read
scope from Authentication Endpoint.
For authentication Scalepoint provides two endpoints – one for production and one for everything else.
Production endpoint
https://accounts.scalepoint.com/connect/token
Non-production endpoint
https://sandbox-accounts.scalepoint.com/connect/token
The endpoint which allows to obtain any loss case by its token is in the following format:
https://www.scalepoint.com/self-service/<country>/api/<tenant>/data/%<caseToken>%
Here
The actual format of this will depend on the insurance company and the country in which it operates.
Assuming the following:
Denmark
ABC Insurance
d1a72df4-f7d5-402c-a495-cc31b8b39a59
The endpoint could look something like this:
https://www.scalepoint.com/self-service/dk/api/abcinsurance/data/d1a72df4-f7d5-402c-a495-cc31b8b39a59
For testing purposes, you will be given access to a project server and the hostname-part of the endpoint would change accordingly:
https://<hostname>/self-service/dk/api/abcinsurance/data/d1a72df4-f7d5-402c-a495-cc31b8b39a59
Please discuss with your account manager, which project server you have been assigned in order to determine the actual endpoint.
Loss data GET request contains request parameters as a part of endpoint URL (see above) and authorization header.
Authorization header has name 'Authorization'. It has value built from access_token
in following format:
Bearer access_token
Note the important space character between Bearer
and access_token
value.
Settlement data GET response contains settlement fields in JSON format in case of success (HTTP status code 200). Fields are described in Appendix A.
Loss data GET response contains loss fields in JSON format in case of success (HTTP status code 200). Fields are described in Appendix A.
NOTE: there are links to attachments. These files can be downloaded using authorization as used for loss data request
Simplest successful response example:
{
"case": {
"externalReference": "",
"companyCode": "trygforsikring",
"token": "198E9596-F006-4FAB-B436-3F5FF5E71A1B"
},
"lossItems": [
{
"token" : "62AC85F7-D541-43C0-BC44-B4E2246432DC",
"description": "Tokina AT-X 116 Pro DX II 11-16mm F/2.8 for Canon (Kameraobjektiver)",
"age": 23,
"categoryName": "Kamera Objektiver",
"categoryGroupName": "Foto & Video",
"newPrice": 1.00,
"unableToUpload": false,
"brand": "Tokina",
"model": "AT-X 116 Pro DX II 11-16mm F/2.8 for Canon",
"lossType": "1",
"noDocumentation": false,
"attachments": [
{
"fileGUID" : "27CFCE43-A6E3-4E75-8906-717501A28B90",
"fileName": "",
"fileLink": "https://project07.scalepoint.com/webapp/ScalePoint/dk/rest/file/somecompany/27CFCE43-A6E3-4E75-8906-717501A28B90"
}
],
"dateCreated": "2012-10-10",
"dateModified": "2017-10-10"
}
],
"customerDetails": {
"claimNumber": "",
"firstName": "John",
"lastName": "Doe",
"zipCode": "2000",
"city": "Frederiksberg",
"email": "john.doe@gmail.com",
"phone": "22 44 93 00",
"loginUrl": ""
}
}
In case of error response JSON can be ignored - instead HTTP status code should be used to determine error type.
JSON Path | Description | Required |
---|---|---|
case | Case data | Yes |
lossItems | Loss items data | Yes |
customerDetails | customer details data | Yes |
JSON Path | Description | Required |
---|---|---|
case.token | Case token UUID which uniquely identifies loss case | Yes |
case.externalReference | External reference of the loss case (i.e. Insurance company case number), max length is 50 | No |
case.companyCode | Company code, max length is 50 | Yes |
JSON Path | Description | Required |
---|---|---|
lossItems[].token | Line id (UUID) | Yes |
lossItems[].description | Item description, max length is 510 | Yes |
lossItems[].purchaseDate | Item purchase date | No |
lossItems[].age | Item age | No |
lossItems[].categoryName | Category name, max length is 50 | Yes |
lossItems[].categoryGroupName | Category group name, max length is 254 | Yes |
lossItems[].acquired | Acquisition type, max length is 256 | No |
lossItems[].purchasePrice | Item purchase price entered by user | No |
lossItems[].newPrice | Item new price entered by user | No |
lossItems[].repairPrice | Item repair price entered by user in case if item is being repaired | No |
lossItems[].customerDemand | Customer demand price entered by user | No |
lossItems[].customerNote | Note from customer, max length is 256 | No |
lossItems[].noDocumentation | true if user does not have documentation to provide | Yes |
lossItems[].unableToUpload | Can item documentation be uploaded by user | No |
lossItems[].brand | Brand of item, max length is 254 | No |
lossItems[].model | Model of item, max length is 64 | No |
lossItems[].lossType | Item loss type | No |
lossItems[].repairStarted | Is item repair started | No |
lossItems[].damageType | Item damage type, max length is 100 | No |
lossItems[].dateCreated | Loss item creation date | Yes |
lossItems[].dateModified | Loss item last modification date | Yes |
lossItems[].attachments[] | List of uploaded Attachments | Yes |
JSON Path | Description | Required |
---|---|---|
lossItems[].attachments[].fileGUID | File id | Yes |
lossItems[].attachments[].fileName | File name, max length is 256 | Yes |
lossItems[].attachments[].fileLink | File link | Yes |
JSON Path | Description | Required |
---|---|---|
customerDetails.claimNumber | Claim number, max length is 50 | No |
customerDetails.firstName | First name, max length is 100 | No |
customerDetails.middleName | Middle name, max length is 100 | No |
customerDetails.lastName | Last name, max length is 100 | No |
customerDetails.zipCode | Zip code, max length is 20 | No |
customerDetails.city | City, max length is 30 | No |
customerDetails.email | Email, max length is 254 | No |
customerDetails.phone | Phone number, max length is 30 | No |
customerDetails.loginUrl | URL for customer login to ClaimShop Self-Service | Yes |
see more about widget implementation: