---
title: "Get Policy"
method: GET
path: "/v1/agency/policy/{policy_id}"
tags: ["Policy"]
---

# Get Policy

`GET /v1/agency/policy/{policy_id}`

## Request

- Base URL: `https://api.steadily.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.steadily.com/v1/agency/policy/{policy_id}`
- Auth: HTTP bearer

Retrieve a Policy.

## Path parameters

- `policy_id` string, required

## Response `200`

Successful Response

- PolicyResponse
  - `policy_type` 'DP1' | 'DP2' | 'DP3', required
  - `primary_insured` Policyholder, required
    - `first_name` string, nullable
    - `last_name` string, nullable
    - `suffix` string, nullable: Name suffix such as Jr or II
    - `company_name` string, nullable
    - `date_of_birth` string, date, nullable
    - `phone_number` string, nullable
    - `email` string, email, nullable: email is marked as nullable, but API callers must always supply a valid email. Missing email will result in a runtime error.
    - `mailing_address` RalphieModelsAddressAddress: Postal address information for a property
      - `street_address` string, required
      - `city` string, required
      - `state` string, required
      - `zip_code` string, required
    - `previous_address` RalphieModelsAddressAddress: Postal address information for a property
      - `street_address` string, required
      - `city` string, required
      - `state` string, required
      - `zip_code` string, required
    - `is_military_member` 'yes' | 'no'
    - `company_types` CompanyTypes: Note: these values are intentionally not mutually exclusive. They work like tags with tag values.
      - `contracting` 'yes' | 'no'
      - `operations_beyond_rental_property_ownership_and_maintenance` 'yes' | 'no'
  - `additional_named_insured` AdditionalNamedInsured[], nullable
    - `type` 'person' | 'company' | 'trust_or_estate', required
    - `name` string, required
    - `address` RalphieModelsAddressAddress, required: Postal address information for a property
      - `street_address` string, required
      - `city` string, required
      - `state` string, required
      - `zip_code` string, required
  - `effective_date` string, date: Effective date in YYYY-MM-DD format. Defaults to today.
  - `policy_details` PolicyDetails
    - `insurance_score_estimate` 999 | 725 | 865
    - `is_paperless` 'yes' | 'no'
    - `occupancy` 'owner_and_tenant' | 'rental' | 'seasonal' | 'vacant' | 'fix_and_flip' | 'landlord_primary_home', required
    - `similar_insurance_declined` 'yes' | 'no'
    - `self_reported_claims` SelfReportedClaims[], nullable
      - `date_of_loss` string, date, nullable: Approximate date of the loss
      - `loss_reason` 'weather' | 'fire' | 'water_appliance' | 'water' | 'theft' | 'earthquake' | 'liability' | 'medical' | 'other'
      - `loss_amount_dollars` integer, nullable
      - `caused_by_catastrophe` 'yes' | 'no'
    - `unique_tracking_id` string, nullable: Unique ID to track origin of policy
    - `wind_coverage_excluded` 'yes' | 'no'
    - `ca_dic` 'yes' | 'no'
  - `properties` PropertyResponse[], required
    - `property_id` string, required
    - `address` PropertyAddress, required: Postal address information for a property
      - `street_address` string, required
      - `city` string, required
      - `state` string, required
      - `zip_code` string, required
      - `county` string, nullable
      - `county_fips` string, nullable
      - `lat` number, nullable
      - `lng` number, nullable
    - `property_coverages` CoverageResponse[], required
      - `name` string, required
      - `parent_coverage` string, nullable
      - `config` CoverageValueResponse[], nullable
        - `type` 'limit' | 'sublimit' | 'deductible' | 'limit_deductible' | 'loss_valuation_option' | 'selection_factor' | 'selected' | 'excluded' | 'exclusion_description' | 'exclusion_risk_type' | 'description' | 'custom', required
        - `value` union, required
          - string
          - string[]
        - `label` string, required
        - `default` string, nullable
        - `options` string[], nullable
        - `options_additional_allowed` 'yes' | 'no'
        - `min` integer, nullable
        - `max` integer, nullable
        - `editable` 'yes' | 'no', required
        - `bumped_from_value` string, nullable
        - `bumped_description` string, nullable
      - `label` string, nullable
    - `property_manager` PropertyManager
      - `type` 'person' | 'company', required
      - `is_additional_insured` 'yes' | 'no'
      - `name` string, required
      - `address` RalphieModelsAddressAddress, required: Postal address information for a property
        - `street_address` string, required
        - `city` string, required
        - `state` string, required
        - `zip_code` string, required
      - `is_active_manager` 'yes' | 'no'
    - `property_details` QuotePropertyDetails: Descriptive field values for a property. Looked up from Steadily's data sources and can be overridden through the API. Fields are specified as optional to allow partially setting just relevant fields. On an unissued new business or renewal quote, a field Steadily could not determine is left out until supplied.
      - `year_built` integer, nullable: Year Originally Built
      - `stories` number, nullable
      - `total_sq_feet` number, nullable: Building Size (Total Square Feet)
      - `property_type` 'single_family' | 'townhouse_or_rowhouse' | 'duplex' | 'triplex' | 'quadplex' | 'apartment_building' | 'manufactured_or_mobile_home' | 'other' | 'condominium_unit' | 'barndominium_unit'
      - `confirmed_property_style` 'barndominium_unit' | 'condominium_unit'
      - `construction_type` 'frame' | 'brick_veneer' | 'brick_or_masonry_or_stone' | 'concrete' | 'log' | 'adobe_or_stucco' | 'asbestos' | 'other' | 'adobe_or_stucco_v2' | 'brick_solid' | 'cedar_siding' | 'cement_fiber_siding' | 'concrete_decorative' | 'concrete_exposed' | 'concrete_stucco' | 'log_v2' | 'metal_siding' | 'pre_engineered_metal' | 'vinyl_siding'
      - `roof_type` 'asbestos' | 'concrete_or_slate' | 'rubber_or_tar_and_gravel_or_rolled_roof' | 'metal_excluding_tin_or_aluminum' | 'asphalt_shingles' | 'tile' | 'tin_or_aluminum' | 'wood' | 'other' | 'architectural_shingle' | 'three_tab_shingle' | 'wood_shingle_shake' | 'impact_resistant_shingle' | 'clay' | 'concrete' | 'cement_fiber' | 'tile_shake' | 'standing_seam' | 'corrugated_galvanized' | 'painted_rib' | 'copper_shingle' | 'built_up_with_gravel' | 'built_up_without_gravel' | 'membrane' | 'sprayed_polyurethane_foam' | 'slate' | 'synthetic_composite' | 'solar_shingle'
      - `heating_sources` HeatingSource[], nullable: Heating Sources
      - `has_barred_windows_over_50_percent` string, nullable
      - `days_uninsured` integer, nullable
      - `central_station` 'yes' | 'no'
      - `wrought_iron_bars` 'yes' | 'no'
      - `rental_duration` 'long_term' | 'short_term'
      - `renovation_status` 'under_construction' | 'under_renovation' | 'not_under_renovation'
      - `pool_trampoline_hot_tub` 'yes' | 'no'
      - `intermittent_rental` 'yes' | 'no'
      - `building_quality` 'economy' | 'standard' | 'above_average' | 'custom' | 'premium'
      - `building_condition` 'excellent' | 'average' | 'fair'
      - `builder_name` string, nullable: The name of the company that built this property. We currently recognize the following builders: * adams homes * american homes 4 rent * ashton woods homes * beazer homes * betenbough homes * bloomfield homes * brookfield residential properties * castlerock communities * caviness and cates communities * cbh homes * century communities * chesmar homes * clayton properties group * d.r. horton * david weekley homes * drb group * dream finders homes * drees homes * dsld homes * eastwood homes * edge homes * epcon communities * first texas homes * fischer homes * gehan homes * gl homes * great southern homes * green brick partners * hayden homes * highland homes * historymaker homes * holiday builders * hovnanian enterprises * ivory homes * kb home * kolter homes * landsea homes * legend homes * lennar corp. * lgi homes * long lake * m.d.c. holdings * m/i homes * maronda homes * mattamy homes * meritage homes * minto communities * neal communities of southwest florida * nvr * perry homes * pultegroup * rausch coleman homes * shea homes * smith douglas homes * stanley martin homes * stylecraft builders * taylor morrison * the challenger group * the villages of lake sumter * toll brothers * tri pointe homes * true homes * view homes * woodside homes
      - `electrical_hvac_plumbing_renovated` 'yes' | 'no'
      - `fire_protection_class` string, nullable: Fire Protection Class
      - `wind_coverage_exclusion_zone` 'yes' | 'no'
      - `ca_dic_zone` string, nullable: Which exclusion zone this DIC (Difference in Condition) property falls in, if any.
      - `foundation_type` string, nullable: Foundation Type
      - `garages` Garage[], nullable: Garages, one entry per garage. An absent style means the style is unknown rather than attached or built-in. A carport must carry carport_additional_walls; 0 is a valid count.
        - `carport_additional_walls` integer, nullable: Number of walls enclosing a carport. Only meaningful when style is carport. Null and absent both mean unknown.
        - `size` string, required: E. g. 1, 1.5, or 3
        - `style` 'attached_or_built_in' | 'basement' | 'carport'
      - `average_wall_height_feet` number, nullable: Average wall height in feet
      - `bathroom_details` Bathroom[], nullable: Bathroom details
        - `type` string, required: e. g. Half, Full
      - `bedrooms` number, nullable: Number of bedrooms
      - `fireplaces` integer, nullable: Number of fireplaces
      - `foundation_shape` 'square_rectangle' | 'l_shape' | 't_u_z_shape' | 'h_or_custom_shape' | 'irregular_complex'
      - `primary_interior_wall_material` 'drywall' | 'plaster' | 'solid_brick' | 'solid_stone' | 'solid_log' | 'concrete_block' | 'adobe' | 'glass_block' | 'studs_only' | 'open_no_wall'
      - `finished_basement_percent` integer, nullable: Percent of the lowest level finished as living space. Only meaningful when foundation_type or secondary_foundation_type is a basement type; 0 is a real answer (an unfinished basement), distinct from not set.
      - `kitchens` integer, nullable: Number of kitchens. A dwelling always has at least one, so zero is not an accepted value.
      - `property_slope` 'none' | 'moderate' | 'steep'
      - `building_quality_details` BuildingQualityDetails
        - `cabinets_and_countertops` 'economy' | 'standard' | 'above_average' | 'custom' | 'premium', required
        - `exterior_features_and_finishes` 'economy' | 'standard' | 'above_average' | 'custom' | 'premium', required
        - `home_quality_grade` 'economy' | 'standard' | 'above_average' | 'custom' | 'premium', required
        - `interior_features_and_finishes` 'economy' | 'standard' | 'above_average' | 'custom' | 'premium', required
      - `wind_mitigation` WindMitigation
        - `asphalt_shingle_high_wind_rated` string, nullable: Whether the asphalt shingles carry a high-wind rating (ASTM D3161 Class F or ASTM D7158 Class G/H), as the Louisiana form asks in its roof covering system question: yes, no, unknown or not_applicable. yes and no imply the predominant covering is asphalt shingle; not_applicable means it is not.
        - `deck_attachment` string, nullable: Roof deck attachment method from the wind mitigation form, recording the weakest attachment present as the form instructs.
        - `document_id` string, nullable: Identifier (a ULID) of the signed inspection form PDF these answers were transcribed from, as returned when the PDF was uploaded for this dwelling. Absent when no form is attached.
        - `florida_roof_product_approval` string, nullable: Florida-only. The answer to the OIR-B1-1802 form's roof covering product approval question (section 4.2), which asks whether every covering carries a product approval current at installation. This ends up indicating high wind ratings on those products.
        - `gable_roof_bracing` string, nullable: Whether the gable roof structure bracing is designed and installed to the state building code, from the Louisiana form: yes, no, not_applicable or unknown. not_applicable means the roof has no gable or gambrel shapes.
        - `has_inspection_document` 'yes' | 'no'
        - `ibhs_fortified_certificate_document_id` string, nullable: Identifier (a ULID) of the FORTIFIED certificate PDF the designation was read from, as returned when the PDF was uploaded for this dwelling. Absent when no certificate is attached.
        - `ibhs_fortified_designation` 'bronze' | 'silver' | 'gold'
        - `ibhs_fortified_designation_type` 'wind_only' | 'wind_and_hail'
        - `ibhs_fortified_roof` 'existing_roof' | 'new_roof'
        - `ibhs_fortified_roof_designation_date` string, nullable: The designation date on the FORTIFIED certificate, ISO 8601 (YYYY-MM-DD), carried as a plain string. The certificate expires five years after it.
        - `ibhs_has_fortified_certificate_document` 'yes' | 'no'
        - `inspection_date` string, nullable: The date on the signed inspection form, ISO 8601 (YYYY-MM-DD), carried as a plain string. Present whenever inspection answers are; absent when the record carries only the IBHS FORTIFIED certificate.
        - `opening_protection_class` string, nullable: The level of protection the dwelling's openings are covered to. The Louisiana form allows an unknown answer.
        - `opening_protection_extent` string, nullable: How much of the dwelling is protected to opening_protection_class. The Louisiana form asks this as its own question, which adds the extents all_except_garage_doors, some_glazed, none and unknown.
        - `roof_covering_type` string, nullable: The predominant roof covering type from the wind mitigation form.
        - `roof_install_year` integer, nullable: The year the roof covering was installed, as stated on the wind mitigation form.
        - `roof_shape` string, nullable: Roof shape from the wind mitigation form. The Louisiana form distinguishes a total hip roof from a partial hip roof.
        - `roof_slope` string, nullable: Roof slope from the wind mitigation form.
        - `roof_to_wall` string, nullable: Roof-to-wall connection type from the wind mitigation form, recording the weakest connection present. The Louisiana form also allows none and not_applicable (a metal pan or concrete roof deck).
        - `sealed_roof_deck` string, nullable: Whether a sealed roof deck / secondary water resistance is present.
      - `four_point_inspection` FourPointInspection
        - `active_leak` 'yes' | 'no'
        - `central_ac` 'yes' | 'no'
        - `central_heat` 'yes' | 'no'
        - `document_id` string, nullable: Identifier (a ULID) of the signed inspection form PDF these answers were transcribed from, as returned when the PDF was uploaded for this dwelling. Absent when no form is attached.
        - `electrical_hazards` string[], nullable: Electrical: the entries ticked in the form's Hazards Present box.
        - `has_inspection_document` 'yes' | 'no'
        - `hvac_good_working_order` 'yes' | 'no'
        - `hvac_hazards` string[], nullable: HVAC: the conditions ticked in the form's Hazards Present box.
        - `main_panel_type` string, nullable: Electrical: the main panel type, circuit breaker or fuse.
        - `pipe_types` string[], nullable: Plumbing: the pipe materials ticked on the form.
        - `primary_heat_source` string, nullable: HVAC: the primary heat source when the dwelling has no central heat.
        - `prior_leak` 'yes' | 'no'
        - `roof_covering_material` string, nullable: Roof: the predominant roof covering material.
        - `roof_damage` string[], nullable: Roof: the visible signs of damage or deterioration ticked on the form.
        - `roof_install_year` integer, nullable: Roof: the year the predominant roof was installed or replaced, as stated on the form.
        - `roof_leaks` 'yes' | 'no'
        - `unsatisfactory_fixtures` string[], nullable: Plumbing: the fixtures and appliance connections the form marks unsatisfactory.
        - `wiring_conditions` string[], nullable: Electrical: the entries ticked under 'Indicate presence of any of the following' (cloth wiring, knob and tube, branch circuit aluminum and its remediation).
        - `wiring_types` string[], nullable: Electrical: the wiring types ticked on the form.
      - `secondary_construction_type` union: A second construction type for a mixed exterior. "none" states that the exterior has no second construction type and is served back once stated; absent means it has not been stated. Sending null clears a previously set secondary construction type, but is deprecated: send "none" instead.
        - SecondaryConstructionType: A second exterior wall finish covering part of the exterior; construction_type is the primary and covers the rest.
          - `construction_type` 'frame' | 'brick_veneer' | 'brick_or_masonry_or_stone' | 'concrete' | 'log' | 'adobe_or_stucco' | 'asbestos' | 'other' | 'adobe_or_stucco_v2' | 'brick_solid' | 'cedar_siding' | 'cement_fiber_siding' | 'concrete_decorative' | 'concrete_exposed' | 'concrete_stucco' | 'log_v2' | 'metal_siding' | 'pre_engineered_metal' | 'vinyl_siding', required
          - `percentage` integer, required: Share of the exterior covered by the secondary construction type. The primary covers the rest.
        - 'none'
      - `secondary_foundation_type` union: A second foundation type for a dwelling on mixed foundations. "none" states that the dwelling has no second foundation type and is served back once stated; absent means it has not been stated. Sending null clears a previously set secondary foundation type, but is deprecated: send "none" instead. A condominium unit has none, so one sent with it is cleared.
        - SecondaryFoundationType: A second foundation type under part of the dwelling; foundation_type is the primary and covers the rest.
          - `foundation_type` 'basement' | 'concrete_slab' | 'crawlspace' | 'deep_pilings' | 'elevated_post_pier_and_beam_stilts' | 'pier_and_grade_beam' | 'shallow_basement' | 'stilts_with_sweep_away_walls', required
          - `percentage` integer, required: Share of the foundation covered by the secondary foundation type. The primary covers the rest.
        - 'none'
    - `property_acknowledgements` PropertyAcknowledgementsResponse
      - `steadily_roof_condition_exclusion_user_agrees_to_all_terms` 'yes' | 'no'
      - `claims_automations` ClaimsAutomationResponse[], nullable: Claims-driven coverage decisions recorded against this property. A decision carries `actions` once its coverage changes have been applied; until then it records only the attestation answers given for it.
        - `loss_type` string, required
        - `underwriting_rule` 'ASYNC_PROPERTY_DATA_LOOKUP_NOT_COMPLETE' | 'AOP_DEDUCTIBLE_FLOOR' | 'AIT_POOL_CONDITION' | 'AIT_BARRED_BOARDED_WINDOWS' | 'AIT_LOG_CONSTRUCTION' | 'AIT_MANUFACTURED_HOME' | 'AIT_ROOF_CONDITION' | 'BARRED_WINDOWS' | 'BLOCK_TEXAS_ZIP_CODES' | 'CLAIMS' | 'CLAIM_MISSING_DATE_OF_LOSS' | 'CONDO_LIMITS_RULE' | 'CONDO_PERSONAL_PROPERTY_LIMITS_RULE' | 'CONDOS_ONLY_RULE' | 'CONSTRUCTION_TYPE' | 'CONSTRUCTION_TYPE_MISSING' | 'COUNTY_ELIGIBILITY' | 'COVERAGE_A' | 'COVERAGE_A_HIGH_TIV' | 'COVERAGE_A_HIGH_ITV' | 'COVERAGE_A_WARNING' | 'COVERAGE_A_DWELLING_LIMIT_EXCEEDED' | 'COVERAGE_A_MISSOURI' | 'COVERAGE_A_THRESHOLD' | 'DISTANCE_TO_COAST' | 'DWELLING_AGE' | 'DWELLING_AGE_DEFAULT_VALUES' | 'DWELLING_AGE_MANUAL_REVIEW' | 'DWELLING_AGE_OVER_LIMIT' | 'DWELLING_AGE_STATE_CUTOFF' | 'DWELLING_DEFAULT_VALUES_PRESENT' | 'DWELLING_DEFAULT_VALUES_REVIEW' | 'DWELLING_ELEVATION' | 'DWELLING_INFRASTRUCTURE_AGE_INVALID' | 'DWELLING_AGE_MISSING' | 'DWELLING_OCCUPANCY' | 'EXCESSIVE_CLAIMS' | 'EXCESSIVE_CLAIMS_THEFT' | 'EXCESSIVE_CLAIMS_LIABILITY' | 'EXCESSIVE_CLAIMS_WATER' | 'EXCESSIVE_CLAIMS_FIRE' | 'EXCESSIVE_CLAIMS_LOSS_AMOUNT' | 'EXCESSIVE_CLAIMS_OTHER' | 'EXPOSURE_PRIOR_LAPSE' | 'EXPOSURE_PRIOR_LAPSE_MISSING' | 'FIRE_PROTECTION' | 'FIRE_PROTECTION_CLASS_LIMIT' | 'FRIZZLE_VERISK_CLAIMS_WORKFLOW_STATUS_IS_PENDING' | 'GEO_EXCLUSION_B' | 'HAS_CHARGEABLE_LIABILITY_LOSSES_AND_OFF_PREMISES_LIABILITY_EXTENSION' | 'HAS_CHARGEABLE_LOSSES_AND_LOSS_ASSESSMENT_COVERAGE_GREATER_THAN_5K' | 'HAS_CHARGEABLE_WATER_LOSSES_AND_LIMITED_HIDDEN_WATER_COVERAGE' | 'HAS_CHARGEABLE_LOSSES' | 'HAS_CHARGEABLE_LOSSES_VANDALISM' | 'HAS_CHARGEABLE_LOSSES_MULTIPLE' | 'HAS_OPEN_CLAIMS' | 'IN_AGGREGATION_MANAGEMENT_ZONE' | 'INSURANCE_SCORE_LOOKUP' | 'INSURANCE_SCORE' | 'INSURANCE_SCORE_FAILED' | 'INSURANCE_SCORE_MATCH' | 'LARGE_ACCOUNT' | 'LENDER_COUNT' | 'LENDER_MISSING' | 'LIMITED_RENOVATION' | 'LOG_CONSTRUCTION' | 'MAX_DAYS_SINCE_ORIGINAL_QUOTE_CREATED' | 'MUNICHRE_WILDFIRE_RISK_SCORE' | 'NO_CLAIMS_REPORT' | 'NO_MAILING_ADDRESS' | 'NUMBER_OF_UNITS_LIMIT' | 'OFF_PREMISES_LIABILITY_EXTENSION' | 'POLICY_START' | 'POOL_CONDITION' | 'PREMISES_LIABILITY_COVERAGE_LIMIT' | 'PREMISES_LIABILITY_COVERAGE_LIMIT_DP1' | 'PREMISES_LIABILITY_COVERAGE_LIMIT_ONE_MILLION' | 'PREMISES_LIABILITY_COVERAGE_LIMIT_STEADILY' | 'PREMIUM_BELOW_MINIMUM_WRITTEN_THRESHOLD' | 'PREMIUM_OR_CUSTOM_BUILDING_QUALITY' | 'PRIMARY_INSURED_DOB' | 'PRIMARY_INSURED_EMAIL' | 'PRIMARY_INSURED_PHONE' | 'PRIMARY_INSURED_IS_CONTRACTOR_PROOF_OF_INSURANCE_REQUIRED' | 'PRIOR_WATER_CLAIMS' | 'RCE' | 'RENTAL_OWNER_OCCUPIED_DWELLING' | 'ROOF_CONDITION_RATING' | 'ROOF_COVERAGE_EXCLUDED' | 'ROOF_TYPE' | 'SIMILAR_DECLINED' | 'SINGLE_FAMILY_BARNDOMINIUM' | 'TRAMPOLINE_PRESENCE' | 'TRISURA_TIV' | 'UNDEFINED_CLAIM_AMOUNT' | 'UNDERWRITING_APPLICATION_QUESTIONS' | 'URBAN_FIRE' | 'WATER_DAMAGE_CLAIMS' | 'WATER_DAMAGE_LIMITATION_CAP' | 'WATER_DAMAGE_LIMITATION_CAP_MISSING' | 'WATER_DAMAGE_LIMITATION_CAP_POST_YEAR' | 'WILDFIRE' | 'WILDFIRE_RISK_HAZARD' | 'WILDFIRE_CA' | 'WILDFIRE_RISK_SCORE_MISSING' | 'WILDFIRE_UNKNOWN_RISK_STRATEGY' | 'WILDFIRE_HAZARD' | 'WILDFIRE_TMP' | 'YARD_DEBRIS_COVERAGE_SQFT' | 'TOTAL_INSURED_VALUE_IN_QUARTER_MILE' | 'SINGLE_FAMILY_OWNER_OCCUPIED_DWELLING' | 'ADDITIONAL_NAMED_INSURED_COMPANY_RESTRICTIONS' | 'PRIMARY_INSURED_COMPANY_RESTRICTIONS' | 'PRIMARY_INSURED_COMPANY_RESTRICTIONS_UNANSWERED' | 'PRIMARY_INSURED_COMPANY_RESTRICTIONS_CONTRACTOR' | 'PRIMARY_INSURED_COMPANY_RESTRICTIONS_NON_CONTRACTOR' | 'TEMPORARY_TRISURA_NEW_BUSINESS_BLOCK' | 'FORM_VERSION_BLOCK' | 'COVERAGE_A_LIMIT_NOT_FOUND' | 'TEMPORARY_FORTEGRA_NEW_BUSINESS_BLOCK' | 'CONTRACTING_COMPANY_TYPE' | 'TOTAL_INSURED_VALUE_IN_RADIUS' | 'TOTAL_ENTERPRISE_INSURED_VALUE_IN_RADIUS' | 'DUPLICATE_ADDRESS_POLICIES_CANCELED_NON_REWRITE' | 'DUPLICATE_ADDRESS_POLICIES_ISSUED' | 'DUPLICATE_ADDRESS_QUOTES_REJECTED' | 'WINDSTORM_OR_HAIL_EXCLUSION_WARNING_NOT_ACKNOWLEDGED' | 'WINDSTORM_OR_HAIL_EXCLUSION_MIXED_PROPERTIES' | 'WINDSTORM_OR_HAIL_EXCLUSION_ZONE_IS_NULL' | 'WIND_AND_HAIL_DEDUCTIBLE' | 'WIND_AND_HAIL_DEDUCTIBLE_APPLIED_WITH_WINDSTORM_OR_HAIL_EXCLUSION' | 'WINDSTORM_OR_HAIL_EXCLUSION_APPLIED_INCORRECTLY' | 'WINDSTORM_OR_HAIL_EXCLUSION_MISSING' | 'MISSING_TIV_IN_RADIUS' | 'CA_DIC_REQUIRE_FAIR_PLAN' | 'PROPERTY_UNDER_RENOVATION_REQUIRES_LIMITED_RENOVATION_COVERAGE' | 'PROPERTY_TYPE_OTHER' | 'MAILING_ADDRESS' | 'PRIMARY_INSURED_IS_CONTRACTOR_UNANSWERED' | 'ROOF_COVERAGE_EXCLUSION_NEEDED' | 'EXPOSURE_H3_FACTOR_MISSING' | 'PERSONAL_AND_PREMISES_LIABILITY_SELECTED' | 'RCE_NOT_FOUND' | 'TIV_IN_RADIUS_INTERNAL_FAILURE' | 'DISTANCE_TO_COAST_REVIEW' | 'DWELLING_ELEVATION_RESOLUTION_TOO_POOR'
        - `matched_row_id` string, required
        - `matched_row` DecisionGuideMatchedRow
          - `number_of_claims` string, required
          - `loss_amount_bucket` string, required
          - `loss_location` string, required
        - `attestations` union[], required
          - union
            - union
              - …
            - UnknownDecisionGuideAttestation: An attestation of a kind this version of the API does not recognize.
              - …
        - `actions` union[], nullable
          - union
            - SetAopDeductibleFloor
              - …
            - SetWindHailDeductibleFloor
              - …
            - LimitWaterDamageCoverage
              - …
            - LimitLiabilityCoverage
              - …
            - SuppressCoverage
              - …
            - AddCoverage
              - …
            - PivotToDp1
              - …
            - ManualUwReview
              - …
            - MarkIneligible
              - …
        - `eligible_for_automation` boolean, nullable
        - `decision_source_version` string, nullable
        - `matched_claim_identities` PersistedClaimIdentity[], nullable
          - `carrier_name` string, nullable
          - `carrier_claim_number` string, nullable
        - `dwelling_id` string, required
    - `additional_insured` AdditionalInsured[]
      - `type` 'person' | 'company' | 'mortgagee' | 'non_institutional_lender' | 'trust_or_estate' | 'homeowner_association', required
      - `name` string, required
      - `loan_number` string, nullable: Loan contract number. Comma separated values if there are multiple loan numbers.
      - `address` RalphieModelsAddressAddress, required: Postal address information for a property
        - `street_address` string, required
        - `city` string, required
        - `state` string, required
        - `zip_code` string, required
      - `email` string, email, nullable: Email of the additional insured
    - `replacement_cost_estimate` integer, required: Replacement cost estimate (Buildings only)
    - `user_replacement_cost` UserReplacementCost
      - `purchase_price` integer, required
      - `renovation_cost` integer, required
    - `moratoriums` MatchedMoratorium[]: List of moratoriums affecting this property. A moratorium indicates that we may be unable to issue a policy for this quote.
      - `moratorium_id` string, required
    - `duplicate_address_policies` DuplicateAddressPolicies
      - `deferral_reason` string, nullable: If set causes deferral of duplicate address lookup until cleared
      - `lookup_status` 'unknown' | 'started' | 'skipped' | 'failed' | 'succeeded'
      - `policies` object, nullable
  - `policy_coverages` CoverageResponse[], required: Policy level coverages.
    - `name` string, required
    - `parent_coverage` string, nullable
    - `config` CoverageValueResponse[], nullable
      - `type` 'limit' | 'sublimit' | 'deductible' | 'limit_deductible' | 'loss_valuation_option' | 'selection_factor' | 'selected' | 'excluded' | 'exclusion_description' | 'exclusion_risk_type' | 'description' | 'custom', required
      - `value` union, required
        - string
        - string[]
      - `label` string, required
      - `default` string, nullable
      - `options` string[], nullable
      - `options_additional_allowed` 'yes' | 'no'
      - `min` integer, nullable
      - `max` integer, nullable
      - `editable` 'yes' | 'no', required
      - `bumped_from_value` string, nullable
      - `bumped_description` string, nullable
    - `label` string, nullable
  - `payment` QuotePaymentResponse
    - `schedule` 'full' | 'full_escrow' | 'mortgagee_billed' | 'semi_annual' | 'quarterly' | 'monthly' | 'monthly_eft', required: | Payment Schedule | Description | | ---------------- | ------------------------------------------- | | full | Client pays in full (paid-in-full discount) | | monthly | Monthly via credit card | | monthly_eft | Monthly via ACH | | mortgagee_billed | Mortgagee billed (Max 1 lender total) | | full_escrow | Deprecated |
    - `payment_schedule_discount` 'yes' | 'no', required
  - `underwriting` QuoteUnderwritingResponse
    - `attestation` union
      - IpodUnderwritingAttestation
        - `answer` 'yes' | 'no', nullable
        - `statement` IpodUnderwritingStatementContent
          - `content` string, nullable
          - `items` IpodUnderwritingStatementContent[], nullable
        - `notice` IpodUnderwritingStatementContent
          - `content` string, nullable
          - `items` IpodUnderwritingStatementContent[], nullable
      - union[]
        - union
          - AttestationStatement
            - `content` string, nullable
            - `items` AttestationStatement[], nullable
          - string
    - `answer` 'yes' | 'no'
    - `application_questions` QuoteUnderwritingApplicationQuestions
      - `disclaimer` string, nullable
      - `questions_prefix` string, nullable
      - `questions` UwAppQuestion[], nullable
        - `name` string, required
        - `prefix` string, nullable
        - `text` string[], required
        - `answer` string, nullable
  - `signing_requirements` SigningRequirements: Signing steps the agent must complete during the quote flow.
    - `requires_diligent_effort_affidavit` boolean
    - `requires_esignature_consent` boolean
  - `agent_ui_url` string, nullable: Direct link to Agent UI, which can be used to complete quote.
  - `errors` ApiValidationError[], nullable
    - `loc` string[]: The path to the field that caused the error
    - `msg` string, required
    - `type` string, required
    - `retryable` boolean, nullable
    - `request_id` string, nullable
    - `error_id` string, nullable: Internal error tracing ID
    - `ctx` object, nullable: Error specific context
  - `carrier` string, required
  - `public_policy_id` string, nullable, required
  - `quote_version` integer, nullable: Version of the quote this response describes. Every saved change creates a new version.
  - `insurance_structure` 'COI_MASTER_MGA' | 'STANDARD_MGA' | 'XMGA' | 'ARCHIVED'
  - `effective_date_timezone` string, nullable
  - `updated_at` string, date-time, nullable
  - `previous_policy_id` string, nullable
  - `renewal_policy_id` string, nullable
  - `renewal_quote_id` string, nullable
  - `renewal_status` 'draft' | 'quoted' | 'bound' | 'invalidated'
  - `renewal_start_date` string, date, nullable
  - `renewal_end_date` string, date, nullable
  - `pricing` QuotePriceResponse: Gives more detailed, pricing breakdown.
    - `property_premiums` PropertyPriceResponse[], required
      - `property_id` string, required
      - `coverage_premiums` CoveragePriceResponse[], required
        - `coverage_id` string, required
        - `name` string, required
        - `premium_cents` integer, required
        - `taxes_cents` integer, required
        - `total_cents` integer, required
      - `premium_cents` integer, required
      - `taxes_cents` integer, required
      - `total_cents` integer, required
      - `minimum_earned_premium_type` 'days' | 'flat_cents'
      - `minimum_earned_premium_scalar_amount` integer, nullable
      - `minimum_earned_premium_cents` integer, nullable
    - `payment_option` PaymentOption, required
      - `plan` string, required
      - `label` string, required
      - `premium_cents` integer, required
      - `minimum_earned_premium_cents` integer, nullable
      - `fees_cents` integer, required
      - `taxes_cents` integer, required
      - `total_cents` integer, required
      - `installments` Installment[], required
        - `amount_cents` integer, required
        - `due_date` string, date, required
      - `surcharges` SurchargeResponse[]
        - `label` string, required: The regulatory label that must be displayed when collecting payment
        - `state` string, required: The US state this surcharge applies to
        - `amount_cents` integer, required: The surcharge amount in cents
        - `rate_basis_points` integer, required: Surcharge rate expressed in basis points (1 basis point = 0.01%)
        - `applies_to_payment_method` string, required: The payment method this surcharge applies to
      - `rate_lines` RateLineResponse[], nullable: Named fee and tax lines. Fee line amounts sum to fees_cents and tax line amounts sum to taxes_cents. An empty list means the quote has no fee or tax amounts to itemize; the field is absent when the amounts cannot be itemized.
        - `key` string, required: Stable lower snake case identifier for the line
        - `kind` 'fee' | 'tax', required: Whether the amount is part of fees_cents or taxes_cents
        - `amount_cents` integer, required
    - `payment_options_available` PaymentOption[], required
      - `plan` string, required
      - `label` string, required
      - `premium_cents` integer, required
      - `minimum_earned_premium_cents` integer, nullable
      - `fees_cents` integer, required
      - `taxes_cents` integer, required
      - `total_cents` integer, required
      - `installments` Installment[], required
        - `amount_cents` integer, required
        - `due_date` string, date, required
      - `surcharges` SurchargeResponse[]
        - `label` string, required: The regulatory label that must be displayed when collecting payment
        - `state` string, required: The US state this surcharge applies to
        - `amount_cents` integer, required: The surcharge amount in cents
        - `rate_basis_points` integer, required: Surcharge rate expressed in basis points (1 basis point = 0.01%)
        - `applies_to_payment_method` string, required: The payment method this surcharge applies to
      - `rate_lines` RateLineResponse[], nullable: Named fee and tax lines. Fee line amounts sum to fees_cents and tax line amounts sum to taxes_cents. An empty list means the quote has no fee or tax amounts to itemize; the field is absent when the amounts cannot be itemized.
        - `key` string, required: Stable lower snake case identifier for the line
        - `kind` 'fee' | 'tax', required: Whether the amount is part of fees_cents or taxes_cents
        - `amount_cents` integer, required
  - `status` 'issued' | 'cancelled' | 'voided', required: Status of a bound policy. A policy stays `issued` until its cancellation takes effect, so a cancellation dated in the future leaves it `issued` until that date. `cancelled` is a policy whose cancellation has taken effect. `voided` is a policy treated as if it had never been in force.
  - `policy_id` string, required
  - `documents` Document[], required
    - `display_name` string, required
    - `file_name` string, nullable: The file_name field will return documents with the following convention {display_name}.{file_format}
    - `file_code` string, nullable: Source of truth for file type. Prefer this over file_name when filtering for the type of the file
    - `url` string, nullable: A url to download the document. Document urls will expire within a few minutes.
    - `status` 'pending' | 'completed'
    - `quote_version` integer, nullable
    - `quote_id` string, nullable
    - `created_at` string, date-time, required
    - `steadily_universal_dwelling_id` string, nullable: Which dwelling this document corresponds to. Matches steadily_universal_dwelling_id from the dwelling response.
    - `external_reference_id` string, nullable: The third-party record this document was produced from, when it came from one.
    - `external_reference_version` string, nullable: The version of `external_reference_id`, when that record is versioned.
  - `mandatory_policyholder_agreement_contract` ContractResponse
    - `contract_id` string, required
    - `status` 'pending' | 'completed' | 'rejected' | 'voided', required

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-27** `7ee9d080d9b0`: 1 warning, 2 info
  - removed the optional property `properties/items/property_details/anyOf[subschema #1: QuotePropertyDetails]/internal_data` from the response with the `200` status
  - added `subschema #2` to the `properties/items/property_details/anyOf[subschema #1: QuotePropertyDetails]/secondary_construction_type` response property `anyOf` list for the response status `200`
  - added `subschema #2` to the `properties/items/property_details/anyOf[subschema #1: QuotePropertyDetails]/secondary_foundation_type` response property `anyOf` list for the response status `200`
- **2026-10-23** `f5a3b2c6d050`: 1 warning
  - removed the optional property `properties/items/property_details/anyOf[subschema #1: QuotePropertyDetails]/address_info_s3_url` from the response with the `200` status
- **2026-10-22** `28ec84365d3e`: 8 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status
  - added `#/components/schemas/BuildingQuality` to the `properties/items/property_details/anyOf[subschema #1: QuotePropertyDetails]/building_quality` response property `anyOf` list for the response status `200`
  - added `#/components/schemas/BuildingQualityDetails` to the `properties/items/property_details/anyOf[subschema #1: QuotePropertyDetails]/building_quality_details` response property `anyOf` list for the response status `200`
  - …4 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/steadily/apis/steadily-partner-api/changes/v1/agency/policy/:policy_id/get.md)

---

[API](https://skmtc.dev/steadily/apis/steadily-partner-api.md) - [All operations](https://skmtc.dev/steadily/apis/steadily-partner-api/llms.txt) - [OpenAPI document](https://skmtc.dev/steadily/apis/steadily-partner-api/revisions/4cd56efb6497?raw)
