Skip to content

Save answers to one carrier application

POST
/broker/submissions/{submission_id}/applications/{session_id}/checkpoint
curl --request POST \
--url https://api.hedgespecialty.com/api/v1/broker/submissions/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/applications/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/checkpoint \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "operation_id": "example", "expected_answer_revision": 1, "expected_schema_fingerprint": "example", "field_changes": {}, "explicit_clears": [ "example" ], "collection_operations": [ { "field_key": "example", "operation": "insert", "record_id": "example", "changes": {} } ], "selected_products": [ "example" ], "source_reference": { "source_id": "example", "content_hash": "example", "channel": "broker_portal", "evidence": "explicit", "snippet": "example", "extractor_version": "example" } }'

The write half of the workspace. session_id is the ApplicationSection.application_id. Send answers keyed by the program’s question keys in field_changes (clears in explicit_clears, list edits in collection_operations) together with the application’s current answer_revision and schema_fingerprint. Idempotent per operation_id. Returns a receipt with the refreshed application, the keys applied and rejected, and any shared-fact changes the answers implied (Hedge maps facts across the submission’s other applications asynchronously; watch the changes stream). Requires the broker_submit scope.

submission_id
required
string format: uuid
session_id
required
string format: uuid
Media typeapplication/json

Save answers to one application. Optimistic concurrency: echo the application’s current answer_revision and schema_fingerprint; a mismatch answers 409 with the current application so you can re-apply. operation_id makes the save idempotent: a retried command with the same id replays the original receipt.

object
operation_id
required
string
expected_answer_revision
required
integer
expected_schema_fingerprint
required
string
field_changes

Answers to set

object
key
additional properties
any
explicit_clears

Question keys to clear explicitly.

Array<string>
collection_operations
Array<object>
object
field_key
required
string
operation
required
string
Allowed values: insert update remove
record_id
required
string
changes
object
key
additional properties
any
selected_products
Array<string>
nullable
source_reference

Provenance of a fact or answer.

object
source_id
required
string
content_hash
required
string
channel
required
string
Allowed values: broker_portal broker_email insured connected_app document paste mapping
evidence
string
default: explicit
Allowed values: explicit translated assumed
snippet
string
nullable
extractor_version
string
nullable

Checkpoint receipt

Media typeapplication/json
object
operation_id
required
string
application
required

One carrier application (a carrier-API quote session) inside the workspace: its schema, current answers, per-field ownership, and readiness. application_id is the session_id used by the checkpoint / request-quote / employers-classes paths. Revisions (answer_revision, fact_revision, selection_revision) and schema_fingerprint are the optimistic-concurrency tokens every command must echo.

object
application_id
required
string
workspace_id
required
string
connection_id
string
provider_key
required
string
program_identifier
required
string
owner_host
string
Allowed values: hedge bindly
owner_session_id
string
route
string
Allowed values: hedge direct
market_program_id
string format: uuid
nullable
submission_id
string format: uuid
nullable
line_of_business
string
nullable
schema
required

The normalized question schema (fields, required_field_keys, program identity); the same questions GET /broker/programs/{program_id}/application-schema projects.

object
schema_fingerprint
required
string
answers
required

Current answers keyed by question key.

object
key
additional properties
any
ownership
object
key
additional properties
object
kind
string
Allowed values: explicit derived cleared
revision
integer
source

Provenance of a fact or answer.

object
source_id
required
string
content_hash
required
string
channel
required
string
Allowed values: broker_portal broker_email insured connected_app document paste mapping
evidence
string
default: explicit
Allowed values: explicit translated assumed
snippet
string
nullable
extractor_version
string
nullable
dependencies
Array<string>
answer_revision
required
integer
fact_revision
integer
selection_revision
integer
selected_products
Array<string>
available_products
Array<string>
mapping_state

Whether Hedge’s fact-to-answer mapping is idle or still running for this application.

string
unresolved_dependencies
Array<string>
missing

Required question keys still unanswered.

Array<string>
errors
Array<object>
object
key
additional properties
string
visible_fields
Array<string>
readiness
required

needs_information until every required visible question is answered, then ready_for_quote.

string
request_state
required

Lifecycle of the last quote request for this application (draft until one is made).

string
request_id
string
nullable
result

The carrier outcome of the last request

object
key
additional properties
any
allowed_actions
Array<string>
applied
required
Array<string>
rejected
required
Array<object>
object
key
additional properties
string
fact_changes
Array<object>
object
key
required
string
value
required
scope
string
default: insured
period
string
nullable
source
required

Provenance of a fact or answer.

object
source_id
required
string
content_hash
required
string
channel
required
string
Allowed values: broker_portal broker_email insured connected_app document paste mapping
evidence
string
default: explicit
Allowed values: explicit translated assumed
snippet
string
nullable
extractor_version
string
nullable
confirmed
boolean
facts_status
string
Example
{
"application": {
"owner_host": "hedge",
"route": "hedge",
"ownership": {
"additionalProperty": {
"kind": "explicit",
"source": {
"channel": "broker_portal",
"evidence": "explicit"
}
}
}
},
"fact_changes": [
{
"scope": "insured",
"source": {
"channel": "broker_portal",
"evidence": "explicit"
},
"confirmed": false
}
]
}

Broker_submit scope required

Submission or application not found

Stale revision or fingerprint; the body carries code and the current application

Command rejected (code: application_command_rejected, e.g. an invalid classification)

Save is busy (code: application_busy); retry the same operation after Retry-After