Skip to main content
POST
/
v2
/
epp
LinkedIn Profile Enrichment API
curl --request POST \
  --url https://api.cufinder.io/v2/epp \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "linkedin_url": "<string>"
}
'
import requests

url = "https://api.cufinder.io/v2/epp"

payload = { "linkedin_url": "<string>" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({linkedin_url: '<string>'})
};

fetch('https://api.cufinder.io/v2/epp', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cufinder.io/v2/epp",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'linkedin_url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.cufinder.io/v2/epp"

payload := strings.NewReader("{\n \"linkedin_url\": \"<string>\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.cufinder.io/v2/epp")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"linkedin_url\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.cufinder.io/v2/epp")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"linkedin_url\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body

Common Use Cases

A single profile URL is enough to build a full, usable contact record.
  • Contact Enrichment: Filling out a contact’s title, company, and details from their profile.
  • Recruiting: Building complete candidate records from a LinkedIn URL.
  • Lead Scoring: Qualifying contacts with full professional context.
  • CRM Enrichment: Backfilling contact records sourced from LinkedIn.
  • Personalized Outreach: Tailoring messages with a contact’s real background.
Credit usage is 1 per record found.

Attributes

linkedin_url
string
required
Person LinkedIn profile URL

Response

{
    "status": 1,
    "data": {
        "confidence_level": 93,
        "query": "linkedin.com/in/iain-mckenzie",
        "person": {
            "first_name": "iain",
            "last_name": "mckenzie",
            "full_name": "iain mckenzie",
            "linkedin_url": "linkedin.com/in/iain-mckenzie",
            "summary": null,
            "followers_count": 0,
            "facebook": null,
            "twitter": null,
            "avatar": "media.cufinder.io/person_profile/iain-mckenzie",
            "country": "canada",
            "state": null,
            "city": null,
            "job_title": "engineering",
            "job_title_categories": [],
            "company_name": "stripe",
            "company_linkedin": "linkedin.com/company/stripe",
            "company_website": "https://stripe.com",
            "company_size": "1,001-5,000",
            "company_industry": "technology, information and internet",
            "company_facebook": "facebook.com/stripepayments",
            "company_twitter": "twitter.com/stripe",
            "company_country": "united states",
            "company_state": "california",
            "company_city": "south san francisco"
        },
        "credit_count": 9785
    }
}

LinkedIn Profile Enrichment API Typescript SDK

import { Cufinder } from '@cufinder/cufinder-ts';

// Initialize the client
const client = new Cufinder('your-api-key-here');

// Initialize with more options
const client = new Cufinder('your-api-key-here', { timeout: 60000 });

const result = await client.epp('linkedin.com/in/iain-mckenzie');
console.log(result);

LinkedIn Profile Enrichment API Python SDK

 from cufinder import Cufinder

# Initialize the client
client = Cufinder('your-api-key-here')

# Initialize with more options
client = Cufinder('your-api-key-here', timeout=60)

result = client.epp('linkedin.com/in/iain-mckenzie')
print(result)

LinkedIn Profile Enrichment API Go SDK

package main

import (
    "fmt"
    "log"
    
    "github.com/cufinder/cufinder-go"
)

func main() {
    // Initialize the client
    sdk := cufinder.NewSDK("your-api-key-here")
    
    // Initialize with more options
    sdk := cufinder.NewSDKWithConfig(cufinder.ClientConfig{
        APIKey:     "your-api-key-here",
        BaseURL:    "https://api.cufinder.io/v2",
        Timeout:    60 * time.Second,
        MaxRetries: 3,
    })
}

result, err := sdk.EPP("linkedin.com/in/iain-mckenzie")
if err != nil {
    log.Fatal(err)
}
fmt.Println(result)

LinkedIn Profile Enrichment API Ruby SDK

require 'cufinder_ruby'

# Initialize the client
client = Cufinder::Client.new(api_key: 'your-api-key-here')

# Initialize with more options
client = Cufinder::Client.new(
    api_key: 'your-api-key-here',
    timeout: 60,
    max_retries: 3
)

result = client.epp(linkedin_url: 'linkedin.com/in/iain-mckenzie')
puts result

LinkedIn Profile Enrichment API Rust SDK

use cufinder_rust::CufinderSDK;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Initialize the client
    let sdk = CufinderSDK::new("your-api-key-here".to_string())?;
    
    // Initialize with more options
    let sdk = CufinderSDK::with_config(ClientConfig {
        api_key: "your-api-key-here".to_string(),
        base_url: "https://api.cufinder.io/v2".to_string(),
        timeout: Duration::from_secs(60),
        max_retries: 3,
    })?;
    
    Ok(())
}

let result = sdk.epp("linkedin.com/in/iain-mckenzie").await?;
println!("{:?}", result);

LinkedIn Profile Email Finder

Find an email from a LinkedIn profile.

Person Enrichment

Enrich a person with full contact data.

Person Search

Search 1B+ profiles with combined filters.

Reverse Email Lookup

Identify the person behind an email address.