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

# Sync a managed filing from SERFF

> Read the SERFF website using the filing owner’s saved personal login for the explicitly selected destination. Requires the owner’s ordinary member credential and filing edit access. A full SERFF tracking number must already be recorded. Select loginId from the accounts returned by staging readiness; it may be omitted only when exactly one personal login matches the destination. Returns after fetching and importing: updates tracking numbers and verified status; imports new objection letters/items with stable SERFF source identities. Preserves existing response drafts, item work status, documents and effective dates. Reads SERFF only; never stages, submits, pays, sends correspondence or starts an automated filing workflow. Repeating the call reconciles already imported source IDs; a failed import may have created records, so retry to continue. Partial means some letters were unreadable or source text changed; inspect warnings. A timeout is not proof of completion; inspect the filing/objections and retry. Reads up to 100 letters and 100 items per letter; attachment downloads are not included.



## OpenAPI

````yaml /openapi.json post /insurance/managed-filings/{filingId}/serff-sync
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.canary.effectiveai.app/api/v2
    description: Canary
security:
  - bearerAuth: []
paths:
  /insurance/managed-filings/{filingId}/serff-sync:
    post:
      tags:
        - Managed Filings
      summary: Sync a managed filing from SERFF
      description: >-
        Read the SERFF website using the filing owner’s saved personal login for
        the explicitly selected destination. Requires the owner’s ordinary
        member credential and filing edit access. A full SERFF tracking number
        must already be recorded. Select loginId from the accounts returned by
        staging readiness; it may be omitted only when exactly one personal
        login matches the destination. Returns after fetching and importing:
        updates tracking numbers and verified status; imports new objection
        letters/items with stable SERFF source identities. Preserves existing
        response drafts, item work status, documents and effective dates. Reads
        SERFF only; never stages, submits, pays, sends correspondence or starts
        an automated filing workflow. Repeating the call reconciles already
        imported source IDs; a failed import may have created records, so retry
        to continue. Partial means some letters were unreadable or source text
        changed; inspect warnings. A timeout is not proof of completion; inspect
        the filing/objections and retry. Reads up to 100 letters and 100 items
        per letter; attachment downloads are not included.
      operationId: syncManagedFilingFromSerff
      parameters:
        - schema:
            type: string
            format: uuid
          required: true
          name: filingId
          in: path
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                destination:
                  type: string
                  enum:
                    - production
                    - beta
                loginId:
                  type: string
                  format: uuid
                  description: >-
                    Personal login ID returned by staging readiness for this
                    destination. Required when multiple personal logins match.
              required:
                - destination
              additionalProperties: false
      responses:
        '200':
          description: Sync completed or partially completed. Inspect status and warnings.
          content:
            application/json:
              schema:
                type: object
                properties:
                  filingId:
                    type: string
                    format: uuid
                  destination:
                    type: string
                    enum:
                      - production
                      - beta
                  trackingNumber:
                    type: string
                  portalStatus:
                    type: string
                  checkedAt:
                    type: string
                    format: date-time
                  status:
                    type: string
                    enum:
                      - completed
                      - partial
                  objectionsCreated:
                    type: integer
                    minimum: 0
                  itemsCreated:
                    type: integer
                    minimum: 0
                  objectionIds:
                    type: array
                    items:
                      type: string
                      format: uuid
                  warnings:
                    type: array
                    items:
                      type: string
                required:
                  - filingId
                  - destination
                  - trackingNumber
                  - portalStatus
                  - checkedAt
                  - status
                  - objectionsCreated
                  - itemsCreated
                  - objectionIds
                  - warnings
                additionalProperties: false
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '401':
          description: Authentication required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '403':
          description: Only the filing owner with edit access may sync.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '404':
          description: Filing not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '409':
          description: >-
            SERFF tracking number, personal credentials or a new sign-in is
            required; or concurrent edits require a retry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '415':
          description: Content-Type must be application/json.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '500':
          description: >-
            Import failed. Some records may have been imported; retry to
            reconcile.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '503':
          description: >-
            SERFF could not be read. No filing, objection or item records were
            changed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
      security:
        - bearerAuth: []
components:
  schemas:
    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.
            accessUrl:
              type: string
              nullable: true
              format: uri
              description: >-
                Where to add the product to your account, for
                product_access_required.
          required:
            - code
    V2Error:
      type: object
      properties:
        error:
          type: string
          minLength: 1
          description: Human-readable explanation of the failure.
      required:
        - error
  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.