---
title: "Create AI enrichment"
method: POST
path: "/api/v2/supersearch-enrichment/ai"
tags: ["SuperSearchEnrichment"]
---

# Create AI enrichment

`POST /api/v2/supersearch-enrichment/ai`

Create an AI enrichment for a resource (list or campaign)


Requires one of the following scopes: `supersearch_enrichments:create`, `supersearch_enrichments:all`, `all:create`, `all:all`

## Request body

- object
  - `resource_id` string, uuid, required — Id of the resource (list or campaign) to enrich
  - `output_column` string, required — Name of the column where the AI enrichment results will be stored
  - `resource_type` 1 | 2, required — Type of the entity to enrich
  - `input_columns` string[] — List of column names to use as input data for the AI enrichment. These are the fields from your leads that will be used to generate content.
  - `model_version` '3.5' | '4.0' | 'gpt-4o' | 'o3' | 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5' | 'gpt-5.4' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'r1' | 'grok-4.3' | 'gemini-3.0-flash' | 'gemini-3.5-flash' | 'sonar' | 'sonar-pro' | 'instantly-ai-lightspeed-agent-for-web-research' | 'instantly-ai-lightspeed-agent-for-email-generation', required — Version of the AI model to use for enrichment. Different models have different capabilities, costs, and token limits.
  - `use_instantly_account` boolean — When true, the enrichment will use Instantly's account for API calls. When false, it will use your own API keys configured in settings.
  - `overwrite` boolean — When true, will overwrite existing values in the output column. When false, only empty fields will be enriched.
  - `auto_update` boolean — When true, new leads added to the campaign/list will be automatically enriched using these same settings.
  - `skip_leads_without_email` boolean — When true, leads without an email will be skipped.
  - `limit` number — Maximum number of leads to enrich.
  - `prompt` string — Custom prompt to guide the AI enrichment. Use {{variables}} to reference input data. Only used when templateId is not provided.
  - `template_id` string — ID of a predefined AI prompt template to use instead of a custom prompt. Templates are reusable prompt configurations.
  - `status` 1 | 2 | 3 | 4 — Status of the job
  - `filters` object[]

## Response `200`

Default Response

- object
  - `id` string, required — Unique identifier for the enrichment
  - `resource_id` string, uuid, required — ID of the resource being enriched
  - `resource_type` number, required — Type of the resource (1 for Campaign, 2 for List)
  - `output_column` string, required — Name of the column where results will be stored
  - `status` number, required — Status of the enrichment job
  - `model_version` string, required — AI model version used for enrichment
  - `input_columns` string[] — Input columns used for enrichment
  - `overwrite` boolean, required — Whether to overwrite existing data
  - `auto_update` boolean, required — Whether to auto-update new leads
  - `limit` number — Maximum number of leads to process
  - `template_id` string, nullable — ID of the prompt template used

## Other responses

- `401` — This request is unauthorized (either the Authorization header is missing or invalid, or the API key has been revoked)
- `402` — This request cannot be fulfilled because the workspace does not have an active paid plan
- `404` — The requested resource was not found
- `429` — You have exceeded the rate limit. Please check the rate limit docs for more information.

---

[API](https://skmtc.net/instantly/apis/api-explorer.md) · [All operations](https://skmtc.net/instantly/apis/api-explorer/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/instantly/api-explorer/revisions/378d1e253fe7/schema)
