Find an API

Search public APIs with auth details & Postman guides

← All APIs

TransUnion Insurance Solutions API

transunion.com · Company

Company OAuth2 Paid Insurance Financial Services Banking Underwriting Credit Insurance

Credit and analytics APIs for insurance underwriting from TransUnion. Products include Insurance Risk Score (correlates to loss likelihood), TrueRisk (credit-based insurance score), and Identity Verification. Used in Guidewire PolicyCenter for rating and underwriting rules. FCRA-compliant.

Authentication

OAuth2 OAuth2 client credentials with certificate-based mutual TLS. Requires TransUnion data agreement and FCRA compliance certification.

Sample Requests

POST Get insurance credit score

Returns TransUnion credit-based insurance score for underwriting. Score predicts claim likelihood and severity.

https://api.transunion.com/credit-report/v3/insurance

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
Content-Type application/json
Authorization Bearer YOUR_ACCESS_TOKEN
Request Body — data you're sending
{
  "ssn": "###-##-####",
  "address": {
    "city": "Austin",
    "line1": "123 Main St",
    "state": "TX",
    "postalCode": "78701"
  },
  "lastName": "Smith",
  "firstName": "John",
  "dateOfBirth": "1985-03-15"
}
curl -X POST "https://api.transunion.com/credit-report/v3/insurance" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"ssn":"###-##-####","address":{"city":"Austin","line1":"123 Main St","state":"TX","postalCode":"78701"},"lastName":"Smith","firstName":"John","dateOfBirth":"1985-03-15"}'
import requests
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
data = {
    "ssn": "###-##-####",
    "address": {
        "city": "Austin",
        "line1": "123 Main St",
        "state": "TX",
        "postalCode": "78701"
    },
    "lastName": "Smith",
    "firstName": "John",
    "dateOfBirth": "1985-03-15"
}
response = requests.post(
    "https://api.transunion.com/credit-report/v3/insurance",
    headers=headers,
    json=data,
)
print(response.json())
const url = 'https://api.transunion.com/credit-report/v3/insurance';

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({
  "ssn": "###-##-####",
  "address": {
    "city": "Austin",
    "line1": "123 Main St",
    "state": "TX",
    "postalCode": "78701"
  },
  "lastName": "Smith",
  "firstName": "John",
  "dateOfBirth": "1985-03-15"
}),
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"bytes"
	"encoding/json"
)

func main() {
	targetURL := "https://api.transunion.com/credit-report/v3/insurance"
	jsonData, _ := json.Marshal({"ssn":"###-##-####","address":{"city":"Austin","line1":"123 Main St","state":"TX","postalCode":"78701"},"lastName":"Smith","firstName":"John","dateOfBirth":"1985-03-15"})
	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.transunion.com/credit-report/v3/insurance")

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 = "{\"ssn\":\"###-##-####\",\"address\":{\"city\":\"Austin\",\"line1\":\"123 Main St\",\"state\":\"TX\",\"postalCode\":\"78701\"},\"lastName\":\"Smith\",\"firstName\":\"John\",\"dateOfBirth\":\"1985-03-15\"}"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.transunion.com/credit-report/v3/insurance";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "Content-Type: application/json",
        "Authorization: Bearer YOUR_ACCESS_TOKEN",
        "Content-Type: application/json"
    ]),
    "content" => json_encode({"ssn":"###-##-####","address":{"city":"Austin","line1":"123 Main St","state":"TX","postalCode":"78701"},"lastName":"Smith","firstName":"John","dateOfBirth":"1985-03-15"}),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. Requires TransUnion data agreement — contact transunion.com/business/insurance
  2. FCRA compliance documentation required before API access is granted
  3. Mutual TLS required — client certificate provided by TransUnion
  4. Separate credentials for UAT and Production environments
  5. Guidewire PolicyCenter integration via REST or SOAP — accelerator on Marketplace
  6. Insurance score range and adverse action codes documented in TransUnion API guide

What can you build with TransUnion Insurance Solutions API?

TransUnion Insurance Solutions 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. TransUnion Insurance Solutions 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?

Open documentation ↗