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 operation

Parameters

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.
Request example
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
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"
  ]
}
See this operation inCLI MCP REST API
TypeScript SDK | Pipeline v2 preview