Skip to main content

Create a quote

  • Know some information concerning the property to insure: house or flat; tenant, landlord or renting landlord; address; number of rooms.

In order to prepare a policy, a quote object is exchanged to and from the Appenin API.

Very little information is required to get a price proposition:

  • What is the address of the property to cover?
  • Is the property a FLAT or a HOUSE?
  • How many rooms does the property have?
  • Is the insured person a LANDLORD, a RENTING_LANDLORD or a TENANT?

Try using our demonstration partner demo:

curl --header "Content-Type: application/json" \
--header "x-api-key: <your-api-key>" \
--request POST \
--data '{
"code": "demo",
"risk": {
"property": {
"address": "17 rue des Prévoyants de l’Avenir",
"city": "Angers",
"postal_code": "49000",
"type": "FLAT",
"room_count": 3,
"occupancy": "TENANT",
"equipments": []
}' \

A new quote object is created by the API and returned.

"id": "XRM1DCC",
"code": "demo",
"accept_previous_policy_termination": false,
"consent_to_be_contacted": false,
"external_id": null,
"nb_months_due": 12,
"origin": null,
"special_operation_code": null,
"special_operation_code_applied_at": null,
"start_date": "2023-01-03",
"end_date": null,
"tacit_renewal": true,
"term_start_date": "2023-01-03",
"term_end_date": "2024-01-02",
"issued_at": "2023-01-03T15:19:02.978Z",
"customisation": {
"cover_acvol": null,
"default_cap": null,
"valuables_cap": null,
"deductible": null
"insurance": {
"contractual_terms": "",
"currency": "EUR",
"default_cap": 20000,
"default_deductible": 150,
"ipid": "",
"product_code": "APP978",
"product_pricing_code": "APP978_FLAT",
"product_version": "2022-05-09",
"simplified_covers": [
"valuables_cap": 3000
"policyholder": {
"address": null,
"birthdate": null,
"city": null,
"email": null,
"email_validated_at": null,
"firstname": null,
"lastname": null,
"phone_number": null,
"postal_code": null,
"preferred_language": "fr"
"premium": {
"monthly_price": 15.11,
"price": 181.32,
"price_excl_tax": 163.75,
"price_tax": 17.57
"risk": {
"person": {
"firstname": null,
"lastname": null
"property": {
"address": "17 rue des Prévoyants de l’Avenir",
"building_flat": null,
"city": "Angers",
"equipments": [],
"occupancy": "TENANT",
"postal_code": "49000",
"room_count": 3,
"type": "FLAT"
"roommates": []

Default values are automatically added when not provided in the request payload. For example, the start date for the term is set to today by default; the term duration is set to 12 months by default, etc. The issued datetime (which is readonly) is automatically set to the current datetime.

The Appenin API checks if all the required information is present, returning a detailed error otherwise. Appenin then checks whether an offer can be made. If so, details about the offer including pricing information is added to the returned quote. If Appenin cannot make an offer for the client, these fields are set to null.

The premium for the whole term is stored in the field premium and the monthly price is stored in the field insurance.monthly_price.

POST /v2/quotes

Find more information about the quote creation API endpoint POST /v2/quotes in the API reference