curl --request GET \
--url https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration \
--header 'Authorization: <api-key>'import requests
url = "https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"policy": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"effectiveDate": {
"type": "string",
"title": "effectiveDate"
},
"premium": {
"type": "number",
"title": "premium"
},
"status": {
"type": "string",
"title": "status",
"oneOf": [
{
"const": "active",
"title": "Active"
},
{
"const": "cancelled",
"title": "Cancelled"
},
{
"const": "expired",
"title": "Expired"
}
]
}
},
"required": [
"effectiveDate"
]
},
"exposure": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"employeeCount": {
"type": "number",
"title": "employeeCount"
},
"isActive": {
"type": "boolean",
"title": "isActive"
}
},
"required": []
}
}Get Policies Configuration
Returns JSON Schemas describing the custom fields available for Field Model V1 policies. The response contains separate schemas for policy-level fields and exposure-level fields.
Each schema is a standard JSON Schema (draft 2020-12) that can be used directly with validation libraries like Ajv or Zod.
The policy schema covers policy-level custom fields (used in
policy fieldModelV1Data.policy or segment policy objects).
The exposure schema covers exposure-level custom fields.
The policy schema excludes fields that are system-managed and
not user-input: calculated (Jexl-derived) fields, server-populated
fields (rating responses, billing, Google Drive ids, target rater),
and policy lifecycle fields (policyStatus, policyNumber).
Required permission: company.policy:read
curl --request GET \
--url https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration \
--header 'Authorization: <api-key>'import requests
url = "https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/configuration")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"policy": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"effectiveDate": {
"type": "string",
"title": "effectiveDate"
},
"premium": {
"type": "number",
"title": "premium"
},
"status": {
"type": "string",
"title": "status",
"oneOf": [
{
"const": "active",
"title": "Active"
},
{
"const": "cancelled",
"title": "Cancelled"
},
{
"const": "expired",
"title": "Expired"
}
]
}
},
"required": [
"effectiveDate"
]
},
"exposure": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"employeeCount": {
"type": "number",
"title": "employeeCount"
},
"isActive": {
"type": "boolean",
"title": "isActive"
}
},
"required": []
}
}Authorizations
API key authentication. Include your API key in the Authorization header.
Path Parameters
Company identifier
Response
Configuration for FMV1 policy custom fields
Configuration response for Field Model V1 policies. Returns separate JSON Schemas for policy-level and exposure-level custom fields.
JSON Schema for policy-level custom fields. These fields apply to
segments[].policy objects (including policyCoverages).
Show child attributes
Show child attributes
JSON Schema for exposure-level custom fields. These fields apply to
segments[].exposures[] objects.
Show child attributes
Show child attributes
Was this page helpful?
