---
title: "Get a Lead Finder import"
method: GET
path: "/lead-finder/imports/{id}"
tags: ["Lead Finder"]
---

# Get a Lead Finder import

`GET /lead-finder/imports/{id}`

## Request

- Base URL: `https://api.emailchaser.com/r`
- URL: `https://api.emailchaser.com/r/lead-finder/imports/{id}`
- Auth: HTTP bearer

Returns one import's progress: how many people were added and skipped and why, what verification said, and the credits spent so far. Status is running, completed, failed or canceled, and added, creditsSpent and status can still change until finishedAt is set. A completed import's endReason is all_selected, requested_reached, audience_exhausted or fetch_limit; a canceled one's is canceled. A failed import has no endReason but can still have added and charged people: lastError says why it stopped (insufficient_credits, contact_cap_reached, results_expired, budget_exhausted, provider_blocked, invalid_filters, campaign_not_found or internal). A new first_n import to finish a partial one starts from the top again and counts the people already added toward its fetch limit, so it only reaches new people while those fit inside five times its count (at least 1,000); otherwise pick the missing people by ref from search results. Imports belonging to other workspaces are reported as not found.

## Path parameters

- `id` integer, required

## Response `200`

The import

- ModelsLeadFinderImport
  - `added` integer
  - `audienceKey` string: AudienceKey names the filters the people came from, as on a search.
  - `campaignId` integer
  - `campaignName` string
  - `createdAt` string
  - `creditsPerProspect` integer
  - `creditsSpent` integer: CreditsSpent is what the import has charged so far. People added while the workspace's credits were free add nothing to it.
  - `endReason` string: EndReason says how an import ended: all_selected or requested_reached (finished), audience_exhausted or fetch_limit (a first_n import stopped early), or canceled. A failed import has none; see LastError.
  - `expired` integer
  - `finishedAt` string
  - `importId` integer
  - `lastError` string: LastError says why a failed import stopped: insufficient_credits, contact_cap_reached, results_expired, budget_exhausted, provider_blocked, provider_unavailable (the people database was down or in maintenance; start the import again later), rate_limited, invalid_filters, campaign_not_found or internal. A failed import can still have added and charged people.
  - `mode` string
  - `requested` integer
  - `skipReasons` object: SkipReasons counts skipped people by reason: already_in_workspace, blocklisted, reveal_returned_no_address, consumer_mailbox, invalid_email or contact_cap_reached.
  - `skipped` integer
  - `startsAt` integer: StartsAt is the position in the results a first_n import started from.
  - `status` string: Status is running, completed, failed or canceled. Added, CreditsSpent and Status can still change until FinishedAt is set.
  - `topUpOf` integer: TopUpOf is set on an import a saved search's weekly top-up started (set up in the app): the saved search's id.
  - `verification` ModelsLeadFinderVerification
    - `catchAll` integer
    - `invalid` integer
    - `limitReached` integer
    - `unknown` integer
    - `valid` integer
  - `verifyEmails` boolean

## Other responses

- `401`: Unauthorized - invalid or missing API key
- `404`: not_found
- `500`: internal

---

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