Policy Schema
Every field returned for a policy and a policy assignment.
The policy object is returned by GET /policies
(in the data array) and GET /policies/{id}
(directly under data). The detail endpoint adds one extra field:
assignments_count.
Policy assignments are returned by
GET /items/{id}/policies in the
data array.
Policy object
Example — GET /policies/{id}
{
"data": {
"id": "11111111-1111-1111-1111-111111111111",
"name": "Studio Floater",
"carrier": "Hartford",
"policy_number": "HF-44192",
"policy_type": "equipment_floater",
"overall_limit": 50000.00,
"deductible": 500.00,
"covered_perils": ["fire", "theft"],
"location_constraints": "US only",
"effective_start": "2026-01-01",
"effective_end": null,
"archived": false,
"assignments_count": 7
},
"_meta": {
"disclaimers": ["…"]
}
}Fields
assignments_count is returned only by GET /policies/{id}, not by
GET /policies.
| Field | Type | Where | Notes |
|---|---|---|---|
id | uuid | Both | Unique policy ID. |
name | string | Both | The policy name you gave it. |
carrier | string | null | Both | Insurance company name. Null when not recorded. |
policy_number | string | null | Both | Your policy's reference number. Null when not recorded. |
policy_type | enum | null | Both | The kind of coverage — see policy_type below. Null when the stored value is not a recognized type. |
overall_limit | number | null | Both | The overall policy limit. Null when not set. |
deductible | number | null | Both | The policy deductible. Null when not set. |
covered_perils | string[] | null | Both | List of covered perils (e.g. ["fire", "theft"]). Null when not recorded. |
location_constraints | string | null | Both | Geographic or use restrictions, free text. Null when not set. |
effective_start | date string | null | Both | When coverage begins (ISO 8601 date). |
effective_end | date string | null | Both | When coverage ends. Null for open-ended (ongoing) policies. |
archived | boolean | Both | true when the policy has been archived. The list endpoint only returns non-archived policies; the detail endpoint returns any policy in your studio. |
assignments_count | integer | Detail only | Total number of equipment assignments to this policy. |
policy_type
One of:
| Value | Meaning |
|---|---|
studio_property | Studio property |
equipment_floater | Equipment floater |
touring_rider | Touring rider |
vehicle_transit | Vehicle / transit |
liability | Liability |
umbrella | Umbrella |
other | Other |
When the stored value is not one of these strings, policy_type is returned as
null.
Fields the API does not expose
The API never returns the following policy fields:
owner_user_id— the team member who owns the policy record.source_document_id— any linked document.notes— internal notes.studio_id— the scoping column.
Assignment object
Returned by GET /items/{id}/policies
in the data array.
Example
{
"data": [
{
"policy_id": "11111111-1111-1111-1111-111111111111",
"policy_name": "Studio Floater",
"declared_value": 4500.00,
"is_primary": true,
"effective_start": "2026-01-01",
"effective_end": null
},
{
"policy_id": "22222222-2222-2222-2222-222222222222",
"policy_name": "Touring Rider",
"declared_value": null,
"is_primary": false,
"effective_start": null,
"effective_end": null
}
],
"_meta": {
"disclaimers": ["…"]
}
}Fields
| Field | Type | Notes |
|---|---|---|
policy_id | uuid | The ID of the policy this assignment belongs to. Use it with GET /policies/{id} to fetch the full policy. |
policy_name | string | null | The name of the policy, joined in for convenience. Null when the policy name is unavailable. |
declared_value | number | null | The amount declared under this policy for this item. Null means the value is unknown (not declared). |
is_primary | boolean | true when this is the item's primary assignment. Exactly one assignment per item can be primary. |
effective_start | date string | null | When this assignment's coverage window begins. Null when no window is set. |
effective_end | date string | null | When this assignment's coverage window ends. Null when the window is open-ended. |
Fields the API does not expose
The assignment's own row id, the equipment_id (it is the path parameter you
already used to make the request), notes, and internal timestamps are not
returned.
All assignments are returned
The endpoint returns every assignment for the item — including assignments to
archived or expired policies. Use policy_id with GET /policies/{id} to
check whether a given policy is currently active.
Ordering
Assignments are returned primary first. When two assignments are both
non-primary, they are ordered by policy_id ascending.