# partial_lead

> A lead left contact details, then abandoned the form before finishing.

---
title: partial_lead
description: A lead left contact details, then abandoned the form before finishing.
---

Fires when an identified lead abandons the form. Use it for re-engagement flows and to see where your form loses people; `submission.lastSeenElement` is the question they stopped on. Requires the form's partial capture setting to be enabled.

<ApiSection>
<div>
<Attributes title="data">
  <Attribute name="lead" type="object">
    The partially captured lead. Fields not yet answered are `null`. See [shared objects](/docs/webhooks/webhook#shared-objects).
  </Attribute>
  <Attribute name="submission" type="object">
    The abandoned submission (`status` is `partial`, `completedAtUtc` and `ending` are `null`). Carries its own `ending`, `answers`, `lastSeenElement`, `utmData`, `ipAddress`, `userAgent`, and `appliedTags`. See [the submission object](/docs/webhooks/webhook#shared-objects).
  </Attribute>
  <Attribute name="reason" type="string" values={["browser_detection", "server_detection"]}>
    What detected the abandon: `browser_detection` means the visitor's browser reported it (idle timer or tab close); `server_detection` means ROASForm's server-side check caught one the browser never reported.
  </Attribute>
  <Attribute name="markAbandonedAfterSeconds" type="number">
    The form's idle threshold in seconds; `60` when the form uses the default.
  </Attribute>
  <Attribute name="splitTestVariant" type="nullable object">
    `{ id, name }` of the variant served, or `null` when the form has no running split test.
  </Attribute>
</Attributes>
</div>
<ExamplePanel title="partial_lead">

```json
{
  "id": "5c9e2b74-1d8f-4a3c-b6e9-7f0a4d8c2b15",
  "event": "partial_lead",
  "webhookVersion": "2026-07-01",
  "createdAtUtc": "2026-07-28T14:31:05.338Z",
  "agency": {
    "id": "c1a2b3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
    "name": "Acme Marketing"
  },
  "subaccount": {
    "id": "7f3e9d21-4b8a-4c5e-9f60-2d8b1a7c3e54",
    "name": "Acme Fitness Client"
  },
  "form": {
    "id": "e8b4c672-9a1d-4f3b-b7c8-5d2e9f0a1b3c",
    "name": "Fitness Coaching Application",
    "url": "https://forms.roasform.com/fitness-coaching"
  },
  "data": {
    "lead": {
      "id": "3d9f7a25-6c1b-4e8d-a2f4-8b0c5d7e9f13",
      "name": "Jane Doe",
      "email": "jane@example.com",
      "phone": null,
      "company": null,
      "location": null,
      "tags": [],
      "timezone": "America/Chicago",
      "country": "US",
      "createdAtUtc": "2026-07-28T14:29:03.114Z"
    },
    "submission": {
      "id": "5a2c8e94-1f7d-4b3a-9e6c-4d8f0b2a6c71",
      "status": "partial",
      "qualification": "none",
      "score": 30,
      "startedAtUtc": "2026-07-28T14:26:40.207Z",
      "completedAtUtc": null,
      "ending": null,
      "lastSeenElement": {
        "elementId": "d2c8f5b1-7e4a-4d9c-a6f3-9b0e5d8c2a64",
        "label": "What are your goals?",
        "type": "multiple_choice",
        "value": null,
        "values": null,
        "score": null
      },
      "answers": [
        {
          "elementId": "b7e2f9a4-3c8d-4a1e-9f5b-6d0c2e8a4f17",
          "label": "What is your monthly budget?",
          "type": "single_choice",
          "value": "$2,000 - $5,000",
          "values": null,
          "score": 30
        },
        {
          "elementId": "a1d4c7f2-9b3e-4c6a-8d2f-5e9b1c4a7d30",
          "label": "What is your email?",
          "type": "email",
          "value": "jane@example.com",
          "values": null,
          "score": null
        }
      ],
      "appliedTags": [
        "abandoned"
      ],
      "utmData": {
        "utm_source": "facebook",
        "utm_medium": "cpc",
        "utm_campaign": "summer-2026"
      },
      "ipAddress": "203.0.113.42",
      "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15"
    },
    "reason": "browser_detection",
    "markAbandonedAfterSeconds": 60,
    "splitTestVariant": {
      "id": "d6f1a8c3-2e9b-4a5d-8f7c-1b4e6a9d3c82",
      "name": "Variant B"
    }
  }
}
```

</ExamplePanel>
</ApiSection>
