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

# Read a filing's regulatory history

> The catalog around a filing you are preparing: the SERFF filings of its product's filing records, the company's recent SERFF filings for the filing's state and TOI, other carriers' recent filings for them, filings of other carriers' market directory products for them, each with its newest objection letters, reviewers and filer contacts, and the company's responses. Use it to see what this state has asked the company and its competitors before, and to cite earlier letters.

Requires read access to the filing and SERFF View. The filing needs a state and TOI. To search letter text across carriers in the same scope, use GET /insurance/filing-objections with q, state, toi and objectionDateFrom. Read-only and free from the web app.



## OpenAPI

````yaml /openapi.json get /insurance/managed-filings/{filingId}/history
openapi: 3.0.3
info:
  title: Effective API
  version: 2.0.0
  description: The public Effective REST API. Authenticate using an Effective API key.
servers:
  - url: https://api.effectiveai.app/api/v2
    description: Production
security:
  - bearerAuth: []
paths:
  /insurance/managed-filings/{filingId}/history:
    get:
      tags:
        - Managed Filings
      summary: Read a filing's regulatory history
      description: >-
        The catalog around a filing you are preparing: the SERFF filings of its
        product's filing records, the company's recent SERFF filings for the
        filing's state and TOI, other carriers' recent filings for them, filings
        of other carriers' market directory products for them, each with its
        newest objection letters, reviewers and filer contacts, and the
        company's responses. Use it to see what this state has asked the company
        and its competitors before, and to cite earlier letters.


        Requires read access to the filing and SERFF View. The filing needs a
        state and TOI. To search letter text across carriers in the same scope,
        use GET /insurance/filing-objections with q, state, toi and
        objectionDateFrom. Read-only and free from the web app.
      operationId: getManagedFilingHistory
      parameters:
        - schema:
            type: string
            format: uuid
          required: true
          name: filingId
          in: path
      responses:
        '200':
          description: >-
            The filing's catalog scope, the company's filings and other
            carriers'.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2ManagedFilingHistory'
        '400':
          description: The filing has no state or TOI yet.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '401':
          description: Authentication required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '403':
          description: SERFF read permission required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '404':
          description: Filing not found or not readable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '500':
          description: Unexpected server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
      security:
        - bearerAuth: []
components:
  schemas:
    V2ManagedFilingHistory:
      type: object
      properties:
        scope:
          type: object
          properties:
            state:
              type: string
              description: The filing's state, from its jurisdiction.
            toiCode:
              type: string
              description: The filing's TOI code.
            naicCompanyCode:
              type: string
              nullable: true
              description: >-
                The filing company's NAIC company code; null when it has none,
                so filings is empty.
            serffTrackingNumber:
              type: string
              nullable: true
              description: >-
                This filing's SERFF tracking number, to find it in filings once
                it is submitted.
          required:
            - state
            - toiCode
            - naicCompanyCode
            - serffTrackingNumber
          description: The catalog scope the history covers.
        product:
          type: object
          nullable: true
          properties:
            id:
              type: string
              format: uuid
              description: The filing's primary product record.
            title:
              type: string
            filings:
              type: array
              items:
                $ref: '#/components/schemas/V2FilingHistoryFiling'
              description: >-
                Up to 20 catalog filings of the product's filing records
                (primary or additional product) that have a SERFF tracking
                number: this state's first, then other states', each newest
                first. Reads up to 100 filing records per relationship. May
                repeat entries of filings.
          required:
            - id
            - title
            - filings
          description: >-
            The filing's product and its filings; null when it has none you can
            read.
        filings:
          type: array
          items:
            $ref: '#/components/schemas/V2FilingHistoryFiling'
          description: >-
            The company's 20 most recently submitted catalog filings for this
            state and TOI.
        related:
          type: array
          items:
            $ref: '#/components/schemas/V2FilingHistoryFiling'
          description: >-
            Other carriers' 20 most recently submitted catalog filings for this
            state and TOI.
        relatedProducts:
          type: array
          items:
            $ref: '#/components/schemas/V2FilingHistoryProductFiling'
          description: >-
            The 20 most recently submitted filings recorded for other carriers'
            market directory products in this state and TOI (published products
            whose availability here lists none of the company's NAIC codes),
            plus every filing in related that is recorded for one of them:
            tracked carriers' filings first, then the rest newest first.
            Directory coverage is partial, so related also lists filings not in
            any product; a related filing missing here is in none.
        sourceCompleteness:
          type: string
          enum:
            - unknown
          description: >-
            Always `unknown`: only extracted SERFF filings and letters are
            covered, so a missing letter does not mean there was no objection.
      required:
        - scope
        - product
        - filings
        - related
        - relatedProducts
        - sourceCompleteness
    V2CodedError:
      allOf:
        - $ref: '#/components/schemas/V2Error'
        - type: object
          properties:
            code:
              type: string
              minLength: 1
              description: Stable error code. Clients must tolerate unknown future codes.
            details:
              type: array
              items:
                type: object
                properties:
                  location:
                    type: string
                    enum:
                      - path
                      - query
                      - header
                      - body
                  path:
                    type: array
                    items:
                      type: string
                      maxLength: 64
                    maxItems: 12
                  code:
                    type: string
                    enum:
                      - required
                      - invalid_type
                      - invalid_value
                      - unknown_field
                  message:
                    type: string
                    minLength: 1
                    maxLength: 200
                required:
                  - location
                  - path
                  - code
                  - message
              minItems: 1
              maxItems: 20
              description: Bounded safe validation issues; may omit some invalid fields.
            requestId:
              type: string
              minLength: 1
              maxLength: 128
              description: >-
                Existing server correlation for this HTTP attempt, when
                available.
            dataset:
              type: string
              enum:
                - naic
                - osha
              description: Dataset needed for dataset_not_enabled.
            businessCode:
              type: string
              description: The rater’s own refusal code, for business_rejection.
            violations:
              type: array
              items:
                type: object
                properties:
                  code:
                    type: string
                    description: Authored or built-in constraint code
                  message:
                    type: string
                    description: Authored message for the failed constraint
                  path:
                    type: string
                    description: Input path of the offending value; empty for the request
                  value:
                    nullable: true
                    description: Offending input value, size-bounded by the runtime
                  constraint:
                    type: string
                    description: The constraint the value failed, as text
                  cite:
                    type: string
                    nullable: true
                    description: >-
                      Filing citation of the constraint, when the source cites
                      one
                required:
                  - code
                  - message
                  - path
                  - value
                  - constraint
                  - cite
                additionalProperties: false
              maxItems: 256
              description: >-
                Each input constraint the submission failed, for invalid_inputs
                and business_rejection.
            violationsTruncated:
              type: boolean
              description: >-
                True when the rater reported more violations than violations
                holds.
            executionId:
              type: string
              description: >-
                The recorded execution of a failed rating, for rater rating
                failures.
            accessUrl:
              type: string
              nullable: true
              format: uri
              description: >-
                Where to add the product to your account, for
                product_access_required.
          required:
            - code
    V2FilingHistoryFiling:
      allOf:
        - $ref: '#/components/schemas/V2FilingSummary'
        - type: object
          properties:
            stateStatus:
              type: string
              nullable: true
            dispositionStatus:
              type: string
              nullable: true
            rateImpact:
              $ref: '#/components/schemas/V2FilingRateChangeSummary'
            objections:
              type: array
              items:
                $ref: '#/components/schemas/V2FilingHistoryObjection'
              description: >-
                Up to 10 newest objection letters. Use GET
                /insurance/filing-objections with filingId for more.
          required:
            - stateStatus
            - dispositionStatus
            - rateImpact
            - objections
    V2FilingHistoryProductFiling:
      allOf:
        - $ref: '#/components/schemas/V2FilingHistoryFiling'
        - type: object
          properties:
            products:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    description: Market directory product ID.
                  name:
                    type: string
                  webUrl:
                    type: string
                    description: The product's directory page.
                required:
                  - id
                  - name
                  - webUrl
              description: >-
                The directory products the filing is recorded for in this state,
                by name.
            tracked:
              type: boolean
              description: >-
                Whether a market brief for this filing's product tracks the
                carrier, through a tracked product's companies. Tracked
                carriers' filings come first.
          required:
            - products
            - tracked
    V2Error:
      type: object
      properties:
        error:
          type: string
          minLength: 1
          description: Human-readable explanation of the failure.
      required:
        - error
    V2FilingSummary:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Filing ID for GET /insurance/filings/{filingId}.
        source:
          type: string
          description: 'Catalog source: serff or florida_irfs.'
        sourceReference:
          type: string
          description: >-
            Native reference in that source: an uppercase SERFF tracking number,
            or a Florida IRFS file number such as 24-12345. GET
            /insurance/filings accepts this value as sourceReference.
        webUrl:
          type: string
          format: uri
          description: >-
            The filing page in Effective, for citing this filing. Omitted where
            you cannot open it.
        state:
          type: string
          description: Uppercase two-letter code of the state the filing was made in.
        companyName:
          type: string
          nullable: true
          description: >-
            Filing company name as the source records it, with surrounding
            whitespace trimmed; null when absent. The companyName filter on GET
            /insurance/filings matches the stored value exactly.
        carrierIds:
          type: array
          nullable: true
          items:
            type: string
          description: >-
            Unique canonical carrier_ IDs resolved from source NAIC codes. Null
            when no valid source codes are known; [] when codes are known but
            none resolve. May be partial; naicCompanyCodes preserves all known
            source codes. Never contains naic: references.
        groupId:
          type: string
          nullable: true
          description: >-
            Canonical carrier_group_ ID, or null when the source code is absent,
            unresolved or ambiguous. naicGroupCode preserves the source code.
        naicCompanyCodes:
          type: array
          nullable: true
          items:
            type: string
          description: >-
            Unique five-digit source NAIC company codes, preserving leading
            zeros; null when unknown. These are source identifiers, not managed
            IDs, and remain available without a directory match.
        naicGroupCode:
          type: string
          nullable: true
          description: >-
            Source NAIC group code as a decimal string without leading zeros, or
            null when unknown. Kept separately from managed groupId.
        productName:
          type: string
          nullable: true
          description: >-
            Product name as filed, with surrounding whitespace trimmed; null
            when absent. The productName filter on GET /insurance/filings
            matches the stored value exactly.
        typeOfInsurance:
          type: string
          nullable: true
          description: >-
            Source type-of-insurance label, usually code first, for example
            "04.0 Homeowners", with a missing leading zero on the code restored;
            null when absent. Use toiCode to compare filings.
        subTypeOfInsurance:
          type: string
          nullable: true
          description: >-
            Source sub-type-of-insurance label, usually code first, for example
            "04.0003 Owner Occupied Homeowners", with a missing leading zero on
            the code restored; null when absent. Use subToiCode to compare
            filings.
        toiCode:
          type: string
          nullable: true
          description: >-
            For Property & Casualty filings, the normalized NAIC TOI code, for
            example 04.0, or null when the source TOI has no canonical code. For
            other business types, the source TOI label unchanged. The toi filter
            matches this value.
        subToiCode:
          type: string
          nullable: true
          description: >-
            For Property & Casualty filings, the normalized NAIC sub-TOI code,
            for example 04.0003, or null when the source sub-TOI has no
            canonical code. For other business types, the source sub-TOI label
            unchanged. The subToi filter matches this value.
        filingType:
          type: string
          nullable: true
          description: >-
            Source-native filing type label, which varies by state, with
            surrounding whitespace trimmed; null when absent. The filingType
            filter on GET /insurance/filings matches the stored value.
        sourceStatus:
          type: string
          nullable: true
          description: >-
            Source-native filing status label, with surrounding whitespace
            trimmed; null when absent. The sourceStatus filter on GET
            /insurance/filings matches the stored value.
        submissionDate:
          type: string
          nullable: true
          format: date
          description: Date the filing was submitted (YYYY-MM-DD); null when unknown.
        dispositionDate:
          type: string
          nullable: true
          format: date
          description: >-
            Date the state disposed of the filing (YYYY-MM-DD); null when it has
            no disposition or the date is unknown.
      required:
        - id
        - source
        - sourceReference
        - state
        - companyName
        - carrierIds
        - groupId
        - naicCompanyCodes
        - naicGroupCode
        - productName
        - typeOfInsurance
        - subTypeOfInsurance
        - toiCode
        - subToiCode
        - filingType
        - sourceStatus
        - submissionDate
        - dispositionDate
    V2FilingRateChangeSummary:
      type: object
      nullable: true
      properties:
        overallRateImpactPercent:
          type: number
          nullable: true
          description: >-
            The overall change the filing selects and requests, in percent: 7.5
            means 7.5%. Null means unknown.
        overallIndicatedChangePercent:
          type: number
          nullable: true
          description: >-
            The overall change the filing’s rate analysis indicates, in percent.
            Often differs from the selected change. Null means unknown.
      required:
        - overallRateImpactPercent
        - overallIndicatedChangePercent
      description: >-
        Overall rate change extracted from the SERFF rate data. Null when none
        was extracted, which includes form-only filings and every Florida IRFS
        filing; it does not mean no change. A filed rate is not an approved
        rate. GET /insurance/filings/{filingId}/rate-impact adds written
        premium, policyholders affected and the range of changes.
    V2FilingHistoryObjection:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Letter ID for GET /insurance/filing-objections/{objectionId}.
        objectionDate:
          type: string
          nullable: true
          format: date
        reviewerName:
          type: string
          nullable: true
          description: The state analyst who wrote the letter, when known.
        filerName:
          type: string
          nullable: true
          description: The filer contact the letter is addressed to, when known.
        textPreview:
          type: string
          nullable: true
          description: The start of the letter, or null when it has no text.
        textTruncated:
          type: boolean
        webUrl:
          type: string
          format: uri
          description: The letter's page in Effective.
        responses:
          type: array
          items:
            $ref: '#/components/schemas/V2FilingHistoryResponse'
          description: >-
            The company's responses dated on or after this letter and before the
            next one, oldest first. SERFF does not link responses to letters, so
            this pairing is by date. Empty for other carriers' filings.
      required:
        - id
        - objectionDate
        - reviewerName
        - filerName
        - textPreview
        - textTruncated
        - webUrl
        - responses
    V2FilingHistoryResponse:
      type: object
      properties:
        responseDate:
          type: string
          nullable: true
          format: date
        textPreview:
          type: string
          description: The start of the company's response text.
        textTruncated:
          type: boolean
      required:
        - responseDate
        - textPreview
        - textTruncated
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Effective API key. Send Authorization: Bearer sk-eai-...'

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.