curl "https://idle.api.datacircle.dev/api/v1/profile?profileUrlOrUrn=https://www.linkedin.com/in/williamhgates" \
-H "Authorization: Token $DATACIRCLE_API_KEY" \
-H "X-Data-Provider: fetchin"import os
import requests
response = requests.get(
"https://idle.api.datacircle.dev/api/v1/profile",
headers={"Authorization": f"Token {os.environ['DATACIRCLE_API_KEY']}", "X-Data-Provider": "fetchin"},
params={'profileUrlOrUrn': 'https://www.linkedin.com/in/williamhgates'},
)
print(response.json())const options = {
method: 'GET',
headers: {'X-Data-Provider': '<x-data-provider>', Authorization: 'Bearer <token>'}
};
fetch('https://idle.api.datacircle.dev/api/v1/profile', 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://idle.api.datacircle.dev/api/v1/profile",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"X-Data-Provider: <x-data-provider>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://idle.api.datacircle.dev/api/v1/profile"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Data-Provider", "<x-data-provider>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://idle.api.datacircle.dev/api/v1/profile")
.header("X-Data-Provider", "<x-data-provider>")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://idle.api.datacircle.dev/api/v1/profile")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Data-Provider"] = '<x-data-provider>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "urn:li:fsd_profile:ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc",
"firstName": "Bill",
"lastName": "Gates",
"title": "Chair, Gates Foundation and Founder, Breakthrough Energy",
"titleLocalized": {
"en_US": "Chair, Gates Foundation and Founder, Breakthrough Energy"
},
"profilePictureUrl": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_800_800/B56ZRi8g.aGsAc-/0/1736826818808?e=1793232000&v=beta&t=h84Ee-2NucG0tJjTkgWGFHOtQD4ICX0mrcRqdTWoQzM",
"profilePictureUrls": [
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_100_100/B56ZRi8g.aGsAU-/0/1736826818802?e=1793232000&v=beta&t=O5RD8NYeOrgjqRdJ-_v4kuY6hTWP4QwmUTl48C_MlyQ",
"width": 100,
"height": 100
},
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_200_200/B56ZRi8g.aGsAY-/0/1736826818802?e=1793232000&v=beta&t=17jBHjv57ltykRl_wZjd5omtcoCNIeHlQmIuiDqfQdA",
"width": 200,
"height": 200
},
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_400_400/B56ZRi8g.aGsAg-/0/1736826818802?e=1793232000&v=beta&t=6li-zoqlynH-0YQM1GDzab3uTl-m0TiupU2rYUExUl4",
"width": 400,
"height": 400
},
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_800_800/B56ZRi8g.aGsAc-/0/1736826818808?e=1793232000&v=beta&t=h84Ee-2NucG0tJjTkgWGFHOtQD4ICX0mrcRqdTWoQzM",
"width": 800,
"height": 800
}
],
"location": "Seattle, Washington, United States",
"coverImageUrl": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_350_1400/B56ZcytR5SGsAg-/0/1748902420393?e=1793232000&v=beta&t=PurNZciepthIMLCl9A59bR0oQS7vFuaZzm97H6JF1_8",
"coverImageUrls": [
{
"url": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_200_800/B56ZcytR5SGsAc-/0/1748902420393?e=1793232000&v=beta&t=87huvcabUzbzKmLt58lcmTZuQpW6175CreT6Qw9m7KQ",
"width": 800,
"height": 200
},
{
"url": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_350_1400/B56ZcytR5SGsAg-/0/1748902420393?e=1793232000&v=beta&t=PurNZciepthIMLCl9A59bR0oQS7vFuaZzm97H6JF1_8",
"width": 1400,
"height": 350
}
],
"publicIdentifier": "williamhgates",
"url": "https://www.linkedin.com/in/williamhgates/",
"profileId": "ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc",
"geoLocationName": "Seattle, Washington, United States",
"geoCountryName": "United States",
"connectionType": "OUT_OF_NETWORK",
"creator": true,
"influencer": true,
"premium": true,
"isVerified": true,
"geoUrn": "urn:li:fsd_geo:104116203",
"creatorInfo": {
"hashTags": [
"#books",
"#climatechange",
"#healthcare",
"#innovation",
"#sustainability"
],
"website": "https://gatesnot.es/AI"
},
"memberId": "251749025",
"openToWork": false,
"hiring": false,
"inRemembrance": false,
"topVoice": true,
"followerCount": 40715903,
"connectionsCount": 8,
"countryCode": "US",
"jobTitle": "Co-chair",
"companyName": "Gates Foundation",
"companyPublicId": "gates-foundation",
"companyLinkedinUrl": "https://www.linkedin.com/company/gates-foundation/",
"currentPosition": {
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,392598211)",
"name": "Gates Foundation",
"companyId": "8736",
"companyUrn": "urn:li:fsd_company:8736",
"publicIdentifier": "gates-foundation",
"url": "https://www.linkedin.com/company/gates-foundation/",
"title": "Co-chair"
},
"currentSchool": null,
"openProfile": false,
"description": "Chair of the Gates Foundation. Founder of Breakthrough Energy. Co-founder of Microsoft. Voracious reader. Avid traveler. Active blogger.",
"languages": [],
"certifications": [],
"volunteerCauses": [],
"skills": [],
"experiences": [
{
"name": "Gates Foundation",
"jobTitle": "Co-chair",
"description": "",
"dateRange": "2000 - Present",
"current": true,
"ongoing": true,
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,392598211)",
"positionGroupUrn": "urn:li:fsd_profilePositionGroup:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,f0723c2e436a6bda4ab6fb5a97d650cfe30b9990)",
"positionGroupId": "f0723c2e436a6bda4ab6fb5a97d650cfe30b9990",
"timePeriod": {
"startDate": {
"year": 2000
},
"endDate": null
},
"totalDuration": "26 yrs 10 mos",
"company": {
"url": "https://www.linkedin.com/company/gates-foundation/",
"name": "Gates Foundation",
"logo": "https://media.licdn.com/dms/image/v2/D560BAQEgMqqFTd40Tg/company-logo_400_400/company-logo_400_400/0/1736784969376/bill__melinda_gates_foundation_logo?e=1793232000&v=beta&t=-3Or6OsbYEKsjb0OeDOnM7sqQbLZt5c7mY8psW87kHE",
"companyId": "8736",
"urn": "urn:li:fsd_company:8736"
}
},
{
"name": "Breakthrough Energy",
"jobTitle": "Founder",
"description": "",
"dateRange": "2015 - Present",
"current": false,
"ongoing": true,
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,1836104012)",
"positionGroupUrn": "urn:li:fsd_profilePositionGroup:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,e259382720cb8b581205a34c2c592d712a9091fd)",
"positionGroupId": "e259382720cb8b581205a34c2c592d712a9091fd",
"timePeriod": {
"startDate": {
"year": 2015
},
"endDate": null
},
"totalDuration": "11 yrs 10 mos",
"company": {
"url": "https://www.linkedin.com/company/breakthrough-energy/",
"name": "Breakthrough Energy",
"logo": "https://media.licdn.com/dms/image/v2/D560BAQFRMYiQN7-2kA/company-logo_400_400/B56ZoI4SGPI0AY-/0/1761085563539/breakthrough_energy_logo?e=1793232000&v=beta&t=FBopuNvB5P3C3RAvxFakKw8SfEvJkHDMC8Cy1ivv3a4",
"companyId": "19141006",
"urn": "urn:li:fsd_company:19141006"
}
},
{
"name": "Microsoft",
"jobTitle": "Co-founder",
"description": "",
"dateRange": "1975 - Present",
"current": false,
"ongoing": true,
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,392599749)",
"positionGroupUrn": "urn:li:fsd_profilePositionGroup:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,379b0fee813e578bb10050b852dc16ba755ef821)",
"positionGroupId": "379b0fee813e578bb10050b852dc16ba755ef821",
"timePeriod": {
"startDate": {
"year": 1975
},
"endDate": null
},
"totalDuration": "51 yrs 10 mos",
"company": {
"url": "https://www.linkedin.com/company/microsoft/",
"name": "Microsoft",
"logo": "https://media.licdn.com/dms/image/v2/D560BAQH32RJQCl3dDQ/company-logo_400_400/B56ZYQ0mrGGoAc-/0/1744038948046/microsoft_logo?e=1793232000&v=beta&t=-G3KTWbySWNRDLM-7_sSgY3V09nqPA0Iswoptltp6cs",
"companyId": "1035",
"urn": "urn:li:fsd_company:1035"
}
}
],
"educations": [
{
"name": "Harvard University",
"description": "",
"dateRange": "1973 - 1975",
"current": false,
"ongoing": false,
"educationUrn": "urn:li:fsd_profileEducation:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,157656829)",
"schoolLogo": "https://media.licdn.com/dms/image/v2/C4E0BAQF5t62bcL0e9g/company-logo_400_400/company-logo_400_400/0/1631318058235?e=1793232000&v=beta&t=tG7qGly5_Uq33s6x0-9U8QrenZr2NTdEdR8ydLfb8II",
"schoolUrl": "https://www.linkedin.com/school/harvard-university/",
"timePeriod": {
"startDate": {
"year": 1973
},
"endDate": {
"year": 1975
}
}
},
{
"name": "Lakeside School",
"description": "",
"dateRange": "",
"current": false,
"ongoing": false,
"educationUrn": "urn:li:fsd_profileEducation:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,157676006)",
"schoolLogo": "https://media.licdn.com/dms/image/v2/D560BAQGFmOQmzpxg9A/company-logo_400_400/company-logo_400_400/0/1683732883164/lakeside_school_logo?e=1793232000&v=beta&t=LuT1qFGoma5gJltCnUOlsIthuPoLj_fhfuT1SwUjyzM",
"schoolUrl": "https://www.linkedin.com/school/lakeside-school/"
}
],
"joinDate": {
"month": 5,
"year": 2013
},
"websites": [
{
"url": "https://gatesnot.es/sourcecode-li",
"category": "BLOG"
}
],
"recommendations": [],
"recommendationsGiven": [],
"testScores": [],
"publications": [],
"projects": [],
"patents": [],
"honors": [],
"organizations": [],
"courses": [],
"volunteerExperiences": [],
"industry": "Philanthropy",
"industryUrn": "urn:li:fsd_industry:131",
"primaryLocale": "en_US",
"supportedLocales": [
"en_US"
],
"descriptionLocalized": {
"en_US": "Chair of the Gates Foundation. Founder of Breakthrough Energy. Co-founder of Microsoft. Voracious reader. Avid traveler. Active blogger."
},
"entityType": "Person",
"datacircle_meta": {
"provider": "fetchin",
"cost_usd": 0.001485,
"balance_usd": 20.5
}
}{
"error": "<string>",
"code": "MISSING_PARAMETER",
"datacircle_meta": {
"provider": "up2data",
"cost_usd": 123,
"balance_usd": 123
}
}{
"error": "<string>"
}{
"error": "<string>",
"balance_usd": 123
}{
"error": "LinkedIn profile not found",
"code": "PROFILE_NOT_FOUND",
"datacircle_meta": {
"provider": "fetchin",
"cost_usd": 0.001485,
"balance_usd": 20.5
}
}{
"error": "<string>",
"code": "MISSING_PARAMETER",
"datacircle_meta": {
"provider": "up2data",
"cost_usd": 123,
"balance_usd": 123
}
}{
"error": "<string>",
"balance_usd": 123
}Get one LinkedIn profile
Fetchin’s own request (https://api.fetchin.io/api/v1/profile), sent to idle.api.datacircle.dev with your Datacircle key in Authorization and X-Data-Provider: fetchin. Nothing else changes. $0.001485 per profile, found or not (what Fetchin’s credits cost us, no markup).
curl "https://idle.api.datacircle.dev/api/v1/profile?profileUrlOrUrn=https://www.linkedin.com/in/williamhgates" \
-H "Authorization: Token $DATACIRCLE_API_KEY" \
-H "X-Data-Provider: fetchin"import os
import requests
response = requests.get(
"https://idle.api.datacircle.dev/api/v1/profile",
headers={"Authorization": f"Token {os.environ['DATACIRCLE_API_KEY']}", "X-Data-Provider": "fetchin"},
params={'profileUrlOrUrn': 'https://www.linkedin.com/in/williamhgates'},
)
print(response.json())const options = {
method: 'GET',
headers: {'X-Data-Provider': '<x-data-provider>', Authorization: 'Bearer <token>'}
};
fetch('https://idle.api.datacircle.dev/api/v1/profile', 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://idle.api.datacircle.dev/api/v1/profile",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"X-Data-Provider: <x-data-provider>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://idle.api.datacircle.dev/api/v1/profile"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Data-Provider", "<x-data-provider>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://idle.api.datacircle.dev/api/v1/profile")
.header("X-Data-Provider", "<x-data-provider>")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://idle.api.datacircle.dev/api/v1/profile")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Data-Provider"] = '<x-data-provider>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "urn:li:fsd_profile:ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc",
"firstName": "Bill",
"lastName": "Gates",
"title": "Chair, Gates Foundation and Founder, Breakthrough Energy",
"titleLocalized": {
"en_US": "Chair, Gates Foundation and Founder, Breakthrough Energy"
},
"profilePictureUrl": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_800_800/B56ZRi8g.aGsAc-/0/1736826818808?e=1793232000&v=beta&t=h84Ee-2NucG0tJjTkgWGFHOtQD4ICX0mrcRqdTWoQzM",
"profilePictureUrls": [
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_100_100/B56ZRi8g.aGsAU-/0/1736826818802?e=1793232000&v=beta&t=O5RD8NYeOrgjqRdJ-_v4kuY6hTWP4QwmUTl48C_MlyQ",
"width": 100,
"height": 100
},
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_200_200/B56ZRi8g.aGsAY-/0/1736826818802?e=1793232000&v=beta&t=17jBHjv57ltykRl_wZjd5omtcoCNIeHlQmIuiDqfQdA",
"width": 200,
"height": 200
},
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_400_400/B56ZRi8g.aGsAg-/0/1736826818802?e=1793232000&v=beta&t=6li-zoqlynH-0YQM1GDzab3uTl-m0TiupU2rYUExUl4",
"width": 400,
"height": 400
},
{
"url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_800_800/B56ZRi8g.aGsAc-/0/1736826818808?e=1793232000&v=beta&t=h84Ee-2NucG0tJjTkgWGFHOtQD4ICX0mrcRqdTWoQzM",
"width": 800,
"height": 800
}
],
"location": "Seattle, Washington, United States",
"coverImageUrl": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_350_1400/B56ZcytR5SGsAg-/0/1748902420393?e=1793232000&v=beta&t=PurNZciepthIMLCl9A59bR0oQS7vFuaZzm97H6JF1_8",
"coverImageUrls": [
{
"url": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_200_800/B56ZcytR5SGsAc-/0/1748902420393?e=1793232000&v=beta&t=87huvcabUzbzKmLt58lcmTZuQpW6175CreT6Qw9m7KQ",
"width": 800,
"height": 200
},
{
"url": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_350_1400/B56ZcytR5SGsAg-/0/1748902420393?e=1793232000&v=beta&t=PurNZciepthIMLCl9A59bR0oQS7vFuaZzm97H6JF1_8",
"width": 1400,
"height": 350
}
],
"publicIdentifier": "williamhgates",
"url": "https://www.linkedin.com/in/williamhgates/",
"profileId": "ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc",
"geoLocationName": "Seattle, Washington, United States",
"geoCountryName": "United States",
"connectionType": "OUT_OF_NETWORK",
"creator": true,
"influencer": true,
"premium": true,
"isVerified": true,
"geoUrn": "urn:li:fsd_geo:104116203",
"creatorInfo": {
"hashTags": [
"#books",
"#climatechange",
"#healthcare",
"#innovation",
"#sustainability"
],
"website": "https://gatesnot.es/AI"
},
"memberId": "251749025",
"openToWork": false,
"hiring": false,
"inRemembrance": false,
"topVoice": true,
"followerCount": 40715903,
"connectionsCount": 8,
"countryCode": "US",
"jobTitle": "Co-chair",
"companyName": "Gates Foundation",
"companyPublicId": "gates-foundation",
"companyLinkedinUrl": "https://www.linkedin.com/company/gates-foundation/",
"currentPosition": {
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,392598211)",
"name": "Gates Foundation",
"companyId": "8736",
"companyUrn": "urn:li:fsd_company:8736",
"publicIdentifier": "gates-foundation",
"url": "https://www.linkedin.com/company/gates-foundation/",
"title": "Co-chair"
},
"currentSchool": null,
"openProfile": false,
"description": "Chair of the Gates Foundation. Founder of Breakthrough Energy. Co-founder of Microsoft. Voracious reader. Avid traveler. Active blogger.",
"languages": [],
"certifications": [],
"volunteerCauses": [],
"skills": [],
"experiences": [
{
"name": "Gates Foundation",
"jobTitle": "Co-chair",
"description": "",
"dateRange": "2000 - Present",
"current": true,
"ongoing": true,
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,392598211)",
"positionGroupUrn": "urn:li:fsd_profilePositionGroup:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,f0723c2e436a6bda4ab6fb5a97d650cfe30b9990)",
"positionGroupId": "f0723c2e436a6bda4ab6fb5a97d650cfe30b9990",
"timePeriod": {
"startDate": {
"year": 2000
},
"endDate": null
},
"totalDuration": "26 yrs 10 mos",
"company": {
"url": "https://www.linkedin.com/company/gates-foundation/",
"name": "Gates Foundation",
"logo": "https://media.licdn.com/dms/image/v2/D560BAQEgMqqFTd40Tg/company-logo_400_400/company-logo_400_400/0/1736784969376/bill__melinda_gates_foundation_logo?e=1793232000&v=beta&t=-3Or6OsbYEKsjb0OeDOnM7sqQbLZt5c7mY8psW87kHE",
"companyId": "8736",
"urn": "urn:li:fsd_company:8736"
}
},
{
"name": "Breakthrough Energy",
"jobTitle": "Founder",
"description": "",
"dateRange": "2015 - Present",
"current": false,
"ongoing": true,
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,1836104012)",
"positionGroupUrn": "urn:li:fsd_profilePositionGroup:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,e259382720cb8b581205a34c2c592d712a9091fd)",
"positionGroupId": "e259382720cb8b581205a34c2c592d712a9091fd",
"timePeriod": {
"startDate": {
"year": 2015
},
"endDate": null
},
"totalDuration": "11 yrs 10 mos",
"company": {
"url": "https://www.linkedin.com/company/breakthrough-energy/",
"name": "Breakthrough Energy",
"logo": "https://media.licdn.com/dms/image/v2/D560BAQFRMYiQN7-2kA/company-logo_400_400/B56ZoI4SGPI0AY-/0/1761085563539/breakthrough_energy_logo?e=1793232000&v=beta&t=FBopuNvB5P3C3RAvxFakKw8SfEvJkHDMC8Cy1ivv3a4",
"companyId": "19141006",
"urn": "urn:li:fsd_company:19141006"
}
},
{
"name": "Microsoft",
"jobTitle": "Co-founder",
"description": "",
"dateRange": "1975 - Present",
"current": false,
"ongoing": true,
"positionUrn": "urn:li:fsd_profilePosition:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,392599749)",
"positionGroupUrn": "urn:li:fsd_profilePositionGroup:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,379b0fee813e578bb10050b852dc16ba755ef821)",
"positionGroupId": "379b0fee813e578bb10050b852dc16ba755ef821",
"timePeriod": {
"startDate": {
"year": 1975
},
"endDate": null
},
"totalDuration": "51 yrs 10 mos",
"company": {
"url": "https://www.linkedin.com/company/microsoft/",
"name": "Microsoft",
"logo": "https://media.licdn.com/dms/image/v2/D560BAQH32RJQCl3dDQ/company-logo_400_400/B56ZYQ0mrGGoAc-/0/1744038948046/microsoft_logo?e=1793232000&v=beta&t=-G3KTWbySWNRDLM-7_sSgY3V09nqPA0Iswoptltp6cs",
"companyId": "1035",
"urn": "urn:li:fsd_company:1035"
}
}
],
"educations": [
{
"name": "Harvard University",
"description": "",
"dateRange": "1973 - 1975",
"current": false,
"ongoing": false,
"educationUrn": "urn:li:fsd_profileEducation:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,157656829)",
"schoolLogo": "https://media.licdn.com/dms/image/v2/C4E0BAQF5t62bcL0e9g/company-logo_400_400/company-logo_400_400/0/1631318058235?e=1793232000&v=beta&t=tG7qGly5_Uq33s6x0-9U8QrenZr2NTdEdR8ydLfb8II",
"schoolUrl": "https://www.linkedin.com/school/harvard-university/",
"timePeriod": {
"startDate": {
"year": 1973
},
"endDate": {
"year": 1975
}
}
},
{
"name": "Lakeside School",
"description": "",
"dateRange": "",
"current": false,
"ongoing": false,
"educationUrn": "urn:li:fsd_profileEducation:(ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc,157676006)",
"schoolLogo": "https://media.licdn.com/dms/image/v2/D560BAQGFmOQmzpxg9A/company-logo_400_400/company-logo_400_400/0/1683732883164/lakeside_school_logo?e=1793232000&v=beta&t=LuT1qFGoma5gJltCnUOlsIthuPoLj_fhfuT1SwUjyzM",
"schoolUrl": "https://www.linkedin.com/school/lakeside-school/"
}
],
"joinDate": {
"month": 5,
"year": 2013
},
"websites": [
{
"url": "https://gatesnot.es/sourcecode-li",
"category": "BLOG"
}
],
"recommendations": [],
"recommendationsGiven": [],
"testScores": [],
"publications": [],
"projects": [],
"patents": [],
"honors": [],
"organizations": [],
"courses": [],
"volunteerExperiences": [],
"industry": "Philanthropy",
"industryUrn": "urn:li:fsd_industry:131",
"primaryLocale": "en_US",
"supportedLocales": [
"en_US"
],
"descriptionLocalized": {
"en_US": "Chair of the Gates Foundation. Founder of Breakthrough Energy. Co-founder of Microsoft. Voracious reader. Avid traveler. Active blogger."
},
"entityType": "Person",
"datacircle_meta": {
"provider": "fetchin",
"cost_usd": 0.001485,
"balance_usd": 20.5
}
}{
"error": "<string>",
"code": "MISSING_PARAMETER",
"datacircle_meta": {
"provider": "up2data",
"cost_usd": 123,
"balance_usd": 123
}
}{
"error": "<string>"
}{
"error": "<string>",
"balance_usd": 123
}{
"error": "LinkedIn profile not found",
"code": "PROFILE_NOT_FOUND",
"datacircle_meta": {
"provider": "fetchin",
"cost_usd": 0.001485,
"balance_usd": 20.5
}
}{
"error": "<string>",
"code": "MISSING_PARAMETER",
"datacircle_meta": {
"provider": "up2data",
"cost_usd": 123,
"balance_usd": 123
}
}{
"error": "<string>",
"balance_usd": 123
}Authorizations
Your API key: Authorization: Bearer <your API key>. Authorization: Token <your API key> works too.
Headers
names the provider: fetchin. With the host, the only change from the provider's own request.
fetchin Query Parameters
The profile's LinkedIn URL, e.g. https://www.linkedin.com/in/williamhgates. The only Fetchin parameter Datacircle passes on, and only as a profile URL: Fetchin's public identifier and URN forms, and fullProfile, are refused with a 400, not charged.
Response
Fetchin's answer plus datacircle_meta: the profile ($0.001485)
Fetchin's answer: the profile object as Fetchin sends it, plus datacircle_meta.
Datacircle's only addition to the provider's answer
Show child attributes
Show child attributes
Profile URN (unique identifier)
Profile first name.
Profile last name. Some members restrict their full surname to their own contacts; for those profiles this is the publicly displayed initial (e.g. "D.") and lastNameInitialOnly is true. The full surname is not available through any request in that case.
Present and true only when lastName is an initial because the member restricts it. Absent otherwise, never false.
Professional headline. A member can publish their profile in several languages and the source does not translate between them. This is the English version when the member published one, otherwise the version in their primaryLocale. Deterministic: two calls return the same language. Every version they did publish is in titleLocalized / descriptionLocalized.
title in each language the member published, keyed by locale ("fr_FR", "en_US").
Show child attributes
Show child attributes
About/summary section. A member can publish their profile in several languages and the source does not translate between them. This is the English version when the member published one, otherwise the version in their primaryLocale. Deterministic: two calls return the same language. Every version they did publish is in titleLocalized / descriptionLocalized. Line breaks are returned exactly as the source stores them: for some profiles the source holds this text with its line breaks already removed, and they are not reconstructed by guesswork.
description in each language the member published, keyed by locale.
Show child attributes
Show child attributes
Where the member is, as the profile shows it.
Profile picture URL, largest size available. Always a string: when the member has no photo of their own it holds a generic placeholder image and profilePictureUrls is absent.
Every size of the profile picture, smallest first, one entry per distinct size (how many varies: a small original comes in fewer sizes); the last entry is the image profilePictureUrl points to (the framed picture when the member displays a photo frame). ABSENT, not empty and not null, when the member has no photo of their own, which is how to tell a real photo from the placeholder in profilePictureUrl. Not returned for organization records.
Show child attributes
Show child attributes
Complete work experience history, ordered most recent first. Every position is returned in a single call - there is no pagination to follow, including for members with dozens of past employers and for members holding many successive roles at the same one. If a section could not be completed, the top-level partial object names it.
Show child attributes
Show child attributes
The schools, newest first.
Show child attributes
Show child attributes
Volunteer causes listed on the profile
Professional skills listed on the profile. Complete list, returned in the same single call as the rest of the profile.
Show child attributes
Show child attributes
The languages the member lists.
Show child attributes
Show child attributes
Licenses and certifications.
Show child attributes
Show child attributes
Profile banner/background image URL
Every size of the banner image, smallest first. Banners are not square, so use both width and height. Absent when the member has no banner, in which case coverImageUrl is absent too.
Show child attributes
Show child attributes
Public identifier (slug)
Member identifier
ISO country code
Full geographic location string
Country name
Geo URN
Relationship to the authenticated account
Creator mode information
Show child attributes
Show child attributes
Title of the member DESIGNATED PRIMARY role (the same entry flagged current in experiences). A designation, not a date test: if the member has not updated their profile since that role ended, jobTitle still reflects it while the matching experience shows ongoing:false.
Employer of that same designated role. Same caveat as jobTitle. Derived from the position itself, whereas currentPosition reflects the block the member chooses to DISPLAY at the top of their profile - so currentPosition can be null while jobTitle/companyName are set.
Current company public identifier slug
Current company profile URL
Explicit "current company" block from the top of the profile page. Object when the member displays it, null when they don't (an ongoing primary position may still exist in experiences).
Show child attributes
Show child attributes
Explicit "education" block from the top of the profile page. Object when the member displays it, null when they don't.
Show child attributes
Show child attributes
Number of followers
Number of connections
Whether Creator mode is enabled
Whether the profile carries the platform's long-standing editorial recognition. Distinct from topVoice: a profile can have one without the other.
Present and true when the profile carries a recognised-voice badge. ABSENT (not false) when it does not, which is the case for most profiles — treat an absent key as falsy. The badge's display label is not returned because the source translates it per reading session.
Whether the profile has Premium
Whether the profile has a verification badge
Numeric internal member id (e.g. "251749025"). Distinct from id/profileId, which carry the urn:li:fsd_profile:… form.
Whether the profile shows the public #OPEN_TO_WORK photo frame. Reflects the publicly visible badge only; recruiter-only 'open to work' is not exposed.
Whether the profile shows the public #HIRING photo frame. A profile picture carries one frame at most, so hiring and openToWork are never both true.
Whether the account has been officially memorialized ('In Remembrance'). Only a memorialized account returns true: a regular profile whose headline mentions the member has passed away returns false.
Whether the member runs an open profile: anyone can message them directly without being one of their connections, and without spending a paid message credit. Unrelated to openToWork, and not the same as premium (some non-premium members are reachable this way). An ABSENT openProfile means unknown, never false: on a small share of calls it cannot be determined, the key is omitted and partial.sections includes openProfile; requesting the profile again normally returns it. A memorialized account (inRemembrance true) always returns false, since nobody can message it. It is the only status boolean that can be absent on a person profile.
Approximate account creation date (month + year).
Show child attributes
Show child attributes
The member's birthday, only when their privacy settings make it visible to us; absent when they hide it or never entered it. Members choose who can see it, so one who limits it to a narrower audience may appear on some calls and not on others. Included in every call at no extra cost. Always a month and a day; the year only when the member shares it, which is rare.
Show child attributes
Show child attributes
The websites listed in the member's contact info, only when their privacy settings make them visible to us, in the order the member listed them. Absent (never an empty array) when there are none to show. Included in every call at no extra cost. Not the same as creatorInfo.website, the single link a creator pins to their profile.
Show child attributes
Show child attributes
Canonical public URL of the professional profile page
Publicly displayed pronouns (e.g. "she/her"). Omitted when the member doesn't display pronouns.
Recommendations received by the member. Best-effort: omitted when this section could not be fetched, empty array when the member has none.
Show child attributes
Show child attributes
Test scores listed on the profile
Show child attributes
Show child attributes
The member self-declared industry, e.g. "Information Technology & Services". Uses the industry vocabulary the profile page itself displays, which is NOT the same list as the industry field on the company endpoint - do not join the two. Omitted when the member lists none.
Stable identifier for industry, e.g. "urn:li:fsd_industry:96".
The language the member AUTHORED their profile in, e.g. "es_ES". It does not by itself say which language the free text beside it is in - see title and description. For language-independent values use geoUrn, industryUrn or companyId.
Every language the member published their profile in, e.g. ["fr_FR","en_US"]. A member who wrote their profile once gets a single-entry array, so more than one entry is the signal that titleLocalized / descriptionLocalized have something to choose from.
"Person" for a member profile. "Company" when an organization identifier was supplied: a company, school or showcase URL is accepted here for backward compatibility and returns a REDUCED record (organization name in firstName, tagline in title, empty experiences/educations). Prefer GET /api/v1/company for organizations.
Person, Company Publications listed on the profile, in display order.
Show child attributes
Show child attributes
Projects listed on the profile, in display order.
Show child attributes
Show child attributes
Patents listed on the profile, in display order.
Show child attributes
Show child attributes
Honors and awards listed on the profile, in display order.
Show child attributes
Show child attributes
Organizations the member belongs to, in display order.
Show child attributes
Show child attributes
Courses listed on the profile, in display order.
Show child attributes
Show child attributes
Volunteering ROLES: what the member did and for whom, in display order. Distinct from volunteerCauses, which is only the list of causes they say they care about.
Show child attributes
Show child attributes
Present ONLY when part of the response is knowingly incomplete; its absence means nothing was dropped. A profile is assembled from several upstream reads, and when one cannot be completed the affected array is shorter than the member real data - previously indistinguishable from a genuinely short list.
Show child attributes
Show child attributes
Recommendations the member WROTE for other people. Best-effort, exactly like recommendations: an empty array means they wrote none, while an ABSENT key means the fetch failed and partial will say so. Note the named person here is the RECIPIENT, whereas in recommendations it is the author.
Show child attributes
Show child attributes