---
title: "Import leads into a workspace, without a campaign."
method: POST
path: "/api/external/v1/leads/import-to-workspace"
tags: ["Leads"]
---

# Import leads into a workspace, without a campaign.

`POST /api/external/v1/leads/import-to-workspace`

Use this when the leads are not tied to a landing page yet; link them to
campaigns later through an audience.

The response depends on how the import ran. Queued imports (the default,
and always the case when any enrichment or campaign is requested) answer
with a `job_id` to poll on `/leads/get-status`. Immediate imports
(`sync: true` with no enrichment and no campaigns) answer with the result
directly and carry a `job_id` of null.

## Request body

- object
  - `workspace_id` integer, required — The workspace to import into.
  - `leads` object[], required — Array of lead objects.
    - `values` object, required — Key/value pairs with the lead data.
  - `from` string, nullable — The service sending the leads.
  - `send_email` boolean, nullable — Send the configured email for each imported lead. Defaults to false.
  - `is_generate_ai_analysis` boolean, nullable — Generate the AI company analysis.
  - `is_generate_person_analysis` boolean, nullable — Generate the AI person analysis.
  - `is_scrape_person_posts` boolean, nullable — Scrape the lead's recent LinkedIn posts.
  - `is_scrape_company_posts` boolean, nullable — Scrape the company page's recent LinkedIn posts.
  - `enrich_data` boolean, nullable — Enrich the leads from their email/domain.
  - `audience_id` integer, nullable — An audience to add the imported leads to.
  - `sync` boolean, nullable — Import immediately instead of queueing, when no enrichment is requested.
  - `campaign_ids` integer[] — Campaigns to attach the leads to.
  - `generate_ai_variables` boolean, nullable — Generate AI variable values.
  - `trigger_audience_summary` boolean, nullable — Trigger the audience summary generation after the import.

## Response `200`

- union
  - object
    - `job_id` string
  - object
    - `job_id` string
    - `success` boolean
    - `imported_count` integer
    - `duplicate_count` integer
    - `lead_ids` integer[]
    - `errors` unknown[]
      - unknown

## Other responses

- `403`

## Changes

- **2026-08-18** `29a37db12acb` — 2 breaking
  - added the new required request property `leads/items/values`
  - the `leads/items/` request property type changed from `string` to `object`
- **2026-08-17** `dd3f47f72f7a` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/genpage/apis/genpage-external-api-documentation/changes/api/external/v1/leads/import-to-workspace/post.md)

---

[API](https://skmtc.dev/genpage/apis/genpage-external-api-documentation.md) · [All operations](https://skmtc.dev/genpage/apis/genpage-external-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/genpage/genpage-external-api-documentation/revisions/29a37db12acb/schema)
