curl --request POST \
--url https://app.pipecorn.com/api/v2/leads/single_enrich \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"first_name": "Mathieu",
"last_name": "Brun-Picard",
"company_name": "Pipecorn",
"linkedin_url": "https://www.linkedin.com/in/mathieu-brun-picard/"
}
'import requests
url = "https://app.pipecorn.com/api/v2/leads/single_enrich"
payload = {
"first_name": "Mathieu",
"last_name": "Brun-Picard",
"company_name": "Pipecorn",
"linkedin_url": "https://www.linkedin.com/in/mathieu-brun-picard/"
}
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({
first_name: 'Mathieu',
last_name: 'Brun-Picard',
company_name: 'Pipecorn',
linkedin_url: 'https://www.linkedin.com/in/mathieu-brun-picard/'
})
};
fetch('https://app.pipecorn.com/api/v2/leads/single_enrich', 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://app.pipecorn.com/api/v2/leads/single_enrich",
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([
'first_name' => 'Mathieu',
'last_name' => 'Brun-Picard',
'company_name' => 'Pipecorn',
'linkedin_url' => 'https://www.linkedin.com/in/mathieu-brun-picard/'
]),
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://app.pipecorn.com/api/v2/leads/single_enrich"
payload := strings.NewReader("{\n \"first_name\": \"Mathieu\",\n \"last_name\": \"Brun-Picard\",\n \"company_name\": \"Pipecorn\",\n \"linkedin_url\": \"https://www.linkedin.com/in/mathieu-brun-picard/\"\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://app.pipecorn.com/api/v2/leads/single_enrich")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"first_name\": \"Mathieu\",\n \"last_name\": \"Brun-Picard\",\n \"company_name\": \"Pipecorn\",\n \"linkedin_url\": \"https://www.linkedin.com/in/mathieu-brun-picard/\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.pipecorn.com/api/v2/leads/single_enrich")
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 \"first_name\": \"Mathieu\",\n \"last_name\": \"Brun-Picard\",\n \"company_name\": \"Pipecorn\",\n \"linkedin_url\": \"https://www.linkedin.com/in/mathieu-brun-picard/\"\n}"
response = http.request(request)
puts response.read_body{
"first_name": "<string>",
"last_name": "<string>",
"title": "<string>",
"linkedin_profile_url": "<string>",
"linkedin_id_url": "<string>",
"regular_urn": "<string>",
"lk_headline": "<string>",
"lk_connections_count": 123,
"years_in_position": 123,
"months_in_position": 123,
"years_in_company": 123,
"months_in_company": 123,
"current_position": {
"pos_id": 2316534272,
"title": "Co-founder & CEO",
"current": true,
"company_name": "Pipecorn",
"name": "Pipecorn",
"company_id": "3735071",
"company_urn": "urn:li:fs_salesCompany:3735071",
"company_domain": "pipecorn.com",
"company_logo": "<string>",
"description": "<string>",
"location": "San Francisco Bay Area",
"employment_type": "<string>",
"started_on": {
"year": 2024,
"month": 1
},
"ended_on": {
"year": 2024,
"month": 1
},
"tenure_at_position": {
"num_years": 2,
"num_months": 0
},
"tenure_at_company": {
"num_years": 2,
"num_months": 0
}
},
"positions": [
{
"pos_id": 2316534272,
"title": "Co-founder & CEO",
"current": true,
"company_name": "Pipecorn",
"name": "Pipecorn",
"company_id": "3735071",
"company_urn": "urn:li:fs_salesCompany:3735071",
"company_domain": "pipecorn.com",
"company_logo": "<string>",
"description": "<string>",
"location": "San Francisco Bay Area",
"employment_type": "<string>",
"started_on": {
"year": 2024,
"month": 1
},
"ended_on": {
"year": 2024,
"month": 1
},
"tenure_at_position": {
"num_years": 2,
"num_months": 0
},
"tenure_at_company": {
"num_years": 2,
"num_months": 0
}
}
],
"title_description": "<string>",
"summary": "<string>",
"full_name": "<string>",
"sales_navigator_profile_url": "<string>",
"linkedin_url": "https://www.linkedin.com/in/mathieu-brun-picard",
"location": "San Francisco Bay Area",
"num_of_followers": 7880,
"initials": "MB",
"previous_position": {
"pos_id": 2316534272,
"title": "Co-founder & CEO",
"current": true,
"company_name": "Pipecorn",
"name": "Pipecorn",
"company_id": "3735071",
"company_urn": "urn:li:fs_salesCompany:3735071",
"company_domain": "pipecorn.com",
"company_logo": "<string>",
"description": "<string>",
"location": "San Francisco Bay Area",
"employment_type": "<string>",
"started_on": {
"year": 2024,
"month": 1
},
"ended_on": {
"year": 2024,
"month": 1
},
"tenure_at_position": {
"num_years": 2,
"num_months": 0
},
"tenure_at_company": {
"num_years": 2,
"num_months": 0
}
},
"urn": "<string>",
"start_date_job": "2023-12-25",
"start_date_company": "2023-12-25"
}{
"error": 123,
"message": "<string>"
}{
"error": "Not enough enrichment credits left",
"code": "insufficient_credits",
"top_up_url": "https://app.pipecorn.com/settings/subscriptions/credits"
}{
"error": "You have reached your weekly enrichment credit limit for this workspace",
"code": "workspace_limit_exceeded"
}Enrich people
Enrich a single person with profile and firmographic data.
Credits: 1 credit per enrichment. You are only charged when a person is actually resolved — a lookup that matches nothing costs nothing.
Identify the person either by linkedin_url, or by first_name + last_name + company_name.
This endpoint returns the profile only. Email and phone come from waterfall enrichment and are never part of this response.
curl --request POST \
--url https://app.pipecorn.com/api/v2/leads/single_enrich \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"first_name": "Mathieu",
"last_name": "Brun-Picard",
"company_name": "Pipecorn",
"linkedin_url": "https://www.linkedin.com/in/mathieu-brun-picard/"
}
'import requests
url = "https://app.pipecorn.com/api/v2/leads/single_enrich"
payload = {
"first_name": "Mathieu",
"last_name": "Brun-Picard",
"company_name": "Pipecorn",
"linkedin_url": "https://www.linkedin.com/in/mathieu-brun-picard/"
}
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({
first_name: 'Mathieu',
last_name: 'Brun-Picard',
company_name: 'Pipecorn',
linkedin_url: 'https://www.linkedin.com/in/mathieu-brun-picard/'
})
};
fetch('https://app.pipecorn.com/api/v2/leads/single_enrich', 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://app.pipecorn.com/api/v2/leads/single_enrich",
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([
'first_name' => 'Mathieu',
'last_name' => 'Brun-Picard',
'company_name' => 'Pipecorn',
'linkedin_url' => 'https://www.linkedin.com/in/mathieu-brun-picard/'
]),
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://app.pipecorn.com/api/v2/leads/single_enrich"
payload := strings.NewReader("{\n \"first_name\": \"Mathieu\",\n \"last_name\": \"Brun-Picard\",\n \"company_name\": \"Pipecorn\",\n \"linkedin_url\": \"https://www.linkedin.com/in/mathieu-brun-picard/\"\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://app.pipecorn.com/api/v2/leads/single_enrich")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"first_name\": \"Mathieu\",\n \"last_name\": \"Brun-Picard\",\n \"company_name\": \"Pipecorn\",\n \"linkedin_url\": \"https://www.linkedin.com/in/mathieu-brun-picard/\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.pipecorn.com/api/v2/leads/single_enrich")
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 \"first_name\": \"Mathieu\",\n \"last_name\": \"Brun-Picard\",\n \"company_name\": \"Pipecorn\",\n \"linkedin_url\": \"https://www.linkedin.com/in/mathieu-brun-picard/\"\n}"
response = http.request(request)
puts response.read_body{
"first_name": "<string>",
"last_name": "<string>",
"title": "<string>",
"linkedin_profile_url": "<string>",
"linkedin_id_url": "<string>",
"regular_urn": "<string>",
"lk_headline": "<string>",
"lk_connections_count": 123,
"years_in_position": 123,
"months_in_position": 123,
"years_in_company": 123,
"months_in_company": 123,
"current_position": {
"pos_id": 2316534272,
"title": "Co-founder & CEO",
"current": true,
"company_name": "Pipecorn",
"name": "Pipecorn",
"company_id": "3735071",
"company_urn": "urn:li:fs_salesCompany:3735071",
"company_domain": "pipecorn.com",
"company_logo": "<string>",
"description": "<string>",
"location": "San Francisco Bay Area",
"employment_type": "<string>",
"started_on": {
"year": 2024,
"month": 1
},
"ended_on": {
"year": 2024,
"month": 1
},
"tenure_at_position": {
"num_years": 2,
"num_months": 0
},
"tenure_at_company": {
"num_years": 2,
"num_months": 0
}
},
"positions": [
{
"pos_id": 2316534272,
"title": "Co-founder & CEO",
"current": true,
"company_name": "Pipecorn",
"name": "Pipecorn",
"company_id": "3735071",
"company_urn": "urn:li:fs_salesCompany:3735071",
"company_domain": "pipecorn.com",
"company_logo": "<string>",
"description": "<string>",
"location": "San Francisco Bay Area",
"employment_type": "<string>",
"started_on": {
"year": 2024,
"month": 1
},
"ended_on": {
"year": 2024,
"month": 1
},
"tenure_at_position": {
"num_years": 2,
"num_months": 0
},
"tenure_at_company": {
"num_years": 2,
"num_months": 0
}
}
],
"title_description": "<string>",
"summary": "<string>",
"full_name": "<string>",
"sales_navigator_profile_url": "<string>",
"linkedin_url": "https://www.linkedin.com/in/mathieu-brun-picard",
"location": "San Francisco Bay Area",
"num_of_followers": 7880,
"initials": "MB",
"previous_position": {
"pos_id": 2316534272,
"title": "Co-founder & CEO",
"current": true,
"company_name": "Pipecorn",
"name": "Pipecorn",
"company_id": "3735071",
"company_urn": "urn:li:fs_salesCompany:3735071",
"company_domain": "pipecorn.com",
"company_logo": "<string>",
"description": "<string>",
"location": "San Francisco Bay Area",
"employment_type": "<string>",
"started_on": {
"year": 2024,
"month": 1
},
"ended_on": {
"year": 2024,
"month": 1
},
"tenure_at_position": {
"num_years": 2,
"num_months": 0
},
"tenure_at_company": {
"num_years": 2,
"num_months": 0
}
},
"urn": "<string>",
"start_date_job": "2023-12-25",
"start_date_company": "2023-12-25"
}{
"error": 123,
"message": "<string>"
}{
"error": "Not enough enrichment credits left",
"code": "insufficient_credits",
"top_up_url": "https://app.pipecorn.com/settings/subscriptions/credits"
}{
"error": "You have reached your weekly enrichment credit limit for this workspace",
"code": "workspace_limit_exceeded"
}Authorizations
Your API key
Body
Response
Successfully enriched lead
Enriched person. Any field Pipecorn's people database does not hold for this person is returned as null.
First name of the lead
Last name of the lead
Current job title
URL to the lead's LinkedIn profile
Internal-URN LinkedIn profile URL, derived from regular_urn (https://www.linkedin.com/in/<ACo…>). Stable across vanity-URL changes.
LinkedIn regular URN identifier
LinkedIn headline
Number of LinkedIn connections
Number of years in current position
Number of months in current position
Number of years in current company
Number of months in current company
The current role. Also the first entry of positions, where it carries current: true.
Show child attributes
Show child attributes
The person's role history.
Show child attributes
Show child attributes
Description of the current title/role
Profile summary
Full name of the lead
Sales Navigator profile URL, derived from the person's Sales Navigator (ACw…) key when the people database holds one
Public LinkedIn profile URL, falling back to the internal-URN URL
"https://www.linkedin.com/in/mathieu-brun-picard"
Where the person is based
"San Francisco Bay Area"
LinkedIn follower count
7880
Initials of the person
"MB"
The role held before the current one.
Show child attributes
Show child attributes
LinkedIn Sales Navigator URN identifier
Start date in the current position. Pipecorn's people database holds a single current-role start date and no separate company start, so this matches start_date_company.
Start date at the current company. See start_date_job.
Was this page helpful?