Skip to main content
POST
/
api
/
v1
/
external
/
companies
/
{companyId}
/
policies
Create Policy
curl --request POST \
  --url https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "referenceId": "POL-2025-001",
  "startsAtDate": "2025-01-01",
  "endsAtDate": "2026-01-01",
  "type": "general_liability",
  "billingPeriod": "annual",
  "coverageTimezone": "America/New_York",
  "premium": 15000,
  "primaryInsured": {
    "insuredId": "550e8400-e29b-41d4-a716-446655440010",
    "joinDate": "2025-01-01"
  },
  "coverages": [
    {
      "coverageTypeId": "general_liability"
    }
  ],
  "segments": [
    {
      "segmentInfo": {
        "start": "2025-01-01",
        "end": "2026-01-01"
      },
      "policy": {
        "effectiveDate": "2025-01-01",
        "premium": 15000
      },
      "coverages": [],
      "exposures": []
    }
  ]
}
'
{
  "id": "550e8400-e29b-41d4-a716-446655440001"
}

Authorizations

Authorization
string
header
required

API key authentication. Include your API key in the Authorization header.

Path Parameters

companyId
string<uuid>
required

Company identifier

Body

application/json
referenceId
string
required

External reference identifier for the policy

startsAtDate
string
required

Policy start date (ISO 8601)

endsAtDate
string
required

Policy end date (ISO 8601)

type
string
required

Policy type identifier

billingPeriod
enum<string>
required

Billing period

Available options:
annual,
semi-annual,
quarterly,
monthly
coverageTimezone
string
required

IANA timezone for coverage dates

premium
number
required

Total premium amount

primaryInsured
object
required
coverages
object[]
required
segments
object[]
required
description
string

Optional policy description

brokerId
string<uuid>

Optional broker identifier

exposures
object[]

Response

Policy created

id
string<uuid>
required

Newly created policy ID