> ## 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.

# Triage an objection

> Start read-only analysis of existing open objection items. The backend launches one subagent per item under the filing Captain and publishes each recommendation as an item comment. Does not extract items, edit filing documents, change item statuses, or submit to SERFF. Requires an ordinary write-capable member credential, filing/objection edit access, session creation permission and spending allowance. Use a fresh requestId for a deliberate run and keep it on retries: within Temporal history retention, the same objection and requestId recover the same run, including after completion. A different requestId starts another run and can add recommendations. Captured input limits: 100 open items, 100 letter documents, 500 filing items, 1000 filing document references and 768 KiB total metadata, and 64 KiB per item task. Missing open items or unreadable inputs fail the accepted run before any child starts. Poll Location; acceptance is not completion. New or changed items after capture require a new run.



## OpenAPI

````yaml /openapi.json post /objections/{id}/triage
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:
  /objections/{id}/triage:
    post:
      tags:
        - Objections
      summary: Triage an objection
      description: >-
        Start read-only analysis of existing open objection items. The backend
        launches one subagent per item under the filing Captain and publishes
        each recommendation as an item comment. Does not extract items, edit
        filing documents, change item statuses, or submit to SERFF. Requires an
        ordinary write-capable member credential, filing/objection edit access,
        session creation permission and spending allowance. Use a fresh
        requestId for a deliberate run and keep it on retries: within Temporal
        history retention, the same objection and requestId recover the same
        run, including after completion. A different requestId starts another
        run and can add recommendations. Captured input limits: 100 open items,
        100 letter documents, 500 filing items, 1000 filing document references
        and 768 KiB total metadata, and 64 KiB per item task. Missing open items
        or unreadable inputs fail the accepted run before any child starts. Poll
        Location; acceptance is not completion. New or changed items after
        capture require a new run.
      operationId: startObjectionTriage
      parameters:
        - schema:
            type: string
            format: uuid
          required: true
          name: id
          in: path
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                requestId:
                  type: string
                  format: uuid
              required:
                - requestId
              additionalProperties: false
      responses:
        '202':
          description: Triage accepted or already exists. Poll Location for progress.
          headers:
            Location:
              schema:
                type: string
              required: true
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  objectionId:
                    type: string
                    format: uuid
                  statusUrl:
                    type: string
                required:
                  - id
                  - objectionId
                  - statusUrl
                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: Permission or spending allowance insufficient.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '404':
          description: Objection or triage run not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '409':
          description: Objection must be open and its filing must be managed.
          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: Unexpected server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '503':
          description: Dependency unavailable. Retry with the same requestId.
          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.