Verisk ISO ClaimSearch API
verisk.com · Company
ISO ClaimSearch is the insurance industry's largest claims database — 1.4 billion claims from 1,500+ insurers. Used in Guidewire ClaimCenter workflows to detect duplicate claims, identify fraud patterns, and verify loss history. Also includes A-PLUS (auto claims) and Property Underwriting reports.
Authentication
Sample Requests
Searches ClaimSearch database for matching claims based on insured, vehicle, or property. Returns potential duplicates and fraud indicators.
Hover any highlighted part to learn what it does
| Content-Type | application/json |
| Authorization | Bearer YOUR_ACCESS_TOKEN |
{
"vin": "1HGBH41JXMN109186",
"lossDate": "2024-01-10",
"insuredDOB": "1980-06-01",
"searchType": "Auto",
"claimNumber": "CL-1234",
"insuredLastName": "Doe",
"insuredFirstName": "Jane"
}
curl -X POST "https://api.verisk.com/iso-claimsearch/v1/searches" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"vin":"1HGBH41JXMN109186","lossDate":"2024-01-10","insuredDOB":"1980-06-01","searchType":"Auto","claimNumber":"CL-1234","insuredLastName":"Doe","insuredFirstName":"Jane"}'import requests
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
data = {
"vin": "1HGBH41JXMN109186",
"lossDate": "2024-01-10",
"insuredDOB": "1980-06-01",
"searchType": "Auto",
"claimNumber": "CL-1234",
"insuredLastName": "Doe",
"insuredFirstName": "Jane"
}
response = requests.post(
"https://api.verisk.com/iso-claimsearch/v1/searches",
headers=headers,
json=data,
)
print(response.json())const url = 'https://api.verisk.com/iso-claimsearch/v1/searches';
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
},
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"vin": "1HGBH41JXMN109186",
"lossDate": "2024-01-10",
"insuredDOB": "1980-06-01",
"searchType": "Auto",
"claimNumber": "CL-1234",
"insuredLastName": "Doe",
"insuredFirstName": "Jane"
}),
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"bytes"
"encoding/json"
)
func main() {
targetURL := "https://api.verisk.com/iso-claimsearch/v1/searches"
jsonData, _ := json.Marshal({"vin":"1HGBH41JXMN109186","lossDate":"2024-01-10","insuredDOB":"1980-06-01","searchType":"Auto","claimNumber":"CL-1234","insuredLastName":"Doe","insuredFirstName":"Jane"})
req, _ := http.NewRequest("POST", targetURL, bytes.NewBuffer(jsonData))
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_ACCESS_TOKEN")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.verisk.com/iso-claimsearch/v1/searches")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["Content-Type"] = "application/json"
req["Authorization"] = "Bearer YOUR_ACCESS_TOKEN"
req["Content-Type"] = "application/json"
req.body = "{\"vin\":\"1HGBH41JXMN109186\",\"lossDate\":\"2024-01-10\",\"insuredDOB\":\"1980-06-01\",\"searchType\":\"Auto\",\"claimNumber\":\"CL-1234\",\"insuredLastName\":\"Doe\",\"insuredFirstName\":\"Jane\"}"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.verisk.com/iso-claimsearch/v1/searches";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"Content-Type: application/json",
"Authorization: Bearer YOUR_ACCESS_TOKEN",
"Content-Type: application/json"
]),
"content" => json_encode({"vin":"1HGBH41JXMN109186","lossDate":"2024-01-10","insuredDOB":"1980-06-01","searchType":"Auto","claimNumber":"CL-1234","insuredLastName":"Doe","insuredFirstName":"Jane"}),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Submits a new claim to the ClaimSearch database. Required for ISO member insurers.
Hover any highlighted part to learn what it does
| Content-Type | application/json |
| Authorization | Bearer YOUR_ACCESS_TOKEN |
{
"lossDate": "2024-01-10",
"lossType": "Collision",
"claimNumber": "CL-1234",
"policyNumber": "POL-000123",
"lineOfBusiness": "PersonalAuto"
}
curl -X POST "https://api.verisk.com/iso-claimsearch/v1/claims" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"lossDate":"2024-01-10","lossType":"Collision","claimNumber":"CL-1234","policyNumber":"POL-000123","lineOfBusiness":"PersonalAuto"}'import requests
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
data = {
"lossDate": "2024-01-10",
"lossType": "Collision",
"claimNumber": "CL-1234",
"policyNumber": "POL-000123",
"lineOfBusiness": "PersonalAuto"
}
response = requests.post(
"https://api.verisk.com/iso-claimsearch/v1/claims",
headers=headers,
json=data,
)
print(response.json())const url = 'https://api.verisk.com/iso-claimsearch/v1/claims';
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
},
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
"lossDate": "2024-01-10",
"lossType": "Collision",
"claimNumber": "CL-1234",
"policyNumber": "POL-000123",
"lineOfBusiness": "PersonalAuto"
}),
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"bytes"
"encoding/json"
)
func main() {
targetURL := "https://api.verisk.com/iso-claimsearch/v1/claims"
jsonData, _ := json.Marshal({"lossDate":"2024-01-10","lossType":"Collision","claimNumber":"CL-1234","policyNumber":"POL-000123","lineOfBusiness":"PersonalAuto"})
req, _ := http.NewRequest("POST", targetURL, bytes.NewBuffer(jsonData))
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_ACCESS_TOKEN")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.verisk.com/iso-claimsearch/v1/claims")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["Content-Type"] = "application/json"
req["Authorization"] = "Bearer YOUR_ACCESS_TOKEN"
req["Content-Type"] = "application/json"
req.body = "{\"lossDate\":\"2024-01-10\",\"lossType\":\"Collision\",\"claimNumber\":\"CL-1234\",\"policyNumber\":\"POL-000123\",\"lineOfBusiness\":\"PersonalAuto\"}"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.verisk.com/iso-claimsearch/v1/claims";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"Content-Type: application/json",
"Authorization: Bearer YOUR_ACCESS_TOKEN",
"Content-Type: application/json"
]),
"content" => json_encode({"lossDate":"2024-01-10","lossType":"Collision","claimNumber":"CL-1234","policyNumber":"POL-000123","lineOfBusiness":"PersonalAuto"}),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- Requires ISO/Verisk member agreement — contact [email protected]
- Access to developer.verisk.com portal provided upon agreement
- Guidewire Marketplace: pre-built ClaimSearch accelerator for ClaimCenter
- FNOL match search should be triggered automatically at claim creation in Guidewire
- Response includes match score and match category (e.g. Exact, Similar, Suspicious)
- Test data and sandbox environment provided by Verisk during onboarding
What can you build with Verisk ISO ClaimSearch API?
Verisk ISO ClaimSearch API is a Company API. Developers commonly use company APIs for:
- enriching CRM records with company firmographics
- building lead-generation and prospecting tools
- verifying business identity and registration details
- monitoring competitors and market intelligence
- powering B2B data enrichment pipelines
OAuth 2.0. OAuth lets your app act on behalf of a user. You redirect them to authorise access, receive a token, then use that token in requests. Best for accessing user-owned data. Verisk ISO ClaimSearch API is a paid API — check the provider's pricing page before building a production integration.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?