---
title: "Confirm the user's selection, capture credit consent, and start the chat-native bind continuation flow."
method: POST
path: "/api/agent/umbrella/select"
---

# Confirm the user's selection, capture credit consent, and start the chat-native bind continuation flow.

`POST /api/agent/umbrella/select`

## Request

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

Pass the selected `selection_token`, a final user confirmation, and the `credit_consent` block collected from the real user. Coverage Cat requires the affirmative Yes to the soft-credit pull before binding a chosen offer; if it is missing or declined the response is `credit_consent_required` with the prompt to render. Otherwise Coverage Cat will either return the next bind-stage `next_question` to keep collecting required details in chat, or it will continue the standard post-choose workflow and tell the agent to keep polling `status` in chat. For Monoline and Markel, the post-choose workflow may require declarations uploads first; once those uploads are on file, `documents_pending_review` usually advances to `payment_needed` with a secure `payment_url` within about 5-10 minutes while declarations verification continues in parallel. Successful post-choose responses include `offers_url`, and may include `required_upload_types` or a secure `payment_url`. Sandbox delegated umbrella sessions reject this endpoint with `sandbox_unsupported`.

## Headers

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

## Request body

- SelectRequest
  - `credit_consent` object: Real-user consent for a soft credit check. Required before Coverage Cat can bind a chosen offer. If omitted or declined, Coverage Cat returns `credit_consent_required` with the prompt to render.
    - `answer` 'Yes', required: Must be the real user's answer. Only Yes authorizes the pull.
    - `collected_from_user` true, required
  - `sandbox` boolean: Optional sticky sandbox flag. Sandbox delegated umbrella sessions currently reject `select` with `sandbox_unsupported`; this field is accepted so a client carrying the same request envelope does not fail schema validation first.
  - `selection_confirmed` true, required
  - `selection_token` string, required
  - `uid` string, required

## Response `200`

Offer selection accepted.

- SelectResponse
  - `agent_instructions` string[]
  - `credit_consent_question` string: Present only when `status` is `credit_consent_required`. The real user's affirmative Yes must be collected and passed back on the next `select` call as `credit_consent`.
  - `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` 'credit_consent_required' | 'needs_more_info_to_bind' | 'documents_needed' | 'documents_pending_review' | 'payment_needed' | 'chosen'
  - `uid` string

## Other responses

- `400`: Invalid request or invalid selection token.
- `401`: Invalid or missing API key.
- `404`: Unknown delegated umbrella session.
- `409`: Offer selection is stale and the user must review fresh offers.
- `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)
