> ## Documentation Index
> Fetch the complete documentation index at: https://api.hellosunset.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update policy



## OpenAPI

````yaml PATCH /cases/{case_id}/life-insurance/{policy_id}
openapi: 3.1.0
info:
  title: Sunset API
  description: >
    Estate and probate management platform API. Manage cases, track assets,
    handle bank accounts, and navigate probate proceedings across all US states
    and counties.


    ## Key Features


    - **Full Estate Lifecycle** — Case creation through final asset distribution

    - **Identity Verification** — Verify deceased (SSDI, vital records) and
    executor (government ID, KBA) identity

    - **Real Estate Valuations** — Automated property valuations with comparable
    sales and lien tracking

    - **Communication Tools** — Recorded phone calls, emails, faxes, and online
    notarization

    - **Probate Reference Data** — Requirements for all 50 states, DC, and US
    territories

    - **Multi-Estate Management** — Pro and Enterprise tiers for managing
    multiple cases


    ## API Quality


    - **Idempotency** — `Idempotency-Key` header on all POST endpoints to
    prevent duplicate operations

    - **Rate Limiting** — Tiered rate limits (Pro: 300/min, Enterprise:
    1,000/min)

    - **Conditional Requests** — ETag support with `If-None-Match` and
    `If-Match` headers

    - **Request Tracing** — `X-Request-Id` header on every response

    - **Cursor Pagination** — Optional cursor-based pagination for high-volume
    resources

    - **JSON Merge Patch** — All PATCH endpoints use JSON Merge Patch semantics
    (RFC 7396)
  version: 1.0.0
  contact:
    name: Sunset API Support
servers:
  - url: https://api.example.com/v1
    description: Production
  - url: https://staging-api.example.com/v1
    description: Staging
security: []
tags:
  - name: Cases
    description: Estate/probate case management
  - name: Deceased
    description: Deceased person information
  - name: Executor
    description: Estate executor information
  - name: Authority
    description: Authority verification
  - name: EIN
    description: Employer Identification Number
  - name: Financial Accounts
    description: Estate financial accounts and assets
  - name: Documents
    description: Case document management
  - name: Searches
    description: Asset and background searches
  - name: Persons
    description: Interested persons and beneficiaries
  - name: Goals
    description: Estate management goals
  - name: Bank Accounts
    description: Bank account management
  - name: Signers
    description: Bank account holders and signers
  - name: Transactions
    description: Bank account transactions
  - name: Recurring Payments
    description: Recurring payments and deposits
  - name: Account Beneficiaries
    description: POD/TOD beneficiary designations
  - name: Statements
    description: Bank account statements
  - name: Balance History
    description: Historical balance snapshots
  - name: Probate Reference
    description: State and county probate reference data
  - name: Probate Forms
    description: State-level probate forms
  - name: Probate Case
    description: Case-level probate tracking
  - name: Probate Deadlines
    description: Probate deadlines and due dates
  - name: Probate Filings
    description: Court filings
  - name: Creditor Claims
    description: Creditor claims against the estate
  - name: Distributions
    description: Beneficiary distributions
  - name: Pro Users
    description: Pro user multi-estate management
  - name: Collaborators
    description: Multi-user collaboration and estate sharing
  - name: Closure
    description: Estate closure steps and status tracking
  - name: Institution Contacts
    description: Financial institution contact information and departments
  - name: Phone Calls
    description: Twilio-powered phone calls with recording and summarization
  - name: Emails
    description: Email tool for sending forms and attachments
  - name: Notarization
    description: DocuSign-powered online notarization
  - name: Faxes
    description: One-click fax sending with receipts
  - name: Identity Verification
    description: Verify deceased and executor identity
  - name: Real Estate Valuations
    description: Automated property valuations and tax assessments
  - name: Life Insurance
    description: Life insurance policies and claims
  - name: Credit Cards & Debts
    description: Credit cards, loans, and debt management
  - name: Retirement Accounts
    description: 401(k), IRA, pension, and retirement account management
  - name: Investment Accounts
    description: Brokerage, stocks, bonds, and investment accounts
  - name: Real Estate Properties
    description: Real estate ownership, titles, and property management
  - name: Unclaimed Property
    description: Unclaimed property search and claims
  - name: Vehicles
    description: Vehicles, boats, and titled property
  - name: Business Ownership
    description: Business entities, ownership interests, and succession
paths:
  /cases/{case_id}/life-insurance/{policy_id}:
    parameters:
      - $ref: '#/components/parameters/CaseId'
      - name: policy_id
        in: path
        required: true
        schema:
          type: string
    patch:
      tags:
        - Life Insurance
      summary: Update policy
      operationId: updateLifeInsurancePolicy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LifeInsurancePolicyWrite'
      responses:
        '200':
          description: Policy updated.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/LifeInsurancePolicy'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  parameters:
    CaseId:
      name: case_id
      in: path
      required: true
      schema:
        type: string
      description: Unique case identifier (ULID format).
      example: 01K5WF06MJ6T99HRYE78AN7XM8
  schemas:
    LifeInsurancePolicyWrite:
      type: object
      required:
        - policy_type
        - carrier_name
      properties:
        policy_type:
          type: string
          enum:
            - term_life
            - whole_life
            - universal_life
            - variable_life
            - group_employer
            - group_government
            - supplemental
            - accidental_death
            - annuity_with_death_benefit
        carrier_name:
          type: string
        policy_number:
          type: string
          description: Full policy number.
        status:
          type: string
          enum:
            - active
            - inactive
            - lapsed
            - claimed
            - paid_out
            - denied
            - unknown
        death_benefit:
          type: number
          format: double
        cash_value:
          type: number
          format: double
        beneficiaries:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              relationship:
                type: string
              percentage_share:
                type: number
                format: double
              designation:
                type: string
                enum:
                  - primary
                  - contingent
              is_irrevocable:
                type: boolean
        employer_name:
          type: string
        claim_status:
          type: string
          enum:
            - not_filed
            - filed
            - under_review
            - approved
            - paid
            - denied
        claim_filed_date:
          type: string
          format: date
        institution_contact_id:
          type: string
        notes:
          type: string
    LifeInsurancePolicy:
      type: object
      properties:
        id:
          type: string
          example: 01K9LI01AJ0T11HRYE78AN7LLL
        case_id:
          type: string
        policy_type:
          type: string
          enum:
            - term_life
            - whole_life
            - universal_life
            - variable_life
            - group_employer
            - group_government
            - supplemental
            - accidental_death
            - annuity_with_death_benefit
          example: whole_life
        carrier_name:
          type: string
          example: Northwestern Mutual
        policy_number:
          type:
            - string
            - 'null'
          description: Masked in responses (last 4 digits only).
          example: '***1234'
        status:
          type: string
          enum:
            - active
            - inactive
            - lapsed
            - claimed
            - paid_out
            - denied
            - unknown
          example: active
        death_benefit:
          type:
            - number
            - 'null'
          format: double
          description: Face value / death benefit amount.
          example: 250000
        cash_value:
          type:
            - number
            - 'null'
          format: double
          description: Accumulated cash value (whole/universal life only).
          example: 45000
        beneficiaries:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              relationship:
                type: string
              percentage_share:
                type: number
                format: double
              designation:
                type: string
                enum:
                  - primary
                  - contingent
              is_irrevocable:
                type: boolean
        premium_status:
          type:
            - string
            - 'null'
          enum:
            - current
            - past_due
            - waived
            - paid_up
            - null
        employer_name:
          type:
            - string
            - 'null'
          description: For group/employer-provided policies.
        claim_status:
          type:
            - string
            - 'null'
          enum:
            - not_filed
            - filed
            - under_review
            - approved
            - paid
            - denied
            - null
        claim_filed_date:
          type:
            - string
            - 'null'
          format: date
        claim_paid_date:
          type:
            - string
            - 'null'
          format: date
        claim_paid_amount:
          type:
            - number
            - 'null'
          format: double
        institution_contact_id:
          type:
            - string
            - 'null'
        notes:
          type:
            - string
            - 'null'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              example: validation_error
            message:
              type: string
              example: The request body contains invalid fields.
            details:
              type: array
              items:
                type: object
                properties:
                  field:
                    type: string
                  message:
                    type: string
  responses:
    NotFound:
      description: Resource not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              code: not_found
              message: The requested resource was not found.
    ValidationError:
      description: Request validation failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              code: validation_error
              message: The request body contains invalid fields.
              details:
                - field: email
                  message: Must be a valid email address.

````