Enrichment Tables / TypeScript SDK
Add provider enrichment column
Add a provider-backed enrichment column from the canonical enrichment endpoint registry. Resolves the workspace BYOK credential, creates the parent enrichment column, and creates child output columns for mapped response fields.
pipeline.addProviderEnrichmentColumnDeterministic operationParameters
workspaceIdOptional · string- Optional workspace ID or slug. Required when this credential can access multiple workspaces and no workspace was configured on the client.
tableIdRequired · string- See the input schema for this field.
providerIdRequired · string- Provider id from list-enrichment-providers, for example ai_ark, crustdata, fullenrich, bettercontact, wiza, signalbase, adyntel, or prospeo.
endpointIdRequired · string- Endpoint id from list-enrichment-providers, for example wiza-reveal-contact, signalbase-funding-signals, or adyntel-linkedin-ads.
nameOptional · string- Optional column label. Defaults to the endpoint name.
columnIdOptional · string- Optional stable parent column id.
credentialIdOptional · string- Optional workspace credential id. If omitted, the first valid credential for the provider is used.
inputMappingsRequired · object- Endpoint input key to table expression, for example { "linkedin_url": "{{linkedin_url}}" }.
outputFieldsOptional · array- See the input schema for this field.
autoRunOptional · boolean- Whether the column should auto-run when dependencies update. Defaults true.
conditionOptional · string- Optional run condition using table expressions.
await pipeline.addProviderEnrichmentColumn({
"tableId": "00000000-0000-4000-8000-000000000000",
"providerId": "00000000-0000-4000-8000-000000000000",
"endpointId": "00000000-0000-4000-8000-000000000000",
"inputMappings": {}
})Full input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"minLength": 1,
"description": "Optional workspace ID or slug. Required when this credential can access multiple workspaces and no workspace was configured on the client."
},
"tableId": {
"type": "string"
},
"providerId": {
"type": "string",
"description": "Provider id from list-enrichment-providers, for example ai_ark, crustdata, fullenrich, bettercontact, wiza, signalbase, adyntel, or prospeo."
},
"endpointId": {
"type": "string",
"description": "Endpoint id from list-enrichment-providers, for example wiza-reveal-contact, signalbase-funding-signals, or adyntel-linkedin-ads."
},
"name": {
"type": "string",
"description": "Optional column label. Defaults to the endpoint name."
},
"columnId": {
"type": "string",
"description": "Optional stable parent column id."
},
"credentialId": {
"type": "string",
"description": "Optional workspace credential id. If omitted, the first valid credential for the provider is used."
},
"inputMappings": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Endpoint input key to table expression, for example { \"linkedin_url\": \"{{linkedin_url}}\" }."
},
"outputFields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source": {
"type": "string",
"description": "Response field path from the endpoint."
},
"target": {
"type": "string",
"description": "Local machine field name to store on the parent result."
},
"label": {
"type": "string",
"description": "Child column label."
},
"type": {
"type": "string",
"enum": [
"text",
"email",
"url",
"number",
"boolean"
]
}
},
"required": [
"source"
]
}
},
"autoRun": {
"type": "boolean",
"description": "Whether the column should auto-run when dependencies update. Defaults true."
},
"condition": {
"type": "string",
"description": "Optional run condition using table expressions."
}
},
"required": [
"tableId",
"providerId",
"endpointId",
"inputMappings"
]
}