Find an API

Search public APIs with auth details & Postman guides

← All APIs

EZLynx Agency Management & Rating API

ezlynx.com · Company

Company OAuth2 Paid Insurance Agency Management Rating Personal Lines

API for EZLynx — a combined agency management system and comparative rater used by 20,000+ independent agencies. EZLynx unifies client management, multi-carrier rating, policy download, and communication tools in a single platform. The API enables InsurTech partners, lead providers, and carrier portals to push leads, trigger ratings, retrieve client records, and sync policy data with the agency's EZLynx account.

Authentication

OAuth2 OAuth2 authorization code flow. Register your integration at developers.ezlynx.com. Agencies authorize your app to access their EZLynx data.

Sample Requests

POST Create applicant (lead)

Creates a new applicant (lead) record in EZLynx. Triggers the agency's lead workflow and makes the record available for rating.

https://api.ezlynx.com/v3/applicants

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
{
  "email": "[email protected]",
  "phone": "512-555-4321",
  "address": {
    "zip": "78702",
    "city": "Austin",
    "state": "TX",
    "street": "789 Cedar Blvd"
  },
  "lastName": "Martinez",
  "firstName": "David",
  "leadSource": "Website",
  "interestedIn": [
    "PersonalAuto",
    "Homeowners"
  ]
}
curl -X POST "https://api.ezlynx.com/v3/applicants" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"email":"[email protected]","phone":"512-555-4321","address":{"zip":"78702","city":"Austin","state":"TX","street":"789 Cedar Blvd"},"lastName":"Martinez","firstName":"David","leadSource":"Website","interestedIn":["PersonalAuto","Homeowners"]}'
import requests
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
data = {
    "email": "[email protected]",
    "phone": "512-555-4321",
    "address": {
        "zip": "78702",
        "city": "Austin",
        "state": "TX",
        "street": "789 Cedar Blvd"
    },
    "lastName": "Martinez",
    "firstName": "David",
    "leadSource": "Website",
    "interestedIn": [
        "PersonalAuto",
        "Homeowners"
    ]
}
response = requests.post(
    "https://api.ezlynx.com/v3/applicants",
    headers=headers,
    json=data,
)
print(response.json())
const url = 'https://api.ezlynx.com/v3/applicants';

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({
  "email": "[email protected]",
  "phone": "512-555-4321",
  "address": {
    "zip": "78702",
    "city": "Austin",
    "state": "TX",
    "street": "789 Cedar Blvd"
  },
  "lastName": "Martinez",
  "firstName": "David",
  "leadSource": "Website",
  "interestedIn": [
    "PersonalAuto",
    "Homeowners"
  ]
}),
}); 
const data = await response.json();
console.log(data);
package main

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

func main() {
	targetURL := "https://api.ezlynx.com/v3/applicants"
	jsonData, _ := json.Marshal({"email":"[email protected]","phone":"512-555-4321","address":{"zip":"78702","city":"Austin","state":"TX","street":"789 Cedar Blvd"},"lastName":"Martinez","firstName":"David","leadSource":"Website","interestedIn":["PersonalAuto","Homeowners"]})
	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.ezlynx.com/v3/applicants")

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 = "{\"email\":\"[email protected]\",\"phone\":\"512-555-4321\",\"address\":{\"zip\":\"78702\",\"city\":\"Austin\",\"state\":\"TX\",\"street\":\"789 Cedar Blvd\"},\"lastName\":\"Martinez\",\"firstName\":\"David\",\"leadSource\":\"Website\",\"interestedIn\":[\"PersonalAuto\",\"Homeowners\"]}"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.ezlynx.com/v3/applicants";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "Content-Type: application/json",
        "Authorization: Bearer YOUR_ACCESS_TOKEN",
        "Content-Type: application/json"
    ]),
    "content" => json_encode({"email":"[email protected]","phone":"512-555-4321","address":{"zip":"78702","city":"Austin","state":"TX","street":"789 Cedar Blvd"},"lastName":"Martinez","firstName":"David","leadSource":"Website","interestedIn":["PersonalAuto","Homeowners"]}),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST Initiate comparative rating

Submits vehicle and driver data for multi-carrier personal auto rating for an existing EZLynx applicant.

https://api.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto

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
{
  "drivers": [
    {
      "dob": "1988-07-04",
      "licenseState": "TX",
      "relationship": "Named Insured",
      "maritalStatus": "Married"
    }
  ],
  "vehicles": [
    {
      "vin": "1FTFW1ET0NFB00001",
      "make": "Ford",
      "year": 2022,
      "model": "F-150",
      "primaryUse": "Personal",
      "annualMiles": 15000,
      "garagingZip": "78702"
    }
  ],
  "effectiveDate": "2024-05-01"
}
curl -X POST "https://api.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"drivers":[{"dob":"1988-07-04","licenseState":"TX","relationship":"Named Insured","maritalStatus":"Married"}],"vehicles":[{"vin":"1FTFW1ET0NFB00001","make":"Ford","year":2022,"model":"F-150","primaryUse":"Personal","annualMiles":15000,"garagingZip":"78702"}],"effectiveDate":"2024-05-01"}'
import requests
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
data = {
    "drivers": [
        {
            "dob": "1988-07-04",
            "licenseState": "TX",
            "relationship": "Named Insured",
            "maritalStatus": "Married"
        }
    ],
    "vehicles": [
        {
            "vin": "1FTFW1ET0NFB00001",
            "make": "Ford",
            "year": 2022,
            "model": "F-150",
            "primaryUse": "Personal",
            "annualMiles": 15000,
            "garagingZip": "78702"
        }
    ],
    "effectiveDate": "2024-05-01"
}
response = requests.post(
    "https://api.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto",
    headers=headers,
    json=data,
)
print(response.json())
const url = 'https://api.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto';

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({
  "drivers": [
    {
      "dob": "1988-07-04",
      "licenseState": "TX",
      "relationship": "Named Insured",
      "maritalStatus": "Married"
    }
  ],
  "vehicles": [
    {
      "vin": "1FTFW1ET0NFB00001",
      "make": "Ford",
      "year": 2022,
      "model": "F-150",
      "primaryUse": "Personal",
      "annualMiles": 15000,
      "garagingZip": "78702"
    }
  ],
  "effectiveDate": "2024-05-01"
}),
}); 
const data = await response.json();
console.log(data);
package main

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

func main() {
	targetURL := "https://api.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto"
	jsonData, _ := json.Marshal({"drivers":[{"dob":"1988-07-04","licenseState":"TX","relationship":"Named Insured","maritalStatus":"Married"}],"vehicles":[{"vin":"1FTFW1ET0NFB00001","make":"Ford","year":2022,"model":"F-150","primaryUse":"Personal","annualMiles":15000,"garagingZip":"78702"}],"effectiveDate":"2024-05-01"})
	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.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto")

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 = "{\"drivers\":[{\"dob\":\"1988-07-04\",\"licenseState\":\"TX\",\"relationship\":\"Named Insured\",\"maritalStatus\":\"Married\"}],\"vehicles\":[{\"vin\":\"1FTFW1ET0NFB00001\",\"make\":\"Ford\",\"year\":2022,\"model\":\"F-150\",\"primaryUse\":\"Personal\",\"annualMiles\":15000,\"garagingZip\":\"78702\"}],\"effectiveDate\":\"2024-05-01\"}"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.ezlynx.com/v3/applicants/{applicantId}/rating/personal-auto";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "Content-Type: application/json",
        "Authorization: Bearer YOUR_ACCESS_TOKEN",
        "Content-Type: application/json"
    ]),
    "content" => json_encode({"drivers":[{"dob":"1988-07-04","licenseState":"TX","relationship":"Named Insured","maritalStatus":"Married"}],"vehicles":[{"vin":"1FTFW1ET0NFB00001","make":"Ford","year":2022,"model":"F-150","primaryUse":"Personal","annualMiles":15000,"garagingZip":"78702"}],"effectiveDate":"2024-05-01"}),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. Register integration at developers.ezlynx.com — requires approval by EZLynx partnership team
  2. OAuth2 uses per-agency authorization — each agency must approve your app
  3. EZLynx is an Applied Systems product (acquired 2016) — shares some platform infrastructure
  4. Applicant ID returned on creation — use for all subsequent rating and policy calls
  5. Rating results are stored in EZLynx and retrievable via /applicants/{id}/quotes
  6. EZLynx also provides email/SMS automation APIs — useful for lead nurturing workflows

What can you build with EZLynx Agency Management & Rating API?

EZLynx Agency Management & Rating 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. EZLynx Agency Management & Rating 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 ↗