Create a submission
const url = 'https://api.hedgespecialty.com/api/v1/broker/submissions';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"applicant":{"insured_name":"example","business_phone":"example","business_email":"example","website":"example","contact_first_name":"example","contact_last_name":"example","contact_email":"example","naics":"example","mailing_address":{"line1":"example","line2":"example","city":"example","state":"example","zip":"example"}},"narrative":"example","lines_of_business":["example"],"effective_date":"2026-04-15","primary_state":"example","producer_email":"example","insured_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.hedgespecialty.com/api/v1/broker/submissions \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "applicant": { "insured_name": "example", "business_phone": "example", "business_email": "example", "website": "example", "contact_first_name": "example", "contact_last_name": "example", "contact_email": "example", "naics": "example", "mailing_address": { "line1": "example", "line2": "example", "city": "example", "state": "example", "zip": "example" } }, "narrative": "example", "lines_of_business": [ "example" ], "effective_date": "2026-04-15", "primary_state": "example", "producer_email": "example", "insured_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" }'Creates the submission and starts intake (enrichment + instant
carrier-API quoting). Does NOT start marketing to carriers, call
finalize when documents and answers are in.
Supports an Idempotency-Key header: a retried create with the same
key within 24h replays the original response instead of creating a
duplicate. A concurrent duplicate returns 409, retry shortly.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”object
object
Line1, city, state and zip are required together.
object
Operations description of the risk, what the business does, size, anything an underwriter should know. Required; appetite matching depends on it.
Canonical slugs (e.g. commercial_general_liability) or common aliases (gl, wc).
Primary risk state, 2-letter US code (normalized to uppercase). When the applicant mailing address also carries a state the two must agree: the request 422s on a conflict, with a message that says exactly what to fix. Omit it to use the mailing address state.
REQUIRED when authenticating with a machine credential, the active portal user this submission is attributed to.
Optional id of an existing insured from GET /broker/insureds - links the new submission to that client’s account (repeat business, a new line for an existing client). Must belong to your brokerage; an unknown or foreign id returns 404.
Examplegenerated
{ "applicant": { "insured_name": "example", "business_phone": "example", "business_email": "example", "website": "example", "contact_first_name": "example", "contact_last_name": "example", "contact_email": "example", "naics": "example", "mailing_address": { "line1": "example", "line2": "example", "city": "example", "state": "example", "zip": "example" } }, "narrative": "example", "lines_of_business": [ "example" ], "effective_date": "2026-04-15", "primary_state": "example", "producer_email": "example", "insured_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"}Responses
Section titled “Responses”Created
object
Examplegenerated
{ "submission_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "state": "example", "status_label": "example"}Same Idempotency-Key already in flight
Validation error (message says exactly what to fix)
Daily create limit reached