# Crustdata Person Enrichment by LinkedIn URL or Business Email

> Crustdata Person Enrichment by LinkedIn URL or Business Email is a paid API for AI agents from crustdata.withzero.xyz, paid per call via MPP, $0.1/call, status unknown (last checked 2026-09-15).

Enriches person profiles using LinkedIn profile URLs or business emails, returning detailed professional data including contact and developer fields via the Crustdata dataset.

## Facts

- Endpoint: POST https://crustdata.withzero.xyz/api/v1/person/enrich
- Price: $0.1/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Provider: crustdata.withzero.xyz
- Website: https://crustdata.withzero.xyz
- Canonical page: https://www.zero.xyz/c/crustdata-withzero-xyz-crustdata-person-enrichment-by-linkedin-url-or-f7cfa5f9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_7NrH32lvb7indZUWB49pp

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability crustdata-withzero-xyz-crustdata-person-enrichment-by-linkedin-url-or-f7cfa5f9 -d '<json body>'
```

Example prompt: Enrich these LinkedIn profiles for me and pull back their name, current title, and current company: https://www.linkedin.com/in/john-doe and https://www.linkedin.com/in/jane-smith — also include contact fields if available.

## When to prefer this

Use this endpoint when you have LinkedIn profile URLs or business emails and need structured professional profile data (title, company, contact info) for GTM research, sales prospecting, or lead enrichment. Prefer over live-data routes when cached Crustdata data is sufficient and latency/cost needs to be minimized. Use the live-data person profile fetch route instead when real-time accuracy is critical for high-value targets.

## Known failure modes

- No match found for the supplied LinkedIn URL or email — upstream Crustdata returns empty results, settles $0
- Invalid LinkedIn URL format causes request rejection
- Business email does not meet minimum similarity score threshold — match excluded
- Batch exceeds 25 identifiers limit — request rejected with validation error
- Upstream Crustdata service error — settles $0
- Missing both professional_network_profile_urls and business_emails — request invalid

## How this service works

Core workflow route: enrich up to 25 people per call by LinkedIn/professional-network profile URL or business email. For large lists, chunk identifiers into groups of 25 so each group uses one payment instead of one payment per person. Request narrow dot-paths when possible; use raw current_title as the primary scoring signal because normalized_title is beta, and note that some fields require field-level permission on the configured Crustdata key. Default pricing is $0.10 per Crustdata credit with a $0.01 minimum successful-call settlement. Upstream Crustdata errors settle $0. DB profile enrich starts at one credit by profile URL or two credits by business-email reverse lookup; contact and developer field bundles settle according to Crustdata's documented add-ons up to seven credits per profile.

## Output

Returns the raw Crustdata person enrichment payload containing requested profile fields (e.g. name, current title, current company, contact info, developer fields) for each supplied LinkedIn URL or business email, along with a billing object showing API credits consumed, price per credit, and USDC micro-units settled.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "example": {
  "fields": [
   "basic_profile.name",
   "basic_profile.current_title",
   "social_handles.professional_network_identifier.profile_url"
  ],
  "professional_network_profile_urls": [
   "https://www.linkedin.com/in/example"
  ]
 },
 "properties": {
  "fields": {
   "type": "array",
   "items": {
    "type": "string",
    "minLength": 1
   },
   "example": [
    "basic_profile.name",
    "basic_profile.current_title",
    "social_handles.professional_network_identifier.profile_url"
   ],
   "description": "Provider-native person sections or dot-paths to include. Some documented fields require field-level permission on the configured Crustdata key; unsupported or unentitled fields return an upstream error and settle $0."
  },
  "business_emails": {
   "type": "array",
   "items": {
    "type": "string",
    "minLength": 1
   },
   "example": [
    "founder@example.com"
   ],
   "maxItems": 25,
   "minItems": 1,
   "description": "Business emails for reverse lookup. Max 25."
  },
  "min_similarity_score": {
   "type": "number",
   "example": 0.8,
   "maximum": 1,
   "minimum": 0,
   "description": "Minimum confidence threshold for business-email reverse lookup matches."
  },
  "professional_network_profile_urls": {
   "type": "array",
   "items": {
    "type": "string",
    "minLength": 1
   },
   "example": [
    "https://www.linkedin.com/in/example"
   ],
   "maxItems": 25,
   "minItems": 1,
   "description": "Person profile URLs to enrich. Max 25."
  }
 },
 "additionalProperties": false
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "data"
 ],
 "properties": {
  "data": {
   "description": "Raw JSON response returned by Crustdata."
  },
  "billing": {
   "type": "object",
   "required": [
    "apiCredits",
    "minimumCallUsdcMicro",
    "pricePerCreditUsdcMicro",
    "settledUsdcMicro"
   ],
   "properties": {
    "apiCredits": {
     "type": "number",
     "example": 0.06,
     "description": "Estimated Crustdata API credits charged for this request."
    },
    "settledUsdcMicro": {
     "type": "string",
     "example": "10000",
     "description": "USDC micro-units settled for this request."
    },
    "minimumCallUsdcMicro": {
     "type": "string",
     "example": "10000",
     "description": "Configured minimum successful-call settlement in USDC micro-units."
    },
    "pricePerCreditUsdcMicro": {
     "type": "string",
     "example": "100000",
     "description": "Configured USDC micro-units charged per Crustdata API credit."
    }
   },
   "additionalProperties": false
  }
 },
 "additionalProperties": false
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/crustdata-withzero-xyz-crustdata-person-enrichment-by-linkedin-url-or-f7cfa5f9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from crustdata.withzero.xyz](https://www.zero.xyz/host/crustdata.withzero.xyz/llms.txt)
