---
title: "The Hedge supplemental questions for a risk (no submission needed)"
method: POST
path: "/broker/hedge-questions"
tags: ["Appetite"]
---

# The Hedge supplemental questions for a risk (no submission needed)

`POST /broker/hedge-questions`

## Request

- Base URL: `https://api.hedgespecialty.com/api/v1`
- URL: `https://api.hedgespecialty.com/api/v1/broker/hedge-questions`
- Auth: OAuth 2
  - Authorization code: `https://api.hedgespecialty.com/api/v1/oauth/authorize`
  - Client credentials
  - Token URL: `https://api.hedgespecialty.com/api/v1/oauth/token`

Deterministic and read-only. Returns the curated core questions of
the Hedge supplemental form(s) that apply to the risk, merged so a
shared `key` is asked once. Forms resolve in this order, at most
four: the Hedge forms the selected `program_ids` require, the class
form for the NAICS (the most specific prefix), or for the business
`description` when the NAICS names no class form, then the coverage
form of each requested line (liquor,
auto, cyber, workers' comp and so on; the general GL and property
forms only when no class form covers the line). A form Hedge asks
about but does not send as a PDF (the general GL supplemental) is not
in `forms`; its questions are. An empty `forms` and `sections` is a
valid answer: send the note and documents only.

Answer with `POST /broker/submissions/{submission_id}/answers`
(`source: hedge_questions`).

## Request body

- object
  - `lines` string[], required: Canonical lines of business.
  - `state` string: Two-letter US state.
  - `naics` string: 2 to 6 digits.
  - `program_ids` string[]: The selected Hedge (portal and email) programs.
  - `description` string: Optional: the agency's description of the business, which class keywords match (for example cannabis, which has no NAICS).

## Response `200`

The resolved forms and their questions

- object
  - `version` string, required: Changes when the question sets change, e.g. `HEDGE_14@2026-09-28.1`; `none` when no form applies.
  - `forms` object[], required
    - `form_key` string, required: The Hedge form's key, e.g. HEDGE_14_RESTAURANT_BAR_AND_TAVERN_SUPPLEMENTAL.
    - `title` string, required
  - `sections` object[], required
    - `id` string, required
    - `title` string, required
    - `questions` SharedQuestion[], required
      - `id` string, required: The program's own answer path, stable within the set (an object's parts are `<object>.<part>`).
      - `key` string, required: Shared answer key: Hedge's fact key when the question means that fact in the same form, else `program.<program_slug>.<id>`.
      - `label` string, required
      - `help` string, nullable, required
      - `type` 'text' | 'textarea' | 'number' | 'currency' | 'percent' | 'integer' | 'boolean' | 'select' | 'multiselect' | 'date' | 'state' | 'address' | 'list', required: `list`: the answer is a JSON array; rows shaped by `item_questions`, or plain text values when `item_questions` is absent.
      - `options` object[], required: Choices for select / multiselect (empty otherwise). Send `value` unchanged; it may be a string, number or boolean.
        - `value` unknown, required
        - `label` string, required
      - `required` boolean, required: Required whenever the question is shown.
      - `show_if` SharedQuestionCondition[], required
        - `key` string, nullable, required
        - `op` 'eq' | 'ne' | 'in' | 'not_in' | 'truthy' | 'falsy' | 'gt' | 'gte' | 'lt' | 'lte' | 'exists' | 'any_of' | 'all_of', required
        - `value` unknown, required
        - `any_item` boolean
        - `reference` object: A keyed-row lookup Hedge evaluates natively.
        - `conditions` SharedQuestionCondition[]
      - `required_if` SharedQuestionCondition[]: When present, the question is required only while these conditions hold.
        - `key` string, nullable, required
        - `op` 'eq' | 'ne' | 'in' | 'not_in' | 'truthy' | 'falsy' | 'gt' | 'gte' | 'lt' | 'lte' | 'exists' | 'any_of' | 'all_of', required
        - `value` unknown, required
        - `any_item` boolean
        - `reference` object: A keyed-row lookup Hedge evaluates natively.
        - `conditions` SharedQuestionCondition[]
      - `one_of_group` string: An answer to any question in the same group satisfies the group.
      - `section` string, nullable, required
      - `assumed_default` unknown, required
      - `prefill_from` string, nullable, required
      - `item_questions` SharedQuestion[]: For a `list`: each row's questions. Keys are `<list key>.<id>`; a row condition on a sibling uses the sibling's key.

## Other responses

- `422`: Invalid body, or `{code: unknown_line}` for a line Hedge does not write
- `503`: `hedge_questions_unavailable`: try again shortly

## Changes

- **2026-09-29** `90c41460541f`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/changes/broker/hedge-questions/post.md)

---

[API](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api.md) - [All operations](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/revisions/beefa9cdc11c?raw)
