Download OpenAPI specification:
Fenris is an API-driven service for the modern insurance company. The Fenris suite of APIs provides the data and scores that inform insurance coverage decisions, evaluate risk, and improve the experience of applying for, rating, and servicing insurance accounts. The APIs save research time and minimize fillable form content errors by returning applicant data completed form fields for a client (applicant) to confirm, instead of requiring the client to complete forms manually.
This documentation has been used with the OpenAPI 3 specification. Definitions of the response fields are included under each service endpoint. Example requests and responses can be seen in the right-hand panel for each endpoint. The example request JSON can be collapsed and expanded using the minus and plus signs that appear on the right side of the JSON objects. For help getting authentication set up, please see our authentication documentation .
Once you have your authentication set up, please note that access lasts only 24 hours per generated token. You can make a request for any service you have access to with an example request for that service, found in the right-hand panel of the documentation.
Do you need an account to get started? Click here to request credentials.
If you are stuck or have a question not covered in our documentation, please send us an email at hello@fenrisd.com.
The Fenris Developer Data Collection is a set of artificial data records that can be used to test the Fenris services. The service’s responses to records from the artificial data are guaranteed to be constant, so that your integration tests will not break. Since the data in the set is synthetically generated, no personally identifying information (PII) is present, and the data can be shared openly. Best of all, your account is never charged for requests made with the developer data.
You can download our developer data here:
Postman is a third-party all-in-one API platform that can be helpful for testing and working with APIs. We host
a Postman collection
that uses the Fenris Developer Data to make example requests. For help getting started with Postman, please see the Postman documentation
The Fenris suite of services is comprised entirely of REST APIs. Representational State Transfer (REST) is a set of guidelines to manage communications on networks, including the Internet. One of the many benefits of using this pattern is that most development teams will be familiar with the protocol. You can read more about RESTful APIs here.
The first component of a RESTful API request is the unique resource identifier. For all Fenris Services, this is the URL (Uniform Resource Locator). This is what allows the request to be routed to the correct service. This is also known as the request endpoint. The URL for each service can be found in the right-hand column of the documentation.
The next component of the request is the Method. The method lets the service know what the request needs to do. The current Fenris services support GET and POST requests, depending on the particular endpoint and desired process. GET allows for the access of resources at a specified URL. POST is used to send data to the service. POST requests are used to prevent information from being exposed in the URL.
The appropriate method for each request is described in the right-hand column of the documentation, to the left of the service endpoint, or in the left-hand navigation menu, next to the highlighted service.
The Request Headers component of a request is the metadata sent from the client to the server. This contains information about authentication and the format of the request, and the response.
The data used to create the request is provided in the body of the request.
Additional parameters can give the service additional details, such as a query of path parameters.
Every Fenris API request has an optional submission-id
parameter. This parameter is echoed directly back in the response. This value may be used to track your internal processes or systems associated with the request. For example, let’s say you have multiple lead scores and want to use Fenris Profile+ to evaluate the contact information and quality of the leads without losing the ability to route the lead back to its original source. While making a request to Fenris Profile+, you can include the submission-id
parameter in your request's header to specify the original source, and that same string will be returned in the response's submissionId
field.
The submission-id
parameter can also be used to mark a request as a test request by using the prefix test
in the value of the submission ID.
Test the Property Details service with our Personal Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
The Fenris Digital Property - Assessment Details API quickly and accurately provides a summary of reported information on building characteristics, valuation, and mortgages.
Submission-Id | string Example: cafe-item-123 A pass through header field containing a client-specified identifier to tieback to client data and systems. If the client does not define, processing relies on an auto-generated field to set the value. |
addressLine1 | string non-empty Street address for a location, may also include secondary (e.g. apartment) information. This field is required for an address block to be valid. |
addressLine2 | string This field will be appended to addressLine1 |
city | string Name of the city in which the address is located. A city or a ZIP Code must be present for an address block to be valid. |
state | string non-empty Standard two-character state abbreviation. A state abbreviation is required for an address block to be valid |
zipCode | string Five-digit ZIP Code for the input address. A city or a ZIP Code must be present for an address block to be valid. |
longitude | number <double> Longitude, in signed, decimal degrees for the input location. A longitude is required for a geocode block to be valid. |
latitude | number <double> Latitude, in signed, decimal degrees for the input location. A latitude is required for a geocode block to be valid. |
apn | string Optional Assessor's Parcel Number (APN) that will be used for the parcel lookup. Note that the APN will be tried before the address. The address is still required, and the last line of the address will be used to determine the county in which the APN is located. |
object (Owner) Optional owner's name of the parcel. This can be the first and last name of an individual or the name of an organization. The name is only used to resolve multiple matches when the property cannot be uniquely identified from the input address alone. |
Old Aldrin Highway - Address
{- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}
Old Aldrin Highway
{ "requestId": "59c97ade-66e5-4086-99ee-a638fac845e4", "submissionId": "59c97ade-66e5-4086-99ee-a638fac845e4", "status": "SUCCESS", "matchDescription": "Artificial match", "document": { "buildingCharacteristics": { "useType": "Single Family Residential", "airConditioning": "Central", "basement": "Unfinished Basement", "totalArea": 2345, "buildingClass": "null", "buildingCondition": "Good", "buildingQuality": "C", "garageType": "Garage", "garageNumCars": 0, "lotSize": 7536, "bathrooms": 3, "partialBathrooms": 1, "bedrooms": 4, "totalRooms": 4, "stories": 0, "pool": null, "roofType": "GABLE", "roofCovering": "Composition Shingle", "yearBuilt": 1996, "heatingType": "Central", "heatingFuelType": null, "construction": "Frame", "units": 1, "ownerOccupied": "Owner-occupied property (SFR/Condo)", "ownerName": "MURDOCK, KYLE & SHARON", "buildings": 0, "exteriorWall": null, "foundation": null, "architecturalStyle": null }, "valuation": { "apn": "12354678", "marketValueMin": 558909, "marketValueMax": 657562, "landValue": 6920, "improvementValue": 29650, "assessmentYear": 2020, "assessedValue": 36570, "assessedMarketValue": 511457, "lastSalePrice": 0, "lastSaleDate": "2019-08-30" }, "mortgage": { "loanToValue": 57.0058, "balance": 351113, "totalLienBalance": 351113, "loanAmount": 365400, "lender": "THE MORTGAGE CO", "loanType": "New Conventional", "titleCompany": "NONE AVAILABLE" } } }
Test the Property Replacement Cost service with our Personal Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
The Fenris Digital Property - Replacement Cost API quickly and accurately provides a summary of replacement cost information on a given building.
Submission-Id | string Example: cafe-item-123 A pass through header field containing a client-specified identifier to tieback to client data and systems. If the client does not define, processing relies on an auto-generated field to set the value. |
addressLine1 | string non-empty Street address for a location, may also include secondary (e.g. apartment) information. This field is required for an address block to be valid. |
addressLine2 | string This field will be appended to addressLine1 |
city | string Name of the city in which the address is located. A city or a ZIP Code must be present for an address block to be valid. |
state | string non-empty Standard two-character state abbreviation. A state abbreviation is required for an address block to be valid |
zipCode | string Five-digit ZIP Code for the input address. A city or a ZIP Code must be present for an address block to be valid. |
longitude | number <double> Longitude, in signed, decimal degrees for the input location. A longitude is required for a geocode block to be valid. |
latitude | number <double> Latitude, in signed, decimal degrees for the input location. A latitude is required for a geocode block to be valid. |
Old Aldrin Highway - Address
{- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}
Old Aldrin Highway
{ "status": "SUCCESS", "requestId": "c203665b-de49-412e-a8ea-9b8084ef1dae", "submissionId": "c203665b-de49-412e-a8ea-9b8084ef1dae", "matchDescription": "Default match logic", "architecturalStyle": "California Ranch", "constructionQuality": "above average / upgraded", "physicalShape": "rectangular", "constructionType": "framing, wood", "exterior": "vinyl siding", "roofCovering": "metal other than standing seam", "roofConfiguration": "hip", "foundationType": "poured concrete", "numStories": 1, "siteSlope": null, "locale": "suburban", "yearBuilt": "1964", "livingAreaSqFt": 888, "costBreakdown": { "architectFeesAndPermits": 17000, "houseMaterialsAndLabor": 150000, "overhead": 21000, "profit": 21000, "costWithoutDebrisRemoval": 209000, "debrisRemoval": 10000, "costIncludingDebrisRemoval": 219000 }, "costDetails": null, "replacementCost": 209000, "locationType": "Residential" }
Test the Property Hazards and Perils service with our Personal Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
The Fenris Digital Property - Hazards and Perils API quickly and accurately provides a targeted assessment of geographic risks for property policy underwriting. The categories covered by this service are:
In addition to the categories above, you can obtain information on insurance premium taxes in applicable states, such as Kentucky.
Submission-Id | string Example: cafe-item-123 A pass through header field containing a client-specified identifier to tieback to client data and systems. If the client does not define, processing relies on an auto-generated field to set the value. |
addressLine1 | string non-empty Street address for a location, may also include secondary (e.g. apartment) information. This field is required for an address block to be valid. |
addressLine2 | string This field will be appended to addressLine1 |
city | string Name of the city in which the address is located. A city or a ZIP Code must be present for an address block to be valid. |
state | string non-empty Standard two-character state abbreviation. A state abbreviation is required for an address block to be valid |
zipCode | string Five-digit ZIP Code for the input address. A city or a ZIP Code must be present for an address block to be valid. |
longitude | number <double> Longitude, in signed, decimal degrees for the input location. A longitude is required for a geocode block to be valid. |
latitude | number <double> Latitude, in signed, decimal degrees for the input location. A latitude is required for a geocode block to be valid. |
Old Aldrin Highway - Address
{- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}
Submit an outcome after requesting a score or prefill. The request must include only one of the following: a requestId from the previous request or a submissionId from the previous request.
originalRequestId | string The requestId of the original request made to the Fenris service. The data from that request will have the outcome appended in order to train new versions of the model. |
originalSubmissionId | string The |
object (JoinField) The name and value of a custom field to join outcomes to request data. This field value should be unique across The requests to the scoring service. | |
outcome required | string The outcome of the process or value of the target variable to be used in training. The string will be coerced into an appropriate type (boolean, numeric, date, etc) in order to retrain the model. Standard synonyms for boolean variables (Yes/No, Y/N, true/false, T/F, etc.) are accepted. |
{- "originalRequestId": "a442d998-7ffd-4e34-acba-495ec27c293b",
- "originalSubmissionId": "Poliy 1234567AB",
- "joinField": {
- "fieldName": "string",
- "fieldValue": "string"
}, - "outcome": "Y"
}
Test the Auto Prefill service with our Personal Developer Data. The developer data are synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
There are two return options for the Auto Prefill endpoint; a base response and an enhanced response. The enhanced response includes everything in the based response along with additional enhanced vehicle information. The response types are toggled with the responseType parameter in the request body.
Setting the responseType to M returns only the base data. This is the default. Setting the responseType to C returns both the base data and the enhanced vehicle information. Enhanced vehicle information must be activated for your account. Please reach out to your account representative with questions.
The enhanced vehicle information is returned in the vehiclesEnhanced field in the response. This field is a list of vehicles found for the request, with each item in the list containing details for the vehicle, including the vehicle's vin number and registration.
Examples of each type of response can be seen in the right-hand panel, under Response samples, by toggling the options under Example. Additional details of the response fields can be seen in the Responses section below under the 200 Response Schema. The vehiclesEnhanced details can be seen by clicking the expansion carrot.
The Fenris Digital Auto Prefill service provides information that can be used to quickly and accurately populate an auto insurance application, such as drivers and vehicle information.
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
Content-Type | string Example: application/json The body of the request is in JSON format, using UTF-8 character encoding |
Authorization | string Example: Bearer <<token>> The token returned from authentication. See Authentication for more detail. |
required | object (Person) |
required | object (Address) Input address for the search. |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
responseType | string Default: "M" Enum: "M" "C" "MC" Defines if VIN data is returned. One of:
|
Response Type M
{- "person": {
- "firstName": "Kyle",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}, - "responseType": "M"
}
This is a synthetic data response for M Response Type.
{ "requestId": "75c193b6-0dc5-4b63-a484-f9fef538c610", "submissionId": "75c193b6-0dc5-4b63-a484-f9fef538c610", "status": "Success", "matchDescription": "Artificial match", "addressDescription": "Artificial address matched", "primary": { "gender": "Male", "maritalStatus": "Married", "memberCode": "Primary Household Member", "parsedAddress": { "addressLine1": "18595 OLD ALDRIN HIGHWAY", "city": "HIGHLANDS RANCH", "state": "CO", "zipCode": "80126", "addressType": "Street Address" }, "homeOwnerStatus": "Definite Owner", "lengthOfResidence": "6-10 yrs", "numberOfGenerations": 2, "presenceOf16Or17YearOlds": true, "babyBoomer": false, "dualIncomeNoKids": false, "millennial": false, "vehicleHouseholdNum": 3 }, "drivers": [ { "firstName": "KYLE", "middleName": "", "lastName": "MURDOCK", "dateOfBirth": "05/20/1970", "age": 53, "gender": "Male", "maritalStatus": "Married", "memberCode": "Primary Household Member", "verificationDate": "06/04/2021" }, { "firstName": "SHARON", "middleName": "", "lastName": "MURDOCK", "dateOfBirth": "12/08/1971", "age": 51, "gender": "Female", "maritalStatus": "Married", "memberCode": "Primary Household Member", "verificationDate": "06/04/2021" }, { "firstName": "ANDY", "middleName": "", "lastName": "MURDOCK", "dateOfBirth": "03/10/2003", "age": 20, "gender": "Male", "maritalStatus": "Single", "memberCode": "Primary Household Member", "verificationDate": "06/04/2021" } ], "vehicles": [ { "confidence": 90, "description": "2019 GMC SIERRA", "year": "2019", "make": "GMC", "model": "SIERRA", "type": "Truck", "fuelType": "Gas", "mileage": "40,001 - 50,000", "marketValue": 21217 }, { "confidence": 70, "description": "2016 HONDA ODYSSEY", "year": "2016", "make": "HONDA", "model": "ODYSSEY", "type": "Passenger Car", "fuelType": "Gas", "mileage": "40,001 - 50,000", "marketValue": 11588 }, { "confidence": 70, "description": "2012 NISSAN ROGUE", "year": "2012", "make": "NISSAN", "model": "ROGUE", "type": "Passenger Car", "fuelType": "Gas", "mileage": "90,001 - 100,000", "marketValue": 7774 } ], "vehiclesEnhanced": [] }
The Fenris Digital Driver Record service provides summary information of potential violations on a driver's record. This includes a summary status of the driver's record, counts of the found minor and major violations, the dates of the latest minor and major violations found, and a calculated rating factor for the driver based on the found incidents. The rating factor is priority to Fenris, generated with industry experts, and gives an estimate of how the driver's rates for different tiers of insurance policies may be impacted. The Fenris Driver Record service provides invaluable insights for streamlining applications and quoting auto insurance policies.
Test the Driver Record service with our Personal Developer Data. The developer data are synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
A request for a driver's record needs to include either the address on the license of the person of interest, or the driver's license number and license state. The address component of the request is not required if the driver's license is provided.
This information is primarily based on a search of court records and is not a replacement for a complete Motor Vehicle Records (MVR) search. Because regulations vary across the United States, some states provide more limited access to data. Driver record data is more limited in the following states; AR, CA, CO, DC, DE, GA, HI, KS, LA, ME, MI, MN, MO, MT, NV, NH, NY, OH, OR, TN, WV, WY.
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
required | object (DriverRecordPerson) The person of interest, to perform a driver record search for. |
object (Address) The address on the license of the person of interest; required if the driver's license is not supplied. |
Minor Violations
{- "person": {
- "firstName": "Jenny",
- "lastName": "Everywhere",
- "dateOfBirth": "11/10/1962",
- "licenseNumber": "510395035146",
- "licenseState": "TX"
}
}
Minor Violations
{ "requestId": "1fb4c776-bb61-4c37-9240-4c40dec7a8a8", "submissionId": "1fb4c776-bb61-4c37-9240-4c40dec7a8a8", "status": "Minor Violations Found - Developer Data", "licenseSearchStatus": "Supplied", "minorCount": 2, "minorLatest": "12/15/2023", "majorCount": 0, "majorLatest": null, "accidentCount": 0, "accidentLatest": null, "duiCount": 0, "duiLatest": null, "ratingFactor": { "preferred": 2.3, "standard": 1.48, "nonStandard": 1.44, "fullSpectrum": 1.29 } }
The VIN Decoder service provides automobile information for a requested VIN (Vehicle Identification Number).
vin required | string Example: vin=JN8AS5MV0CW000000 VIN to decode. |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
Authorization | string Example: Bearer <<token>> A Bearer token for authentication. |
Kyle Murdock
{ "requestId": "ef13d6eb-a903-4587-9fa5-7f9ef4591ee9", "submissionId": "ef13d6eb-a903-4587-9fa5-7f9ef4591ee9", "status": "Success", "matchDescription": "VIN decoded clean. Check Digit (9th position) is correct", "make": "OLDSMOBILE", "model": "Alero", "modelYear": "1999", "trim": "GLS", "vehicleType": "Passenger Car", "bodyClass": "Sedan/Saloon", "vinDetails": { "manufacturerName": "GENERAL MOTORS LLC", "engineNumberofCylinders": "6", "errorCode": "0", "windows": "4", "displacement(L)": "3.4", "otherEngineInfo": "Name Plate: Chevrolet, Pontiac, Oldsmobile", "plantCountry": "UNITED STATES (USA)", "plantCompanyName": "NA-GM Corp", "doors": "4", "engineManufacturer": "LAN", "plantCity": "LANSING - SOUTH PLANT", "displacement(CC)": "3400.0", "frontAirBagLocations": "1st Row (Driver and Passenger)", "vehicleDescriptor": "1G3NF52E*XC", "fuelDelivery/FuelInjectionType": "Sequential Fuel Injection (SFI)", "engineConfiguration": "V-Shaped", "seatBeltType": "Manual", "displacement(CI)": "207.48072992208", "plantState": "MICHIGAN" } }
Test the Drivers License service with our Personal Developer Data. The developer data are synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
The Fenris Digital Driver's License search service provides a driver's license number and state for an input person.
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
required | object (DriversLicenseSearchPerson) The person of interest to perform a license search for. |
required | object (Address) The home address of the person of interest. |
Kyle Murdock
{- "person": {
- "firstName": "Kyle",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}
}
Kyle Murdock
{ "requestId": "9c19139d-77c3-426c-aff4-00090b41900c", "submissionId": "9c19139d-77c3-426c-aff4-00090b41900c", "status": "Success", "licenseState": "CO", "licenseNumber": "349370820846", "maskedLicenseNumber": "********0846" }
Many smaller and medium-sized companies don't have access to data science resources and the breadth of data needed to create effective machine-learning models. The Fenris Commercial Scoring API Suite hosts a set of both industry generic and tailored machine learning models to give our customers a competitive edge when it comes to understanding their leads and prospective customers.
For a model trained with your data, our data scientists tailor our machine learning algorithms to the criteria that you use in your business to define a high-quality lead. Once a model is trained and deployed, when a request to score a lead is sent to the service we match the lead to our proprietary database to create an enriched prospect profile. This improves the predictive power of the model by augmenting your lead data with our own attributes. The enriched data is scored using your tailored model to segment the lead based on predicted propensity to buy your insurance product.
Return a score for the requested business.
outcome required | string The outcome to be predicted (i.e., the target variable of the model). |
lineOfBusiness required | string The insurance line of business for this model. |
productLine required | string The product line within the line of business for the model to consider. |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
names required | Array of strings non-empty [ items non-empty ] Business name(s) which can include alternative names (legal, trade, DBA) or person's first and last name. |
required | object (Address) Address for the business location or just the state |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
object |
{- "names": [
- "Cherry on Top Cupcake",
- "Cherry on Top Bakery",
- "Cherry Cupcake Midtown",
- "Cherry Cupcakes"
], - "address": {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}, - "otherAddresses": [
- {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}
], - "otherFields": {
- "property1": { },
- "property2": { }
}
}
Return a score for the requested business.
outcome required | string The outcome to be predicted (i.e., the target variable of the model). |
lineOfBusiness required | string The insurance line of business for this model. |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
names required | Array of strings non-empty [ items non-empty ] Business name(s) which can include alternative names (legal, trade, DBA) or person's first and last name. |
required | object (Address) Address for the business location or just the state |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
object |
{- "names": [
- "Cherry on Top Cupcake",
- "Cherry on Top Bakery",
- "Cherry Cupcake Midtown",
- "Cherry Cupcakes"
], - "address": {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}, - "otherAddresses": [
- {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}
], - "otherFields": {
- "property1": { },
- "property2": { }
}
}
Return a score for the requested business.
outcome required | string The outcome to be predicted (i.e., the target variable of the model). |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
names required | Array of strings non-empty [ items non-empty ] Business name(s) which can include alternative names (legal, trade, DBA) or person's first and last name. |
required | object (Address) Address for the business location or just the state |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
object |
{- "names": [
- "Cherry on Top Cupcake",
- "Cherry on Top Bakery",
- "Cherry Cupcake Midtown",
- "Cherry Cupcakes"
], - "address": {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}, - "otherAddresses": [
- {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}
], - "otherFields": {
- "property1": { },
- "property2": { }
}
}
The Fenris Lead Insight Service designed to insure that the leads you are buying meet your parameters of quality before they are purchased. Using anonymous data, the Fenris Lead Insight Service generates a score indicating the probability of a lead will convert. This insight allows you to route the request to the appropriate channel or return the lead to the seller.
Highly customizable, the Fenris Lead Insight service houses both generic line of business models for probability to convert as well as tailored customer models for assessing the quality of a lead.
For a model trained with your data, our data scientists tailor our machine learning algorithms to the criteria that you use in your business to define a high-quality lead. Once the tailored model is trained and deployed, the new lead information can be seamlessly scored in a matter of milliseconds.
Score a Home Insurance lead with the specified model type specified, e.g. returnlikelihood, sellability, quotability.
type required | string |
thirdPartyLeadCertificationId | string |
affiliate | string |
campaign | string |
source | Array of strings |
state | string |
gender | string |
dateOfBirth | string <date> |
ageInYears | integer <int64> |
landingPage | string |
object | |
age | string |
currentlyInsured | string |
currentInsuranceCompany | string |
propertyType | string |
occupancy | string |
foundation | string |
homeSecurity | string |
yearBuilt | string |
stories | string |
bedrooms | string |
bathrooms | string |
squareFootage | string |
roofType | string |
{- "thirdPartyLeadCertificationId": "string",
- "affiliate": "string",
- "campaign": "string",
- "source": [
- "string"
], - "state": "string",
- "gender": "string",
- "dateOfBirth": "2019-08-24",
- "ageInYears": 0,
- "landingPage": "string",
- "otherParams": {
- "property1": "string",
- "property2": "string"
}, - "age": "string",
- "currentlyInsured": "string",
- "currentInsuranceCompany": "string",
- "propertyType": "string",
- "occupancy": "string",
- "foundation": "string",
- "homeSecurity": "string",
- "yearBuilt": "string",
- "stories": "string",
- "bedrooms": "string",
- "bathrooms": "string",
- "squareFootage": "string",
- "roofType": "string"
}
Score a Commercial Insurance lead with the specified model type specified, e.g. .
type required | string |
thirdPartyLeadCertificationId | string |
affiliate | string |
campaign | string |
source | Array of strings |
state | string |
gender | string |
dateOfBirth | string <date> |
ageInYears | integer <int64> |
landingPage | string |
object |
{- "thirdPartyLeadCertificationId": "string",
- "affiliate": "string",
- "campaign": "string",
- "source": [
- "string"
], - "state": "string",
- "gender": "string",
- "dateOfBirth": "2019-08-24",
- "ageInYears": 0,
- "landingPage": "string",
- "otherParams": {
- "property1": "string",
- "property2": "string"
}
}
Score an Auto Insurance lead with the specified model type specified, e.g. returnlikelihood, sellability, quotability.
type required | string |
thirdPartyLeadCertificationId | string |
affiliate | string |
campaign | string |
source | Array of strings |
state | string |
gender | string |
dateOfBirth | string <date> |
ageInYears | integer <int64> |
landingPage | string |
object | |
vehicleYear | integer <int32> |
ageVehicle | integer <int32> |
secondVehicleYear | integer <int32> |
ageSecondVehicle | integer <int32> |
ticketsOrClaimsLast3Years | string |
dui | string |
currentInsuranceProvider | string |
desiredCoverageLevel | string |
vehiclePrimaryUse | string |
annualMileage | string |
vehicleOwnership | string |
continuousCoverage | string |
activeLicense | string |
everFiledSR22 | string |
homeowner | string |
married | string |
educationLevel | string |
creditScore | string |
{- "thirdPartyLeadCertificationId": "string",
- "affiliate": "string",
- "campaign": "string",
- "source": [
- "string"
], - "state": "string",
- "gender": "string",
- "dateOfBirth": "2019-08-24",
- "ageInYears": 0,
- "landingPage": "string",
- "otherParams": {
- "property1": "string",
- "property2": "string"
}, - "vehicleYear": 0,
- "ageVehicle": 0,
- "secondVehicleYear": 0,
- "ageSecondVehicle": 0,
- "ticketsOrClaimsLast3Years": "string",
- "dui": "string",
- "currentInsuranceProvider": "string",
- "desiredCoverageLevel": "string",
- "vehiclePrimaryUse": "string",
- "annualMileage": "string",
- "vehicleOwnership": "string",
- "continuousCoverage": "string",
- "activeLicense": "string",
- "everFiledSR22": "string",
- "homeowner": "string",
- "married": "string",
- "educationLevel": "string",
- "creditScore": "string"
}
Score a Life Insurance lead with the specified model type specified, e.g. returnlikelihood, sellability, quotability.
type required | string |
thirdPartyLeadCertificationId | string |
affiliate | string |
campaign | string |
source | Array of strings |
state | string |
gender | string |
dateOfBirth | string <date> |
ageInYears | integer <int64> |
landingPage | string |
object | |
currentInsuranceProvider | string |
married | string |
occupation | string |
homeowner | string |
desiredCoverageLevel | string |
deviceType | string |
familyHistory | string |
height | string |
weight | string |
majorCondition | string |
preExistingCondition | string |
tcpa | string |
tobaccoUse | string |
{- "thirdPartyLeadCertificationId": "string",
- "affiliate": "string",
- "campaign": "string",
- "source": [
- "string"
], - "state": "string",
- "gender": "string",
- "dateOfBirth": "2019-08-24",
- "ageInYears": 0,
- "landingPage": "string",
- "otherParams": {
- "property1": "string",
- "property2": "string"
}, - "currentInsuranceProvider": "string",
- "married": "string",
- "occupation": "string",
- "homeowner": "string",
- "desiredCoverageLevel": "string",
- "deviceType": "string",
- "familyHistory": "string",
- "height": "string",
- "weight": "string",
- "majorCondition": "string",
- "preExistingCondition": "string",
- "tcpa": "string",
- "tobaccoUse": "string"
}
Score a Health Insurance lead with the specified model type specified, e.g. returnlikelihood, sellability, quotability.
type required | string |
thirdPartyLeadCertificationId | string |
affiliate | string |
campaign | string |
source | Array of strings |
state | string |
gender | string |
dateOfBirth | string <date> |
ageInYears | integer <int64> |
landingPage | string |
object | |
tobaccoUse | string |
preExistingConditions | string |
height | string |
tcpa | string |
additionalInsured | string |
coverageTime | string |
entranceUrl | string |
currentInsurancePlan | string |
householdIncome | string |
householdSize | string |
over65 | string |
subsidyStatus | string |
{- "thirdPartyLeadCertificationId": "string",
- "affiliate": "string",
- "campaign": "string",
- "source": [
- "string"
], - "state": "string",
- "gender": "string",
- "dateOfBirth": "2019-08-24",
- "ageInYears": 0,
- "landingPage": "string",
- "otherParams": {
- "property1": "string",
- "property2": "string"
}, - "tobaccoUse": "string",
- "preExistingConditions": "string",
- "height": "string",
- "tcpa": "string",
- "additionalInsured": "string",
- "coverageTime": "string",
- "entranceUrl": "string",
- "currentInsurancePlan": "string",
- "householdIncome": "string",
- "householdSize": "string",
- "over65": "string",
- "subsidyStatus": "string"
}
Many smaller and medium-sized companies don't have access to data science resources and the breadth of data needed to create effective machine-learning models. The Fenris Scoring API Suite hosts a set of both industry generic and tailored machine learning models to give our customers a competitive edge when it comes to understanding their leads and prospective customers.
The generic propensity to buy models housed in this suite can identify applicants in your sales funnel the leads who are 10x more likely to make a purchase, with the models be tuned by line of business or product line.
For a model trained with your data, our data scientists tailor our machine learning algorithms to the criteria that you use in your business to define a high-quality lead. Once a model is trained and deployed, when a request to score a lead is sent to the service we match the lead to our proprietary database to create an enriched prospect profile. This improves the predictive power of the model by augmenting your lead data with our own attributes. The enriched data is scored using your tailored model to segment the lead based on predicted propensity to buy your insurance product.
Return a score for the requested person and address.
outcome required | string The outcome to be predicted (i.e., the target variable of the model). |
lineOfBusiness required | string The insurance line of business for this model. |
productLine required | string The product line within the line of business for the model to consider. |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
required | object (Person) |
required | object (Address) Input address for the search. |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
object |
{- "person": {
- "firstName": "Kyle",
- "middleName": "string",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}, - "otherAddresses": [
- {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}
], - "otherParams": {
- "property1": "string",
- "property2": "string"
}
}
Return a score for the requested person and address.
outcome required | string The outcome to be predicted (i.e., the target variable of the model). |
lineOfBusiness required | string The insurance line of business for this model. |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
required | object (Person) |
required | object (Address) Input address for the search. |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
object |
{- "person": {
- "firstName": "Kyle",
- "middleName": "string",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}, - "otherAddresses": [
- {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}
], - "otherParams": {
- "property1": "string",
- "property2": "string"
}
}
Return a score for the requested person and address.
outcome required | string The outcome to be predicted (i.e., the target variable of the model). |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
required | object (Person) |
required | object (Address) Input address for the search. |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. | |
object |
{- "person": {
- "firstName": "Kyle",
- "middleName": "string",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}, - "otherAddresses": [
- {
- "addressLine1": 18595,
- "addressLine2": "string",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": 80126
}
], - "otherParams": {
- "property1": "string",
- "property2": "string"
}
}
Test the Commercial Lines Prefill service with our Business Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
Using only a business name and address, the Fenris Digital Business Insurance Prefill API locates and returns extensive business details. This API leverages the Fenris best-in-class match rates to return a robust set of data fields in a matter of seconds.
Our client's tell us that if they are the first to quote a business, they will have greater than 60% chance of closing that lead. Business Insurance Prefill provides crucial time-saving results for agents and brokers who are trying to gather applicant information and for underwriters who are key in the quote/close policy phase.
The Commercial Insurance Prefill service works by matching a request including one or more business names, and one or more business addresses to several data repositories.
When a request is received, the provided business name(s) are cleansed by removing common business terms that are often swapped or abbreviated (e.g., Ltd, LLC, Inc.), and the address(es) are standardized to USPS form using the Fenris address standardization service.
The cleansed names and addresses are then used to search the Fenris Commercial Reference Data. This search attempts to find the business at the location(s) entered using fuzzy matching on the name(s).
If no match is found for the name and address, the search is expanded by looking across the state for businesses that match the input name (Note: many businesses have multiple names, and this is reflected in the reference data that is searched).
If no match is found in the commercial reference data with either approach, then the same names and addresses are used to search the Fenris consumer reference data.
While the Fenris reference data is being searched, the service also queries the Secretary of State data for the state in the address field of the request. This search is based only on the business name and the input state.
Once the searches are complete, the service aggregates all of the matched data from the sources and returns
it. There are three fields in the return that provide information about the results of the searches. They
are status
, matchDescription
, and
addressDescription
`.
fenris-match-logic | string Enum: "FAST" "DEFAULT" |
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
names required | Array of strings non-empty [ items non-empty ] Business name(s) which can include alternative names (legal, trade, DBA) or person's first and last name. |
required | object (Address) Address for the business location or just the state |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. |
Cherry on Top Cupcake
{- "names": [
- "Cherry on Top Cupcake",
- "Cherry on Top Bakery",
- "Cherry Cupcake Midtown",
- "Cherry Cupcakes"
], - "address": {
- "addressLine1": "32301 Juergensen ST NW",
- "city": "Washington",
- "state": "DC",
- "zipCode": "20007"
}
}
Cherry on Top Cupcake
{ "requestId": "ca63610a-255c-4948-9574-974835cb1672", "submissionId": "ca63610a-255c-4948-9574-974835cb1672", "status": "Success", "matchDescription": "Default match logic", "addressDescription": "Address verified", "name": "Cherry on Top Cupcake", "address": { "addressLine1": "32301 Juergensen ST NW", "city": "Washington", "state": "DC", "zipCode": "20007", "addressType": "Street Address" }, "phone": "8002236862", "country": "United States", "headquarters": true, "employees": "1-20", "estimatedEmployees": 15, "estimatedPayroll": 1200000, "revenue": "$1 - 9.99 Million", "estimatedRevenue": 2556000, "operatingHours": "", "areaSquareMeters": 150, "parent": { "linkedInUrl": "https://www.linkedin.com/company/cherry-on-top-cupcake", "domain": "cherryontopcupcake.com", "website": "http://www.cherryontopcupcake.com", "alternateDomains": [], "alternateNames": [ "Cherry on Top Cupcake", "Cherry on Top Bakery", "Cherry Cupcake Midtown", "Cherry Cupcakes" ], "numberOfContacts": 80, "primaryIndustry": "retail bakeries", "primaryNAICSCode": "311811", "otherNAICSCodes": [], "primarySICCode": "54610000", "otherSICCodes": [], "employees": "101-500", "estimatedEmployees": 120, "revenue": "$10 - 49.99 Million", "estimatedRevenue": 23000000, "yearEstablished": "2009", "entityType": "LLC", "normalizedIndustry": "Food and Beverages", "numberOfLocations": 9, "estimatedPayroll": 1700000 } }
Test the Commercial Lines Financial Information service with our Business Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
The Fenris Digital Business Financial Information API locates and returns details on the financial health of the searched business, including scores estimating the businesses' risk of becoming severely delinquent or filing for bankruptcy.
This API leverages the Fenris best-in-class match rates to return a robust set of data fields in a matter of seconds.
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
names required | Array of strings non-empty [ items non-empty ] Business name(s) which can include alternative names (legal, trade, DBA) or person's first and last name. |
required | object (Address) Address for the business location or just the state |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. |
Cherry on Top Cupcake
{- "names": [
- "Cherry on Top Cupcake",
- "Cherry on Top Bakery",
- "Cherry Cupcake Midtown",
- "Cherry Cupcakes"
], - "address": {
- "addressLine1": "32301 Juergensen ST NW",
- "city": "Washington",
- "state": "DC",
- "zipCode": "20007"
}
}
Cherry on Top Cupcake
{ "requestId": "7c344ebd-7f5e-4be9-864f-c9e478d71da9", "submissionId": "7c344ebd-7f5e-4be9-864f-c9e478d71da9", "status": "Success", "matchDescription": "Default match logic", "addressDescription": "Address verified", "name": "Cherry on Top Cupcake", "address": { "addressLine1": "32301 Juergensen ST NW", "city": "Washington", "state": "DC", "zipCode": "20007", "addressType": "Street Address" }, "primaryNAICSCode": "311811", "otherNAICSCodes": [], "failRate": 5, "failLevel": 2, "failReasons": [], "creditScore": 420, "creditClass": 4, "creditPercentile": 30, "creditReasons": [ "Insufficient Information on or Lack of Non-Financial Accounts", "Number of Non-Financial Trades", "Years Company has Been in Business in Database", "Industry" ], "bankruptcy": "N" }
Test the Customer 360 service with our Personal Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
The Customer 360 API quickly and accurately populates household information into application forms, making the insurance application process seamless.
The Customer 360 service returns information that can also be used to advise an agent or system about the financial and family status of the applicant. This includes information such as the presence of children and mortgage data. This information can be used to make sure that the applicant has the coverage that fits their needs.
Submission-Id | string Example: cafe-item-123 A pass through field from the request header containing a client-specified identifier to tieback to client data and systems. If the client does not define this value, an auto-generated field is used. |
required | object (Person) |
required | object (Address) Input address for the search. |
Array of objects (Address) Optional address(es) to be used in addition to input address for the search. |
Kyle Murdock
{- "person": {
- "firstName": "Kyle",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}
}
{ "requestId": "2eb08998-e8f9-45ec-985a-1d28130ce173", "submissionId": "2eb08998-e8f9-45ec-985a-1d28130ce173", "status": "Success", "matchDescription": "Artificial match", "addressDescription": "Artificial address matched", "primary": { "firstName": "KYLE", "lastName": "MURDOCK", "dateOfBirth": "05/20/1970", "age": 53, "gender": "Male", "maritalStatus": "Married", "memberCode": "Primary Household Member", "address": { "addressLine1": "18595 OLD ALDRIN HIGHWAY", "city": "HIGHLANDS RANCH", "state": "CO", "zipCode": "80126", "addressType": "Street Address" }, "homeOwnerStatus": "Definite Owner", "lengthOfResidence": "6-10 yrs", "occupation": "Professional/Technical" }, "householdInfo": { "numberOfGenerations": 2, "babyBoomer": false, "dualIncomeNoKids": false, "genX": true, "millennial": false, "numberOfAdults": 3, "presenceChildren": true, "children": { "totalChildren": 2, "children0to2": 0, "children3to5": 0, "children6to10": 0, "children11to15": 1, "children16to17": 1, "childrenUnknownAge": 0 }, "hobbies": [ "Baking", "Scrapbooking", "Woodworking" ] }, "financialInfo": { "income": "$150,000 - $174,999", "netWorth": "$250,000 - $499,999", "wealthResources": "$25,000 - $49,999", "investmentResources": "Less than $4,999", "liquidResources": "$15,000 - $19,999", "shortTermLiability": "$5,000 - $9,999", "mortgageData": { "firstMortgageAmount": 500000, "secondMortgageAmount": null, "originalMortgageAmount": 500000, "homeEquityLoan": null, "interestRate": "3.80%", "interestRateType": "Fixed Rate Loan", "loanType": "Conventional", "loanDate": "04/20/2013", "refiIndicator": false }, "equityInfo": { "salePrice": 450000, "marketValue": 600000, "assessedValue": 550000, "currentLoanToValue": "", "equity": 250000, "saleDate": "04/20/2013" }, "investments": [] }, "householdMembers": [ { "firstName": "KYLE", "lastName": "MURDOCK", "dateOfBirth": "05/20/1970", "age": 53, "gender": "Male", "maritalStatus": "Married", "memberCode": "Primary Household Member" }, { "firstName": "SHARON", "lastName": "MURDOCK", "dateOfBirth": "12/08/1971", "age": 51, "gender": "Female", "maritalStatus": "Married", "memberCode": "Primary Household Member" }, { "firstName": "ANDY", "lastName": "MURDOCK", "dateOfBirth": "03/10/2003", "age": 20, "gender": "Male", "maritalStatus": "Single", "memberCode": "Primary Household Member" } ] }
When dealing with internet lead generation, you can expect invalid contacts containing errors due to typos on forms or intentionally false information. What if you could practically ensure valid leads with accurate contact information? The Fenris Digital ("Fenris") Profile+ service validates the contact information on leads to ensure that you are contacting real people instead of wasting time trying to contact people who don't exist, at fake addresses, with autogenerated, made-up email addresses. The first chance a client has to evaluate whether they can contact a lead occurs when they first receive the POST data. By using Fenris Profile+ service, clients get instant feedback on the quality of the contact information so that they can route the request to the appropriate channel or return the lead to the seller.
The Fenris Profile+ Service works by comparing the input contact information such as person's name, postal address, e-mail address, phone number to Fenris' reference database of more than 250 million individuals and 130 million households to determine whether the input person exists in its reference data to determine the viability of making contact with the lead. These results are also passed to Fenris' proprietary Profile+ scoring engine to compute a score that enables quick assessment on the viability of outreach to each lead based on all of the input contact data submitted.
We match each lead to our proprietary, multi-sourced database covering more than 97% of the US population, evaluating validity for each element so you can sift out fraudulent entries. You can decide at that point to purchase or return the lead, or you can run validated leads through the Fenris data enrichment and lead scoring APIs for an even more granular assessment of lead quality and likelihood to buy.
The Fenris Profile+ endpoint receives a lead's contact data and returns information on the validity of the elements submitted. Note that all items in the request are optional. Information will be provided only for the submitted elements.
Test the Fenris Profile+ service with our Personal Developer Data. The developer data is synthetically generated and contains no PII. Requests made with developer data are not charged to your account.
fenris-model-type | string Example: generic Allows users with a deployed tailored model to use the generic Fenris Profile+ model by specify generic as the value. |
object (ProfilePerson) | |
object (Address) A mailing or street address. | |
string The contact email address. Supported formats include: | |
phone | string The contact phone number. Supported formats include:
|
ipAddress | string The contact IP address. The typical formats include:
|
lineOfBusiness | string The line of business to score the lead for. This is an optional parameter used when a customer has multiple models trained. |
Kyle Murdock
{- "person": {
- "firstName": "Kyle",
- "lastName": "Murdock",
- "dateOfBirth": "05/20/1970"
}, - "address": {
- "addressLine1": "18595 Old Aldrin Highway",
- "city": "Highlands Ranch",
- "state": "CO",
- "zipCode": "80126"
}, - "phone": "123-123-4567",
- "ipAddress": "1.2.3.4",
- "lineOfBusiness": "auto"
}
Kyle Murdock
{ "requestId": "dd6dfe57-0b92-4319-8bfc-7c6ab6823b84", "submissionId": "dd6dfe57-0b92-4319-8bfc-7c6ab6823b84", "status": "Success - Developer Data", "address": { "standardized": true, "singleDeliveryPoint": true, "residential": true, "addressFound": true, "householdFound": true, "personAtAddress": true }, "person": { "recognizedFirstName": true, "recognizedLastName": true, "personFound": true, "dateOfBirthVerified": true }, "phone": { "valid": false, "mobileOrLandline": false }, "email": { "valid": true }, "ipAddress": { "valid": true, "notKnownProxy": true } }
The echo API is a simple "Hello World!" service that echoes the message sent to it. It is designed to assist developers in testing authentication and connectivity to the Fenris API platform.
message | string A string message to send to the echo service. |
{- "message": "I think you're great!"
}
{ "requestId": "3800a4cd-1372-48ce-a6fa-2b7fe5888258", "submissionId": "3800a4cd-1372-48ce-a6fa-2b7fe5888258", "status": "SUCCESS", "message": "I think you're great!" }