Find an API

Search public APIs with auth details & Postman guides

← All APIs

Insurity Policy Cloud API

insurity.com · Company

Company OAuth2 Paid Insurance Policy Administration Claims Rating

REST API for Insurity's cloud-based P&C insurance platform suite, including Policy Cloud for policy administration and Claims Cloud for claims management. Used by specialty, surplus lines, and standard markets insurers. Supports commercial, personal, and specialty lines with configurable product definitions. API-first design enables third-party distribution portals, agency integrations, and InsurTech partnerships.

Authentication

OAuth2 OAuth2 client credentials. Request API credentials through the Insurity partner program at insurity.com/partners.

Sample Requests

POST Rate commercial policy

Submits risk data for commercial lines rating. Returns premium breakdown by coverage, applicable discounts, and surcharges.

https://api.insurity.com/v1/rating/commercial/quote

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
{
  "risk": {
    "businessType": "RETAIL",
    "annualRevenue": 500000,
    "squareFootage": 5000,
    "yearsInBusiness": 8
  },
  "state": "TX",
  "coverages": {
    "buildingProperty": {
      "limit": 750000,
      "deductible": 2500
    },
    "generalLiability": {
      "limit": 1000000
    }
  },
  "effectiveDate": "2024-04-01",
  "lineOfBusiness": "BOP"
}
curl -X POST "https://api.insurity.com/v1/rating/commercial/quote" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"risk":{"businessType":"RETAIL","annualRevenue":500000,"squareFootage":5000,"yearsInBusiness":8},"state":"TX","coverages":{"buildingProperty":{"limit":750000,"deductible":2500},"generalLiability":{"limit":1000000}},"effectiveDate":"2024-04-01","lineOfBusiness":"BOP"}'
import requests
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
data = {
    "risk": {
        "businessType": "RETAIL",
        "annualRevenue": 500000,
        "squareFootage": 5000,
        "yearsInBusiness": 8
    },
    "state": "TX",
    "coverages": {
        "buildingProperty": {
            "limit": 750000,
            "deductible": 2500
        },
        "generalLiability": {
            "limit": 1000000
        }
    },
    "effectiveDate": "2024-04-01",
    "lineOfBusiness": "BOP"
}
response = requests.post(
    "https://api.insurity.com/v1/rating/commercial/quote",
    headers=headers,
    json=data,
)
print(response.json())
const url = 'https://api.insurity.com/v1/rating/commercial/quote';

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({
  "risk": {
    "businessType": "RETAIL",
    "annualRevenue": 500000,
    "squareFootage": 5000,
    "yearsInBusiness": 8
  },
  "state": "TX",
  "coverages": {
    "buildingProperty": {
      "limit": 750000,
      "deductible": 2500
    },
    "generalLiability": {
      "limit": 1000000
    }
  },
  "effectiveDate": "2024-04-01",
  "lineOfBusiness": "BOP"
}),
}); 
const data = await response.json();
console.log(data);
package main

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

func main() {
	targetURL := "https://api.insurity.com/v1/rating/commercial/quote"
	jsonData, _ := json.Marshal({"risk":{"businessType":"RETAIL","annualRevenue":500000,"squareFootage":5000,"yearsInBusiness":8},"state":"TX","coverages":{"buildingProperty":{"limit":750000,"deductible":2500},"generalLiability":{"limit":1000000}},"effectiveDate":"2024-04-01","lineOfBusiness":"BOP"})
	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.insurity.com/v1/rating/commercial/quote")

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 = "{\"risk\":{\"businessType\":\"RETAIL\",\"annualRevenue\":500000,\"squareFootage\":5000,\"yearsInBusiness\":8},\"state\":\"TX\",\"coverages\":{\"buildingProperty\":{\"limit\":750000,\"deductible\":2500},\"generalLiability\":{\"limit\":1000000}},\"effectiveDate\":\"2024-04-01\",\"lineOfBusiness\":\"BOP\"}"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.insurity.com/v1/rating/commercial/quote";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "Content-Type: application/json",
        "Authorization: Bearer YOUR_ACCESS_TOKEN",
        "Content-Type: application/json"
    ]),
    "content" => json_encode({"risk":{"businessType":"RETAIL","annualRevenue":500000,"squareFootage":5000,"yearsInBusiness":8},"state":"TX","coverages":{"buildingProperty":{"limit":750000,"deductible":2500},"generalLiability":{"limit":1000000}},"effectiveDate":"2024-04-01","lineOfBusiness":"BOP"}),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET Get policy details

Returns full policy record including coverages, endorsements, billing schedule, and claim history summary.

https://api.insurity.com/v1/policies/{policyNumber}

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
Authorization Bearer YOUR_ACCESS_TOKEN
curl -X GET "https://api.insurity.com/v1/policies/{policyNumber}" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
headers = {
    "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.get(
    "https://api.insurity.com/v1/policies/{policyNumber}",
    headers=headers,
)
print(response.json())
const url = 'https://api.insurity.com/v1/policies/{policyNumber}';

const response = await fetch(url, {
  headers: {
    'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	targetURL := "https://api.insurity.com/v1/policies/{policyNumber}"
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("Authorization", "Bearer YOUR_ACCESS_TOKEN")

	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.insurity.com/v1/policies/{policyNumber}")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["Authorization"] = "Bearer YOUR_ACCESS_TOKEN"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.insurity.com/v1/policies/{policyNumber}";
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "Authorization: Bearer YOUR_ACCESS_TOKEN"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. Visit insurity.com/partners to enroll in the partner program and receive API credentials
  2. Insurity provides separate sandbox and production environments — always test in sandbox first
  3. Line of business codes (BOP, CPP, WORK, etc.) vary by tenant configuration
  4. Rating calls require state-specific risk inputs — consult Insurity product documentation
  5. Claims Cloud API shares authentication but uses /claims base path
  6. Insurity offers a pre-built Salesforce connector for agency distribution use cases

What can you build with Insurity Policy Cloud API?

Insurity Policy Cloud 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. Insurity Policy Cloud 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 ↗