Create Field
POST /fields
Create a new custom field (column) for contacts or companies.
Set list_id to make the field specific to a single list, or omit it to
create a global field available across every list in the org.
Optionally pass an enrichment block to provision a companion waterfall
pipeline in the same request. Without this block the column exists but
has no enrichment plan, so POST /enrichment/waterfall/enrich later
returns 422 (waterfall_config_missing).
Authorizations
Parameters
Header Parameters
Request Body required
Request body for creating a custom field (column).
object
Column data type. Currently only ‘text’ is supported; additional types (numeric, date, boolean, select) may be added in future versions.
Optional enrichment-pipeline block attached at column-create time.
When supplied, POST /fields creates a companion enrichment_configs
row in the same request so the new column is immediately runnable via
POST /enrichment/waterfall/enrich. Without this block the column
exists but has no enrichment plan — calling /waterfall/enrich on it
returns 422 (waterfall_config_missing).
Currently only type='waterfall' is supported; AI / formula
enrichment will follow once the rest of the agent surface lands.
object
Email verification config attached to a waterfall pipeline.
Mirrors the canonical EmailVerificationConfigDto in
enrichment/interfaces/fastapi/waterfall_dtos.py so the dev-API and the
UI persist an identical settings shape (the CF worker reads settings. email_verification.* regardless of which surface saved the pipeline).
object
Treat catch-all responses as valid (domains that accept any address).
Enable post-enrichment email verification
Verification provider. Charges credits when use_system_credentials=True.
Use graph8-managed API keys (charges credits). False = use org’s BYOK keys.
Verification statuses to accept as valid. Typical: [‘valid’] or [‘valid’,‘catch-all’].
If true, skip rows where the target field is already populated.
Single step in a caller-supplied waterfall sequence.
Mirrors WaterfallStepDto in enrichment/interfaces/fastapi/waterfall_dtos.py.
Persisted verbatim into enrichment_configs.config.steps[] so the CF
worker can resolve provider, action and credentials the same way
UI-saved pipelines do.
object
Provider action: lookup_person, find_email, enrich_person, …
Provider-specific options (e.g. apollo reveal_phone_numbers=true).
object
Maps provider input names to graph8 column identifiers (CONTACT_*).
object
True = use graph8-managed credentials + charge credits. False = use org BYOK.
0-indexed execution order.
Optional output field remap (deprecated — prefer output_field).
object
Provider name: graph8, hunter, prospeo, dropcontact, apollo, …
Pipeline kind. Only ‘waterfall’ is supported today.
Target entity: ‘contacts’ or ‘companies’
Column title, e.g. ‘Job Level’
Responses
201
Successful Response
object
object
Echo of the companion enrichment config created by enrichment block.
422
Validation Error