---
title: "Mint a one-time bind link (partner integrations only)"
method: POST
path: "/broker/submissions/{submission_id}/partner-bind-links"
tags: ["Binding"]
---

# Mint a one-time bind link (partner integrations only)

`POST /broker/submissions/{submission_id}/partner-bind-links`

## Request

- Base URL: `https://api.hedgespecialty.com/api/v1`
- URL: `https://api.hedgespecialty.com/api/v1/broker/submissions/{submission_id}/partner-bind-links`
- 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`

For an API partner acting for your brokerage (a token carrying the
partner claim, with `broker_submit`) on a submission that partner
created. Returns a one-time Hedge portal sign-in URL for
`producer_email` that opens this quote: `landing` is `bind` (the bind
checklist), `quote` (terms still incomplete, or the quote binds on
the carrier's own portal) or `status` (the lane is binding or bound).
The URL expires after about 120 seconds and works once. It is a
credential: redirect the signed-in user to it immediately and never
store, email or log it. The first redemption makes the partner's
file a normal Hedge file.

`producer_email` must be an active portal user of your brokerage, or
a producer on file with your brokerage (Hedge then creates their
portal account; no email is sent). `return_url` must be https on an
origin Hedge approved for the partner; the portal offers it as the
way back. Any other caller, or a submission the partner did not
create, gets 404.

## Path parameters

- `submission_id` string, uuid, required

## Request body

- object
  - `quote_id` string, uuid, required: A quote from GET .../quotes.
  - `producer_email` string, required
  - `return_url` string, required
  - `consent` object, required
    - `statement_version` string, required
    - `accepted_at` string, date-time, required: Must carry a UTC offset.

## Response `201`

The link (the response carries `Cache-Control: no-store`)

- object
  - `url` string
  - `expires_at` string, date-time
  - `landing` 'bind' | 'quote' | 'status'

## Other responses

- `403`: Missing broker_submit scope
- `404`: Not a partner token
- `409`: `quote_not_available`, `quote_expired`, `quote_not_bindable` (with `reason`), `brokerage_portal_disabled` or `producer_email_conflict`
- `422`: `return_url_not_allowed`, `producer_not_provisioned`, or a body validation error
- `429`: Rate limited (60 links a minute per partner
- `503`: `proposal_unavailable`: try again shortly

## Changes

- **2026-09-28** `3156f892e627`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/changes/broker/submissions/:submission_id/partner-bind-links/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)
