The API services in this repository provide a service layer to connect to a self-governing, subscription based, people-to-people insurance service deployed on an EVM powered Blockchain. More specifically, these services connect and interact to the following eight smart contracts:
- Trust
- Pool
- Bank
- Timer
- Adjustor
- Policy
- Settlement
- Bond
For a detailed description of the purpose of these contracts and more context please refer to the white paper and the Smart-contracts repository documentation.
These API services are deployed and available at this URL:
Further more, a detailed description of all the available endpoints, their purpose and required parameters is also presented at this url. For testing purposes, the entire Postman api collection can be accessed here.
This solution is implemented C# and the following technology stacks are used in this solution:
- ASP .Net Core LTS version 2.1.10
- ServiceStack .Net Core version 5.5.0 (plus a valid license key)
- Nethereum Web3 version 3.3.0
- Fluent validation (Newtonsoft.Json) version 12.0.2
The solution is hosted on a Ubuntu Server with the following configuration:
- Ubuntu version 16.04.5 LTS
- Virtual Machine specs: 1 Core; 3.5 GB Memory; 30 GB SSD disk
- Nginx web server configured to listen on port 80 and 443 and kestrel set up to manage the process
- Certbot was used to configure Let's Encrypt certificates to enforce all traffic to be HTTPS only
The links below can be used to connect to a public Blockchain and retrieve policy, settlement, bond, etc. related information deployed on the Rinkeby testnet.
- List of all available APIs and documentation
- Server and ecosystem configuration info
- Status of the ecosystem
- Log files of ecosystem
- List of all bonds
- Details of bond 1
- List of all policies
- Details of policy 1
Thank you to the guys at ServiceStack for providing this framework and also making work beautifully on the .Net Core framework. To Microsoft for supporting and pushing .Net Core along. Lastly to Juan Blanco and his team for giving us Nethereum, THANK YOU!
GPL-3.0