Skip to main content
POST
Execute Enrichment by Entity ID

Overview

Executes one or more marketplace enrichment integrations on a specific entity to gather additional data from external providers. This endpoint accepts the entity’s internal UUID and supports batch execution of multiple enrichments in a single request. Note: enrichmentGroupRefs applies only to this marketplace execution API (and POST .../enrichment-by-external-id). Automatic or manual entity creation payloads still take explicit enrichment codes only, not group slugs.

Endpoint

Authentication

Requires a valid API key in the Authorization header:

Request Body

string
required
The UUID of the entity to enrich
array<string>
Explicit list of enrichment integration codes to run (same semantics as before). See Integration Provider Codes.You may send integrationCodes only, enrichmentGroupRefs only, or both. If both are sent, the API expands groups to codes, appends integrationCodes, and deduplicates while keeping first-seen order. At least one of integrationCodes or enrichmentGroupRefs must be non-empty.
array<string>
References to enrichment groups defined for your organization under Marketplace (saved list of integration codes). Each item is a group slug or group UUID.Order is preserved: for each ref, the group’s codes are appended in stored order; then any integrationCodes are merged. Expanding groups does not bypass catalog or org rules: each resulting code is still evaluated by the orchestrator (e.g. must be enabled for the org unless a specific fallback path applies, same as when you pass codes directly).
object
Optional additional parameters to pass to the integrations

Response

boolean
Whether the batch enrichment operation completed successfully
string
The UUID of the enriched entity
array
Array of enrichment results, one for each integration codeEach result contains:
  • success (boolean) - Whether this specific enrichment succeeded
  • enrichmentId (string) - UUID of the enrichment execution record
  • integrationCode (string) - The integration code that was executed
  • integrationName (string) - Human-readable name of the integration
  • result (object) - Enrichment data (only if successful)
    • fieldsEnriched (array) - List of entity fields that were enriched
    • dataQuality (object) - Quality metrics
      • completeness (number) - Data completeness score (0-1)
      • confidence (number) - Confidence score (0-1)
    • summary (string) - Human-readable summary
    • enrichmentData (object) - The actual enrichment data
  • executionTime (number) - Execution time in milliseconds
  • costCents (number) - Cost of this enrichment in cents
  • error (object) - Error details (only if failed)
    • code (string) - Stable error code (e.g. ENRICHMENT_TIMEOUT, INTEGRATION_NOT_ENABLED, HTTP_502)
    • message (string) - Technical error message
    • category (string, optional) - UX grouping: configuration, validation, provider_failure, timeout, auth_error, rate_limit, no_data, system
    • retryable (boolean, optional) - Whether retrying shortly may succeed (timeouts, rate limits, HTTP 5xx)
    • statusCode (number, optional) - Upstream provider HTTP status when applicable
number
Total cost of all enrichments in cents
number
Total execution time for all enrichments in milliseconds

Examples

Execute Single Enrichment

Execute Multiple Enrichments (Batch)

Response Example - Successful Enrichment

Response Example - Batch with Mixed Results

Error Responses

404 Entity Not Found

401 Unauthorized

400 Bad Request

Use Cases

KYC Data Enrichment

Enrich a person entity with official government data:

Company Due Diligence

Gather comprehensive company data from multiple sources:

Important Notes

  • Batch Execution: Multiple enrichments are executed in parallel for better performance
  • Cost Tracking: Each enrichment’s cost is tracked individually and summed in totalCostCents
  • Partial Success: The batch can succeed even if some individual enrichments fail
  • Automatic Audit: All enrichments are automatically logged in the audit trail
  • Rules Trigger: Successful enrichments trigger the rules engine with enrichment_completed event
  • Idempotency: Running the same enrichment multiple times may return cached results unless forceRefresh is used