curl --request POST \
--url https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"personId": "550e8400-e29b-41d4-a716-446655440101"
}
'import requests
url = "https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts"
payload = { "personId": "550e8400-e29b-41d4-a716-446655440101" }
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({personId: '550e8400-e29b-41d4-a716-446655440101'})
};
fetch('https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts', 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}/policies/{policyId}/contacts",
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([
'personId' => '550e8400-e29b-41d4-a716-446655440101'
]),
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}/policies/{policyId}/contacts"
payload := strings.NewReader("{\n \"personId\": \"550e8400-e29b-41d4-a716-446655440101\"\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}/policies/{policyId}/contacts")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"personId\": \"550e8400-e29b-41d4-a716-446655440101\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts")
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 \"personId\": \"550e8400-e29b-41d4-a716-446655440101\"\n}"
response = http.request(request)
puts response.read_body{
"contacts": [
{
"personId": "550e8400-e29b-41d4-a716-446655440101",
"displayName": "Jane Doe"
}
]
}Add Policy Contact
Links a person from the company Directory to a policy as a contact. It is
not an endorsement: it creates no policy version, changes no coverage or
premium, and is audited as its own operation. If the person is not in the
Directory yet, create them first with Create Entity (createEntity) and
entity type person.
Idempotent. Linking a Person who is already a contact succeeds and changes nothing; the response is the current contact list either way.
The Person must already exist in the company’s Directory (create one with
POST /api/v1/companies/{companyId}/entities/person). A missing, deleted or
foreign-company Person is rejected with 404 and nothing is changed.
Sending contacts inside policy transaction data has no effect — this
endpoint is the only way to link a contact.
Required permission: policy.endorse — the caller must also hold
policy.view and person.view.
curl --request POST \
--url https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"personId": "550e8400-e29b-41d4-a716-446655440101"
}
'import requests
url = "https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts"
payload = { "personId": "550e8400-e29b-41d4-a716-446655440101" }
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({personId: '550e8400-e29b-41d4-a716-446655440101'})
};
fetch('https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts', 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}/policies/{policyId}/contacts",
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([
'personId' => '550e8400-e29b-41d4-a716-446655440101'
]),
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}/policies/{policyId}/contacts"
payload := strings.NewReader("{\n \"personId\": \"550e8400-e29b-41d4-a716-446655440101\"\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}/policies/{policyId}/contacts")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"personId\": \"550e8400-e29b-41d4-a716-446655440101\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://go.aiinsurance.io/api/v1/companies/{companyId}/policies/{policyId}/contacts")
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 \"personId\": \"550e8400-e29b-41d4-a716-446655440101\"\n}"
response = http.request(request)
puts response.read_body{
"contacts": [
{
"personId": "550e8400-e29b-41d4-a716-446655440101",
"displayName": "Jane Doe"
}
]
}