You need to log in to access your API credentials and start using our APIs. Start with our free trial!
Log In & Start Free TrialPerson Enrichment API
Get complete contact information for any person using just an email, phone number, or social profile URL
API Endpoint
https://api.nyne.ai/person/enrichment
Try the API Playground
Test the API with our interactive playground to make real requests and see live responses.
Launch Person Enrichment PlaygroundOverview
The Person Enrichment API lets you look up detailed information about anyone using just one piece of data you already have, such as their email address, phone number, or LinkedIn URL. In return, you get their full profile including work history, job title, company, additional contact info, and links to their social media accounts.
What You Get
- Full Name & Job Title: Current role and company information
- Contact Details: Verified email addresses and phone numbers
- Work History: Employment history with company names and roles
- Social Profiles: LinkedIn, Twitter, GitHub, and other social media links
- Education: Schools attended and degrees earned
- Location: City, state, and country information
How It Works
Input: Provide an email address, phone number, or any social media profile URL (LinkedIn, Twitter, etc.)
Output: Receive a complete person profile with all available information about that individual
Authentication
All API requests require authentication using your API key and secret. You can authenticate using either HTTP headers (recommended) or query parameters.
X-API-Key: your_api_key_here
X-API-Secret: your_api_secret_here
Rate Limits
API usage is controlled by rate limiting mechanisms to ensure fair usage and system stability:
- Per Minute: 60 requests
- Per Hour: 1000 requests
- Monthly: Varies by plan
Credit Usage
API credits are consumed based on the enrichment type and features enabled:
- Standard Enrichment: 6 credits per successful enrichment (includes full contact info, emails, phone numbers, and professional data)
- Lite Enrichment: 3 credits per enrichment (basic profile data only - name, current company, LinkedIn URL)
- Newsfeed Add-on: 6 additional credits when newsfeed data is requested and found
Credit Efficiency
Credits are only charged when the enrichment returns data. If a person cannot be found, no credits are charged.
POST /person/enrichment
Enrich person data using email, phone, or social media profile.
POST /person/enrichment
Parameters
Email address to enrich
Example: john.doe@example.com
Phone number to enrich
Example: +1-555-123-4567
Social media profile URL (LinkedIn, Twitter, etc.)
Example: https://linkedin.com/in/johndoe
URL to receive results asynchronously
Example: https://yourapp.com/webhook/enrichment
Request social media newsfeed data from specified sources
Valid sources: "linkedin", "twitter", "instagram", "github", "facebook", or "all"
Example: ["linkedin", "twitter"] or ["all"]
Note: Cannot mix "all" with specific sources. Additional charges apply when newsfeed data is found.
Advanced Feature: Enable AI-powered deep search to discover additional social profiles and gather more comprehensive social data
Values: true or false
Default: false (must explicitly set to true to enable)
Example: true
Performance Note: This feature performs extensive searches and can take significantly longer to complete (up to several minutes). Only enable when comprehensive results are needed and extended processing time is acceptable.
Email Validation Feature: Enable strict email validation
Values: true or false
Default: false (must explicitly set to true to enable)
Example: true
📧 Validation Logic: Note: This feature validates emails for the best email to use but may return nothing due to its strictness.
Lite Enrichment Feature: Enable lightweight enrichment mode
Values: true or false
Default: false (must explicitly set to true to enable)
Example: true
Lite Mode: When enabled, performs a minimal enrichment workflow that:
- Disables all advanced features (AI-enhanced search, newsfeed, social profile discovery)
- Performs basic enrichment with minimal data processing
- Returns 5 essential fields:
displayname,firstname,lastname, first organization inorganizationsarray, and LinkedIn URL insocial_profiles.linkedin.url - Uses 3 credits per enrichment (reduced cost compared to standard enrichment)
lite_enrich is enabled, the ai_enhanced_search, newsfeed, and strict_email_check parameters are ignored (emails are not returned in lite mode). This mode is optimized for scenarios where only basic profile information is needed.
Probabilistic Matching Feature: Enable probabilistic matching algorithm
Values: true or false
Default: false (must explicitly set to true to enable)
Example: true
Probabilistic Matching: When enabled, the API uses a probabilistic algorithm to attempt to find matches when standard enrichment methods don't return results. The response will include a
probability field indicating the confidence level:
- "high": Data found through standard enrichment methods (highest confidence)
- "medium": Match found with moderate confidence
- "low": Match found with lower confidence
- "unknown": Probability could not be determined
probability field is only included in the response when probability_score is set to true and enrichment data is found. If no data is found, the probability field will not be included.
Request Example (With Advanced Features)
Request Example (Lite Enrichment)
Basic Request Example (Without AI Enhanced Search)
Response Codes
200 Enrichment completed successfully
400 Invalid request parameters
401 Invalid API credentials
429 Rate limit exceeded
Response Example
Note: All fields in the response are optional and only included when data is available. Fields may be missing if no data was found for that particular field.
GET /person/enrichment
Check the status of an enrichment request.
GET /person/enrichment?request_id=
Parameters
The request ID returned from the enrichment call
Example: 12345
Request Example
Response Codes
200 Status retrieved successfully
400 Invalid request parameters
401 Invalid API credentials
404 Request ID not found
Response Example
Note: All fields in the response are optional and only included when data is available. Fields may be missing if no data was found for that particular field. Organizations must have either name or title (or both) to be included.
Usage Statistics
Usage statistics are now available through the unified usage API at /usage. This endpoint provides comprehensive usage information including credits used, monthly allocation, and breakdown by API type.
Unified Usage API
For detailed usage statistics, please use:
This endpoint shows all your API usage in one place, including enrichment and search requests with proper credit counting.
Response Format
All API responses follow a consistent JSON format:
Field Optionality
Important: All fields in enrichment results are optional and only included when data is available. The API follows a "only include fields we have" principle:
- If a field has no data, it will be omitted from the response (not included as
nullor empty string) - Arrays are only included if they contain at least one item
- Objects are only included if they contain at least one field
- Organizations must have either
nameortitle(or both) to be included - Social profile numeric fields (
followers,connections,following,posts,media_count) are always numbers when present, never strings - The
is_currentfield in date formatted objects is always a boolean (true/false), never a number or string
Success Response
Error Response
Error Codes
| HTTP Code | Error Code | Description |
|---|---|---|
| 400 | missing_parameters | Required parameters are missing |
| 400 | invalid_newsfeed | Invalid newsfeed parameter (must be array with valid sources, cannot mix "all" with specific sources) |
| 401 | invalid_credentials | API key or secret is incorrect |
| 403 | subscription_required | Your subscription does not include access to the requested feature (enrichment or newsfeed) |
| 404 | request_not_found | Request ID not found (for status checks) |
| 429 | rate_limit_exceeded | Rate limit exceeded |
| 500 | internal_error | Internal server error |
Callback System
When you provide a callback_url, the API will send the enrichment results to your endpoint via HTTP POST.
Callback Request Format
Callback Retry Policy
- Maximum 5 retry attempts
- Exponential backoff: 1s, 5s, 15s, 1m, 5m
- 30-second timeout per request
- Your endpoint should return HTTP 2xx for success
best_work_email: Most probable/best work email.best_personal_email: Most probable/best personal email.
Important: Your callback endpoint should respond with HTTP 200-299 to indicate successful receipt. Any other response code will trigger a retry.
Best Practices for Input Selection
The type of input you provide significantly affects match rates. For best results, prioritize inputs in this order:
- LinkedIn URL (Best) — Provides the highest match rate and most accurate results. The LinkedIn profile serves as a reliable anchor for identity resolution.
- Email Address (Good) — Work emails typically perform better than personal emails. Provides solid match rates for most professionals.
- Phone Number (Lowest) — Generally has the lowest match rate. Use only when LinkedIn URL or email is unavailable.
Combining Inputs for Better Results
LinkedIn + Email: Providing both a LinkedIn URL and an email address together yields excellent results. The combination allows for cross-validation and often returns the most complete profile data.
Phone numbers: Unlike LinkedIn + email combinations, adding a phone number to other inputs does not provide additive value. Phone lookups are performed independently and don't enhance matches from LinkedIn or email inputs.
Recommendation: Whenever possible, use a LinkedIn URL as your primary input. If you have multiple identifiers, prefer LinkedIn over email, and email over phone. For the best results, provide both LinkedIn URL and email together.
Note for AI Agents & Automated Systems
The probability_score parameter is intended for human review workflows where a user can evaluate match confidence. AI agents and automated systems should NOT use probability_score — the probabilistic matching results require human judgment to verify accuracy. Automated systems should rely on standard enrichment without this flag to ensure data quality.
Try EZ Tool for a no-code interface | Open Playground