Create Policy Line Item Type
curl --request POST \
--url https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Broker Commission",
"direction": "payable"
}
'import requests
url = "https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types"
payload = {
"name": "Broker Commission",
"direction": "payable"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'Broker Commission', direction: 'payable'})
};
fetch('https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types', 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://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Broker Commission',
'direction' => 'payable'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types"
payload := strings.NewReader("{\n \"name\": \"Broker Commission\",\n \"direction\": \"payable\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Broker Commission\",\n \"direction\": \"payable\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Broker Commission\",\n \"direction\": \"payable\"\n}"
response = http.request(request)
puts response.read_body{
"categories": [],
"policyFinancials": {
"invoiceTypes": [
{
"id": "550e8400-e29b-41d4-a716-446655440100",
"name": "Agency Bill",
"expectedDirection": "receivable",
"moneyOutRequiresApproval": false,
"deprecatedAt": null,
"everUsed": false,
"liveInvoiceCount": 0,
"vocabularyLock": null,
"hasLegacyLineItems": false,
"policyPresets": null,
"payeeDefaults": null
}
],
"lineItemTypes": [
{
"id": "550e8400-e29b-41d4-a716-446655440110",
"name": "Broker Commission",
"direction": "payable",
"deprecatedAt": null,
"everUsed": false,
"liveInvoiceCount": 0,
"vocabularyLock": null,
"allowedOn": [
{
"invoiceTypeId": "550e8400-e29b-41d4-a716-446655440100",
"label": "Broker Commission (Less)",
"removable": true
}
]
}
]
},
"classifications": []
}Configuration
Create Policy Line Item Type
Uses the same audited operation and validation rules as Financials settings. The URL fixes policy scope; event vocabulary and other companies’ IDs cannot be changed here. Creates an independent company policy line item with name and direction. Associate it with one or more policy invoice types using Set Policy Line Item Associations.
Required permission: financials.configure
POST
/
api
/
v1
/
companies
/
{companyId}
/
financials
/
config
/
policy-line-item-types
Create Policy Line Item Type
curl --request POST \
--url https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Broker Commission",
"direction": "payable"
}
'import requests
url = "https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types"
payload = {
"name": "Broker Commission",
"direction": "payable"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'Broker Commission', direction: 'payable'})
};
fetch('https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types', 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://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Broker Commission',
'direction' => 'payable'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types"
payload := strings.NewReader("{\n \"name\": \"Broker Commission\",\n \"direction\": \"payable\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Broker Commission\",\n \"direction\": \"payable\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://go.aiinsurance.io/api/v1/companies/{companyId}/financials/config/policy-line-item-types")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Broker Commission\",\n \"direction\": \"payable\"\n}"
response = http.request(request)
puts response.read_body{
"categories": [],
"policyFinancials": {
"invoiceTypes": [
{
"id": "550e8400-e29b-41d4-a716-446655440100",
"name": "Agency Bill",
"expectedDirection": "receivable",
"moneyOutRequiresApproval": false,
"deprecatedAt": null,
"everUsed": false,
"liveInvoiceCount": 0,
"vocabularyLock": null,
"hasLegacyLineItems": false,
"policyPresets": null,
"payeeDefaults": null
}
],
"lineItemTypes": [
{
"id": "550e8400-e29b-41d4-a716-446655440110",
"name": "Broker Commission",
"direction": "payable",
"deprecatedAt": null,
"everUsed": false,
"liveInvoiceCount": 0,
"vocabularyLock": null,
"allowedOn": [
{
"invoiceTypeId": "550e8400-e29b-41d4-a716-446655440100",
"label": "Broker Commission (Less)",
"removable": true
}
]
}
]
},
"classifications": []
}Authorizations
Body
application/json
