---
title: "Continue the selected-offer bind flow in chat until the offer is chosen and carrier follow-up takes over."
method: POST
path: "/api/agent/umbrella/bind"
---

# Continue the selected-offer bind flow in chat until the offer is chosen and carrier follow-up takes over.

`POST /api/agent/umbrella/bind`

## Request

- Base URL: `https://api.coveragecat.com`
- URL: `https://api.coveragecat.com/api/agent/umbrella/bind`
- Auth: HTTP bearer

Use this after `select` returns `needs_more_info_to_bind`, or when `status` says `ready_to_finalize`. Send only the fields from the current bind-stage `next_question`. When all bind details are present, Coverage Cat will continue the normal choose flow and the agent should keep the user updated by polling `status`. Successful post-choose responses include `offers_url` for the secure Coverage Cat offers page, and for Monoline/Markel may also include declarations-upload or payment steps. Sandbox delegated umbrella sessions reject this endpoint with `sandbox_unsupported`.

## Headers

- `Coverage-Cat-API-Version` 'v1'
- `Idempotency-Key` string

## Request body

- BindRequest
  - `intake` object: Minimal patch answering only the fields from the current bind-stage `next_question`. Do not send quote-affecting changes here.
  - `sandbox` boolean: Optional sticky sandbox flag. Sandbox delegated umbrella sessions currently reject `bind` with `sandbox_unsupported`; this field is accepted so a client carrying the same request envelope does not fail schema validation first.
  - `uid` string, required

## Response `200`

Bind continuation state.

- BindResponse
  - `agent_instructions` string[]
  - `next_action` NextAction
    - `display_note` string
    - `type` 'bind'
  - `next_question` NextQuestion
    - `display_note` string
    - `fields` QuestionField[]
      - `description` string
      - `enum` unknown[]
        - unknown
      - `format` string
      - `label` string
      - `path` string[]
      - `type` string
    - `item_index` integer, nullable
    - `prompt` string
    - `schema` object
    - `scope` string
    - `title` string
  - `offers_url` string, uri: Secure link to the Coverage Cat offers page for this delegated session.
  - `payment_url` string, uri: Secure payment-setup link, returned only when Coverage Cat is ready to collect payment.
  - `post_choose` object
  - `required_upload_types` string[]
  - `response_summary` string
  - `selected_offer` OfferSnapshot
    - `annual_price` integer
    - `carrier` string
    - `coverage_limit` string
    - `is_estimate` boolean
    - `price_range` object, nullable
      - `high` integer
      - `low` integer
  - `status` 'needs_more_info_to_bind' | 'ready_to_finalize' | 'documents_needed' | 'documents_pending_review' | 'payment_needed' | 'chosen'
  - `uid` string

## Other responses

- `400`: Invalid bind patch or malformed request.
- `401`: Invalid or missing API key.
- `404`: Unknown delegated umbrella session.
- `409`: No offer is pending bind continuation, or the bind state changed.
- `429`: Too many failed authentication attempts or delegated-agent requests. Honor the Retry-After header before retrying.

---

[API](https://skmtc.dev/coveragecat/apis/coverage-cat-delegated-insurance-purchase-apis.md) · [All operations](https://skmtc.dev/coveragecat/apis/coverage-cat-delegated-insurance-purchase-apis/llms.txt) · [OpenAPI document](https://skmtc.dev/coveragecat/apis/coverage-cat-delegated-insurance-purchase-apis/revisions/b80fe29790dc?raw)
