---
title: "Accept All Suggestions"
method: POST
path: "/api/v1/leads/discover/runs/{run_id}/accept-all"
tags: ["leads"]
---

# Accept All Suggestions

`POST /api/v1/leads/discover/runs/{run_id}/accept-all`

## Request

- Base URL: `https://api.nudgelink.co` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nudgelink.co/api/v1/leads/discover/runs/{run_id}/accept-all`
- Auth: HTTP bearer

Materialise every still-pending suggestion of the run into a Lead.

Bulk twin of ``accept_suggestion`` (client feedback 2026-07-10: approving
a big run one-by-one is painful). Row semantics match the single-accept
path exactly: dedup by ``linkedin_url``, campaign inheritance via
``materialise_lead_from_suggestion``, rejected rows are never resurrected.
Idempotent — a second call finds no pending rows and no-ops. One audit row
for the whole batch.

## Path parameters

- `run_id` string, uuid, required

## Response `200`

Successful Response

- AcceptAllResponse
  - `run_id` string, uuid, required
  - `accepted` integer, required
  - `deduped` integer, required
  - `skipped` integer, required
  - `results` AcceptAllItem[], required
    - `suggestion_id` string, uuid, required
    - `lead_id` string, uuid, required
    - `deduped` boolean, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/nudgelink/apis/nudgelink-api.md) · [All operations](https://skmtc.dev/nudgelink/apis/nudgelink-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nudgelink/apis/nudgelink-api/revisions/baa46e6db986?raw)
